linux vim 配置 go 开发环境
- 安装vim-go 插件
vim 暂时对golang 还不支持语法高亮,如果用户希望使用vim 开发golang 程序,还需要给vim 安装对应的插件
首先需要安装一个vim-pathogen vim插件管理工具
mkdir -p ~/.vim/autoload ~/.vim/bundle
curl -LSso ~/.vim/autoload/pathogen.vim https://tpo.pe/pathogen.vim
cd ~/.vim/bundle/
编辑 ~/.vimrc 配置,增加以下内容
execute pathogen#infect()
syntax on
filetype plugin indent on
重启vim 即可安装成功,之后如果想要安装其他插件,只需把插件放到 ~/.vim/bundle 目录下, 重启vim ,vim-pathogen就会帮你自动安装好插件。
安装 vim-go 插件
vim-go 是一款go代码高亮和语法检查的插件,插件安装方式
cd ~/.vim/bundle/
git clone https://github.com/fatih/vim-go.git
然后使用vim 随意打开一个可编译的文件,然后执行安装vim-go 插件,该命令需要“科学上网”,因为要从网上download 对应的可执行文件
:GoInstallBinaries
vim安装网 vim-go 后,用户在vim 编写 .go 后缀的文件时,会对代码进行自动缩紧,由于作者非常不喜欢“自动缩紧”功能,所以坚决要关闭“自动缩紧”功能,关闭的方式,打开 ~/.vim/bundle/vim-go/indent/go.vim 文件,将以下内容注释掉(大约 19 - 21 行)。
但是由于 vim-go 插件会在退出编辑文件时直接格式化**.go 文件,所以注释掉也没有太大用处。
"setlocal autoindent
"setlocal indentexpr=GoIndent(v:lnum)
"setlocal indentkeys+=<:>,0=},0=)
- 安装gocode插件
gocode是一款go的代码提示插件
执行以下命令安装gocode,这样在 ${GOPATH}/bin 目录下就有gocode 的可执行程序了
cd ${GOPATH}/src
go get github.com/nsf/gocode
go install github.com/nsf/gocode
再安装 vim-gocode (https://github.com/Blackrush/vim-gocode)
cd ~/.vim/bundle
git clone https://github.com/Blackrush/vim-gocode.git
这样 vim-gocode 插件就安装好了,用户再使用vim 打开 go 代码文件,通过 Ctrl+x、Ctrl+o 就可以出现函数可选列表。
- 安装 tagbar
用户下载tagbar 后,将其解压到 ~/.vim/bundle 目录下,再此打开vim ,tagbar 就会自动生效 。
为了能够让tagbar 在打开文件时就能够自动生效,用户还需要修改 ~/.vimrc 文件,增加以下内容。
如果之前有使用tarlist 插件的,需要将它的 Tlist_Auto_Open 参数注释掉,免得同时打开。
nmap <Leader>tb :TagbarToggle<CR>
let g:tagbar_ctags_bin='/usr/bin/ctags'
let g:tagbar_width=
autocmd BufReadPost *.go,*.cpp,*.c,*.h,*.hpp,*.cc,*.cxx call tagbar#autoopen()
如果将tagbar 的所有文件都解压到 ~/.vim/bundle 目录,则如果禁用掉 vim-pathogen 插件,则tagbar 就不能够使用了,而且作者发现,如果使用 vim-pathogen 插件,会在编译文件时,莫名的启用换行自动缩进的功能。老实说,作者非常不喜欢 "换行自动缩进的功能" 功能,特别是在复制、粘贴时,会让内容显示得乱七八糟。所以作者推荐在安装 tagbar 插件时,使用最原始的方式,就是用户在下载tagbar 包并且解压后,将里面的 autoload、doc、plugin和syntax 目录下的内容一模一样的拷贝到 ~/.vim/ 目录下。
换言之,就是不使用 vim-pathogen 插件来让 tagbar 插件生效,这样用户就可以在禁用 vim-pathogen 插件后依然能够使用 tagbar 插件。
参考博客:
http://blog.csdn.net/zhang197093/article/details/78559903
http://blog.csdn.net/guestcode/article/details/45249367
tarbar 插件安装参考
http://www.vimer.cn/archives/2066.html , http://blog.csdn.net/dx2880/article/details/7868623
linux vim 配置 go 开发环境的更多相关文章
- Linux下配置PHP开发环境
转载于: http://www.uxtribe.com/php/405.html 该站下有系列PHP文章. 在Linux下搭建PHP环境比Windows下要复杂得多.除了安装Apache,PHP等软件 ...
- vim配置python开发环境
vim配置python开发环境 一.安装vim sudo apt-get install vim 二.vim基础配置 #Centos6.5 /usr/share/vim/vim72 vi /etc/v ...
- vim配置python开发环境(转)
安装 因为许多Unix衍生系统已经预装了Vim,我们首先要确认编辑器是否成功安装: vim --version 如果已经安装了,你应该看到类似下面的文字: VIM - Vi IMproved 7.3 ...
- Linux下配置Golang开发环境
前几天无意间看到了微信推送的golang开发的消息,看到golang那么牛逼,突然心血来潮想学习一下go.工欲善其事必先利其器,想做go开发,必须先配置好go的开发环境(就像开发Java先安装配置jd ...
- Vim配置IDE开发环境
我的vim IDE界面: 1.安装Vim和Vim基本插件首先安装好Vim和Vim的基本插件.这些使用apt-get安装即可:lingd@ubuntu:~/arm$sudo apt-get instal ...
- linux下配置LAMP开发环境,以及经常使用小细节
本来安装没什么可说到.可是在linux其中easy会出现各种各样到问题. 我安装以后导致各种问题 比方php无法正常解析,数据库无法关闭,Apache无法开启等等........ 所以搞得我比較郁闷, ...
- Linux 下配置php开发环境
windows下有一键安装的环境很方便,不过现实中常常服务器是linux系统.想要搭建环境怎么搞呢? 边学变发直播博客,不定期更新.
- vim配置php开发环境
1.ctags-用于代码间的跳转 安装 sudo apt-get install ctags 使用 1). 在某个目录下, 建立tags. ctags -R . --执行之后会在当前目录下生成一个ta ...
- vim配置clojure开发环境备忘录
1 需要使用的插件 vundle 使用教程 http://www.cnblogs.com/respawn/archive/2012/08/21/2649483.html vim-fireplace h ...
随机推荐
- HBase存储方案设计
需求描述 将数据记录持久化存储在HBase中,需要支持如下功能: 支持高吞吐量读写操作,实时采集10,000条/秒: 支持动态添加字段: 支持服务端过滤: 支持部分字段修改. 设计方案 按列存储 优点 ...
- Algorithm: inversion
inversion就是逆序对 题目:现给出一个数列,求该数列中的逆序对数(逆序数).本节给出三种方法:方法一是最直接的暴力方法:方法二是基于归并分治的思想:方法三是基于线段树的. [解法一] 暴力 ...
- 【Leetcode-easy】ZigZag Conversion
思路1:String[numRow]行字符串数组.读取原始字符串每一个字符,设置行变量 nrow和行标志位flag(向下一行为1或向上一行为-1).将该字符连接到数组中对应的行字符串,同时nrow+= ...
- zabbix监控系统性能采集指标
监控项目 详细内容 ...
- 手机移动端网站开发流程HTML5
手机移动端网站开发流程HTML5 最近一直在研究移动手机网站的开发,发现做手机网站没有想象中的那么难.为什么会这么说呢?我们试想下:我们连传统的PC网站都会做,难道连一个小小的手机网站难道都搞不定吗? ...
- Intellij IDEA 14代码错误提示如何调出来
- python基础-正则1
什么是正则表达式? 正则表达式是一种小型的\高度专业化的变成语言,主要用于字符串处理 正则表达式是一种通用语言,在python中通过re模块实现,import re 工具:在线正则表达式测试 http ...
- linux命令学习笔记-kill和killall命令详解
*杀死进程最安全的方法是单纯使用kill命令,不加修饰符,不带标志. 首先使用ps -ef命令确定要杀死进程的PID,然后输入以下命令: # kill -pid 注释:标准的kill命令通常都能达到目 ...
- linux 进程学习笔记-暂停进程
<!--[if !supportLists]-->Ÿ <!--[endif]-->暂停进程 int pause() 其会挂起当前进程直到有信号来唤醒或者进程被结束. 随便提一下 ...
- CDN网络原理
1.用户向浏览器输入www.web.com这个域名,浏览器第一次发现本地没有dns缓存,则向网站的DNS服务器请求: 2.网站的DNS域名解析器设置了CNAME,指向了www.web.51cdn.co ...