将Vim配置为C/C++编辑器(IDE)

对于VIM插件安装,个人建议阅读每个插件的官方说明,如以下列出的插件项目地址或者官网页面,或者详细阅读插件中的doc目录下的说明文档,按照官方推荐的方式进行安装,并获取最新版本。话不多说,以下所有便是需要安装的插件列表。

Pathogen

它可以管理插件,使目录保持整洁。
项目地址:http://github.com/tpope/vim-pathogen
官网页面:http://www.vim.org/scripts/script.php?script_id=2332
安装方式如下:

mkdir -p ~/.vim/autoload ~/.vim/bundle && \
curl -LSso ~/.vim/autoload/pathogen.vim https://tpo.pe/pathogen.vim

将以下语句复制到你的vimrc:

execute pathogen#infect() 

Auto Pairs :

自动插入或删除成对的括号、引号。
项目地址:https://github.com/jiangmiao/auto-pairs
官网页面:http://www.vim.org/scripts/script.php?script_id=3599
安装方式如下:
我们使用了Pathogen,所以使用以下git命令进行安装:

git clone git://github.com/jiangmiao/auto-pairs.git ~/.vim/bundle/auto-pairs

NERDTree

文件系统浏览,方便打开文件或目录。
项目地址:https://github.com/scrooloose/nerdtree
官网页面:http://www.vim.org/scripts/script.php?script_id=1658
因为我们使用的是Pathogen,因此选择如下方式进行安装:

git clone https://github.com/scrooloose/nerdtree.git ~/.vim/bundle/nerdtree

在VIM中:NERDTree命令打开文件浏览面板,也可配置快捷键开启在.vimrc中进行以下配置:
配置Ctrl+N作为快捷键

map <C-n> :NERDTree<CR>

全局快捷键F5

nnoremap <silent> <F5> :NERDTreeToggle<CR>

MiniBufExplorer

简洁的buffer浏览器
不了解buffer?
vim为每个打开的文件创建buffer,在关闭文件之后保留buffer,让我们可以自由切换打开的buffer。可以理解为多个文件选项卡之间切换功能。
官网页面:http://www.vim.org/scripts/script.php?script_id=159
项目地址:https://github.com/fholgado/minibufexpl.vim
安装方法:将minibufexpl.vim文件下载到.vim/bundle/minibufexpl/plugin目录下即可,手动创建minibufexpl/plugin目录。
或者使用如下命令下载最新版:

git clone https://github.com/fholgado/minibufexpl.vim.git ~/.vim/bundle/minibufexpl

以上两种安装方式,是两种不同的版本。
.vimrc配置:

let g:miniBufExplMapWindowNavVim = 1 
let g:miniBufExplMapWindowNavArrows = 1 
let g:miniBufExplMapCTabSwitchBufs = 1 
let g:miniBufExplModSelTarget = 1 

切换buffer

:b buffer编号

删除buffer

:bd buffer编号

Taglist

可以将代码文件的函数、变量等列出来,查找方便。
官网页面:http://www.vim.org/scripts/script.php?script_id=273
由于此插件依赖于执行程序ctags,我们需要先安装它:
Ubuntu系统中使用如下命令进行安装(不同平台系统安装命令会有不同):

sudo apt-get install ctags

在官网下载插件压缩包,然后解压到.vim/bundle目录下即可。

关于.vimrc中对Taglist的配置,可从如下配置中有选择性的进行定制:

let Tlist_WinWidth=40        "设置taglist宽度
let Tlist_Auto_Highlight_Tag=1
let Tlist_Auto_Open=1
let Tlist_Auto_Update=1
let Tlist_Display_Tag_Scope=1
let Tlist_Exit_OnlyWindow=1  "如果Tlist窗口是最后一个窗口,则退出Vim.
let Tlist_Enable_Dold_Column=1
let Tlist_File_Fold_Auto_Close=1
let Tlist_Show_One_File=1
let Tlist_Use_Right_Window=1  "右侧显示Tlist窗口
let Tlist_Use_SingleClick=1

打开或关闭Taglist面板可使用命令“:Tlist”,也可配置快捷键:

map <C-t> :TlistToggle<CR>

OmniCppComplete

C/C++自动补全插件
官网页面:http://www.vim.org/scripts/script.php?script_id=1520
安装:下载最新版本,解压到.vim/bundle/omnicppcomplete目录。
加载帮助文档:

:helptags ~/.vim/bundle/omnicppcomplete/doc

查看帮助信息:

:h omnicppcomplete

为当前目录创建ctags数据库,使用如下命令:

ctags -R --c++-kinds=+p --fields=+iaS --extra=+q .

也可以为此操作设置快捷键,在.vimrc文件中加入如下配置:

map <C-F12> :!ctags -R --c++-kinds=+p --fields=+iaS --extra=+q .<CR>

这样,就可以通过快捷键Ctrl+F12生成当前目录tags。
更详细的说明,可参考以上提到的帮助文档:h omnicppcomplete。

tags for std c++

为 ctags 修改过的 libstdc++ 头文件
官网页面:http://www.vim.org/scripts/script.php?script_id=2358
下载之后,解压缩,然后执行以下命令生成ctags:

ctags -R --c++-kinds=+p --fields=+iaS --extra=+q --language-force=C++ cpp_src 

可以为生成的tags更名为cpp或其它名字,容易分辨:

mv tags cpp

将此文件,添加到.vimrc中的环境变量ctags中,使其生效:

set tags+=/tags/cpp "cpp文件的完整路径

如果有其它库需要添加的话,也可以按照以上的方法生成tags并添加。

SuperTab

通过Tab键补全
项目地址:https://github.com/ervandew/supertab.git
官网页面:http://www.vim.org/scripts/script.php?script_id=1643
安装:

git clone https://github.com/ervandew/supertab.git ~/.vim/bundle/supertab

使用了SuperTab之后想要输入Tab怎么办?ctrl+v然后再按Tab键,ctrl+w删除。

最后的话

一开始接触vim插件的时候,多少感觉有些头疼,查看官方文档或者帮助文档,获取安装方法和使用方法,是比较重要的。

附上一张截图:

阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/liubingzhao/article/details/53197524
文章标签: vim 插件 C-C++
个人分类: Ubuntu C-C++ vim
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭
关闭