Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1694659
  • 博文数量: 206
  • 博客积分: 1450
  • 博客等级: 上尉
  • 技术积分: 2285
  • 用 户 组: 普通用户
  • 注册时间: 2008-09-11 11:38
个人简介

学习永无止境!!

文章分类

全部博文(206)

文章存档

2022年(5)

2019年(3)

2018年(8)

2017年(32)

2016年(7)

2015年(13)

2014年(44)

2013年(24)

2011年(6)

2010年(17)

2009年(46)

2008年(1)

分类: 嵌入式

2017-07-06 15:22:54

『插件介绍』

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

『下载和安装』

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

sudo apt-get install ctags

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

        1)从下载源代码包后,解压缩生成源代码目录,

        2)然后进入源代码根目录执行./configure,

        3)然后执行make,

        4)编译成功后执行make install。

『基本功能使用方法』

常用命令列表:

        1.  $ ctags –R *      ($ 为系统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”文件来定位上面这些做了标记的对象。


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

“$ vi –t tag” :在运行vim的时候加上“-t”参数,例如:

[/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文件(帚把不到,灰尘不会自己跑掉^_^)。


阅读(696) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~