Pavel Bernshtam
Pavel Bernshtam

Reputation: 4444

Save actions in IntelliJ IDEA

The only thing that exists in Eclipse, which I miss in IntelliJ IDEA is "save actions" - possibility to do some actions (usually formatting) when a file is saved.

Is there some plugin or configuration for IDEA which enables such functionality?

Upvotes: 88

Views: 63474

Answers (8)

Michael Barfs
Michael Barfs

Reputation: 416

UPDATE: Since IntelliJ Version 2021.2 Jetbrains added support for Actions on Save. They can be found under Preferences/Settings | Tools | Actions on Save.

Source: https://blog.jetbrains.com/idea/2021/07/intellij-idea-2021-2/#key_updates

Upvotes: 22

justnpT
justnpT

Reputation: 1057

You will need to Install Save Actions plugin for Intellij IDEA

  1. Click: ctrl+shift+a
  2. Type: Plugins
  3. Click: enter Plugins
  4. Click: Browse repositories
  5. Type: Save Actions to search field
  6. Click "install plugin" after you found it
  7. Restart intellij idea

Save actions now work. You can configure them in File -> Settings -> Other settings

Upvotes: 75

jarzec
jarzec

Reputation: 499

Had the same problem, but Save Actions were not flexible enough. I went for File Watchers plugin which allows for running custom programs each time a file of a given type changes.

Upvotes: 1

GabrielWeis
GabrielWeis

Reputation: 340

You may use a Macro to simulate save actions:

Edit --> Macros --> Start Macro Recording

==> now execute all actions you need (e.g. reformat, rearrange, optimize imports)

Edit --> Macros --> Stop Macro Recording

Give your new Macro a name. You can also assign a shortcut to your macro. Just enter it's name in the settings search and you will find it under Macro.

Have fun!

Upvotes: 4

stackular
stackular

Reputation: 1471

See here: Intellij reformat on file save.

The answer I linked to explains in a few easy steps how to record a macro for optimize imports and reformat and then run that macro when you save your files (bind it to Ctrl+S).

Upvotes: 1

osundblad
osundblad

Reputation: 2681

I think it might break the philosophy that JetBrains have. Nothing should be done unless the user/developer requests it (and no Wizards). So you are stuck with Ctrl-Alt-L or just indent Ctrl-Alt-I. I personally only use the latter since the code usually formats itself as you type.

Also Idea saves files as soon as you leave window or (I think) wait for a certain time, this might really mess up things.

Upvotes: 0

manuna
manuna

Reputation: 871

There is something similar - possibility to do some actions, when a file is committed. In a file commit window there is a "Before commit" section which contains checkboxes like "optimize imports", "Reformat code", etc.

Upvotes: 2

Colin Hebert
Colin Hebert

Reputation: 93197

It doesn't exist as in Eclipse, but you can format your code on commit, and the shortcut ctrl+alt+L will allow you to format easily your code.
After a time formatting the code will be a reflex and you won't even think about it.


On the same topic :

Upvotes: 10

Related Questions