Откройте буфер как вертикальное разделение в VIM - PullRequest
162 голосов
/ 31 декабря 2010

Если вы редактируете файл в VIM, а затем вам нужно открыть существующий буфер (например, из списка буферов: :buffers), как вы можете открыть его в вертикальном разделении?

Я знаю, чтовы уже можете открыть его с помощью нормального разбиения, например:

:sbuffer N

Wehere N - это номер буфера, который вы хотите, однако вышеизложенное открывает этот буфер 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

Ответы [ 4 ]

187 голосов
/ 31 декабря 2010

Попробуйте:

:vert sb N

, который откроет вертикальное разделение слева (по умолчанию, если вы не изменили некоторые параметры).

Чтобы открыть разделение вправо, с другой стороны:

:vert belowright sb N
113 голосов
/ 05 февраля 2013

:vsp | b1

1 - некоторый номер буфера.Используйте buffers для вывода списка всех буферов.

Вот некоторая дополнительная информация о разбиениях, если вам интересно. Ссылка

0 голосов
/ 28 июня 2019

Вы можете облегчить свою боль, добавив следующее к вашему .vimrc

cabbrev vb vert sb

Теперь вы можете использовать его следующим образом.

:vb <buffer>
0 голосов
/ 12 февраля 2016

вы можете использовать Neovim, вот так:

autocmd FileType python nmap <F5> :rightbelow vertical split <bar> :term python %<cr>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...