

The team at Jetbrains reached out and brought to my attention that PHPStorm 2021.2 actually has a new feature too - "Actions on Save" - which is able to do the same thing, without using a Macro. So in that regard, 2021.2 actually fixed the issue.īut regardless, if you’re a Format and Save fan like me, tweak your Macro to keep the formatting love on every save. While this feels like a bug given it has only cropped up with PHPStorm 2021.2, it actually is more a sign of an earlier bug with 2021.1 and earlier: moving the caret up and down when the entire text is selected does actually make sense to move to the top and down one line. So now rather than touching the caret at all, a simple Escape deselects all of the content too, and leaves the caret in place. In PHPStorm 2021.2, I have re-recorded a Macro, with 4 steps – and to be honest, I feel should actually work in earlier versions: This actually meant that on every save, I was actually moved back to Line 2 of every file. Steps 1-3 are all fine, but…Ĥ moved the caret to the top of the document Those last two steps allowed the caret to stay in the same position, and to have all of the content de-selected (after step 1’s Select All).īut in PHPStorm 2021.2, the caret behaviour of selected text has changed, and steps 4 and 5 here led to some undesirable behaviour. In PHPStorm 2021.1, this Macro had 5 steps: While reformatting on every save may be overkill, it does mean that my code does remain clean, neat and consistent. I’ve been using a Macro for years in PHPStorm that, when I hit Cmd+S, reformatted my code based on the project’s settings.
