我在旧项目中使用带有C的ctags,主要是在Vim中编码。 ctags工作正常[重定向完美]
现在代码库发生了很大的变化,我运行了命令:
ctags -R
,现在当我做Ctrl + ]
时,我没有像以前那样接受函数/宏定义,有时它会把我带到正确的行,但大多数情况下它需要我去一些行高于/低于实际定义。有人可以帮忙吗?
答案 0 :(得分:0)
听起来你的项目中的每个目录都有一个标记文件。 ctags -R
仅更改当前目录中的标记文件它不会递归更改所有标记文件。这就是为什么当你<C+]>
跳到一个接近实际定义的地方时。
要解决此问题,您应该只有一个标记文件,它应该位于项目的根目录中。然后在你的vimrc中添加set tags=./tags;/
。这允许vim从树上的当前目录开始搜索标记文件,直到找到它为止。 (停在根目录)