如何跳转到已经打开的文件中的标签

时间:2018-12-04 22:38:24

标签: vim ctags exuberant-ctags

我知道我可以跳转到使用ctags生成的标签,其中^]在同一文件中,^w^]在水平分割中。

但是,假设我已经在标签所在的拆分或选项卡中打开了文件。那么如何才能切换到该缓冲区并跳转到标签的位置,而不是打开新的缓冲区?

1 个答案:

答案 0 :(得分:1)

<C-w>]<C-]>变量的行为可以通过:help 'switchbuf'选项来影响。您正在寻找useopen,也许还有usetab的值。

但是,您无法轻松配置<C-]>映射的行为。如果您确实希望它在同一窗口中打开外部标签,但是如果该标签位置尚未打开,则要重用当前窗口,则必须围绕它编写包装映射。

一种方法是首先进行分割跳转,检查窗口数量是否增加(因此,由于'switchbuf',没有现有的窗口被重用),在这种情况下,请删除添加的窗口,返回原始的,然后执行非拆分跳转。