Ctags - 项目和库文件的标记(具有绝对路径的多个目录)

时间:2012-07-04 22:42:43

标签: ctags exuberant-ctags

以下目录层次结构来自ctags faq

我可以创建一个标签文件,绝对文件路径为

cd ~/project
ctags --file-scope=no -R `pwd`

如何创建一个标记文件来搜索我的项目,以及std库的功能。 例如,假设我的项目是/sysint/client,而库位于/misccomp。如何创建一个搜索这些目录和子目录的标记文件。 (我不想在/下搜索所有内容。

你认为分成2个标签文件更好吗?

`-----misccomp
  |       `...
  `-----sysint
          `-----client
          |       `-----hdrs
          |       `-----lib
          |       `-----src
          |       `-----test
          `-----common
          |       `-----hdrs
          |       `-----lib
          |       `-----src
          |       `-----test
          `-----server
                  `-----hdrs
                  `-----lib
                  `-----src
                  `-----test

1 个答案:

答案 0 :(得分:0)

我认为分成2个标签文件更好。原因:

  • 我认为,您有时需要更新标签。更新的标记文件比更大的标记文件更快。因此,当您编辑项目时,只有项目的标签会更新,当您编辑lib时 - 只更新lig的标签。而不是每次都更新所有标签;
  • 当我在编写插件Indexer时,我发现有几个标记文件的工作速度并不比单个标记文件慢。

我还建议你使用这个插件Indexer,它会自动完成所有工作。它提供无痛自动标签生成并使标签保持最新。标签文件是在后台生成的,因此您无需等待。如果需要,请检查它。

UPD :有关详细信息,请参阅文章:Vim: convenient code navigation for your projects,其中详细说明了Indexer + Vimprj的用法。除此之外,还解释了库的标签,这正是您想要的。