首页 > 代码库 > 配置Vim的Go开发环境

配置Vim的Go开发环境

最近准备把Go语言的开发环境迁移到linux下来,因为是用xshell ssh到Ubuntu server上的,Sublime肯定是没有办法用了,反正之前Vim用的也挺熟,索性就转移到Vim下开发了。


linux下Go的安装很方便,把官方的包下载下来,直接解压到home目录下,再配置下环境变量就可以了。我用的是Ubuntu Server,只要在home目录下的.profile文件中加入以下内容

  1. export GOROOT=$HOME/go    #go语言安装包的位置
  2. export PATH=$PATH:$GOROOT/bin 
  3. export GOPATH=$HOME/mygo #自己的代码放在mygo下
  4. export PATH=$PATH:$GOPATH/bin

Vim的插件管理用的是Vundle,在github上有备份,这里主要是添加Vim下Go语言的自动补全插件。

先用Go的命令行工具把gocode装上
go get github.com/nsf/gocode

再添加Vim对应的插件

  1. Bundle ‘dgryski/vim-godef‘

?
最后配置下gocode工具
gocode set propose-builtins true
执行gocode set命令查看返回值

默认情况下,gocode只会搜索
$GOPATH/pkg/$GOOS_$GOARCH````$GOROOT/pkg/$GOOS_$GOARCH
这两个目录下的包,如果有其他的地方要搜索可以调用
gocode set lib-path path来添加。


安装完上面的插件之后,在vim中编辑go文件就可以高亮显示了,如果需要自动补全的话,按下Ctrl+x Ctrl + o就会弹出补全列表。


查看当前文件的函数定义和结构体定义可以通过gotags配合tagbar插件实现

安装gotags
go get github.com/jstemmer/gotags

在vimrc里加上tagbar的配置

  1. let g:tagbar_type_go = {
  2. \ ‘ctagstype‘ : ‘go‘,
  3. \ ‘kinds‘ : [
  4. \ ‘p:package‘,
  5. \ ‘i:imports:1‘,
  6. \ ‘c:constants‘,
  7. \ ‘v:variables‘,
  8. \ ‘t:types‘,
  9. \ ‘n:interfaces‘,
  10. \ ‘w:fields‘,
  11. \ ‘e:embedded‘,
  12. \ ‘m:methods‘,
  13. \ ‘r:constructor‘,
  14. \ ‘f:functions‘
  15. \ ],
  16. \ ‘sro‘ : ‘.‘,
  17. \ ‘kind2scope‘ : {
  18. \ ‘t‘ : ‘ctype‘,
  19. \ ‘n‘ : ‘ntype‘
  20. \ },
  21. \ ‘scope2kind‘ : {
  22. \ ‘ctype‘ : ‘t‘,
  23. \ ‘ntype‘ : ‘n‘
  24. \ },
  25. \ ‘ctagsbin‘ : ‘gotags‘,
  26. \ ‘ctagsargs‘ : ‘-sort -silent‘
  27. \ }


来自为知笔记(Wiz)


配置Vim的Go开发环境