对于我的每个C++项目,我在源树的根目录中保留一个标记文件.当我更改它时,如何让Vim自动加载该目录的标记文件?
例如,我的目录布局如下所示:
~/dev/project1/tags
~/dev/project2/tags
Run Code Online (Sandbox Code Playgroud)
我启动Vim(来自GUI),当前工作目录默认为$ HOME.我键入:cd ~/dev/project/并且Vim应该加载~/dev/project/tags.明天我可能想在project2上工作,所以我希望Vim能够为我加载该项目的标签cd.
如何才能做到这一点?
rom*_*inl 11
只需将以下行添加到您的~/.vimrc:
set tags=./tags;,tags;
Run Code Online (Sandbox Code Playgroud)
这意味着" tags在当前文件的目录中查找文件,然后向上直到/和在工作目录中,然后向上直到/".
换句话说,无论您在项目中的哪个位置,Vim都会获得tags项目的权利.
:help tags 这是一个很好的阅读,它可以节省你在这里发布问题的麻烦.
注意:该行的神奇部分是;"向上搜索".你可以像这样给Vim一个上限:;$HOME.