vim 跳转到 structure/class 定义

vim jump to structure/class definition

我在 vim 中有 cscope 和 ctags。当我将光标放在结构或 class 名称上时,它会显示一长串所有使用该结构或 class 的行。

想知道有没有办法直接跳转到class或者结构体定义。此外,对于像 init 这样的方法,如果我需要 select 它以获得 class,它会向我展示大量的 init。有什么方法可以将结果减少到给定 class?

原因:

当您按下 ctrl+]ctags 的默认行为是跳转到第一个定义。但是您的 cscope_maps.vim (/usr/share/vim/vim73/plugin/cscope_maps.vim) 似乎包含以下行

set cscopetag

这将使 vim 以您在问题中提到的方式显示所有可用的定义(类似于 :ts)。

解法:

  1. 删除/注释该行(如果允许)
  2. 在vim
  3. 中使用:set nocscopetag
  4. cscope_maps.vim
  5. 之后加载的 vim 加载脚本之一中设置 :set nocscopetag