是否有办法在IntelliJ完成后重新格式化我的行?(对于那些熟悉的人来说,这种功能在FlashDevelop中是可用的)
假设我刚刚在PHP中输入了这段代码:
$var=array("a","b","c");
输入分号后,我希望编辑器将其重新格式化为(或我的配置状态):
$var = array("a", "b", "c");
这个自动格式化触发器也可以在括号和其他行结束符上执行。
IDEA中没有这样的功能。您可以在需要时使用Reformat Code (Ctrl + Alt + L)操作
你可以这样做。
Go to where you want to insert ;
Tools/Start Macro Recording
Type in ;
Then select Code/Auto Indent Lines
Tools/Stop Macro Recording
Name the macro "reformat"
Now go to settings, Keymap, Macros, select "reformat"
Assign a keyboard shortcut of ;
在宏运行后,您可能需要稍微调整一下光标以使其位于正确的位置。
这是基于上面jhorman的回答,我知道这个问题已经超过6年了。但是IntelliJ IDEA 2017.1.5仍然没有像VisualStudios那样在按分号时自动重新格式化当前行的功能。
解决方法是创建jhorman所描述的宏,但在按下';'之后运行Code -> Reformat Code。然后停止录制,在Settings/Keymap/Macros下添加快捷键"Shift+逗号"到宏。现在,当在代码中按Shift +逗号输入分号时,代码也会被重新格式化。唯一的缺点是:每次按Shift+逗号时,整个代码都会被重新格式化。对于大文件,这可能需要几秒钟。
只有当你只有一个像分号这样的行结束符时,这个解决方法才会起作用。要自动重新格式化多行结束符(右括号,分号,…)上的代码,您需要直接添加快捷方式"设置"->"Keymap"->"主菜单"->"代码"->"重新格式化代码"。在这种情况下,不需要创建宏。
仅格式化当前行是不可能的,据我所知。