在 Vim 中跳转到函数

mrQ*_*RTY 0 vim ctags

我有 ctags,我会通过将光标放在一个函数上并按 ctrl ] 来跳转到函数。但是,我发现这有时很不方便。

例如,如果我的光标离我想跳转到的函数很远,那么它会令人沮丧。

ctags 或 vim 中是否有命令可以通过键入函数名称并按下按钮来自动跳转到函数?如果它是模糊的并为您预测功能会更好。因此,例如,如果我想转到一个名为 的函数process_input(),那么我会输入该函数并按g什么。

gar*_*ohn 5

:tag <identifier>命令等效于Ctrl-]光标在 <identifier> 上时。看

:help CTRL-]
Run Code Online (Sandbox Code Playgroud)

所以你可以输入

:tag process_input
Run Code Online (Sandbox Code Playgroud)

跳转到该函数的标签。此外,该:tag命令使用制表符完成,因此您可以改为键入

:tag pro<Tab>
Run Code Online (Sandbox Code Playgroud)

Vim 将尽可能多地完成该名称。再次点击 <Tab>,Vim 将在匹配中循环。如果您更喜欢查看可能匹配的列表,您可以将 'wildmode` 选项设置为其他内容,例如,

:set wildmode=longest,list
Run Code Online (Sandbox Code Playgroud)

:help 'wildmode'
Run Code Online (Sandbox Code Playgroud)