vim +ctags + taglist ,ctags+cscope 安装配置和使用
内容:VIM下ctags和taglist的安装配置方法;一键安装 ctags和cscope的方法 ;vim语法高亮,自动缩进,python 自动缩进设置,下面将逐个介绍安装和配置使用方法,仅供参考:
1, vim + ctags + taglist配置和使用
taglist依赖于ctags,所以要先装ctags,否则taglist装了也没法用!
1、首先安装ctags
首先是ctags的安装,推荐使用exuberant ctags,我们可以从其官方网站上下载它的源码包,进行解压缩,编译,安装即可。
1)ubuntu安装
sudo apt-get install exuberant-ctags
( 或者下载 手动安装 download ctags-5.8.tag.gz (地址)
tar xzvf ctags-5.8.tag.gz
cd ctags-5.8
./configure
sudo make
sudo make install
)
至此,ctags的安装已经完成,可以使用ctags命令来检测时候完成安装。
检测:
在自己的项目文件夹下执行 $ctags -R * (不执行就起不到效果)
注:“-R”表示递归创建,也就包括源代码根目录(当前目录)下的所有子目录。“*”表示所有文件。这条命令会在当前目录下产生一个“tags”文件, 当用户在当前目录中运行vi时,会自动载入此tags文件。
然后就可以入手了。
常用的命令:
熟练的使用ctags仅需记住下面七条命令:(很简单吧,呵呵)
1. $ ctags –R * ($ 为Linux系统Shell提示符)
2. $ vi –t tag (请把tag替换为您欲查找的变量或函数名)
3. :ts (ts 助记字:tags list, “:”开头的命令为VI中命令行模式命令)
4. :tp (tp 助记字:tags preview)---此命令不常用,可以不用记
5. :tn (tn 助记字:tags next) ---此命令不常用,可以不用记
6. Ctrl + ]
7. Ctrl + T
-------------------------------------------------------------------------------------------------
2、安装taglist
下面我们来进行taglist的安装,同ctags的安装一样这里我们也是去其官方网站下载解压其源码包。
具体步骤如下:
解压文件
# unzip -d taglist taglist_45.zip // 解压到 taglist
我们首先在家目录下创建.vim文件(mkdir .vim) 以便于存放vim的插件。
然后把我们下载到的taglist源码包进行解压,把其中的doc和plugins目录拷贝到.vim文件夹下。
进入到vim在命令模式下输入helptaglist~/.vim/doc即完成了taglist的安装。在vim中输入Tlist,如果出现如下画面则证明安装成功。
也可以这样 配置
$cd taglist/
$cp doc/taglist.txt /usr/share/vim/vim72/doc/
$cp plugin/taglist.vim /usr/share/vim/vim72/plugin/
基本上配置完成
启动vim,用 “:helptags .”来配置好帮助文件
重启vim,用“:TlistToggle”来打开和关闭taglist窗口。
可以用“:help taglist”来获得更多帮助信
若要默认打开taglist,_vimrc中加入
let Tlist_Auto_Open=1
set tags=tags;
set autochdir;
注意第一个命令里的分号是必不可少的。这个命令让vim首先在当前目录里寻找tags文件,如果没有找到tags文件,或者没有找到对应的目标,就到父目 录中查找,一直向上递归。因为tags文件中记录的路径总是相对于tags文件所在的路径,所以要使用第二个设置项来改变vim的当前目录。
完成了taglist和ctags的安装,但是这时ctags和taglist还没有联系起来。为此,我们需要修改~/.vim/plugin/taglist.vim文件,找到if !exitsts(loaded_taglist)这一行,并在其前面添加let Tlist_Ctags_Cmd="/usr/local/bin/ctags"
ps:在这里需要注意的是我们在设置直线需要察看我们ctags可执行可执行路径到底是在哪里,我们可以进入到上述目录,一直找到具体的可执行的文件ctags,并将其路径赋给Tlist_Ctags_Cmd(例如我的路径是/usr/local/bin/ctags/ctags)
vim+taglist+ctags阅读代码
为了使用vim+taglist+ctags来阅读代码,我们首先必须生成函数和变量的符号信息。这一步我们使用ctags完成。
例如我们使用我们刚才下载的ctags的源码包为例。
//生成tag
执行 ctags -R *(-R递归作用)
//检查是否生成了tags
ls -l tags
生成tag以后我么就可以进行察看了,具体步骤见如下截图
vim输入:TlistToggle来打开侧面窗口 (或者直接:Tlist、TlistOpen也可以)
使用ctr 和两次w在侧窗口和主窗口之间进行切换
移动到土体的函数后,按enter键察看具体函数。(可以利用ctags的特性在鼠标指定处比如"apue.h",Nomal 输入 gf,转到头文件"apue.h")
有时我们想察看的函数在其他代码文件中定义,这是我们只要将光标定位到想察看的函数上,然后按ctr+]键就可以进行察看了,按ctr+O可以跳回到源文件中。
具体 vim 高阶应用见 http://easwy.com/blog/archives/advanced-vim-skills-catalog/
第一步要达到效果是不是很麻烦,下面介绍一种简单的方法
2, 一键安装 ctags和cscope的方法
用vim的插件搭建一个类似sourceinsight的vi,同时加了一些vim及脚本,最近看到很多人想要有sourceinsight功能的vim,由于整个配置还是有点麻烦,于是将配置的vim发上来,只需一条命令,就可安装完ctagslist,cscope,fielexporeer等插件,达到sourceinsight的效果。
安装过程:
大家下载附件,然后解压
然后切到解压后的文件夹,
执行sudo ./install即可
然后执行sudo apt-get install vim或者这样安装:
#Clone repository:
git clone https://github.com/ustcdane/vim_install.git
#install
cd vim_install
sudo ./install可能会出现错误:
"Taglist: Exuberant ctags (http://ctags.sf.net) not found in PATH.
Plugin is not loaded."没有关联Ctags和Taglist
在~/.vimrc中加入 : let Tlist_Ctags_Cmd=‘/usr/bin/ctags‘
其实我已经在 install 中加入了,如果还是出现错误,则找到你的可执行程序ctags 所在处手动的在~/.vimrc中加入let Tlist_Ctags_Cmd=‘你的ctags路径‘
使用指南:
当我们需要阅读代码时,必须先生成tags文件和cscope.out文件,这个可以通过已安装程序中的脚本自动生成
比如你要阅读source文件夹下的代码就使用cs source
当source下有文件更新了,你可以使用 cs source -u来更新常用命令:
进入vim后
wm打开ide界面,再次wm就关闭了
ctrl+w在各个窗口切换
ctrl+h切换到左边的窗口
ctrl+j切换到下面的窗口
ctrl+l切换到右边的窗口
ctrl+k切换到上面的窗口
ctrl+]函数跟踪快捷键 cs f s/g/....
s: 查找C语言符号,即查找函数名、宏、枚举值等出现的地方
g: 查找函数、宏、枚举等定义的位置,类似ctags所提供的功能
d: 查找本函数调用的函数
c: 查找调用本函数的函数
t: 查找指定的字符串
e: 查找egrep模式,相当于egrep功能,但查找速度快多了
f: 查找并打开文件,类似vim的find功能
i: 查找包含本文件的文
当然在底行模式下介键入 help 会弹出 vim的帮助。使用cscope查找do_fork函数的定义:
在vim命令行下执行::cs f g do_fork
就可以查看do_fork的全局定义了。
cscope常用快捷键:
先按 ctrl+\ 然后 再按以下键:
ctrl+]:在函数调用的地方跳转到函数定义的地方
ctrl+t:返回上一个查找的地方这个方法是从网上学到的,并作了部分修改
3, 设置vim语法高亮显示和自动缩进
1、配置文件的位置在目录 /etc/vim 下面,有个名为vimrc的文件,这是系统中公共的vim配置文件,对所有用户都有效。而在每个用户的主目录下,都可以自己建立私有的配置文件,命名为:“.vimrc” , (如果你使用第二步中的一键安装 ctags和cscope的方法 建议 在自己的家目录下的.vimrc 作相应修改) 。例如,/root目录下,通常已经存在一个.vimrc文件。
2、设置语法高亮显示
1) 打开vimrc,添加以下语句来使得语法高亮显示:
syntax on2) 如果此时语法还是没有高亮显示,那么在/etc目录下的profile文件中添加以下语句:
export TERM=xterm-color3、设置Windows风格的C/C++自动缩进(添加以下set语句到vimrc中)
1)设置(软)制表符宽度为4:
set tabstop=4
set softtabstop=4
2)设置缩进的空格数为4
set shiftwidth=4
3)设置自动缩进:即每行的缩进值与上一行相等;使用 noautoindent 取消设置:
set autoindent
4)设置使用 C/C++ 语言的自动缩进方式:
set cindent
5)设置C/C++语言的具体缩进方式(以我的windows风格为例):
set cinoptions={0,1s,t0,n-2,p2s,(03s,=.5s,>1s,=1s,:1s
6)如果想在左侧显示文本的行号,可以用以下语句:
set nu
7)最后,如果没有下列语句,就加上吧:
if &term=="xterm"
set t_Co=8
set t_Sb=^[[4%dm
set t_Sf=^[[3%dm
endif总结, 需要添加的内容:
A,语法高亮在/etc目录下的profile文件中添加以下语句:
export TERM=xterm-colorB,其它 在 /etc/vim/vimrc的 添加:
[plain] view plaincopy
- syntax on
- set nu
- set tabstop=4
- set softtabstop=4
- set shiftwidth=4
- set cindent
- set cinoptions={0,1s,t0,n-2,p2s,(03s,=.5s,>1s,=1s,:1s
- if &term=="xterm"
- set t_Co=8
- set t_Sb=^[[4%dm
- set t_Sf=^[[3%dm
- endif
- hi Comment ctermfg=6
Other: vim python 的自动缩进设置方法。
缩进设置最常用的是::filetype indent on 它将开启针对文件具体类型的缩进