在 vim 中,为什么 :tselect 会显示错误的列表?

des*_*ons 5 vim ctags

我在vim中打开了这段代码:

$this->mockEvolve(...);
Run Code Online (Sandbox Code Playgroud)

当我将Ctrl + ]光标放在 上时m,它让我看到了它的定义。

但是,当我:ts在光标位于 上时运行时m,vim 会向我显示以下标签列表:

  # pri kind tag               file
> 1 F   f    mockGet           <filename>
               public function mockGet(...)
Run Code Online (Sandbox Code Playgroud)

我经常遇到这个问题(不仅仅是这个功能)。任何想法发生了什么?

Ing*_*kat 5

:help :tselect给你答案:

如果未给出 [ident],则使用标签堆栈中的最后一个标签名称。

它使用最后一个跳转到的标签,而不是光标下的单词。要将其插入命令行,请使用Ctrl-R Ctrl-W.

  • 哇,我只花了 3 个月的时间使用 :ts 就好像它列出了我光标下的所有标签。RTFM 的一个案例。非常感谢! (2认同)