Intellij重新格式化文件保存

rip*_*234 311 formatting intellij-idea

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

小智 423

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

  1. 制作一个宏(我使用了Organize Imports,格式代码,全部保存)
  2. 为它分配一个击键(我覆盖Ctrl+ S)

注意:您必须在有组织的导入时第一次选中"不再显示此消息"框,但在此之后它会按预期工作.

IntelliJ 10.0的一步一步:

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

对于IntelliJ 11,请更换

步骤2.使用:编辑 - >宏 - >"开始宏录制"
步骤6.使用:编辑 - >宏 - >"停止宏录制"

其他一切都是一样的.

IntelliJ 12

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

Intellij/Preferences/Keymap/Macros

  • 在IntelliJ 11:1中:开始宏录制:编辑 - >宏 - >开始宏录制.2:按照上面的说明操作.3:停止宏录制:编辑 - >宏 - >停止宏录制.在Keymap中,宏将保存到Macros文件夹而不是主菜单 - >工具文件夹. (3认同)
  • 在 V 2021.2.2 中,这已成为“文件 | ”中的内置功能。设置| 工具| 保存操作` (3认同)
  • 如果您对如何重新格式化代码感到满意,那么如果您选择重新格式化项目中的所有**代码并保存所有代码,则此方法会更好.否则,在进行多文件编辑时,只有在保存所有修改后才重新格式化活动文件. (2认同)

Ben*_*ter 193

我建议保存动作插件.它还支持优化导入和重新排列代码.

eclipse格式化程序插件结合使用效果很好.

搜索并激活插件:

在此输入图像描述

配置它:

在此输入图像描述

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

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

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

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


小智 83

以下是Neil的答案更新.

IntelliJ 13步骤:

  1. 代码 - >重新格式化代码 在此输入图像描述
  2. 编辑 - >宏 - >开始宏录制
  3. 代码 - >重新格式化代码
  4. 文件 - >全部保存
  5. 编辑 - >宏 - >停止宏录制
  6. 命名宏(类似"格式化保存")
  7. 文件 - >设置 - >键盘映射
  8. 右键单击宏.添加键盘快捷键.将键盘快捷键设置为Control + S. 在此输入图像描述
  9. IntelliJ将通知您热键冲突.选择"删除"以删除其他分配.

  • 我不同意,@ GaneshKrishnan.此解决方法不会将"保存密钥"绑定到"重新格式化密钥".它将它绑定到一个"重新格式化*和*保存"的宏,这正是OP所要求的以及Eclipse中实现的内容,但是通过复选框触发. (3认同)

Wil*_*tri 60

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

  • Ctrl + Shift + F是*在路径*中查找. (21认同)
  • 您也可以使用Ctrl-Shift-F进行格式化.这对我来说更好,因为Ctrl-Alt-L是Ubuntu上的锁屏命令. (12认同)
  • @rob它是提交对话框右侧的设置 (6认同)
  • 您如何在办理登机手续时设置一些事项? (5认同)
  • 这如何回答这个问题? (3认同)
  • 如果您没有使用intelliJ进行检查,那是否有效,即如果您使用命令行工具签入,我认为它不起作用. (2认同)

izo*_*fif 33

麾!在IDEA 2021.2中,终于有“ File-> Settings-> Tools-> Actions on Save”,您可以在其中选择Reformat codeOptimize importsRearrange codeRun code cleanupRun eslint --fix

  • 这应该是现阶段公认的答案。宏方法工作正常,但这是最新 IntelliJ 功能集的最佳选择。 (2认同)

joe*_*ice 19

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

Ctrl+ Alt+ O是优化进口

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

在我上班之前,我经常跑Ctrl+ Alt+ L几次.我宁愿它在我的命令而不是自动执行清理/重新格式化.

  • 在Linux上小心,"Ctrl + Alt + L"通常是锁定会话.您需要重新映射其中一个功能. (11认同)

All*_*adu 14

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

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

重新启动您的IDE并尝试。

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


Thi*_*tal 10

如果您正在使用Flutter进行开发,那么从5/1/2018开始有一个新的实验选项,允许您在保存时格式化代码. 设置


cwc*_*cwc 9

我将Reformat code...动作重新绑定到Ctrl- S,替换默认绑定Save All.

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


小智 6

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

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

  • 请注意,对一种资源的过度宣传可能会被社区解释为垃圾邮件。你应该发布好的、相关的答案,如果一两个碰巧提到这门课程,那很好——但是如果你在每个答案中发布它,它就会被标记和删除。 (5认同)
  • 我在[这里]说了什么(http://stackoverflow.com/questions/3754333/what-is-the-shortcut-in-intellij-idea-to-find-method-functions/36825075#comment61221258_36825075) (2认同)

amc*_*mcp 6

对于 PyCharm/IntelliJ IDEA:

\n
    \n
  1. 安装黑色。
  2. \n
\n

$ pip install black

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

在 macOS / Linux / BSD 上:

\n
$ which black\n/usr/local/bin/black  # possible location\n
Run Code Online (Sandbox Code Playgroud)\n

在 Windows 上:

\n
$ where black\n%LocalAppData%\\Programs\\Python\\Python36-32\\Scripts\\black.exe  # possible location\n
Run Code Online (Sandbox Code Playgroud)\n

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

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

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

\n

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

\n
    \n
  1. 单击 + 图标添加具有以下值的新外部工具:
  2. \n
\n
Name: Black\nDescription: Black is the uncompromising Python code formatter.\nProgram: <install_location_from_step_2>\nArguments: "$FilePath$"\n
Run Code Online (Sandbox Code Playgroud)\n
    \n
  1. 通过选择“工具”->“外部工具”->“黑色”来格式化当前打开的文件。
  2. \n
\n

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

\n
    \n
  1. (可选)在每个文件保存时运行 Black:
  2. \n
\n

确保您安装了文件观察器插件。

\n

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

\n
Name: Black\nFile type: Python\nScope: Project Files\nProgram: <install_location_from_step_2>\nArguments: $FilePath$\nOutput paths to refresh: $FilePath$\nWorking directory: $ProjectFileDir$\n
Run Code Online (Sandbox Code Playgroud)\n

取消选中高级选项中的\xe2\x80\x9c自动保存编辑的文件以触发观察程序\xe2\x80\x9d

\n

要使用 Black 格式化 Python 文件,我遵循了本指南,该指南还使用了文件观察器:\n https://black.readthedocs.io/en/stable/editor_integration.html

\n