vim如何配置go语言环境
go语言没有如source insight般优秀的编辑器,试用了多种,vim算最好的,其次可以用liteide(有反查变量函数引用点、修改行变色功能),两者可配合使用。
更新:最好的是idea+go插件
下面是一步步搭建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 clone https://github.com/fatih/vim-go.git。 - 编辑
~/.vimrc文件,加入以下内容(最后一行用于禁止自动下载):syntax enable
filetype plugin on
set number
let g:go_disable_autoinstall =
此时,插件本身已经安装完成,可以根据 github.com/fatih/vim-go 的说明进行使用,其中要指出的是 <C-x><C-o> 为代码补全提示,且一般需要在输入 . 操作符之后使用。
let g:go_highlight_functions =
let g:go_highlight_methods =
let g:go_highlight_structs =
let g:go_highlight_operators =
let g:go_highlight_build_constraints =

let g:go_fmt_command = "goimports" 自动import对应文件。安装 neocomplete
如果想要实时的代码补全提示,可以通过安装 neocomplete 插件来实现,不过它对 VIM 的版本有比较高的要求,具体可以查看它的主页 github.com/Shougo/neocomplete.vim。
- 进入目录
~/.vim/bundle后执行命令git clone https://github.com/Shougo/neocomplete.vim.git。 - 编辑
~/.vimrc文件,加入行let g:neocomplete#enable_at_startup = 1。这样就能在启动 VIM 时自动开启实时补全功能。

安装ctags与gotags
sudo apt-get install ctags,然后go get -u github.com/jstemmer/gotags安装 Go 语言的相关解析器。~/.vimrc文件加入以下内容:
let g:tagbar_type_go = {
\ 'ctagstype' : 'go',
\ 'kinds' : [
\ 'p:package',
\ 'i:imports:1',
\ 'c:constants',
\ 'v:variables',
\ 't:types',
\ 'n:interfaces',
\ 'w:fields',
\ 'e:embedded',
\ 'm:methods',
\ 'r:constructor',
\ 'f:functions'
\ ],
\ 'sro' : '.',
\ 'kind2scope' : {
\ 't' : 'ctype',
\ 'n' : 'ntype'
\ },
\ 'scope2kind' : {
\ 'ctype' : 't',
\ 'ntype' : 'n'
\ },
\ 'ctagsbin' : 'gotags',
\ 'ctagsargs' : '-sort -silent'
\ }
使用:光标在某变量或函数上,输入gd跳转。ctrl+o返回
安装tagbar
装 tagbar 插件了,和安装 VIM-GO 一样,首先进入
~/.vim/bundle目录。然后执行git clone https://github.com/majutsushi/tagbar.git。编辑
~/.vimrc文件,加入行nmap <F8> :TagbarToggle<CR>。这是个快捷键映射,你可以把F8换成任意的。

安装nerdtree
进入目录
~/.vim/bundle后执行命令git clone https://github.com/scrooloose/nerdtree.git。编辑
~/.vimrc文件,加入行map <F7> :NERDTreeToggle<CR>。如此一来,当你需要浏览目录的时候,就可以使用快捷键<Ctrl+n>来调出浏览窗口了。

安装mark.vim
从http://www.vim.org/scripts/script.php?script_id=2666下载,用vim打开后输入:so %即可,详见:h vimball
nmap ml <Plug>MarkSet #高亮或反高亮一个单词
nmap md <Plug>MarkClear
nmap mn <Plug>MarkSearchAnyNext #跳转到任一下一个高亮单词
nmap mp <Plug>MarkSearchAnyPrev
nmap mf <Plug>MarkSearchCurrentNext #跳转到当前高亮的下一个单词
nmap mb <Plug>MarkSearchCurrentPrev

安装visualmask
| 名称: | visualmask |
| 下载地址: | |
| 安装: | 把下载下来的 visualmask.vim 放到 $HOME/.vim/plugin 目录下。 |
| 帮助: | 见 visualmask.vim 的开头部分。 |
普通模式下按 ctrl+F2 或者 mm 即可进行设置高亮书签;按 F2 或 Shift+F2 进行跳跃;将光标移动到书签上,再按 ctrl+F2 或 mm 取消该书签。
使用的过程中遇到一个问题,每次添加书签的时候都会提示:E197: Cannot set language to "en_US"。将 visualmask.vim 的第55行:
exec ":lan mes en_US"
改成以下即可解决:
exec ":lan mes en_US.utf8"g

安装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
光标停留在某函数或变量名上,按F4回车,即可全局搜索调用处

ctrlP找文件快捷
http://www.vim.org/scripts/download_script.php?src_id=19448
直接<Ctrl + p>,输入文件名,可像sublime一样快速定位文件。

vim如何配置go语言环境的更多相关文章
- 如何使用vscode快速配置C语言环境(简单实用)
需要用到的工具: VSCode(Visual Studio Code) 一.首先打开官网链接,然后根据自己的电脑选择合适的安装程序进行下载. 二.在安装时默认点击下一步,最后记得勾选上添加path到系 ...
- linux下安装配置go语言环境
1,golang中国下载go源码 http://www.golangtc.com/download 请对应系统版本号,linux-amd64.tar.gz为64位系统(推荐) ,linux-386 ...
- Vs code配置Go语言环境-Mac
背景:最近受朋友介绍,学习Go语言.那么开始吧,首先从配置环境开始. 电脑:Mac Air,Vs code已经安装 一.Go下载和安装 下载地址:https://golang.google.cn/dl ...
- Ubuntu 14.04的vim编辑器配置Python开发环境
#1 $ sudo apt-get install exuberant-ctags vim-scripts $ vim-addons install taglist #2 到:http://www.v ...
- 重装系统快速恢复使用习惯(各种图标摆放位置、环境变量、C盘可能存放的文件备份、编辑器配置、语言环境导出)
目录 电脑重装系统注意点 - 尽可能快速恢复你熟悉的 windows 基本使用场景 最好截图的点 常见文件拷贝 入口 查看桌面图标.快捷方式有哪些 程序员大合集 环境变量相关 pycharm 快捷键等 ...
- Ubuntu16.04 部署配置GO语言开发环境 & 注意事项
1. 安装GO 安装go语言包: $ curl -O https://storage.googleapis.com/golang/go1.10.1.linux-amd64.tar.gz 下载完成后 ...
- Kali Linux搭建Go语言环境
准备: (1)Kali Linux系统(此实验为VMware环境) (2)Go语言安装包 具体过程: (1)到官网下载Go语言安装包,如图示操作(官网可能需要梯子,没有的可以从国内相关网站下载) ( ...
- macOS中Vim基本配置,颜色主题/语法/indent设置
macOS中Vim基本配置 Vim的初始化配置 .vimrc 存放位置 macOS 环境下 vim 的初始化配置文件为 .vimrc , 通常有两个(系统版本和用户版本),一个位于 /usr/shar ...
- 切换debian8系统语言环境
想切换操作系统的默认语言环境,可以使用如下命令,而不用重新安装系统: 查看操作系统的语言: # env | grep LANG 使用root导入要使用的系统语言: # export LANG=en_U ...
随机推荐
- day1 初识Linux
linux 基础 1.Linux简介1) 掌握Linux的定义:Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户.多任务.支持多线程和多CPU的操作系统. ...
- 使用MS Test进行单元测试
MS Test也可以方便的进行单元测试,可以通过Visual Studio很方便的建立单元测试. 添加对待测试工程的引用,即可方便的开始单元测试. 最基本的一些测试使用如下: using System ...
- 兼容IE浏览器的js浏览器全屏代码
众所周知,IE是个奇葩的浏览器,但是由于用户量很大,开发者还是不得不为IE考虑一下,于是,各种浏览器相关的操作,都要多一个特别的判断——专门针对IE浏览器的判断,这里的全屏也不例外.看代码: func ...
- springboot+redis
上篇整合了DB层,现在开始整合缓存层,使用redis. springboot驱动注解,使用spring注入JedisPool便可封装自己的redis工具类. package hello.configu ...
- Apache Flink初接触
Apache Flink闻名已久,一直没有亲自尝试一把,这两天看了文档,发现在real-time streaming方面,Flink提供了更多高阶的实用函数. 用Apache Flink实现WordC ...
- spring mvc controller间跳转 重定向 传参 (转)
转自:http://zghbwjl.blog.163.com/blog/static/12033667220137795252845/ 1. 需求背景 需求:spring MVC框架contr ...
- Thinking in Java——笔记(15)
Generics The term "generic" means "pertaining or appropriate to large groups of class ...
- Xcode清除缓存等
Xcode出现一些错误的时候,有时候不是代码的问题,需要清理一下Xcode的缓存或者项目的Product等: 1. Product清理 1.1 Product-Clean 1.2 Product- ...
- 使用天天模拟器开发Android应用
自带的模拟器太慢,Genymotion配置过于复杂,天天模拟器旧版本直接可用于调试,由于新版本的天大模拟器端口号被修改为6555,要想用于开发,需要使用ADB命令进行连接. 下载天天模拟器 天天模拟器 ...
- 为什么要使用CachedRowSetImpl?
很多情况我们使用ResultSet 就会因为这样那样的问题,rs被关闭或数据链接被关闭,导致ResultSet不能使用.其实这个问题我们可以用CachedRowSetImpl来解决.我的理解是这是一个 ...