98

我将 IntelliJ 与 Golang 插件一起使用。是否可以将 IDE 配置为在文件保存时执行 gofmt?

4

5 回答 5

147

当然可以。

  1. 安装文件观察器插件
  2. 打开“首选项->工具->文件观察者”并添加一个新的观察者
  3. 设置File Type: Go, Program: 的绝对路径gofmt, Arguments:-w $FilePath$
  4. 点击OK

在此处输入图像描述

于 2015-11-18T09:52:22.533 回答
62

Gogland EAP 16弃用了 On Save 操作并将其替换为File Watchers 插件

如果您之前配置了 On Save 操作,IDE 将提示您安装插件并自动配置所有内容。如果您想自己从头开始设置,请检查您是否有 File Watchers 插件,如果没有安装它。

启用 gofmt:

  1. Settings | Tools | File Watchers
  2. 单击+按钮并选择go fmt
  3. 默认值很好。
  4. 在高级选项中选择:
    • 自动保存编辑的文件以触发观察者
    • 触发外部变化的观察者
  5. 点击确定!

配置

你可以对goimports和做同样的事情gometalinter

于 2018-03-08T09:34:00.523 回答
54

如果您使用的是 Gogland,您可以在 Preferences 下选择 On Save

在此处输入图像描述

于 2017-02-10T21:52:13.190 回答
2

更新:

对于新版本的 Goland:

  1. 打开File->Settings->Tools->File Watchers
  2. 点击+按钮并选择go fmt
  3. Ok

完毕 :)

于 2021-01-12T10:09:01.153 回答
2

2021 年 9 月更新。

如果您使用的是 2021.2 及更高版本(2021 年 7 月)的 GoLand,除了 File Watchers 之外,还有一些选项可以在保存时启用 gofmt。

  • 在首选项/设置下启用在代码重新格式化时运行 gofmt | 编辑 | 代码风格 | 去 | 其他在代码重新格式化选项位置运行 gofmt
  • 在首选项/设置下启用重新格式化代码| 工具 | 保存操作在此处输入图像描述
  • 在 macOS上按Command+或在 Windows/Linux 上按+保存更改。SCtrlS
于 2021-09-06T14:06:13.523 回答