Intellij重新格式化文件保存

时间:2009-06-03 20:22:01

标签: formatting intellij-idea

我记得在IntelliJ或Eclipse中看到了保存时重新格式化(清理)文件的设置。我如何找到它(在设置中找不到它)

14 个答案:

答案 0 :(得分:408)

这个解决方案对我来说效果更好:

  1. 制作一个宏(我使用了Organize Imports,格式代码,全部保存)
  2. 指定一个按键(我覆盖 Ctrl + S
  3. 注意:您必须在有组织的导入时第一次选中“不再显示此消息”框,但在此之后它会按预期工作。

    IntelliJ 10.0的逐步操作:

    1. 代码 - > “优化导入...”,如果出现对话框,请选中“不再显示此消息”复选框,然后单击“运行”。
    2. 工具 - > “开始宏录制”
    3. 代码 - > “优化进口......”
    4. 代码 - > “重新格式化代码...”
    5. 文件 - > “全部保存”
    6. 工具 - > “停止宏录制”
    7. 命名宏(类似“格式化保存”)
    8. 在文件中 - >设置 - >键盘映射,选择位于“主菜单 - >工具 - >”格式化保存“
    9. 的宏
    10. 单击“添加键盘快捷键”,然后执行所需的击键。如果您像我一样选择 Ctrl + S ,它将询问您如何处理上一个 Ctrl + S 捷径。去掉它。如果需要,您可以随时重新分配。
    11. 享受!
    12. 对于IntelliJ 11,请替换

      第2步:编辑 - >宏 - > “开始宏录制”
      第6步:编辑 - >宏 - > “停止宏录制”

      其他一切都保持不变。

      IntelliJ 12

      8。 “首选项”包含“键盘映射”设置。使用输入字段过滤内容,如屏幕截图所示。

      Intellij / Preferences / Keymap / Macros

答案 1 :(得分:169)

我建议save actions plugin。它还支持优化导入和重新排列代码。

eclipse formatter plugin结合使用。

搜索并激活插件:

enter image description here

配置它:

enter image description here

编辑:似乎最近版本的Intellij保存动作插件是由自动Intellij保存触发的。当它仍然在编辑时命中时,这可能会非常烦人。

这个插件的github问题提示了一些可能的解决方案:

https://github.com/dubreuia/intellij-plugin-save-actions/issues/63

我实际上尝试将重新格式化为 Ctrl + S 并且工作正常 - 现在自动保存。

答案 2 :(得分:82)

以下是Neil的答案更新。

IntelliJ 13步骤:

  1. 代码 - >重新格式化代码 enter image description here
  2. 编辑 - >宏 - >启动宏录制
  3. 代码 - >重新格式化代码
  4. 文件 - >全部保存
  5. 编辑 - >宏 - >停止宏录制
  6. 为宏命名(类似"格式化保存")
  7. 文件 - >设置 - >键映射
  8. 右键单击宏。添加键盘快捷键。将键盘快捷键设置为Control + S. enter image description here
  9. IntelliJ会通知您热键冲突。选择"删除"删除其他作业。

答案 3 :(得分:60)

我将其设置为在办理登机手续时自动清理,这通常对我来说已经足够了。如果有些东西太难看了,我会点击快捷方式( Ctrl - Alt - L 返回) 。我看到他们有自动格式化粘贴代码的选项,虽然我从未使用过它。

答案 4 :(得分:18)

Ctrl + Alt + L 是格式文件(包括下面两个)

Ctrl + Alt + O 是优化进口

Ctrl + Alt + I 将修复特定行的缩进

我在执行工作之前经常运行 Ctrl + Alt + L 几次。我宁愿它按照我的命令进行清理/重新格式化而不是自动。

答案 5 :(得分:11)

如果您拥有InteliJ Idea Community 2018.2,则步骤如下:

  1. 在顶部菜单中,单击:编辑>宏>开始宏录制 (您会在屏幕的右下角看到一个窗口,确认 录制宏)
  2. 在顶部菜单中,单击:代码> 重新格式化代码(您会在下方看到选中的选项 右上角)
  3. 在顶部菜单中单击:代码>优化导入 (您会在右下角看到选中的选项)
  4. 在顶部菜单中,单击:文件>全部保存
  5. 在顶部菜单中,单击:编辑>宏>停止宏记录
  6. 您将宏命名为:“设置代码格式,组织导入,保存”
  7. 在顶部菜单中,您将进行以下操作:文件>设置。在设置窗口中,单击“键盘映射”
  8. 在右侧的搜索框中搜索“保存”。您会找到全部保存(Ctrl + S)。右键单击它,然后选择“删除Ctrl + S”
  9. 从框中删除搜索文本,按“全部折叠”按钮(左上角的第二个按钮)
  10. 转到宏,按箭头展开您的宏,找到您保存的宏,然后右键单击它。选择添加键盘快捷键,然后按Ctrl + S并确定。

重新启动IDE并尝试。

我知道你会说什么,在我之前的家伙写了同样的东西。但是我对本文上方的步骤感到困惑,我想为拥有最新版本IDE的人编写一个精简版。

答案 6 :(得分:9)

如果您正在使用Flutter进行开发,那么从5/1/2018开始,您可以选择新的实验选项,以便在保存时格式化代码。 Settings

答案 7 :(得分:8)

我将Reformat code...动作重新绑定到 Ctrl - S ,取代了Save All的默认绑定。

起初听起来可能很疯狂,但IntelliJ似乎几乎可以节省每一个动作:运行测试,构建项目,甚至关闭编辑器选项卡。我习惯经常点击 Ctrl - S ,所以这对我来说确实很有用。键入肯定比重新格式化的默认绑定更容易。

答案 8 :(得分:4)

  

IntellIJ 14&& 15:当您在“提交更改”对话框中签入代码时,勾选“重新格式代码”复选框,然后IntelliJ将重新格式化您正在检入的所有代码。

来源:www.udemy.com/intellij-idea-secrets-double-your-coding-speed-in-2-hours

答案 9 :(得分:3)

对于 PyCharm/IntelliJ IDEA:

  1. 安装黑色。

$ pip install black

  1. 找到您的黑色安装文件夹。

在 macOS / Linux / BSD 上:

$ which black
/usr/local/bin/black  # possible location

在 Windows 上:

$ where black
%LocalAppData%\Programs\Python\Python36-32\Scripts\black.exe  # possible location

请注意,如果您使用的是 PyCharm 检测到的虚拟环境,则这是不需要的步骤。在这种情况下,黑色的路径是 $PyInterpreterDirectory$/black

  1. 在 PyCharm/IntelliJ IDEA 中打开外部工具

在 macOS 上:PyCharm -> 首选项 -> 工具 -> 外部工具

在 Windows / Linux / BSD 上:文件 -> 设置 -> 工具 -> 外部工具

  1. 单击 + 图标以添加具有以下值的新外部工具:
Name: Black
Description: Black is the uncompromising Python code formatter.
Program: <install_location_from_step_2>
Arguments: "$FilePath$"
  1. 通过选择工具 -> 外部工具 -> 黑色来格式化当前打开的文件。

或者,您可以通过导航到首选项或设置 -> 键盘映射 -> 外部工具 -> 外部工具 - 黑色来设置键盘快捷键。

  1. 或者,在每次保存文件时运行 Black:

确保您已安装 File Watchers 插件。

转到首选项或设置 -> 工具 -> 文件观察器,然后单击 + 添加新观察器:

Name: Black
File type: Python
Scope: Project Files
Program: <install_location_from_step_2>
Arguments: $FilePath$
Output paths to refresh: $FilePath$
Working directory: $ProjectFileDir$

在高级选项中取消选中“自动保存编辑过的文件以触发观察者”

要使用 Black 格式化 Python 文件,我遵循了本指南,该指南也使用了 File Watcher: https://black.readthedocs.io/en/stable/editor_integration.html

答案 10 :(得分:2)

我认为在IntelliJ中有类似的东西,但我找不到它。保存时发生的唯一清理是删除行末端的空白区域。我以为我必须在某一点指定这种行为,但此时我没有看到任何相关内容。

答案 11 :(得分:1)

如果是关于Prettier的,只需使用File Watcher:

引用=>工具=>文件监视程序=>单击+添加新的监视程序=>更漂亮

https://prettier.io/docs/en/webstorm.html#running-prettier-on-save-using-file-watcher

答案 12 :(得分:1)

从2020.1版本开始,您可以直接在 Prettier 插件的“首选项”中激活保存文件时运行

here

答案 13 :(得分:1)

欢呼吧!在 IDEA 2021.2 中,最后有“文件->设置->工具->保存操作”,您可以在其中选择“重新格式化代码”、“优化导入”、“重新排列代码”、“运行代码清理”、“运行eslint --fix”等