Go for Visual Studio Code

语言特色

智能感知

  • 键入时自动完成符号(使用gocode)
  • 键入时的签名帮助(使用gogetdoc或godef + godoc)
  • 将鼠标悬停在符号上的快速信息(使用gogetdoc或godef + godoc)

代码导航

  • 转到或Peek定义符号(使用gogetdoc或godef + godoc)
  • 查找符号的参考和接口的实现(使用guru)
  • 转到文件中的符号或查看文件大纲(使用go-outline)
  • 转到工作区中的符号(使用go-symbols)

代码编辑

  • 用于快速编码的Code Snippets
  • 格式化文件代码保存以及手动格式化(使用goreturns或goimports或gofmt)
  • 符号重命名(使用gorename。注意:对于重命名后撤消到Windows中工作,你需要在你的路径中使用diff工具)
  • 将导入添加到当前文件(使用gopkgs)
  • 在struct字段上添加/删除标签(使用gomodifytags)
  • 为接口生成方法存根(使用impl)
  • 使用默认值填充结构文字(使用fillstruct)

诊断

  • Build-on-save编译代码并显示构建错误。 (使用go build和go test)
  • Vet-on-save运行go vet并将错误显示为警告
  • Lint-on-save将linting错误显示为警告(使用golint,gometalinter,megacheck,golangci-lint或revive)
  • 键入时使用语义/语法错误报告(使用gotype-live)

测试

  • 使用命令或代码段在光标,当前文件,当前包中,在整个工作区中运行测试
  • 使用命令或代码段在游标下运行基准
  • 根据需要或在包中运行测试后显示代码覆盖率。
  • 生成单元测试骨架(使用gotests)

调试

  • 调试代码,二进制文件或测试(使用delve)
    有关更多读取使用VS代码调试Go代码。

有关更多读取使用VS代码调试Go代码。

远程调试
要使用VS Code进行远程调试,请阅读远程调试。

其他

安装/更新所有相关的Go工具
上传到Go Playground(使用goplay)

linter

linter是一种提供编码风格反馈和建议的工具。默认情况下,此扩展程序使用官方golint作为linter。

命令

除了集成的编辑功能外,该扩展还在Command Palette中提供了几个用于处理Go文件的命令:

Go:添加Import以从Go上下文中的包列表中添加导入
Go:当前GOPATH以查看您当前配置的GOPATH
Go:在光标处测试以在活动文档中的当前光标位置处运行测试
Go:Test Package在包含活动文档的包中运行所有测试
Go:测试文件以在当前活动文档中运行所有测试
Go:Test Previous运行以前运行的测试命令
Go:在Workspace中测试所有包以在当前工作空间中运行所有测试
Go:为包生成单元测试生成当前包的单元测试
Go:为文件生成单元测试生成当前文件的单元测试
Go:为函数生成单元测试生成当前文件中所选函数的单元测试
Go:安装工具安装/更新扩展所依赖的所有Go工具
Go:添加标签将已配置的标签添加到选定的结构字段。
Go:删除标签从选定的结构域中删除已配置的标签。
Go:生成接口存根为给定接口生成方法存根
Go:Fill Struct使用默认值填充struct literal
Go:在Go Playground上运行将当前选择或文件上传到Go Playground
您可以从命令托盘访问所有上述命令(Cmd + Shift + P或Ctrl + Shift + P)。

其中很少一部分在编辑器上下文菜单中也可用作实验性功能。要控制在编辑器上下文菜单中显示哪些命令,请更新go.editorContextMenuCommands设置。


参考:Go for Visual Studio Code


你可能感兴趣的:(go)