myfmt简介
myfmt是我自己在github上开源的一款代码格式化工具,格式化golang
why myfmt
golang代码通过格式化可以使风格统一, 这样即使是不同的程序员看到同样一份代码头也不会变得那么大
你可以通过下面的途径来格式化你的 go code
- 手动使用
go fmt
- IDE保存的时候,自动格式化
既然IDE都能搞定的事,为何又要折腾?
因为我的工作环境仅支持vim 和 sublime 2种环境,goland会很卡
sublime之前配的有golang代码保存自动格式化,但是如果你不小心开了PS or AI,那么一保存
你会发现即使一个小小的修改你都会卡半天,很浪费时间,所以我就把sublime的格式化配置删掉了;
这样就导致我必须经常切换到不同的目录去go fmt
,这显得很机械,显然把宝贵时间浪费在fmt上是很不理智的,于是myfmt应运而生,你可以把它看做是go fmt
的升级版
myfmt特性
- 第一次运行,当前文件夹及其子文件夹的所有go文件都会被格式化
- 再次运行,只会格式化被修改后的文件
这样你在github上提交代码的时候就不会混乱,既美化了代码,又只会在对应的文件上打上你想要的commit,完美!
安装和使用
# download
go get https://github.com/scott-x/myfmt.git
cd myfmt
# init database
go run db/bin/init.go
# install
go install github.com/scott-x/myfmt
# use
myfmt
演示: