如果遇到其它好的操作,会更新该文,更新时间:2022-12-07
为何写起这篇文章,是因为我一直以来使用的是 Goland 编辑器,但是它是收费,说句 “不要脸” 的话,我用的是破解的。
但知道这不好,所以就想试试看 VScode 也能否类似 Goland 的一样,使用起来很舒适。
新的选择
这是最新追加的内容,如果不想搞这么多配置,可以考虑 JetBrains Fleet,名字有点熟悉吧,免费的。
前提
- Go - 2. 环境搭建
- VScode
插件
这是 VScode 所需要的安装的插件,我会说明每个插件的作用。
- gopls,提示安装即可:VSCode 建议你启用 gopls,它到底是个什么东东? - 墨天轮
- VScode 提示 Analysis Tools Missing 时,进行安装。
- staticcheck静态检测
- dlv 调试工具
- (可选)wsl:windows环境下体验 Linux 开发环境。
使用
Debug
- 想 debug 的行前点击,如下图:
- 点击左侧 Debug。
开启自动保存
当文件修改后,默认是不会自动保存的。
生成接口实现
安装 impl 工具,安装方法:快捷方式 → 查看教程。
自动生成单元测试
安装 gotests,安装方法:在一个要生成单元测试的方法或函数处右键点击
Go: Generate Unit Tests For Function
,如果没有安装 gotests,会提示你安装。补充:
生成好单元测试后,如果在单元测试方法上方点击
run test
运行时,其中的 t.Log
函数时,默认是不会进行输出的。原理是还是帮你执行了 go test 命令,只需要跟上 -v 参数即可,如何配置呢,如下:
自动填充结构体字段或删除
在初始化结构体时,在需要给所有字段赋值时,可以将所有字段进行自动填充。
打开命令面板 → Go: Fill struct,第一次的时候会提示你安装 fillstruct 工具。
删除如下图:
自动给结构体增加 tag
打开命令面板,点击如下图命令,如果第一次会提示安装 gomodifytag 工具。
默认的生成结果,如下所示:
type Student struct { Name string `json:"name,omitempty"` Height float64 `json:"height,omitempty"` }
如果想自定义,则按下图打开设置,对于我,我不想增加 omitempty,则可进行删除。
transform(命名方式):
- snakecase(默认)表示下划线形式,如:snake_case
- camelcase 驼峰命名,如:camelCase
tags(标签名,多个以逗号分隔):json,xml
重构函数
选中所有重构的部分,打开命令面板,输入下图,第一次提示安装 godoctor。
快捷方式
内容太多,我独立成单独一篇文章:
VScode 提高效率的操作VScode 优点
- 免费
- 登陆 Github 账号,同步配置