go语言没有如source insight般优秀的编辑器,试用了多种,vim算最好的,其次可以用liteide(有反查变量函数引用点、修改行变色功能),两者可配合使用。
下面是一步步搭建vim go语言编辑环境的过程。
ubuntu为例,前提:go开发环境配置好、git安装好。
安装 Pathogen
-
前往http://www.vim.org/scripts/script.php?script_id=2332,找到下方的最新版 Package ZIP 包下载链接;
-
下载解压后你会得到一个名称为
autoload
的目录,将目录下的文件pathogen.vim
拷贝至~/.vim/autoload/pathogen.vim
; -
编辑
~/.vimrc
文件,在顶部加入行call pathogen#infect()
。
安装 VIM-GO 插件
- 进入目录
~/.vim/bundle
后执行命令git clonehttps://github.com/fatih/vim-go.git
。 - 编辑
~/.vimrc
文件,加入以下内容(最后一行用于禁止自动下载):Syntax enable filetype plugin on set number let g:go_disable_autoinstall = 0
此时,插件本身已经安装完成,可以根据github.com/fatih/vim-go的说明进行使用,其中要指出的是<C-x><C-o>
为代码补全提示,且一般需要在输入.
操作符之后使用。
let g:go_highlight_functions = 1 let g:go_highlight_methods = let g:go_highlight_structs = let g:go_highlight_operators = let g:go_highlight_build_constraints = 1
安装 neocomplete
如果想要实时的代码补全提示,可以通过安装 neocomplete 插件来实现,不过它对 VIM 的版本有比较高的要求,具体可以查看它的主页github.com/Shougo/neocomplete.vim。
- 进入目录
git clonehttps://github.com/Shougo/neocomplete.vim.git
。 - 编辑
~/.vimrc
文件,加入行let g:neocomplete#enable_at_startup = 1
。这样就能在启动 VIM 时自动开启实时补全功能。
安装ctags与gotags
let g:tagbar_type_go = { \ 'ctagstype' : go',\ kinds : [ \ p:packagei:imports:1c:constantsv:variablest:typesn:interfacesw:fieldse:embeddedm:methodsr:constructorf:functions \ ],0);">sro.kind2scope : { \ tctypenntype \ },0);">scope2kindctagsbin' : gotagsctagsargs-sort -silent \ }
安装tagbar
-
装 tagbar 插件了,和安装 VIM-GO 一样,首先进入
~/.vim/bundle
目录。然后执行git clonehttps://github.com/majutsushi/tagbar.git
。 -
编辑
nmap <F8> :TagbarToggle<CR>
。这是个快捷键映射,你可以把F8
换成任意的。
安装nerdtree
-
进入目录
git clonehttps://github.com/scrooloose/nerdtree.git
。 -
编辑
map <F7> :NERDTreeToggle<CR>
。如此一来,当你需要浏览目录的时候,就可以使用快捷键<Ctrl+n>
来调出浏览窗口了。
安装mark.vim
从http://www.vim.org/scripts/script.php?script_id=2666下载,用vim打开后输入:so %即可,详见:h vimball
安装visualmask
名称: | visualmask |
下载地址: | |
安装: | 把下载下来的 visualmask.vim 放到 $HOME/.vim/plugin 目录下。 |
帮助: | 见 visualmask.vim 的开头部分。 |
普通模式下按 ctrl+F2 或者 mm 即可进行设置高亮书签;按 F2 或 Shift+F2 进行跳跃;将光标移动到书签上,再按 ctrl+F2 或 mm 取消该书签。
安装Ack
先装ack-grep,sudo apt-get install ack-grep
git clone https://github.com/mileszs/ack.vim.git ~/.vim/bundle/ack.vim
vimrc中加入 :
map <F4> :Ack