【问题标题】:Vim Taglist: How to jump to a tag definition from within an open source fileVim Taglist:如何从开源文件中跳转到标签定义
【发布时间】:2012-12-05 09:50:40
【问题描述】:

如果我不能从开源文件中跳转到标签定义,我想知道 Vim Taglist 有什么用处。为了能够使用Ctrl+],我是否必须通过运行ctags *.f90 来生成单独的标签文件?

【问题讨论】:

    标签: vim taglist


    【解决方案1】:

    是的,您需要一个标签数据库(通常通过运行ctags 或等效的外部工具创建)来使用Vim 的标签跳转/搜索功能。

    由于 Vim 是通用文本编辑器,它不具备任何有关个别语言的知识,而是将其委托给外部资源(本着 Unix 的 做好一件事 的真正精神) .

    PS:有像easytags.vim 这样的插件可以自动生成和更新标签。

    【讨论】:

    • 谢谢。因此,taglist 只是对仍然需要的 `:!ctags *' 调用的补充(手动或通过 easytags 自动调用)?我还不清楚 taglist 的实际用途。
    • taglist 到底是什么意思? :tag... 命令,还是 taglist 插件(应该自动调用 ctags)?!
    • 确实,vim-taglist 会调用 ctags,但不会保留 Control+] 工作所必需的标签文件。
    • 是的,你现在明白了! romainl 在他的好回答中也详细说明了这一点。
    • 再次感谢您,特别是easytags 指针。我将同时使用它们,vim-taglist 和 easytags。
    【解决方案2】:

    你在说什么taglist

    我知道的唯一taglist是:

    • taglist() 函数 (:h taglist()),对你(或我)的日常 Vim 使用毫无用处,

    • TagList 插件。

    您指的是:tag 系列命令吗?

    <C-]>:tagtags 文件一起使用以跳转到变量或方法或其他任何东西的声明。如果您没有tags 文件,<C-]> 根本无法工作。

    TagList 插件在后台使用ctags 来构建文件中存在的元素的可操作列表,但它不使用tags 文件:ctags 命令的结果是直接消费。

    这意味着您可以同时完美地拥有一个工作的 TagList 插件和一个不工作的<C-]>(以及:tag:tselect 等……)。这些是单独的功能。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-04-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多