我记得在 IntelliJ 或 Eclipse 中看到了在保存文件时重新格式化(清理)文件的设置。我如何找到它(在设置中没有找到它)
14 回答
这个解决方案对我来说效果更好:
- 制作一个宏(我使用了 Organize Imports、Format Code、Save All)
- 给它分配一个按键(我覆盖了Ctrl+ S)
注意:对于有组织的导入,您必须在第一次选中“不再显示此消息”框,但之后它会按预期工作。
IntelliJ 10.0 的分步说明:
- Code -> “Optimize Imports...”,如果出现对话框,勾选“Do not show this message again.”复选框,然后点击“Run”。
- 工具->“开始宏录制”
- 代码->“优化导入...”
- 代码->“重新格式化代码...”
- 文件->“全部保存”
- 工具->“停止宏录制”
- 命名宏(类似于“格式化保存”)
- 在文件->设置->键盘映射中,选择位于“主菜单->工具->“格式化保存”的宏
- 单击“添加键盘快捷键”,然后执行所需的击键。如果您像我一样选择Ctrl+ S,它会询问您如何处理之前的Ctrl+S快捷方式。去掉它。如果需要,您可以随时重新分配它。
- 享受!
对于 IntelliJ 11,替换
步骤 2. 使用:编辑 -> 宏 -> “开始宏录制”
步骤 6. 使用:编辑 -> 宏 -> “停止宏录制”
其他一切都保持不变。
智能 12
8. Preferences 包含 Keymap 设置。使用输入字段过滤内容,如屏幕截图所示。
我建议保存操作插件。它还支持优化导入和重新排列代码。
与eclipse 格式化程序插件结合使用效果很好。
搜索并激活插件:
配置它:
编辑:似乎最新版本的 Intellij 保存操作插件是由自动 Intellij 保存触发的。当它仍然在编辑时,这可能会很烦人。
该插件的这个 github issue 提示了一些可能的解决方案:
https://github.com/dubreuia/intellij-plugin-save-actions/issues/63
我实际上尝试将重新格式化分配给Ctrl+S并且它工作正常 - 现在自动完成保存。
以下是尼尔更新的答案。
IntelliJ 13 步骤:
- 代码 -> 重新格式化代码
- 编辑 -> 宏 -> 开始宏录制
- 代码 -> 重新格式化代码
- 文件 -> 全部保存
- 编辑 -> 宏 -> 停止宏录制
- 命名宏(类似于“格式化保存”)
- 文件 -> 设置 -> 键盘映射
- 右键单击宏。添加键盘快捷键。将键盘快捷键设置为 Control + S。
- IntelliJ 将通知您热键冲突。选择“删除”以删除其他分配。
我将其设置为在办理登机手续时自动清理,这通常对我来说已经足够了。如果有些东西太难看,我会点击快捷方式(Ctrl- Alt- L, Return)。而且我看到他们可以选择自动格式化粘贴的代码,尽管我从未使用过。
如果您有 InteliJ Idea Community 2018.2 及更高版本,步骤如下:
- 在顶部菜单中单击:编辑 > 宏 > 开始宏录制(您会在屏幕右下角看到一个窗口,确认正在录制宏)
- 在顶部菜单中单击:代码 > 重新格式化代码(您将在右下角看到被选中的选项)
- 在顶部菜单中单击:代码 > 优化导入(您将在右下角看到被选中的选项)
- 在顶部菜单中单击:文件 > 全部保存
- 在顶部菜单中单击:编辑 > 宏 > 停止宏录制
- 您将宏命名为:“格式化代码,组织导入,保存”
- 在顶部菜单中计时:文件 > 设置。在设置窗口中,您单击键盘映射
- 在右侧的搜索框中搜索“保存”。您将找到全部保存 (Ctrl+S)。右键单击它并选择“删除Ctrl+S”
- 从框中删除搜索文本,按“全部折叠”按钮(左上角的第二个按钮)
- 转到宏,按箭头以展开宏,找到您保存的宏并右键单击它。选择添加键盘快捷键,然后按 Ctrl+S 即可。
重新启动您的 IDE 并尝试一下。
我知道你要说什么,我之前的人也写过同样的东西。但是我对这篇文章上面的步骤感到困惑,我想为拥有最新版本 IDE 的人写一个愚蠢的版本。
Ctrl++是格式文件(包括以下两个Alt)L
Ctrl++Alt是O优化导入
Ctrl++将修复特定行的Alt缩进I
我通常在提交工作之前运行Ctrl++Alt几次。L我宁愿它按照我的命令进行清理/重新格式化,而不是自动进行。
Reformat code...
我最终将操作重新绑定到Ctrl- S,替换了Save All
.
一开始可能听起来很疯狂,但 IntelliJ 似乎节省了几乎所有操作:运行测试、构建项目,甚至在关闭编辑器选项卡时也是如此。我有打的习惯Ctrl——S经常打,所以这对我来说确实很有效。它肯定比用于重新格式化的默认绑定更容易键入。
麾!在IDEA 2021.2中终于有了“File->Settings->Tools->Actions on Save”,可以选择“Reformat code”、“Optimize imports”、“Rearrange code”、“Run code cleanup”、“Run eslint --修复”等
IntellIJ 14 && 15:当您在提交更改对话框中签入代码时,勾选重新格式化代码复选框,然后 IntelliJ 将重新格式化您签入的所有代码。
资料来源:www.udemy.com/intellij-idea-secrets-double-your-coding-speed-in-2-hours
对于 PyCharm/IntelliJ IDEA:
- 安装黑色。
$ pip install black
- 找到您的黑色安装文件夹。
在 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
。
- 在 PyCharm/IntelliJ IDEA 中打开外部工具
在 macOS 上:PyCharm -> 首选项 -> 工具 -> 外部工具
在 Windows / Linux / BSD 上:文件 -> 设置 -> 工具 -> 外部工具
- 单击 + 图标以添加具有以下值的新外部工具:
Name: Black
Description: Black is the uncompromising Python code formatter.
Program: <install_location_from_step_2>
Arguments: "$FilePath$"
- 通过选择工具 -> 外部工具 -> 黑色来格式化当前打开的文件。
或者,您可以通过导航到首选项或设置 -> 键盘映射 -> 外部工具 -> 外部工具 - 黑色来设置键盘快捷键。
- (可选)在每个文件保存时运行 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
我以为 IntelliJ 中有类似的东西,但我找不到。保存时发生的唯一清理是删除行尾的空白。我以为我必须在某一时刻指定该行为,但此时我没有看到任何相关的内容。
如果是关于 Prettier,只需使用 File Watcher :
参考 => 工具 => 文件观察器 => 单击 + 添加新观察器 => 更漂亮
https://prettier.io/docs/en/webstorm.html#running-prettier-on-save-using-file-watcher