我正在尝试生成在 gVim 中使用 ctags,以便我获得与使用 Visual Studio 时相同的体验。
我的问题是,当我在项目内部生成 ctags 时,有很多函数无法被 vim 找到。
例如,我正在开发一个 DirectX 项目,当我尝试转到 DirectX 函数(例如“D3D12CreateDevice”)的定义时,我希望 vim 跳转到“d3d12.h”内的函数声明。但是,由于“d3d12.h”位于完全不同的文件夹中,因此不会为其生成标签,并且 vim 会抛出错误,指出它找不到它。
有没有什么办法可以让它工作?
答案1
如果您的项目位于一个文件夹中,则可以使用:
ctags -R -f /path/to/output/tagfile /path/to/project
在 Vim 中,使用标签:
:set tags=/path/to/output/tagfile
有一些使用插件的解决方案可以帮助解决复杂情况。请参阅下面的参考资料。
Vim:为你的项目提供便捷的代码导航
描述使用 Indexer 和 Project 插件。使用 Ctags 像专业人士一样浏览代码
描述使用旺盛的 Ctags,ctags 的改进版本。