linux实用技巧:你该使用ctags查找源码了
来源:互联网 发布:软件外包开发 编辑:程序博客网 时间:2024/06/05 23:05
1.ctags简介:
“哦,这个多的文件,我该如何去查看XX函数的实现!”相信这是很多朋友的抱怨。太多的文件导致我们无法去定位一个函数的实现或者一个宏定义的位置。显然对于源码的阅读和个人的学习都是非常不利的。多么希望有一个软件能够输入命令就能够精确的定位函数的位置。是的,现在有这么一个工具:ctags,它需要和vim编辑器配合使用,让源码阅读可以更加轻松。
什么是ctags?
ctags(Generate tag files for source code)是vim下方便代码阅读的工具。尽管ctags也可以支持其它编辑器,但是它正式支持的只有VIM。并且VIM中已经默认安装了Ctags,它可以帮助程序员很容易地浏览源代码。
ctags更新地址:http://ctags.sourceforge.net/,这个网站是ctags的官方网站,你可以在上面下载到关于ctags的最新内容。
ctags能够定位什么内容?
1)用#define定义的宏
2)枚举型变量的值
3)函数的定义、原型和声明
4)名字空间(namespace)
5)类型定义(typedefs)
6)变量(包括定义和声明)
7)类(class)、结构(struct)、枚举类型(enum)和联合(union)
8)类、结构和联合中成员变量或函数
2.配置自己的环境满足ctags:
安装ctags,如果是redhat,则直接使用yum命令安装:
在指定的源码位置生成tags文件,并且我们添加很多参数来完善ctags的功能(为了体现其功能的强大,我用它来生成linux源码的tags文件):
然后我们查看tags内容就可以发现,原来tags就是linux内核代码中各个元素的索引,这也就是ctags结合vim可以快速进行定位的原因了(查询就是通过这个文件内容来定位的):
tags路径必须写入vim的配置文件中,才能在vim里面正确跳转,所以我们要进行添加:
完成之后我们就可以进行查找了,这里我们以printf的为例(你很快就会见识到ctags的威力了),如果是有经验的程序员,我想你一定会很快的反应出printf函数在什么文件中,呵呵。还好有经验的人并不是很多。。。
ctags的使用方法有一下几种:
1.直接在命令行上操作:
2.在vim的模式下用“:ta ”命令:
3.在光标制定的位置下直接使用“ctrl+]”,就可以定位到函数的定义位置:
关于ctags的用法有很多,以下是我们列举的部分:
"Ctrl-o"退回原来的地方;
[{ 转到上一个位于第一列的"{";
}] 转到下一个位于第一列的"{";
{ 转到上一个空行;
} 转到下一个空行;
gd 转到当前光标所指的局部变量的定义;
* 转到当前光标所指的单词下一次出现的地方 ;
# 转到当前光标所指的单词上一次出现的地方;
关于ctags更多的命令大家可以查看man手册,以后妈妈再也不用担心我读源代码了。。。^_^
“哦,这个多的文件,我该如何去查看XX函数的实现!”相信这是很多朋友的抱怨。太多的文件导致我们无法去定位一个函数的实现或者一个宏定义的位置。显然对于源码的阅读和个人的学习都是非常不利的。多么希望有一个软件能够输入命令就能够精确的定位函数的位置。是的,现在有这么一个工具:ctags,它需要和vim编辑器配合使用,让源码阅读可以更加轻松。
什么是ctags?
ctags(Generate tag files for source code)是vim下方便代码阅读的工具。尽管ctags也可以支持其它编辑器,但是它正式支持的只有VIM。并且VIM中已经默认安装了Ctags,它可以帮助程序员很容易地浏览源代码。
ctags更新地址:http://ctags.sourceforge.net/,这个网站是ctags的官方网站,你可以在上面下载到关于ctags的最新内容。
ctags能够定位什么内容?
1)用#define定义的宏
2)枚举型变量的值
3)函数的定义、原型和声明
4)名字空间(namespace)
5)类型定义(typedefs)
6)变量(包括定义和声明)
7)类(class)、结构(struct)、枚举类型(enum)和联合(union)
8)类、结构和联合中成员变量或函数
2.配置自己的环境满足ctags:
安装ctags,如果是redhat,则直接使用yum命令安装:
在指定的源码位置生成tags文件,并且我们添加很多参数来完善ctags的功能(为了体现其功能的强大,我用它来生成linux源码的tags文件):
然后我们查看tags内容就可以发现,原来tags就是linux内核代码中各个元素的索引,这也就是ctags结合vim可以快速进行定位的原因了(查询就是通过这个文件内容来定位的):
tags路径必须写入vim的配置文件中,才能在vim里面正确跳转,所以我们要进行添加:
完成之后我们就可以进行查找了,这里我们以printf的为例(你很快就会见识到ctags的威力了),如果是有经验的程序员,我想你一定会很快的反应出printf函数在什么文件中,呵呵。还好有经验的人并不是很多。。。
ctags的使用方法有一下几种:
1.直接在命令行上操作:
2.在vim的模式下用“:ta ”命令:
3.在光标制定的位置下直接使用“ctrl+]”,就可以定位到函数的定义位置:
关于ctags的用法有很多,以下是我们列举的部分:
"Ctrl-o"退回原来的地方;
[{ 转到上一个位于第一列的"{";
}] 转到下一个位于第一列的"{";
{ 转到上一个空行;
} 转到下一个空行;
gd 转到当前光标所指的局部变量的定义;
* 转到当前光标所指的单词下一次出现的地方 ;
# 转到当前光标所指的单词上一次出现的地方;
关于ctags更多的命令大家可以查看man手册,以后妈妈再也不用担心我读源代码了。。。^_^
0
上一篇:linux应用编程学习(5)管道
下一篇:内核模块下载和编译、安装
相关热门文章
- QEMU源码分析系列(四)...
- Python 包管理工具解惑
- Qt学习笔记---信号与槽...
- MyBatis 入门(五)--分页查询(...
- 研究说:失眠的人刷微博、朋友...
- linux 常见服务端口
- xmanager 2.0 for linux配置
- 【ROOTFS搭建】busybox的httpd...
- openwrt中luci学习笔记
- 什么是shell
- linux dhcp peizhi roc
- 关于Unix文件的软链接
- 求教这个命令什么意思,我是新...
- sed -e "/grep/d" 是什么意思...
- 谁能够帮我解决LINUX 2.6 10...
给主人留下些什么吧!~~
评论热议
0 0
- linux实用技巧:你该使用ctags查找源码了
- linux实用技巧:你该使用ctags查找源码了
- GitHub使用之12个实用技巧,你get了几个?
- 使用vim+ctags+cscope阅读linux内核源码
- Linux下源码阅读工具ctags的安装及使用
- linux ctags使用
- ctags看源码----你值得拥有
- Linux下源码阅读工具ctags+vim中安装ctags
- 九种迹象表明你该用Linux了
- Linux 命令 ctags使用详解
- linux下怎样用ctags查看内核源码
- Linux下源码分析利器Ctags
- 使用vim+ctags+cscope阅读内核源码
- 使用vim+ctags+cscope阅读内核源码
- vim+ctags+cscope配合使用阅读源码
- 使用vim+ctags+cscope阅读内核源码
- 使用vim+ctags+cscope阅读内核源码
- 使用vim+ctags+cscope阅读内核源码
- 2017超星慕课尔雅古希腊的思想世界答案题库
- AT&T资料(留着以后能看)
- linux内核 asmlinkage宏
- android编译环境配置总结
- linux应用编程学习(5)管道
- linux实用技巧:你该使用ctags查找源码了
- 内核模块下载和编译、安装
- 3.18内核的sk_buff
- 不可睡眠锁:自旋锁spinlock编码学习
- 8.可变对象(无序表和有序表——含java库中应用)
- LoRa笔记02 LoRa sx1276 sx1278的发射功率研究
- 不可睡眠锁:RCU read-copy-updat
- 可睡眠锁 互斥量、信号量、读写信号量、完成变量
- c++中使用Ctags
原创粉丝点击
热门IT博客
热门问题
老师的惩罚
人脸识别
我在镇武司摸鱼那些年
重生之率土为王
我在大康的咸鱼生活
盘龙之生命进化
天生仙种
凡人之先天五行
春回大明朝
姑娘不必设防,我是瞎子
金三环装饰
金手环
雷蛇的金环蛇
金瓜影视
金瓜贡茶
金瓜贡茶根
金瓜影院
小金瓜是南瓜吗
金瓜击顶
金瓜蒸排骨
金瓜贡茶价格
普洱金瓜贡茶
金瓜贡茶一般多少钱
云南金瓜贡茶
蒸金瓜的做法大全家常
曲剧刘全金瓜
金竹瀑布
织金竹荪价格
金宴竹个人资料
金英光
金宰英
金英胶囊
金英爱
金英柱
金渐层英短图片
exo里有金英敏亲儿子
金院长在干胡秀英12章
特赦1959金英光真实身份
金渐层英短多少钱一只
金英胶囊多少钱一盒
小金蛋
小金蛋女童鞋
小金蛋童鞋怎么样
小金蛋童鞋质量怎么样
金蛋的价格
小金蛋童鞋代理
金蛋怎么样
小金贷
金麦贷
快金极速贷
万金贷