重新格式化代码最后修改时间:2023 年 9 月 8 日
IntelliJ IDEA 允许您根据当前代码样式方案或 .editorconfig文件中指定的要求重新格式化代码。如果 中未定义任何内容.editorconfig,则将从项目设置中获取。
您可以重新格式化部分代码、整个文件、文件组、目录和模块。您还可以从重新格式化中排除部分代码或某些文件。
重新格式化代码片段 在编辑器中,选择要重新格式化的代码片段。
在重新格式化之前,您可以查看应用于所选代码的代码样式设置:按并单击调整代码样式设置。AltEnter
转到代码| 重新格式化代码或按。CtrlAlt0L
笔记如果您不选择代码片段,IntelliJ IDEA 将重新格式化整个文件。
重新格式化文件 在编辑器中打开文件,然后按或 在“项目”工具窗口中,右键单击该文件并选择“重新格式化代码”。CtrlAltShift0L
笔记按住并选择其他文件以进行组重新格式化。Shift
在打开的“重新格式化文件”对话框中,如果需要,请选择以下重新格式化选项:
优化导入:如果您想要删除未使用的导入、添加缺失的导入或组织导入语句,请选择此选项。
有关更多信息,请参阅优化导入部分。
重新排列条目:如果您需要根据代码 样式设置中指定的排列规则重新排列代码,请选择此选项。
代码清理:选择此选项可运行代码清理检查。
不保留换行符:根据代码样式设置重新格式化换行符。此选项会覆盖重新格式化时保留 | 换行符设置。
单击运行。
如果您想查看重新格式化期间对代码所做的确切更改,请使用本地历史记录功能。
重新格式化模块或目录 在项目工具窗口中,右键单击模块或目录,然后选择重新格式化代码或按。CtrlAlt0L
在打开的对话框中,指定重新格式化选项。
您还可以对代码重新格式化应用过滤器,例如指定范围或将重新格式化范围缩小到特定文件类型。
重新格式化行缩进 您可以根据指定的设置重新格式化行缩进。
在编辑器中,选择必要的代码片段并按。CtrlAlt0I
如果您需要调整缩进设置,请在“设置”对话框 ( ) 中,转至编辑器|缩进设置。代码风格。CtrlAlt0S
在相应语言页面的制表符和缩进选项卡上,指定适当的缩进选项,然后单击确定。
笔记在某些情况下,选项“检测并使用现有文件缩进进行编辑”位于“文件”| “缩进检测”部分中。设置 | 编辑| 代码样式可以覆盖您的设置。在这种情况下,IntelliJ IDEA 将显示一条通知。
保存时自动重新格式化代码 您可以将 IDE 配置为在保存更改后自动重新格式化已修改文件中的代码。
按打开 IDE 设置,然后选择“工具”|“IDE”。保存操作。CtrlAlt0S
启用重新格式化代码选项。
此外,您还可以配置 IDE 重新格式化代码的方式:
单击“配置范围”以指定要从重新格式化中排除的文件名和目录模式。
从“所有文件类型”列表中,选择要重新格式化代码的文件类型。
如果您的项目受版本控制,请选择“整个文件”或“更改的行” 。
如果您选择Changedlines,则重新格式化将仅适用于已在本地更改但尚未签入存储库的代码行。
从重新格式化中排除文件 您可以从重新格式化、代码排列和导入优化中排除一组文件和目录。
在“设置”对话框 ( ) 中,转到编辑器 | 代码风格。CtrlAlt0S
切换到“格式化程序”选项卡,然后在“不格式化”字段中,输入要使用glob 模式排除的文件和目录。
您可以指定多个用分号分隔的全局模式;。如果单击,该字段将展开,并且每个模式将显示在单独的行上。
单击“应用”保存更改并关闭对话框。
排除代码片段在编辑器中重新格式化 在“设置”对话框 ( ) 中,转到编辑器 | 代码风格。CtrlAlt0S
切换到“格式化程序”选项卡并启用“在代码注释中使用标记打开/关闭格式化程序”选项。
在编辑器中,在要排除的区域的开头,创建行注释并输入。在该区域的末尾,创建另一行注释并输入。Ctrl0/@formatter:off@formatter:on
标记之间的代码不会被重新格式化。
使用格式标记的示例 保留现有格式 您可以选择格式化规则,重新格式化代码时将忽略这些规则。例如,您可以调整 IDE 以将简单的方法和函数保留在一行中,而通常在代码重新格式化后它们会扩展为多行。
转到设置 | 编辑| 代码样式,选择您的编程语言,然后打开“换行和大括号”选项卡。
在“重新格式化时保留”部分中,选择要忽略的格式规则并取消选择应应用的规则。
重新格式化您的代码( )。CtrlAlt0L
IntelliJ IDEA 将根据当前样式设置重新格式化您的代码,并保留您选择的规则的现有格式。
格式化程序设置要访问设置,请在“设置”对话框 ( ) 中,转至编辑器 | 代码样式,然后切换到“格式化程序”选项卡。CtrlAlt0S
物品
描述
不要格式化
在此字段中,指定一个glob 模式,其中包含要从重新格式化、代码排列和导入优化中排除的文件和目录的名称,例如:*.{html,htm}。
您可以指定多个用分号分隔的全局模式;。
使用代码注释中的标记打开/关闭格式化程序
如果启用此选项,则带有格式标记的行注释之间的代码片段将根据这些标记重新格式化:带有 on 标记的代码片段将重新格式化,带有 off 标记的片段在重新格式化代码后将保持不变。请参阅使用格式标记的示例。
选中此复选框后,以下字段将变为可用,您可以指定要视为格式标记的字符串。
如果禁用此选项,则将忽略格式标记,并且带有标记的行注释之间的代码将被重新格式化。
离开:
在此字段中,指定字符串,该字符串将指示要从重新格式化中排除的代码片段的开头。输入介词中带有符号的字符串@或保留预定义值@formatter:off。
在:
在此字段中,指定字符串,该字符串将指示要从重新格式化中排除的代码片段的结尾。输入介词中带有符号的字符串@或保留预定义值@formatter:on。
在格式化程序标记中启用正则表达式
选中此复选框可使用正则表达式,而不是显式指定格式标记。IntelliJ IDEA 使用指定的正则表达式而不是确切的字符串来匹配格式化程序开/关标记。
例如,使用正则表达式允许您使用多个标记来启用和禁用格式化程序。在这种情况下,您可以使用以下正则表达式:@formatter:(off|disable|no)和@formatter:(on|enable|yes)。
请参阅使用格式标记进行演示的示例。