ubunt16.04搭建Vim + cscope +ctags

转自https://blog.csdn.net/scaleqiao/article/details/44278719#

Vim搭建

1.查看是否安装vim
在命令行输入“vi”之后按Tab键,可以看到系统中是否安装了vim,一般来说系统安装的时候会自带vi以及vim.tiny,因此需要安装vim。
2.vim的安装

sudo apt-get install vim-gtk

3.vim的配置

sudo gedit /etc/vim/vimrc

打开vim的配置文件,在结尾处加上

set nu                           "在左侧行号
set tabstop                      "tab 长度设置为 4
set nobackup                     "覆盖文件时不备份
set cursorline                   "突出显示当前行
set ruler                        "在右下角显示光标位置的状态行
set autoindent                   "自动缩进

使vim的编译界面更加友好~

cscope安装及配置

1.cscope的安装
这里提供两种安装方法:

sudo apt-get install cscope

或者:在http://sourceforge.net/projects/cscope/files/上下载cscope的最新源码,解压之编译安装。

./configure
make
make install

2.生成索引文件
在需要进行cscope编译的根目录下,执行

find . -name "*.[h|c]" > cscope.files  
cscope -bkq -i cscope.files  

命令结束,会发现根目录下乘车名为cscope.out的文件。执行cscope -d可以退出ccscope
3.在vim的配置文件中加入关于cscope的配置。
如果你不想配置cscope,可以下载cscope_maps.vim,并加入到vim的plugin目录,地址:/usr/share/vim/addons/plugin。
也可以直接选取需要的配置,加到.vimrc中
4.vim中常用的额cscope命令:

   :cs find s ---- 查找C语言符号,即查找函数名、宏、枚举值等出现的地方  
    :cs find g ---- 查找函数、宏、枚举等定义的位置,类似ctags所提供的功能  
    :cs find d ---- 查找本函数调用的函数  
    :cs find c ---- 查找调用本函数的函数  
    :cs find t ---- 查找指定的字符串  
    :cs find e ---- 查找egrep模式,相当于egrep功能,但查找速度快多了  
    :cs find f ---- 查找并打开文件,类似vim的find功能  
    :cs find i ---- 查找包含本文件的文  

ctages安装与配置

1.安装
可以通过 sudo apt-get install ctags安装,也可以自己下载源码编译。源码
2.使用ctags为源码生成tag。在源码根目录下执行ctags -R
但是因为之后vim中的某些插件(omnicppcomplete和echofunc)是基于tag但又对tag有特殊要求,所以在生成tag的时候,我们需要额外的定制:

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

–c+±kinds=+ps是为c/c+语言添加函数原型信息。–fields=+iaS是为标签添加继承信息(inheritance),访问控制信息(access)和函数特征(Signature)如参数表或原型等。–extra=+q是为类成员添加标签。

taglist

下载地址,解压之后讲taglist.vim拷贝到~/.vim/plugin/下,把taglist.txt拷贝到~/.vim/doc/目录下,即完成安装
然后在~/.vimrc文件中设置一下变量

set tags=tags   "设置tags的存放目录  
let Tlist_Show_One_File=1   "只允许taglist显示一个文件的信息  
let Tlist_Exit_onlyWindow=1   "当显示taglist信息的窗口是最后一个时,退出vim  
let Tlist_Process_File_Always=1    "时时更新taglist  

omnicppcomplete

下载omnicppcomplete
该插件的主要功能:补全结构体的成员以及类成员,并在一个窗口中对你选中的对象有一些解释。
安装方法,在~/.vim目录下解开压缩包即可

echofunc

下载echofunc放入~/.vim/plugin/目录下
解决ominicppcomplete不能补全函数的问题。在.vimrc中定义两个快捷键来切换函数的不同定义

let g:EchoFuncKeyNext='<S-n>'
let g:EchoFuncKeyPrev='<S-p>'

minibufexpl

下载minibufexpl放入~/.vim/plugin/目录下就可以直接使用,也可以在.vimrc文件中打开一些功能设置、

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

DONE

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章