如果你在 VIM 中编辑一个文件,然后你需要打开一个现有的缓冲区(例如,从你的缓冲区列表中:)你:buffers怎么能在垂直分割中打开它?
:buffers
我知道您已经可以使用 正常 拆分打开它,例如:
:sbuffer N
WehereN是您想要的缓冲区编号,但是,上面会水平打开该N缓冲区,而不是垂直打开。
N
我也知道您可以在打开后更改窗口位置并进行垂直拆分,如下所示:
Ctrl-W H Ctrl-W L
这会将窗口垂直拆分到右侧或左侧。
在我看来,如果有一个sbuffer应该有一个vsbuffer但不存在(不是我知道的)
sbuffer
vsbuffer
另外,请注意,我不是在寻找解决此问题的插件。我知道有很多插件可以让你做到这一点。
我确信我可能会遗漏一些已经存在的东西。
编辑:本着最好的协作精神,如果其他人偶然发现这个问题并且不想安装插件,我已经创建了一个带有映射的简单函数:
功能:
" Vertical Split Buffer Function function VerticalSplitBuffer(buffer) execute "vert belowright sb" a:buffer endfunction
映射:
" Vertical Split Buffer Mapping command -nargs=1 Vbuffer call VerticalSplitBuffer(<f-args>)
这完成了在右拆分中打开缓冲区的任务,因此对于缓冲区 1,您可以这样称呼它:
:Vbuffer 1
尝试:
:vert sb N
这将打开一个左垂直拆分(默认情况下,除非您修改了某些选项)。
另一方面,要向右打开拆分:
:vert belowright sb N