为Vim配置Golang开发环境

Blog有一段时间没更新了,上个月不慎感冒,结果接近一个多月才算好,看来注意身体很重要。

公司前一段时间采购书籍,提交了两本书的购书申请,包括Node.js和Golang两本书,Node.js算是看过了一遍,由于项目上事情太多,Golang的书扔在一旁,一直没时间看,直到最近被通知该还书了,哥才忙里偷闲,看起了Golang的书。

不看不要紧,这一看,就一发不可收拾的迷上了golang,还顺便抽时间把公司电脑(Windows环境)和家里电脑(Mac OS环境)都配置上了Golang开发环境,也把Vim相应的插件更新了一次。这下完全可以用Vim来编写和开发Golang程序了。

Vim的配置不麻烦,主要是Golang环境的一些设置,在此记录一下,用以备忘。

就拿家里的Mac OS来说事吧,先得安装Golang程序。之前电脑安装过brew,安装golang就很简单了:

1
2
brew update
brew install go

就这样,Golang就安装好了,然后进行一些必要的环境变量设置。在Golang中,比较重要的几个环境变量:

$GOPATH,可以认为是你开发Golang的工作环境目录。

$GOROOT,是安装Golang的目录

你可以在命令行用命令: go env查看环境变量的设置。这些环境变量的配置,你可以放在你的.bashrc里面。

下面是我的.bashrc设置,供参考:

1
2
3
4
export GOROOT=/usr/local/Cellar/go/1.2/libexec
export GOPATH=$HOME/workspace
export GOBIN=$HOME/workspace/bin
export PATH=$PATH:$GOPATH/bin

设置好后,就可以安装各种工具了,我用到的几个Golang的工具,包括:

gotags 这个用来配合vim的tagbar,查看方便的生成和查看文件中的各种方法,并进行跳转

goimport 根据你所使用的方法,自动调整import中引用的内容,比较方便。就像Visual Studio中对using的整理和重组的功能。这个插件还能自动格式化你的Golang代码,让你的代码格式始终符合Golang标准。你可以随时用vim命令 :Fmt 来格式化你的代码,也可以每次保存代码的时候,让vim自动为你格式化代码(稍后会提到)

godef 实现在代码中的跳转,从函数调用的地方,直接跳转到函数的定义。默认的命令是:gd

gocode 这个就不用说了,必备利器,实现Golang的代码自动补全,好处你懂的。

Vim所用到的插件,因为我用Vundle管理所有的插件,所以维护起来更方便。直接加入下面的插件到vim配置文件中,然后用:BundleInstall自动安装了:

1
2
3
Bundle 'dgryski/vim-godef'
Bundle 'Blackrush/vim-gocode'
Bundle 'majutsushi/tagbar'

你还可以这样设置一下,每次保存文件的时候,自动格式化你的代码格式:

1
autocmd BufWritePre *.go :Fmt

配置好各种插件,最后试试效果:

支持语法高亮,右边是TagBar,输入关键函数的时候,用 (C-x)(C-o)呼出自动补全菜单,这下在vim下写Golang方便多了。

支持原创技术分享,据说打赏我的人,都找到了女朋友!