VSCode go开发配置,提升编码效率

    之前因为有些go包在VSCode中直接go get下载不到,就没有安装VSCode相关的插件。写代码的时候VSCode不能自动导入用到的包或者删除已经注释代码里面用到包,往往注释了部分代码进行调试时提示“import config 包但是没有使用”的错误。也有没函数跳转追踪、代码自动提示和补全功能,今天有时间就好好配置了一下VSCode,配置完之后体验比之前好太多,希望也能帮到大家。

 一、VS Code下载地址

官方下载地址:https://code.visualstudio.com/Download

自己是在windows上进行安装和配置的。

 

二、安装简体中文插件

a. 打开VS Code,在左侧栏点击如下图中 “1” 所在的图标(扩展);

b. 在如图 “2” 所在的地方输入"Chinese"搜索;

c. 在搜索列表中找到 “Chinese (Simplified)” ,点击一下;

d. 在如图 “4” 所在的地方点击“Install”进行安装(因为已安装,所以显示了“Uninstall”)。

     安装好之后重启VS Code。

VSCode go开发配置,提升编码效率_第1张图片

三、安装go开发扩展

1.尝试使用VS Code自带的交互式命令安装

     自己首先尝试过VS Code中直接Ctrl + Shift + P打开交互式命令行进行安装,因为代理的问题,都安装失败。

VSCode go开发配置,提升编码效率_第2张图片

VSCode go开发配置,提升编码效率_第3张图片

安装失败的截图如上所示

2.使用goproxy代理进行安装

2.1 VS Code配置代理

      1.VS Code中打开终端并执行:

$ go env -w GO111MODULE=on
$ go env -w GOPROXY=https://goproxy.cn,direct

        如果提示你不支持 -w选项,使用“go help env”查看如何使用go env命令,是因为go版本低于1.13。那么可以直接在系统中设置用环境变量:

        a.“计算机”->"属性" -> "高级系统设置" -> "环境变量"->"用户变量"

        b."用户变量"->"新建"中添加两个环境变量,如下

  •              变量名:GO111MODULE,变量值:on
  •              变量名:GOPROXY,变量值:https://goproxy.cn(如果是go1.13的话,设置成https://goproxy.cn,direct)

2.2 下载go开发相关的相关库

   设置好代理之后重新打开VS Code,在终端中执行如下语句,下载go 开发工具库。

go get github.com/mdempsky/gocode
go get github.com/uudashr/gopkgs/v2/cmd/gopkgs
go get github.com/ramya-rao-a/go-outline
go get github.com/acroca/go-symbols
go get golang.org/x/tools/cmd/guru
go get golang.org/x/tools/cmd/gorename
go get github.com/cweill/gotests/...
go get github.com/fatih/gomodifytags
go get github.com/josharian/impl
go get github.com/davidrjenni/reftools/cmd/fillstruct
go get github.com/haya14busa/goplay/cmd/goplay
go get github.com/godoctor/godoctor
go get github.com/go-delve/delve/cmd/dlv
go get github.com/stamblerre/gocode
go get github.com/rogpeppe/godef
go get golang.org/x/tools/cmd/goimports
go get golang.org/x/lint/golint
go get golang.org/x/tools/gopls

2.3 编译生成go开发工具相关的可执行文件

go build github.com/mdempsky/gocode
go build github.com/uudashr/gopkgs/v2/cmd/gopkgs
go build github.com/ramya-rao-a/go-outline
go build github.com/acroca/go-symbols
go build golang.org/x/tools/cmd/guru
go build golang.org/x/tools/cmd/gorename
go build github.com/cweill/gotests/...
go build github.com/fatih/gomodifytags
go build github.com/josharian/impl
go build github.com/davidrjenni/reftools/cmd/fillstruct
go build github.com/haya14busa/goplay/cmd/goplay
go build github.com/godoctor/godoctor
go build github.com/go-delve/delve/cmd/dlv
go build github.com/stamblerre/gocode
go build github.com/rogpeppe/godef
go build golang.org/x/tools/cmd/goimports
go build golang.org/x/lint/golint
go build golang.org/x/tools/gopls

然后将生成的gocode.exe、gopkgs.exe等拷贝到%GOROOT%bin目录下。

2.4 设置自动导入导出包属性

      在VS Code的菜单栏,打开 "文件" -> "首选项" -> "设置" ,然后在搜索框中输入 “import” ,点击 “用户区” -> "Go" ,然后勾选 "Autocomplete Unimport Packages" ,并且 "GO Tool" 选择goimport,如下图所示。

VSCode go开发配置,提升编码效率_第4张图片

最后重启VS Code, 安装的工具就都生效了,可以重新打开你的项目进行更高效的coding了。

四、其他问题

1. go get 下载源代码究竟放到了哪里?

使用GOPATH管理依赖的情况:GOPATH变量中指定的第一个目录下。

使用go install进行包安装,编译好的包工具gocode也会放到GOPATH变量中指定的第一个目录下的bin文件夹中。

使用go mod管理依赖的情况:go.mod 文件所在目录的  ./pkg/mod/目录下。

2. 环境变量查看

go env  查看当前工作目录的环境变量设置

参考资料:

    https://www.liwenzhou.com/posts/Go/00_go_in_vscode/

    https://goproxy.cn/    (GoProxy 中国)

你可能感兴趣的:(go,vscode)