推荐 5 个 Goland 高效率骚操作
共 1277字,需浏览 3分钟
·
2021-11-11 21:17
本篇文章给大家介绍 5 个 Goland 的使用方法。
自定义结构 tag
Goland 一个很好用的功能:tag 自动补全。在 struct 结构里,可以在字段类型后敲入 json 或 xml 向结构添加标记。
Goland 默认的 json 都是下滑线格式的。但是有的时候会有特殊的需求。
举个例子:公司对接口返回值的字段是有统一的要求,大部分情况下 json 格式的返回值以下滑线居多,但是也有驼峰格式的。如果遇到这种情况下,该如何调整 tag 自动补全呢?
还有种情况,有些公司会自定义 tag 字段,这些字段 goland 肯定是没有内置的。如果遇到这种情况,也想让 tag 自动补全,该如何做呢?
代码自动同步远程服务器
Goland 看代码是个比较舒服的事情,毕竟 Goland 提供了很多的功能,如:Find Usages, 查看接口实现,Debug 等。
因为种种原因吧,很多情况我们需要将代码推送远程的服务器进行代码的编译工作。通过打包或者 git 同步方式,总归是有点麻烦,有没有一种方式本地修改完代码,自动把代码同步到远程呢?
Goland 恰好提供了这个功能。
go list -m 失败问题
这个一般情况下是下载 go.mod 依赖失败造成的。设置 Goland 的 Goproxy 即可。
代码折叠
我的强迫症属于比较严重的那种。我特别不能接受代码被折叠。
Goland 折叠代码的地方有三处:import 折叠,error 折叠,string format 折叠,如何关闭他们呢?
Project 目录自动选择打开的文件
看源码,我们是需要知道当前打开的文件所处的目录的,这样对整个代码流程理解是有帮助的。Goland 默认是不在 Project 目录选择打开的文件的。该如何设置呢?
go 工具推荐
golangci-lint[1] 一款集成了 Go 的所有工具链的工具,极好用,可以集成到 goland 中
gofumpt[2] 自动将格式化代码替换的工具,用过的都说好,可以集成到 goland 中
json to go[3] 一款 chrome 插件,自动将 json 或者 mysql 语句转成对应的 struct,省时省力的神器
参考资料
[1]golangci-lint: https://github.com/golangci/golangci-lint
[2]gofumpt: https://github.com/mvdan/gofumpt
[3]json to go: https://chrome.google.com/webstore/detail/json-to-go/adibamafcjbolhaaccnhdebpncglaohb
⬇⬇⬇