假设我有一个代码目录结构如下:
/top
/second
/core
a.pl
b.pl
c.pl
/common
d.pl
e.pl
/util
f.pl
g.pl
h.pl
我应该在哪里运行ctags,以便我可以通过vi跳转到函数定义?
比如我有:
/dir
/perl
a.pl
我在dir中运行命令ctags -R perl但在a.pl中我无法跳转到同一文件中存在的函数定义.
如果我做了ctags -R.在它工作的perl目录中.
所以我无法理解这种模式.我应该在core,common,util中运行ctags吗?如果我的代码库很大怎么办?我真的需要在每个目录中运行它吗?
最佳答案
通常,您只需使用位于项目根目录中的一个标记文件.
例如,要标记位于〜/ src / vim-7.3中的整个Vim自己的源代码,您可以导航到该目录并在那里生成标记文件.
$cd ~/src/vim-7.3
$ctags -R
就这样.
当然,你可以在Vim内部做同样的事情.启动Vim然后键入:
:cd ~/src/vim-7.3
:!ctags -R
检查您是否拥有正确的“标签”设置.默认为./tags,tags,这意味着Vim将在当前目录中查找标签文件.
请务必完整阅读:h 'tags'
.您可以通过提供包含通配符的模式来指示Vim在目录树的深处查找标记文件.
还有一件事:为了使这种方法起作用,Vim当前的工作目录必须始终保持在根目录下.如果您有一些选项,例如’autochdir’设置或不断自己切换目录,那么显然不会找到标签.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。