加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

GoLang之再谈Gvim/Vim配置——使用Vundle安装vim-go

发布时间:2020-12-16 19:25:39 所属栏目:大数据 来源:网络整理
导读:2014-11-09 wcdj 摘要 :之前总结过在subl中使用GoLang,《GoLang及Sublime Text 2之Mac OS X 10.8.4开发环境安装 》。其实GoLang的安装包中已经包含了支持Vim的编写插件,配置方法很简单,可参考《GoLang之Gvim/Vim配置》。本文再讨论下使用Vundle如何在Vim

2014-11-09 wcdj


摘要:之前总结过在subl中使用GoLang,《GoLang及Sublime Text 2之Mac OS X 10.8.4开发环境安装 》。其实GoLang的安装包中已经包含了支持Vim的编写插件,配置方法很简单,可参考《GoLang之Gvim/Vim配置》。本文再讨论下使用Vundle如何在Vim中配置GoLang开发环境vim-go。


根据Vundle的安装说明,首先安装Vundle:

$ git clone https://github.com/gmarik/Vundle.vim.git ~/.vim/bundle/Vundle.vim

然后对.vimrc进行配置,将Vundle的相关配置置在最开始处,下面只显示关于Vundle的相关配置:

" -------------
" Vundle
" https://github.com/gmarik/Vundle.vim
" -------------

set nocompatible              " be iMproved,required
filetype off                  " required

" set the runtime path to include Vundle and initialize
set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()
" alternatively,pass a path where Vundle should install plugins
"call vundle#begin('~/some/path/here')

" let Vundle manage Vundle,required
Plugin 'gmarik/Vundle.vim'

" The following are examples of different formats supported.
" Keep Plugin commands between vundle#begin/end.
" plugin on GitHub repo
""Plugin 'tpope/vim-fugitive'
" plugin from http://vim-scripts.org/vim/scripts.html
""Plugin 'L9'
" Git plugin not hosted on GitHub
""Plugin 'git://git.wincent.com/command-t.git'
" git repos on your local machine (i.e. when working on your own plugin)
""Plugin 'file:///home/gmarik/path/to/plugin'
" The sparkup vim script is in a subdirectory of this repo called vim.
" Pass the path to set the runtimepath properly.
""Plugin 'rstacruz/sparkup',{'rtp': 'vim/'}
" Avoid a name conflict with L9
""Plugin 'user/L9',{'name': 'newL9'}

" Install Vim-go
Plugin 'fatih/vim-go'

" All of your Plugins must be added before the following line
call vundle#end()            " required
filetype plugin indent on    " required
" To ignore plugin indent changes,instead use:
"filetype plugin on
"
" Brief help
" :PluginList       - lists configured plugins
" :PluginInstall    - installs plugins; append `!` to update or just :PluginUpdate
" :PluginSearch foo - searches for foo; append `!` to refresh local cache
" :PluginClean      - confirms removal of unused plugins; append `!` to auto-approve removal
"
" see :h vundle for more details or wiki for FAQ
" Put your non-Plugin stuff after this line
其中,配置中的 Plugin 'fatih/vim-go' 告诉Vundle我们想要安装vim-go这个插件,安装方法如下:

先用vim打开任意一个go源文件(假如之前并未配置过GoLang开发环境,确保~/.vim/syntax下没有使用vim.go,打开go的源文件后不会有对应的语法显示),例如,hello.go。然后使用命令 :PluginInstall 就可以安装vim-go了,安装成功后会在最下面显示Done的字样。



安装好插件后,再次用vim打开hello.go文件就可以看到vim-go插件已经生效了。




接下来的工作:(install necessary Go tools)

Please be sure all necessary binaries are installed (such as gocode,godef,goimports,etc..). You can easily install them with the included:GoInstallBinaries. Those binaries will be automatically downloaded andinstalled to your$GOBIN environment (if not set it will use $GOPATH/bin).It requiresgit and hg for fetching the individual Go packages.


在Vim中使用命令 :GoInstallBinaries 会使用hg下载vim-go使用的二进制工具,具体源码可以查看文件:~/.vim/bundle/vim-go/plugin/go.vim

" these packages are used by vim-go and can be automatically installed if
" needed by the user with GoInstallBinaries
let s:packages = [
             "github.com/nsf/gocode", "code.google.com/p/go.tools/cmd/goimports", "code.google.com/p/rog-go/exp/cmd/godef", "code.google.com/p/go.tools/cmd/oracle", "code.google.com/p/go.tools/cmd/gorename", "github.com/golang/lint/golint", "github.com/kisielk/errcheck", "github.com/jstemmer/gotags", ]

或者使用go get进行下载:

gerryyang@mba:~$go get github.com/kisielk/errcheck
package code.google.com/p/go.tools/go/loader: Get https://code.google.com/p/go/source/checkout?repo=tools: dial tcp 173.194.127.32:443: operation timed out
package code.google.com/p/go.tools/go/types: Get https://code.google.com/p/go/source/checkout?repo=tools: dial tcp 173.194.127.32:443: operation timed out


如果下载失败,也可以通过 gopm.io (Download Go packages with version,but no require for version control tools like Git and Hg,etc.) 根据路径单独下载。



参考

[1] Golang开发环境搭建-Vim篇

[2] Go development environment for Vim

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读