ctags--vim中代码间跳转
来源:互联网 发布:linux ftp命令 prompt 编辑:程序博客网 时间:2024/04/29 21:21
ctags--vim中代码间快速跳转
1、说明
在Linux环境下使用vim进行驱动程序编写和维护的时候,会经常需要调用Linux内核的函数或宏定义,在驱动程序和kernel代码之间频繁跳转是件很繁琐的事,使用ctags包可以轻松实现函数或宏定义的跳转。
在Linux环境下使用vim进行驱动程序编写和维护的时候,会经常需要调用Linux内核的函数或宏定义,在驱动程序和kernel代码之间频繁跳转是件很繁琐的事,使用ctags包可以轻松实现函数或宏定义的跳转。
2、配置方法
假设:系统中已经安装ctags。
假设:系统中已经安装ctags。
举例:
以在Linux内核代码linux-3.5创建tags为例,建议先将linux-3.5内核代码编译通过,因为打上ctags包之后,再进行编译或者修改会破坏ctags环境,需要重新打ctags;内核代码不进行编译也可以正常实现代码间的跳转使用。
在程序项目主目录(想实现代码间跳转的目录),例如/home/kernel/linux-3.5/:
#cd /home/kernel/linux-3.5
#ctags -R
运行后,在/home/kernel/linux-3.5/目录下会生成一个tags文件。
将tags包设置为全局:
在Redhat系统下:
#vim /etc/vimrc
在Ubuntu系统下:
#vim /etc/vim/vimrc
在vimrc文件末行添加:
set tags+=/home/kernel/linux-3.5/tags
注意:
必须使用“+=”,并且两边不能有空格。
不需要重新启动电脑,只需要将vim已经打开的文件关掉并重新打开,就可以实现程序代码带内核代码之间的跳转。
要想实现自己编写的多个程序文件之间,或者单个文件内不同地方的函数之间的跳转,也可以用ctags实现,方法同上,举例如下:
假如:正在编写的驱动程序代码为/home/helloworld/。
#cd /home/helloworld
#ctags -R
在/home/helloworld/目录下会生成一个tags文件。
将tags包设置为全局:
在Redhat系统下:
#vim /etc/vimrc
在Ubuntu系统下:
#vim /etc/vim/vimrc
在vimrc文件末行添加:
set tags+=/home/helloworld/tags
同样不需要重新启动电脑,只需要将vim已经打开的文件关掉并重新打开,就可以实现程序代码带内核代码之间的跳转。
3、使用方法
Ctrl + ]
Ctrl + o
在Linux环境下任意目录下的程序文件里的函数,要实现跳转到kernel代码进行查看,只需要将vim光标移动到函数名或宏定义名称上,使用快捷键“Ctrl+]”,即可跳转到kernel中的函数或宏定义的地方进行查看,有多个要跳转的路径时会在vim下边出现几行选项,直接输入数字加回车可以进行对应的函数或宏定义选择;要想返回上一级函数或宏定义,只需要使用快捷键“Ctrl+o”,即可跳会上次的查看的函数。
1 0
- ctags--vim中代码间跳转
- ctags-vim代码间快速跳转
- vim中浏览c++代码使用ctags和cscope进行函数跳转时vimrc的配置
- vim代码跳转工具ctags安装及使用
- vim ctags 浏览代码
- ctags的用法 vim ctags , linux ctags , ctags分析代码
- vim中ctags使用
- cscope+ctags+vim阅读代码
- vim + ctags 搭建代码阅读器
- vim ctags跳转到函数实现处
- 使用Ctags在Vim跳转到定义
- VIM 配置ctags/cscope 函数跳转
- 源代码查看工具:vim中ctags的使用(跳转查定义)
- Vim中 ctags 跳转直接跳到第一个匹配行的问题
- 在Vim中使用ctags
- 在Vim中使用ctags
- vim中使用cscope+ctags
- vim中插件ctags配置
- 多基站wifi混合定位
- 程序员需知:面对对象的设计原则
- 2013-2014 Northwestern European Regional Contest (NWERC 2013)
- Sublime Text3是使用和汉化
- jQuery对标签属性的操作
- ctags--vim中代码间跳转
- 修改MySQL的用户密码
- 书写高质量jQuery代码的12条经验
- javabean学习
- 数学题
- cocos2d-js javascriptbinding实现
- 简易Spring IOC的实现 tiny spring
- RasGetEntryDialParams
- android----Log类的封装