golang idea goland 配置自动格式化 proto 文件代码
golang idea goland 配置自动格式化 proto 文件代码
背景
相信大家对 grpc 都不陌生,在使用 grpc 协议进行微服务开发时, 其他协议proto 文件有自己的格式,而很多 idea 比如 goland 并没有做对应的文件格式化,一般只适配了语言本身的代码格式化,比如 goland 开发工具在编写代码时,保存则会自动进行格式化(内置了 go fmt)
在团队开发中,因为Proto文件里字段缩进、换行不统一,每次合并代码都要手动调整格式,光解决格式冲突就花了半小时。
但是其实 Goland 是可以配置 Proto 自动格式化,因此可以统一团队规范,节省大量手动调整时间。
那么 goland 如何配置才能让 proto 文件像 go 文件一样有 go fmt 工具统一进行格式化呢?
答案:使用 clang-format 格式化工具,并且配置 goland
安装clang-format
电脑需要先安装 clang-format,注意安装后要记住安装的位置,方便后续 goland 的配置
-
windows
需要前往官网LLVM Snapshot Builds下载电脑相应的版本
下载后双击安装即可(注意记住安装位置)
-
mac
brew install clang-format
Which clang-format
goland 配置
设置—Tools—File Watchers—新增
添加 clang-format 工具,并且配置工具的使用规则,具体配置如下图:
Arguments 填写以下代码
-style="{editor.defaultFormatter: zxh404.vscode-proto3}"
-i
$FilePath$配置完成后,保存,然后重启 goland 开发工具,配置生效
接下来就开始编写 proto 文件,ctrl + s 保存则会自动对文件进行格式化(效果和 go 文件的格式化一样)
注意:不一定是保存即格式化,在 Advanced Options 配置中可以选择自己合适的格式化时机,比如自动保存格式化、文件变化则格式化等等
不仅仅是 proto,其他格式也尽可能要做到团队成员统一,才能避免合并代码冲突的问题,节省合并时间
版权声明
未经授权,禁止转载本文章。
如需转载请保留原文链接并注明出处。即视为默认获得授权。
未保留原文链接未注明出处或删除链接将视为侵权,必追究法律责任!