使用 File Watcher 和 goimports-reviser 自动格式化 Golang 代码

goimports-reviser 是一个管理 import 分组的工具,当前也已支持( gofmt )格式化代码。github 地址 [https://github.com/incu6us/goimports-reviser][https_github.com_incu6us_goimports-reviser]

这里来

安装 goimports-reviser

go install -v github.com/incu6us/goimports-reviser/v3@latest

设置 File Watcher

Goland 打开 ***文件 →设置 → 工具→File Watcher ***

新增一个自定义 ,参数如下

配置项说明
文件类型Go文件
作用域当前文件
程序goimports-revisergoimports-reviser 可执行程序路径
实参-rm-unused -format -use-cache -company-prefixes=git.test.com $FilePath$这里没有加 -set-alias ,根据个人需求,prefixes是私有库地址
要刷新的输出路径$FileName$这个一定要加,不然会容易出现 “文件缓存冲突”
自动保存编辑的文件以触发观察程序false取消勾选,否则容易出现还没编辑完成就被格式化了

如图所示

2023-11-02_17-55.png

取消保存时的操作

Goland保存时会默认重新格式化代码和*优化 import ,*因为 goimports-reviser 会帮我们做 goimports 和 gofmt 操作,我们保存时没必要再重新执行这些功能。这个根据个人情况修改

Goland 打开 ***文件 →******设置 → 工具→保存时的操作 ,***取消勾选 重新格式化代码、优化 import

如图所示

image2023-7-2_15-16-9.png