Chinaunix首页 | 论坛 | 博客
  • 博客访问: 251082
  • 博文数量: 91
  • 博客积分: 4185
  • 博客等级: 上校
  • 技术积分: 855
  • 用 户 组: 普通用户
  • 注册时间: 2008-06-29 16:18
文章分类

全部博文(91)

文章存档

2014年(3)

2013年(1)

2012年(8)

2011年(2)

2010年(5)

2009年(68)

2008年(4)

我的朋友

分类: LINUX

2009-09-17 16:22:14

vim插件 ctags 和 taglist 的安装和使用

1.ctags
(1)到

下载ctags源码ctags-5.6.tar.gz

(2)解压并安装
tar zxvf ctags-5.6.tar.gz
cd ctags-5.6
./configure && make && make install

(3)command

ctags -R --c++-kinds=+p --fields=+iaS --extra=+q

2. taglist
能够列出源文档中的tag(function, class, variable, etc)并跳转.
注意:taglist依赖于ctags,所以要先装ctags,否则taglist装了也没法用!
(1)到

下载taglist_42.zip,即

(2)解压得到两个文档
# unzip -d taglist taglist_42.zip
# cd taglist
# tree
.
|-- doc
| `-- taglist.txt
`-- plugin
`-- taglist.vim
(3)安装
cp doc/taglist.txt /usr/share/vim/vim61/doc/
cp plugin/taglist.vim /usr/share/vim/vim61/plugin/
(4)配置和使用
cd /usr/share/vim/vim61/doc/
启动vim,用 “:help tags .”来配置好帮助文档
重启vim,用“:TlistToggle”来打开和关闭taglist窗口。
能够用“:help taglist”来获得更多帮助信息。

vim启动时会自动搜索标签文件,找到定义指定标签的文件,打开它,并将光标定位到指定标签所在的那一行。

跳转到指定标签

:ta 

:tag 

跳转到指定标签定义的地方,如果有多个相同的标签,vim会给出一个列表,从中可以选择要跳转到哪里。

在分割窗口中查看标签

:stag 

标签跳转快捷键

Vim已经映射了几个用于标签之间跳转的快捷键,我们可以使用这些快捷键在标签之间来回跳转。

Ctrl-] 跳转到当前光标所在的标签;

Ctrl-O 返回到跳转前的位置;

Ctrl-T 沿着经过的标签列表向回跳转,也可以在其前面输入一个数字,如N-Ctrl-T会向回跳转N步,相当于按了N下Ctrl-T;

:tags 显示所有经过的标签列表;

标签补全

当我们不想输入完整的标签时,可以只输入要找标签的前几个字符,然后按键自动补全

:tag prefix_

默认会得到第一个匹配,如果它不是你想要的,可以重复按键直到找到正确的匹配。

模式匹配

ctags支持模式匹配查找,当我们无法记清楚要找的标签,或只知道标签的一部分时,就可以使用模式匹配来搜索。

:tag /pattern

匹配指定模式,按后,vim会自动搜索包含pattern的标签,默认会得到第一个匹配,如果这不是你想要的,可以重复按键直到找到正确的匹配。

我们可以使用有关查找模式匹配的所有特性,如只查找以foo开始的标签

:tag /^foo

:tselect /^foo

或只查找以bar结尾的标签

:tag /bar$

:tselect /bar$

你同可以用逐个查看,也可以直接按vim给出匹配的标签列表,然后从中选择你想查找的标签

预览窗口

有时我们可能不想跳转到指定标签,只是想查看或确认一下相关标签的定义,然后就返回。用Ctrl-]跳转然后再用Ctrl-O或Ctrl-T返回当然可以,但vim提供了一种更简单的方式,那就是预览窗口。预览窗口就是把当前编辑窗口分割出一小部分,用来显示预览,活动光标依然会停留在编辑窗口,不会影响编辑。

在预览窗口里显示标签定义

:ptag 

对于ptag,前面所讲的模式匹配同样适用,可以使用

:pclose

关闭预览窗口,而无论当前活动窗口是哪一个。

在预览窗口中编辑指定文件

:pedit 

查找当前文件和任何包含文件中的单词并在预览窗口中显示匹配

:psearch 

阅读(1530) | 评论(0) | 转发(0) |
0

上一篇:rdtsc 指令解释

下一篇:log 09.09.17

给主人留下些什么吧!~~