本文描述如何在 Ubuntu 环境中利用插件管理工具 Vundle 搭建一个 Vim 开发环境,从而提高在 Linux 下使用 Vim 进行编程的效率。
安装 Vim
在 Ubuntu 上安装 Vim 很简单,在终端敲入如下命令即可:
$ sudo apt-get install vim
在 Ubuntu 14.04 以上版本执行上述命令安装的 Vim 是 7.4+ 版本,但如果你和我一样使用 Ubuntu 12.04 的话,就没有那么幸运的。因为在 Ubuntu 12.04 上用 apt-get 安装的 Vim 是 7.3 版本的,这个版本相对来说还是太旧了,一些插件并不支持,比如 YouCompleteMe。所以我们需要将其升级到 7.4 以上的版本,看到有网友说添加 PPA 源之后可以升级,如下:
$ sudo add-apt-repository ppa:fcwu-tw/ppa
$ sudo apt-get update
$ sudo apt-get install vim
但我试过不行,所以我还是下载 Vim 的源代码进行安装了。我这里直接安装最新的 8.0 版本了,相关的源代码可以在如下网址找到:
- github仓库:https://github.com/vim/vim
- vim官网:http://www.vim.org/
下载、编译、安装命令如下:
$ git clone https://github.com/vim/vim.git
$ cd vim/src
$ ./configure --enable-pythoninterp=yes
$ make
$ sudo make installvim
敲入 vim 命令可以看到如下画面:
需要注意的是,这里的 ./configure --enable-pythoninterp=yes
配置是必要的,表示开启 Vim 的 Python2 支持。如果想开启 Python3 支持,则参数应为 --enable-python3interp=yes
。
Vim 的默认安装路径是 /usr/local/bin/vim,原来的 Vim 是 /usr/bin/vim,所以 Vim 8.0 和 Vim 7.3 是可以共用的。那为什么输入 vim 执行的是 8.0 版本的而不是 7.3 版本的呢?看看环境变量 PATH 就知道了,因为 /usr/local/bin 的路径在前面嘛!
$ echo $PATH
/sbin:/usr/sbin:/usr/lib/lightdm/lightdm:/usr/local/bin:/usr/bin:/bin
所以现在的 vim 执行的是 8.0 版本,而 vi 执行的是 7.3 版本。
另外,我们可以通过如下命令来检查 vim 是否已经支持 Python。没有执行./configure --enable-pythoninterp=yes
编译的话是这样的:
$ vim --version | grep python
+cryptv +linebreak +python +viminfo
+cscope +lispindent -python3 +vreplace
而执行./configure --enable-pythoninterp=yes
之后编译的话是这样的:
$ vim --version | grep python
+cryptv +linebreak +python +viminfo
+cscope +lispindent -python3 +vreplace
Linking: gcc -L/usr/local/lib -Wl,--as-needed -o vim -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgio-2.0 -lpangoft2-1.0 -lpangocairo-1.0 -lgdk_pixbuf-2.0 -lcairo -lpango-1.0 -lfreetype -lfontconfig -lgobject-2.0 -lglib-2.0 -lSM -lICE -lXt -lX11 -lXdmcp -lSM -lICE -lm -ltinfo -lnsl -ldl -L/usr/lib/python2.7/config -lpython2.7 -lpthread -ldl -lutil -lm -Xlinker -export-dynamic -Wl,-O1 -Wl,-Bsymbolic-functions
安装 Vundle
由于 vim 缺乏默认的插件管理器,所有插件的文件都散布在 ~/.vim 下的几个文件夹中,这样导致各种插件的安装、更新、删除都需要自己手动处理,既麻烦费事,又可能出现错误。所以我们需要插件管理器的帮忙,常见的插件管理器有 vundle、pathogen 等等,我们这里使用 vundle。
Vundle 托管在 Github 上,所以使用 git 下载 vundle ,并将其存放于 ~/.vim/bundle/vundle 即可。使用如下命令直接将源代码检出到该目录:
$ git clone https://github.com/gmarik/vundle.git ~/.vim/bundle/vundle
下载完了 vundle 后,还需要配置 .vimrc 文件。
为了不让 .vimrc 看起来太臃肿,我是新建了一个 ~/.vimrc.bundles 文件来保存所有插件的配置。先在 ~/.vimrc.bundles 文件中包含如下内容:
filetype off
set rtp+=~/.vim/bundle/vundle/
call vundle#rc()
if filereadable(expand("~/.vimrc.bundles"))
source ~/.vimrc.bundles
endif
这样 vundle 就准备就绪了。
安装插件
我们需要知道,Bundle 分为三类:
- 在 Github vim-scripts 用户下的 repos,只需要写出 repos 名称
- 在 Github 其他用户下的 repos,需要写出“用户名/repos名”
- 不在 Github 上的插件,需要写出 git 全路径
比较常用就是第二种,也就是以“用户名/repos名”的方式。我们这里将插件的配置信息放在 ~/.vimrc.bundles,如下:
" Define bundles via Github repos "
Bundle 'christoomey/vim-run-interactive'
Bundle 'Valloric/YouCompleteMe'
Bundle 'croaky/vim-colors-github'
Bundle 'danro/rename.vim'
Bundle 'majutsushi/tagbar'
Bundle 'kchmck/vim-coffee-script'
Bundle 'kien/ctrlp.vim'
Bundle 'pbrisbin/vim-mkdir'
Bundle 'scrooloose/syntastic'
Bundle 'slim-template/vim-slim'
Bundle 'thoughtbot/vim-rspec'
Bundle 'tpope/vim-bundler'
Bundle 'tpope/vim-endwise'
Bundle 'tpope/vim-fugitive'
Bundle 'tpope/vim-rails'
Bundle 'tpope/vim-surround'
Bundle 'vim-ruby/vim-ruby'
Bundle 'vim-scripts/ctags.vim'
Bundle 'vim-scripts/matchit.zip'
Bundle 'vim-scripts/tComment'
Bundle 'mattn/emmet-vim'
Bundle 'scrooloose/nerdtree'
Bundle 'Lokaltog/vim-powerline'
Bundle 'godlygeek/tabular'
Bundle 'msanders/snipmate.vim'
Bundle 'jelera/vim-javascript-Syntax'
Bundle 'altercation/vim-colors-solarized'
Bundle 'othree/html5.vim'
Bundle 'xsbeats/vim-blade'
Bundle 'Raimondi/delimitMate'
Bundle 'groenewege/vim-less'
Bundle 'evanmiller/Nginx-vim-Syntax'
Bundle 'Lokaltog/vim-easymotion'
Bundle 'tomasr/molokai'
Bundle 'klen/python-mode'
接着,打开 vim,输入 :BundleInstall
或者直接在终端输入 vim +BundleInstall +qall
安装插件。
有些插件比较大,需要等待一段时间才能下载、安装完毕。
vim 帮助文档
vimtutor 是一个不错的入门文档,在终端直接输入 vimtutor
即可打开,这个文档在网上可以找到中文版。
另外,在 vim 中输入 :help
也可以查看帮助文档,如果实在看不惯英文,也可以切换成中文的。
首先执行如下命令下载 vimcdoc-1.8.0.tar.gz:
$ wget http://nchc.dl.sourceforge.net/sourceforge/vimcdoc/vimcdoc-1.8.0.tar.gz
然后解压 vimcdoc-1.8.0.tar.gz,进入 vimcdoc-1.8.0 目录可以找到 doc 目录,将 doc 中的全部文件复制到 ~/.vim/doc/ 目录。
重新进入 vim,输入 :help 可以看到帮助文档变成中文了。
如果无法显示中文,在 ~/.vimrc 中添加:
set helplang=cn
set encoding=utf-8
出错提示
如果在安装完插件后启动 vim 出现如下提示,则说明你的 vim 需要升级。
YouCompleteMe unavailable: requires Vim 7.4.1578+.
如果在安装完插件后启动 vim 出现如下提示,则说明你的 vim 需要重新编译以支持 Python。
YouCompleteMe unavailable: requires Vim compiled with Python (2.6+ or 3.3+) support
原文链接:https://www.f2er.com/ubuntu/351842.html