码迷,mamicode.com
首页 > 系统相关 > 详细

vim下ctags+taglist环境的搭建

时间:2016-04-26 21:04:16      阅读:263      评论:0      收藏:0      [点我收藏+]

标签:

随着学习的深入,我们所看代码越来越庞大,这令我们在查找某个函数时特别头疼,下来我们一起学习下vim下的还将搭建:

ctags优点

ctags可以对文件生成tags标签,达到快速查找的效果。

ctags可以定位的类型:
1)用#define定义的宏
2)枚举型变量的值
3)函数的定义、原型和声明
4)名字空间(namespace)
5)类型定义(typedefs)
6)变量(包括定义和声明)
7)类(class)、结构(struct)、枚举类型(enum)和联合(unio)
8)类、结构和联合中成员变量或函数

ctags安装与配置:
在安装之前先下载安装包:ctags-5.8.tar.gz
下载地址:http://nchc.dl.sourceforge.net/project/ctags/ctags/5.8/ctags-5.8.tar.gz

下载完成后解压:tar xvf ctags-5.8.tar.gz

1、进入ctags-5.8并配置:./configure
技术分享
2、配置完成后执行:make && make install:
技术分享
技术分享

安装ok后,验证以下(此处以/root/Desktop/boost为例):

进入该目录,执行ctags -R命令,完了会在boost目录下生成相应的tags文件:
技术分享
但此时还不能使用,要使ctags生效,必须每次使用时在vim中执行”shift+:set tags=/root/Desktop/boost/tags”,但这样太麻烦,一般我们都是将其写入~./vimrc下,例如(此处vimrc在/etc/vimrc):
技术分享

此时ctags就可以使用了。

taglist

TagList插件是一款基于ctags,在vim代码窗口旁以分割窗口形式显示当前的代码结构概览,增加代码浏览的便利程度的vim插件。它能够高效地浏览源码, 其功能就像vc中的workpace, 那里面列出了当前文件中的所有宏等等。

安装包下载路径:http://www.vim.org/scripts/download_script.php?src_id=7701

安装:简单配置一下就行了,但需要ctags的支持。
1、下载号安装包后用tar xvf 对其进行解压。
2、进入到生成的目录plugin中,将里面的taglist.vim拷贝到 /usr/share/vim/vim74/plugin/中:
[root@localhost plugin]# cp taglist.vim /usr/share/vim/vim74/plugin/
[root@localhost plugin]#
3、进入新生成的目录doc/中,将里面的taglist.txt文件拷贝到/usr/share/vim/vim74/doc/下:
[root@localhost doc]# cp taglist.txt /usr/share/vim/vim74/doc/
[root@localhost doc]#
上述配置好后,要使用taglist还要在~./vimrc中对其进行配置,将下述设置写入~./vimrc中(本电脑vimrc路径为/etc/vimrc):
技术分享
其含义为:
let Tlist_Ctags_Cmd=’/usr/bin/ctags’ : 设定Linux系统中ctags程序的位置
let Tlist_Show_One_File=1:不同时显示多个文件的tag,只显示当前文件的
let Tlist_Exit_OnlyWindow=1:如果taglist窗口时最后一个窗口,则退出vim
let Tlist_Use_Right_Window=1:在右侧窗口中显示taglist窗口
let Tlist_Use_singleClick=1:缺省情况下,在双击一个tag时,才会跳到该tags定义的位置

let Tlist_Auto_OPen=1:在启动vim后,自动打开taglist窗口
let Tlist_process_File_Always=1:taglist始终解析文件中的tag,不管taglist窗口有没有打开

let Tlist_File_Fold_Auto_Close=1:同时显示多个文件中的tag时,可使taglist只显示当前文件tag,其他文件的tag都被折叠起来。

配置完成后使用下:
随便打开boost下的smart_ptr下的shared_ptr,在最后一行键入:TlistToggle 打开tagllist:
技术分享

在taglist窗口中,还可以使用下面的快捷键:
跳到光标下tag所定义的位置,用鼠标双击此tag功能也一样
o 在一个新打开的窗口中显示光标下tag
显示光标下tag的原型定义
u 更新taglist窗口中的tag
s 更改排序方式,在按名字排序和按出现顺序排序间切换
x taglist窗口放大和缩小,方便查看较长的tag
+ 打开一个折叠,同zo
- 将tag折叠起来,同zc
* 打开所有的折叠,同zR
= 将所有tag折叠起来,同zM
[[ 跳到前一个文件
]] 跳到后一个文件
q 关闭taglist窗口
显示帮助
可以用“:TlistOpen”打开taglist窗口,用“:TlistClose”关闭taglist窗口。或者使用“:TlistToggle”在打开和关闭间切换。在我的vimrc中定义了下面的映射,使用“,tl”键就可以打开/关闭taglist窗口:

1、切换工作区:ctrl+ww

这样ctags和taglist就搭建完成,以后再也不用担心看代码了

vim下ctags+taglist环境的搭建

标签:

原文地址:http://blog.csdn.net/dandelion_gong/article/details/51236309

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!