I have list of buffers in vim. I can split buffer horizontally using :sb[N] where N is the buffer number. How can I split the buffer vertically ?
4 Answers
The vs
and vsplit
commands take a filename as an argument like :vs somefile
to open a file in a vertical split.
To put an existing buffer in a split window you use the sb#
command (where # is the buffer number). Splits in VIM default to horizontal, to change this, prefix your command with vert
which forces a vertical split of the next split command.
:vert sb#
Where # is the buffer number
This is a command I created and added to my .vimrc to allow me to open a current buffer in a vertical split
command -nargs=1 Vsb call VsbFunction(<f-args>)
function VsbFunction (arg1)
execute 'vert sb' a:arg1
endfunction
-
you mean open all files currently in the buffer on vertical splits right? that was the answer i was looking for.– kroeNov 4, 2016 at 2:12
-
-
You can use vim-fzf
plugins and:
Similarly to {ctrlp.vim}{3}, use enter key, CTRL-T, CTRL-X or CTRL-V to open selected files in the current window, in new tabs, in horizontal splits, or in vertical splits respectively.
use :Buffers
select and hit CTRL-V
As kirysu said, but additionally with "positioning the other split".
:vert rightbelow sb otherfile.txt
or
:vert bel sb otherfile.txt
... opens a existing buffer, named otherfile.txt
, in a split "right below" the existing one.
In the case of vertical splitting, it means "right side of the existing buffer".
Here you can use the [tab]
-key too, to let vim complete the buffer-name!
(see :help :vert
too, for further "positioning"-commands)