小编典典

在 VIM 中打开缓冲区作为垂直拆分

all

如果你在 VIM 中编辑一个文件,然后你需要打开一个现有的缓冲区(例如,从你的缓冲区列表中:)你:buffers怎么能在垂直分割中打开它?

我知道您已经可以使用 正常 拆分打开它,例如:

:sbuffer N

WehereN是您想要的缓冲区编号,但是,上面会水平打开该N缓冲区,而不是垂直打开。

我也知道您可以在打开后更改窗口位置并进行垂直拆分,如下所示:

Ctrl-W H
Ctrl-W L

这会将窗口垂直拆分到右侧或左侧。

在我看来,如果有一个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

阅读 61

收藏
2022-07-18

共1个答案

小编典典

尝试:

:vert sb N

这将打开一个左垂直拆分(默认情况下,除非您修改了某些选项)。

另一方面,要向右打开拆分:

:vert belowright sb N
2022-07-18