linux – 如何在大型代码库中运行ctags?

前端之家收集整理的这篇文章主要介绍了linux – 如何在大型代码库中运行ctags?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

假设我有一个代码目录结构如下:

/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’设置或不断自己切换目录,那么显然不会找到标签.

猜你在找的Linux相关文章