GoLand 2025.3 Help

重新格式化并重新排列代码

GoLand 允许您根据当前 代码样式方案.editorconfig 文件中指定的要求重新格式化代码。 如果在 .editorconfig 未定义任何内容,则将从项目设置中获取。

您可以重新格式化部分代码、整个文件、一组文件、一个目录和一个模块。 您还可以从重新格式化中排除部分代码或某些文件。

格式化代码片段

  1. 在编辑器中选择您要重新格式化的代码片段。

    在重新格式化之前,您可以查看应用于所选代码的代码样式设置:按 Alt+Enter 并点击 调整代码样式设置

  2. 在主菜单中,前往 代码 | 重新设置代码格式 或按下 Ctrl+Alt+L

    或者,在显示的 工具栏上点击 重新格式化代码

重新格式化文件

  1. 在编辑器中打开文件并按下 Ctrl+Alt+Shift+L ,或在 项目 工具窗口中右键点击该文件,并选择 重新设置代码格式

  2. 在打开的 重新格式化文件 对话框中,您可以根据需要选择以下重新格式化选项:

    • 优化import(O) :如果您希望删除未使用的导入、添加缺失的导入或整理导入语句,请选择此选项。

    • 代码清理 :选择此选项以运行代码清理检查。

    • 不保留换行符(B) :根据代码样式设置重新格式化换行符。 此选项将覆盖 重新设置格式时保持 | 换行符 设置。

  3. 单击 运行

    如果您想查看代码在重新格式化期间所做的确切更改,请使用 本地历史记录 功能。

重新格式化行缩进

您可以根据指定的设置重新格式化行缩进。

  1. 在编辑器中,选择必要的代码片段并按 Ctrl+Alt+I

  2. 如果您需要调整缩进设置,请在 设置 对话框(Ctrl+Alt+S )中,转到 编辑器 | 代码样式。 选择您要更改缩进的语言。

  3. 制表符和缩进 选项卡上,指定适当的缩进选项,然后点击 确定

保存时自动重新格式化代码

您可以将 IDE 配置为在更改被 保存时,自动重新格式化已修改文件中的代码。

  1. 按下 Ctrl+Alt+S 打开设置,然后选择 工具 | 保存时的操作

  2. 启用 重新设置代码格式 选项。

  3. 此外,您可以配置 IDE 重新格式化代码的方式:

    • 点击 配置作用域… 以指定您要 排除在重新格式化之外的文件名和目录的模式。

    • 所有文件类型 列表中选择您要重新格式化代码的文件类型。

    • 如果您的项目在版本控制中,请选择 整个文件更改的行

      如果您选择 更改的行 ,代码重格式化将仅适用于本地更改但尚未提交到存储库的代码行。

在提交时重新格式化代码

如果您的项目在 版本控制下,您可以在提交更改到存储库时自动重新格式化代码。 在这种情况下,仅会重新格式化新增或修改的代码。

  1. Alt+0 打开 提交 工具窗口,然后点击 显示提交选项 设置按钮

  2. 提交检查 菜单下,启用 重新设置代码格式 选项。

启用该选项后,每次提交时,新增或修改的代码都会被重新格式化。

高级提交选项弹出窗口

排除文件格式化

您可以排除一组文件和目录的重新格式化以及 导入优化

  1. 设置 对话框(Ctrl+Alt+S ),转到 编辑器 | 代码样式

  2. 切换到 格式化程序 选项卡,在 不设置格式 字段中,使用 glob 模式输入您想要排除的文件和目录。

    您可以指定用分号 ; 分隔的几个通配符模式。 如果您点击 展开图标 ,该字段将展开,每个模式将显示在单独的行上。

  3. 应用更改并关闭对话框。

    指定一个 glob 模式以排除文件格式化

在编辑器中排除代码片段的重格式化

  1. 设置 对话框(Ctrl+Alt+S ),转到 编辑器 | 代码样式

  2. 切换到 格式化程序 标签并启用 在代码注释中使用标记打开/关闭格式化程序 选项。

  3. 在编辑器中,您希望排除的区域开头创建行注释 Ctrl+/ 并输入 @formatter:off。 在该区域的末尾,创建另一行注释并输入 @formatter :on

    标记之间的代码不会重新格式化。

使用 gofmt 工具重新格式化

与 gofmt 工具相比,GoLand 的格式化器可以处理语法不正确的代码,并且可以在任意块上调用。 此外,内置格式化器可以自动插入分号并换行参数和参数。

如果您仍然想使用 gofmt,可以使用以下工具:

  • Go 工具 :点击 工具 | Go 工具 并选择 Go Fmt 文件 (在当前文件中运行 gofmt)或 Go Fmt 项目 (为当前项目运行 gofmt)。

  • 提交前部分 :在提交更改之前运行 gofmt 工具。

    提交前运行 go fmt

通过使用以下选项,您可以在每次使用重新格式化操作时运行 gofmt 工具。 例如,每次您按 Ctrl+Alt+L 时,GoLand 都会运行 gofmt 工具。

在重新格式化操作后运行 gofmt 工具

  • 每次重新格式化代码时(例如,通过按 Ctrl+Alt+L ),您都可以运行 gofmt 工具。 第一次由内置的 GoLand 格式化器完成,然后由 gofmt 完成。

    要启用此功能,请按 Ctrl+Alt+S 打开设置并导航到 编辑器 | 代码样式 | Go。 . 点击 其他 选项卡并选择 执行“重新设置代码格式”操作时(R) 复选框。

    在代码重新格式化操作后运行 gofmt

配置注释中的前导空格

在您应用了 重新格式化代码 操作 Ctrl+Alt+L 后,GoLand 可能会在注释文本前添加前导空格。

之前

之后

//easyjson:json
// easyjson:json

在 Go 中,注释也用作注解。 在某些库中,注释标记和注解指令之间的空格无法正确处理。 在前面的示例中, easyjson:json 是一个注解。

您可以禁用以某些前缀开头的注解的前导空格。

  1. 打开 设置 窗口(文件 | 设置)。

  2. 单击 编辑器 | 代码样式 | Go

  3. 点击 其他 选项卡。

  4. 请选择 在注释前添加空格 复选框。

  5. 注释前除外的空格 字段中,点击 添加 图标("添加"按钮)。

  6. 输入您想要添加为例外的前缀名称(例如, easyjson)。

为 Go 中的注释配置前导空格
最后修改日期: 2025年 12月 5日