Vim:如何使用ctags跳转到C++方法的声明

4
我该如何使用:tagC-]跳转到C++方法的声明而不是定义?我尝试了。
ctags * --C++-kinds=+p

生成标签文件后,:tselect仍然只列出定义而不是声明。头文件为hpp文件,源文件为cpp文件,全部在同一目录下。
我已经看过这个答案,但它没有回答我的问题,只有一个评论提供了上述想法(--<LANG>-kinds)。
1个回答

4
我正在使用以下选项:--c++-kinds=+pf --fields=+imaSft --extras=+q。除了其他事情之外,我看到了函数定义和函数声明。我在维护已经有一段时间的插件里面自动处理了所有内容。同样的主题,还可以参考下面内容: 顺便说一句,我强烈推荐在尝试为C++生成标签时使用维护的分支——通用标签而不是老旧且未维护的项目——exhuberant ctags。

这只适用于universal-ctags吗?我尝试使用exuberant,但extras不受支持。我尝试了没有它(只有kinds和fields),但我仍然无法获得声明。感谢您指向universal-ctags。 - Aditya Kashi
确实。抱歉,以前是使用 ex-ctags 的 extra - Luc Hermitte
1
太好了,谢谢!--c++-kinds=+pf --extra=+q足以使其首先跳转到原型并在执行g C-]时显示原型。是否有一种方法可以保留原型标签但首先跳转到定义? - Aditya Kashi

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接