ctags 的简单使用

1、首先查看 ctags的安装版本
$ctags --version
Exuberant Ctags 5.8, Copyright (C) 1996-2009 Darren Hiebert
  Compiled: Mar  7 2014, 18:05:06
  Addresses: <dhiebert@users.sourceforge.net>, http://ctags.sourceforge.net
  Optional compiled features: +wildcards, +regex
2、如果没有安装
a)输入命令
$sudo apt-get install ctags
b)或者下载安装包,ctags-5.8.tar.gz
$tar zxvf ctargs-5.8.tar.gz -C ./
$cd ctags-5.8/
$./configure
$make
$sudo make install
3、建立tags,以 linux kernel 为例子:
$cd kernel
$ctags -R *
可以在目录中看到生成了 tags 这个文件
$vi ~/.vimrc
在 .vimrc 文件中添加
set tags=/home/andrew/kernel/tags
4、常用命令
这个时候可以使用下面命令
ctrl+]    跳转
ctrl+T    返回
ctrl+o  返回源文件
vi -t start_kernel    可以直接打开有 start_kerenl 的文件
如果有多个
$ts(tagselect) 列出所有 tags,让用户选择
# pri kind tag               文件
  1 F C f    start_kernel      arch/alpha/boot/bootp.c
               start_kernel(void)
  2 F   f    start_kernel      arch/alpha/boot/bootpz.c
               start_kernel(void)
> 3 F   f    start_kernel      arch/alpha/boot/main.c
               void start_kernel(void)
  4 F   f    start_kernel      init/main.c
               asmlinkage void __init start_kernel(void)
可以输入 3 进行选择
tn(tagnext) 打开下一个 tag
tp(tagprevious) 打开上一个 tag
tf(tagfirst) 打开第一个 tag
tl(taglast) 打开最后一个 tag
ta                直接跳转到第一个 tag 处
tj 如果只有一个,则直接跳到 tag 处,否则让用户选择


ctags 只能查找符号的定义,并不能实现 source Insight 中的 Jump to caller 功能.但是使用 cscope 插件,可以完善这一功能。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值