有没有办法跳转到当前缓冲区中的下一个标签?
sub A {
/* ... */
[cursor]
}
sub B { /* ... */ }
我知道 A
和 B
都是当前缓冲区中的标签。
有没有办法跳转到[cursor]
之后的下一个标签? (在此示例中为 B
)。
最佳答案
没有任何内置内容,但您可以自己实现:
您可以通过以下方式获取当前缓冲区内所有标签的列表
:let tags = filter(taglist('.*'), 'v:val.filename ==# expand("%:p")')
然后转义标签名称以在正则表达式中使用,并将它们作为替代搜索分支连接:
:let tagsExpr = '\V' . join(map(tags, 'escape(v:val.name, "\\")'), '\|')
最后执行搜索以找到当前缓冲区中的下一个标签:
:call search(tagsExpr)
关于vim - 如何跳转当前缓冲区中的下一个标签 - vim?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54413230/