Ответы:
:vertical
( vert
) работает:
:vert help
Вы также можете управлять разделением окна: слева / вверху или справа / снизу с помощью topleft
( to
) и botright
( bo
) . Например, чтобы открыть справку в правом окне вертикального разделения:
:vert bo help
cnoremap help vert help
. Это создает сопоставление командного режима, так что при вводе help
в командном режиме вы увидите, что оно расширяется до vert help
.
cnoremap help vert help
каждая буква «или» help
появляется сама по себе, поэтому слово help
не отображается в командной строке. Есть ли способ это исправить? Может еще что-то cnoremap
?
h
, как vert h
: :cabbrev h vert h
. Затем каждый раз, когда вы печатаете :h
, он автоматически расширяется до :vert h
.
В качестве альтернативы ответам Харугана и Шона вы можете использовать FileType
событие для автокоманды следующим образом:
autocmd FileType help wincmd L
Хотя это изменит положение любого окна справки, а также переместит окно после его размещения вручную, если файл, который вы просматриваете, изменится. Но я считаю, что это проблема любого решения.
:vsplit
) много положительных голосов !?
help,*
а не просто help
. Кроме того, я заметил, что эта команда работает, когда я добавляю ее в свой _vimrc
и запускаю новый экземпляр GVim, но не когда я запускаю команду в моем текущем сеансе GVim (мне нужно вручную :set ft=help
запускать autocmd).
*
самом деле он не понадобился. Насколько я могу понять для текущего сеанса и нового сеанса, в новом сеансе вам нужно будет повторно использовать ваш исходный код, vimrc
чтобы любые изменения вступили в силу, кроме того, если файл уже открыт в буфере и :help
просто переносит вас в другой часть файла, это не autocmd
будет иметь никакого эффекта
autocmd FileType help wincmd L
autocmd FileType h wincmd L
help
типу файла , поэтому при установке типа help
файла этот autocmd будет запущен. Вы можете проверить это, сделав это :sef help
в любом файле, пока в вашем окне есть разделение, поэтому второй autocmd @danbruegge не понадобится
Не нужно переназначать какие-либо команды или вводить странные псевдонимы, например :Help
. Вот решение. Создайте, ~/.vim/after/ftplugin/help.vim
где вы можете переопределить любые настройки Vim, в частности, help
и добавьте туда следующую строку:
autocmd BufWinEnter <buffer> wincmd L
Этот крючок гарантирует, что любой help
файл открывается с вертикальным разделением. Кроме того, у него нет побочного эффекта, описанного в ответе Шона. Лично для меня это пока идеальное решение.
Надеюсь это поможет. Удачи.
Эта команда должна это сделать:
:vert help
:vsplit
это разбивает текущее окно по вертикали. Как это открыть справку на вертикальной панели?
Чтобы файлы справки всегда открывались с вертикальным разделением справа, поместите это в свой vimrc:
augroup helpfiles
au!
au BufRead,BufEnter */doc/* wincmd L
augroup END
Это будет иметь побочный эффект, если в вертикальном разделении будет открываться что-либо с "doc" на своем пути, но это может не быть проблемой для вас. Это не для меня. Если вы предпочитаете, чтобы он открывался с левым вертикальным разделением или чем-то еще, вы можете изменить wincmd L
. Вы можете узнать об этом больше с:he wincmd
:au BufEnter */doc/* if &filetype=='help' | wincmd L | endif
autocmd FileType help wincmd L
работает только один раз для меня, это работает очень хорошо!
Поместите следующее в свой ~/.vim/ftplugin/help.vim
wincmd L
Нет ничего проще этого :)
При этом окно справки перемещается один раз . Таким образом, вы можете свободно перемещать его после создания окна.
if has('autocmd')
function! ILikeHelpToTheRight()
if !exists('w:help_is_moved') || w:help_is_moved != "right"
wincmd L
let w:help_is_moved = "right"
endif
endfunction
augroup HelpPages
autocmd FileType help nested call ILikeHelpToTheRight()
augroup END
endif
Функция ILikeHelpToTheRight()
будет запускаться только wincmd L
один раз для каждого окна (это то, чтоw:
префикс).
Затем он вызывается всякий раз, когда открывается файл «справки». Это не имеет побочных эффектов решения EdJoJob.
Динамически открывать окна справки вверху, если на текущей вкладке более одного окна, или справа, если окно только одно:
if winnr('$') > 2
wincmd K
else
wincmd L
endif
Вам нужно будет разместить это ftplugin/help.vim
или использовать с autocmd
, например:
augroup my_filetype_settings
autocmd!
autocmd FileType help if winnr('$') > 2 | wincmd K | else | wincmd L | endif
augroup END
Это предназначено для добавления к ответу @m42, но у меня еще нет 50 представителей здесь, на SO, чтобы добавить в комментарии.
Добавить nnoremap <C-H> :vert bo help
в .vimrc
Теперь нажатие Ctrl-H в обычном режиме приведет к переходу в командный режим с префиксом для открытия справки в вертикально разделенном окне справа. Включите конечный пробел послеhelp·
наилучших результатов <- в конце строки конфигурации.
Это сопоставление позволяет вам по-прежнему использовать :help
\ :h
для открытия окна, разделенного по горизонтали, или циклического просмотра предыдущей истории команд справки без автоматического расширения подсказки.