请教高手:如何修改vim的标签匹配优先级?

Vim、Emacs配置和使用
回复
superfhwl
帖子: 2
注册时间: 2010-02-09 23:59

请教高手:如何修改vim的标签匹配优先级?

#1

帖子 superfhwl » 2010-02-10 0:25

帮助文档中:
如果有标签的多个匹配,使用以下的优先级:
1. "FSC" 当前文件的完整的匹配静态标签。
2. "F C" 当前文件的完整匹配全局标签。
3. "F " 其他文件的完整匹配全局标签。
4. "FS " 其他文件的完整匹配静态标签。
5. " SC" 当前文件的忽略大小写的匹配静态标签。
6. " C" 当前文件的忽略大小写匹配全局标签。
7. " " 其他文件的忽略大小写匹配全局标签。
8. " S " 其他文件的忽略大小写匹配静态标签。
在写C语言代码的时候,头文件和C文件里的函数会各生成一个tag标签,而且头文件的标签是“全局标签”,C文件是”静态标签“。
这样当我对一个函数按 C-] 的时候,优先跳转的是头文件。而我其实是想看看函数的实现内容。

目前我是用两个办法来解决,但是都比较麻烦
  • 1. 用 g] 命令,然后指定跳转到c文件。这个就比较慢了,还要停下来仔细看清楚才能选。。
    2. 用 cscope 直接跳转到定义。但是这个副作用是标签栈就被打乱了,按 C-t 的时候就不是跳回刚才那里了。
找遍了手册也没找到怎么修改这个优先级,或者可以加ctags的参数,设置将c文件的标签作为全局标签?
回复