玩转vim之vim插件Ctags

2012-11-09玩转vimvim插件Ctags

Ctags插件

插件介绍

Ctags工具是用来遍历源代码文件生成tags文件,这些tags文件能被编辑器或其它工具用来 快速查找定位源代码中的符号(tag/symbol),如变量名,函数名等。比如,tags文件就是Taglist OmniCppComplete工作的基础。 (NOTE:安装Taglist前需要先安装 ctags

 

下载和安装

一、我是使用apt-get安装的:

sudo apt-get install ctags 

二、下载源码安装(网上提供的方法)

l  http://ctags.sourceforge.net/下载源代码包后,解压缩生成源代码目录,

l  然后进入源代码根目录执行./configure

l  然后执行make

l  编译成功后执行make install

基本功能使用方法

常用命令列表:

        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                  //
跳回原来地方

命令解释:

“$ ctags –R *”“-R”表示递归创建,也就包括源代码根目录(当前目录)下的所有子目录。“*”表示所有文件。这条命令会在当前目录下产生一个“tags”文件, 当用户在当前目录中运行vi时,会自动载入此tags文件

Tags文件中包括这些对象的列表:

1.    #define定义的宏

2.    枚举型变量的值

3.    函数的定义、原型和声明

4.    名字空间 (namespace

5.    类型定义(typedefs

6.    变量(包括定义和声明)

7.    类(class)、结构(struct)、枚举类型(enum)和联合(union

8.    类、结构和联合中成员变量或函数

VIM用这个“tags”文件来定位上面这些做了标记的对象。

剩下的命令就是定位这些对象的方法:

[/usr/src]$ vim -t main

这个命令将打开定义“main”(变量或函数或其它)的文件,并把光标定位到这 一行。

如果这个变量或函数有多处定义,在VI命令行模式

ts”命令就能列出一个列表供用户选择。    

tp”为上一个tag标记文件,

tn”为下一个tag标记文件。当然, 若当前tags文件中用户所查找的变量或函数名只有一个,“:tp,:tn”命令不可用。

最方便的方法是把光标移到变量名或函数名上,然后按下Ctrl+], 这样就能直接跳到这个变量或函数定义的源文件中,并把光标定位到这一行。用Ctrl+t可 以退回原来的地方。即使用户使用了N“Ctrl+]”查找了N个变量,按N“Ctrl+t”也能回到最初打开的文件,它会按原路返回 。

更多功能通过命令man ctags或在Vim命令行下运行help ctags查询。

 

注意运行vim的时候,必须在“tags”文件所在的目录下运行。否则,运行vim的时候还要用“:settags=”命令设定“tags”文件的路径,这样 vim才能找到“tags”文件。

在完成编码时,可以手工删掉tags文件。

阅读说明

1Vim存在多个配置文件vimrc,比如/etc/vimrc,此文件影响整个系统的Vim。还有~/.vimrc,此文件只影响本用户的Vim。而且~/.vimrc文件中的配置会覆盖/etc/vimrc中的配置。这里我们只修改~ /.vimrc文件。

2Vim的插件(plugin)安装在Vimruntimepath目录下,你可以在Vim命令行下运行"set rtp命令查看。这里我们选择安装在~/.vim目录,没有就创建一个。

posted @ 2011-11-09 19:14  郭—大—侠  阅读(259)  评论(0编辑  收藏  举报