程序员

Vim的初步折腾

2017-12-19  本文已影响0人  云勺

最近的操作系统实验和数据结构的课程设计都需要在Linux下的环境编程完成,因此需要一个强有力的工具,在“世上只有EMACS、VIM和其他”这句话的指导下,选择了折腾VIm。

我使用的是Ubuntu14.04系统,此次折腾包含以下内容:

1、使用Vim的vundle插件管理工具

2、安装几个简单实用的Vim插件

3、安装自动补全神器,YouCompleteMe插件

vundle插件的安装,基本上根据github上的介绍即可,概括起来分为两步,第一步是git clone到/.vim/bundle下,第二步是配置/.vimrc文件,配置内容可以根据官网来配置,也可以参考如下:

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#rc()

Bundle 'gmarik/vundle'

vundle的github地址是

https://github.com/VundleVim/Vundle.vim

vundle安装完成和配置后,在vim中可以通过命令来实现插件的安装等,如:BundleInstall。

完成vundle插件管理的安装,我也简单安装了几个实用的插件,我的配置如下:

Bundle 'scrooloose/nerdtree'

let NERDTreeWinPos='right'

let NERDTreeWinSize=30

map <F5> :NERDTreeToggle<CR>

Bundle 'fholgado/minibufexpl.vim'

let g:miniBufExplMapWindowNavVim = 1

let g:miniBufExplMapWindowNavArrows = 1

let g:miniBufExplMapCTabSwitchBufs = 1

let g:miniBufExplModSelTarget = 1

let g:miniBufExplMoreThanOne=0

map <F2> :MBEbp<CR>

map <F3> :MBEbn<CR>

Bundle 'bling/vim-airline'

set laststatus=2

其中,nerdtree可以在Vim中查看目录其他文件,minibufexpl可以以标签形式编辑多个文件,并且来回切换,vim-airline是一个Vim状态栏的优化插件。

最后效果如图:

选区_002.png

ps:MBEbd是关闭当前标签页

接下来,我们安装重头戏,YCM(YouCompleteMe),据说它的安装很麻烦,因为需要编译很多的东西。

我在这里记录我的安装过程,这应该是最不繁琐的安装过程了。

因为已经安装了vundle,因此这里可以在.vimrc文件中写入Bundle 'Valloric/YouCompleteMe'来安装。

接下来进入vim,输入命令:BundleInstall即可,需要等待一段时间。

完成后还不能直接使用,因为它需要Clang的支持。

进入~/.vim/bundle/YouCompleteMe目录下,运行./install.sh --clang-completer来自动编译添加clang支持,需要注意的是,这里需要python2.6以上的环境。

等待上述操作完成后,则可以在.vimrc中添加配置如下:

let mapleader = "," " 这个leader就映射为逗号","

let g:ycm_global_ycm_extra_conf = '~/.vim/bundle/YouCompleteMe/third_party/ycmd/cpp/ycm/.ycm_ex tra_conf.py' "配置默认的 ycm_extra_conf.py

nnoremap <leader>jd :YcmCompleter GoToDefinitionElseDeclaration<CR> "按,jd 会跳转到定

let g:ycm_confirm_extra_conf=0 " 打开vim时不再询问是否加载ycm_extra_conf.py配置

let g:ycm_collect_identifiers_from_tag_files = 1 "使用ctags生成的tags文件

到此已经安装结束,可以在Vim中享受C系列语言的自动补全了

上一篇下一篇

猜你喜欢

热点阅读