如何在vim中的多个选项卡中编辑同一个文件?

Tne*_*ppa 27 vim tabs

我经常在vim中编辑长文件,这些文件在文件中的多个不同位置都有代码块,我需要经常在它们之间来回切换.显然,解决这个问题的一种方法是将窗口拆分为:拆分并编辑不同拆分窗口中的每个部分,并且:w在任一窗口中都将保存整个文件.如果你有一个足够大的屏幕,这是好的,但有时我必须在低分辨率的笔记本电脑上使用vim,我不想通过分割窗口进一步减少我的屏幕空间.

在这种情况下,我真正想做的是在多个选项卡中编辑文件,并将每个单独的选项卡视为单独的视图拆分.我可以通过使用:tabopen <the same filename>一次打开文件的一个副本来模仿这个,但这有点hacky - 如果我已经对文件进行了更改,它就无法工作,因为vim认为我只是打开文件第二次.

有没有一个很好的方法来获得我想要的行为在vim中的标签?

pb2*_*b2q 33

:tab命令将命令作为参数.

所以你可以这样做:

:tab split
Run Code Online (Sandbox Code Playgroud)

即使修改了缓冲区,这也会起作用,并且任一选项卡中的保存都会保存文件,更新两者中保存的状态.

  • 或者`:tab sp` (10认同)

Geo*_*edy 8

您可以使用以下:tab命令:

:[count]tab {cmd}`
Run Code Online (Sandbox Code Playgroud)

执行{cmd},当它打开一个新窗口时,打开一个新的标签页.[...] [count]省略时,标签页出现在当前标签页之后.当[count]指定的新标签页出现后标签页[count].用于:0tab cmd将新标签页作为第一个标签页.

例子:

:tab split           " opens the current buffer in new tab page
:tab help gt         " opens tab page with help for "gt"
Run Code Online (Sandbox Code Playgroud)