2009-03-10 3 views

ответ

101

:vertical (vert) работы:

:vert help 

Вы также можете контролировать расщепляется ли окно на левой/верхней или правой нижней части/с topleft (to) и botright (bo). Например, чтобы открыть справку в правом окне вертикального раскола:

:vert bo help 
+1

Как я могу сопоставить это, поэтому, когда я запускаю: help ____, он всегда открывается так? – Tallboy

+9

@Tallboy Попробуйте 'cnoremap help vert help'. Это создает отображение режима команды, так что, когда вы вводите 'help' в командном режиме, вы увидите, что он расширяется до' vert help'. –

+1

@ Kazark: 'cnoremap help vert help' делает каждую букву' help' самостоятельно, поэтому слово 'help' не появляется в командной строке. Есть ли способ исправить это? Может быть, что-то другое, чем 'cnoremap'? – iconoclast

17

Эта команда должна сделать:

:vert help 
+3

: vsp также будет работать – james

+6

: vs works for me – thomasrutter

+10

Я этого не понимаю. Все ': vsplit' выполняет разделение текущего окна по вертикали. Как это открыть помощь в вертикальной панели? – doubleDown

5

Для того, чтобы файлы справки всегда открыты в вертикальной раскол справа, положил это в вашем vimrc:

augroup helpfiles 
    au! 
    au BufRead,BufEnter */doc/* wincmd L 
augroup END 

Это будет иметь побочный эффект, имеющее что-либо с «документом» на своем пути открытого в вертикальном расколе, но это не может быть проблемой для вас. Это не для меня. Если вы предпочтете открыть его в левом вертикальном разрезе или что-то еще, вы можете изменить wincmd L. Вы можете узнать больше об этом с :he wincmd

+0

Проверьте тип файла перед разбиением, ': au BufEnter */doc/* if & filetype == 'help' | wincmd L | endif' – rox

7

это в вашем .vimrc:

command -nargs=* -complete=help Help vertical belowright help <args> 

Теперь вы можете открыть вертикальную помощь с :Help команды (заметьте, что первая буквы в верхнем регистре)

15

Не нужно переназначать какие-либо команды или вводить странные псевдонимы вроде :Help. Вот решение. Создание ~/.vim/after/ftplugin/help.vim, где вы можете переопределить любые Vim настройки особенно для help и добавьте следующую строку там:

autocmd BufWinEnter <buffer> wincmd L 

Этот крючок будет гарантировать, что любой help файл открыт в вертикальном расколу. Кроме того, он не имеет побочного эффекта, описанного в ответе Шона. Лично это идеальное решение для меня до сих пор.

Надеюсь, что это поможет. Удачи.

26

В качестве альтернативы Haroogan и ответов Шона вы можете использовать FileType события для автокоманды как это:

autocmd FileType help wincmd L 

Хотя это изменит положение любого окна помощи, а также после перемещения окна вручную размещение это если файл, на который вы смотрите изменения. Но я считаю, что это проблема с любым решением.

+1

Простые, и (если я правильно понимаю) побочные эффекты незначительны. Почему это не принятый ответ !? И почему у совершенно нерелевантного ответа (': vsplit') много лишних !? – iconoclast

+1

Я поддержал и это, и ответы Харогана за их простоту. Я не очень хорошо знаком с событиями autocmd, и мне было интересно, какая причина для 'help, *' вместо просто 'help'. Кроме того, я заметил, что эта команда работает, когда я добавляю ее в свой '_vimrc' и запускаю новый экземпляр GVim, но не тогда, когда я запускаю команду в моем текущем сеансе GVim (мне нужно вручную: установить ft = help) запуск автозапуска). –

+0

Спасибо за комментарий: '' 'на самом деле не нужен. Насколько я могу понять для текущего сеанса против нового сеанса, в новом сеансе вам нужно будет переименовать ваш 'vimrc', чтобы какие-либо изменения вступили в силу, кроме того, если файл уже открыт в буфере и': help 'просто приведет вас к другой части файла, этот' autocmd' не будет иметь никакого эффекта – EdJoJob

1

Это перемещает справочное окно раз. Таким образом, вы можете свободно перемещать его после создания окна.

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: для).

Затем вызывается всякий раз, когда открывается файл «help». Это не имеет побочных эффектов решения EdJoJob.

1

Поместите следующее в вашем ~/.vim/ftplugin/help.vim

wincmd L 

Не удается получить проще, чем это :)

+0

Это больше не работает. См. Эту проблему в Github: https://github.com/vim/vim/issues/1806 –

1

Это предназначается, чтобы добавить ответ @ M42, но у меня нет 50 респ еще здесь, на SO, чтобы добавить к комментариям.

Добавить nnoremap <C-H> :vert bo help в .vimrc

Теперь нажав Ctrl-H в обычном режиме будет прыгать в командный режим, приставкой, чтобы открыть помощь в вертикальном расколоть окне справа. Включите заднее пространство после help· < - в конце строки конфигурации для получения наилучших результатов.

Это сопоставление позволяет вам использовать :help \ :h, чтобы открыть горизонтальное разделение окна или выполнить цикл в предыдущей истории команд справки без автоматического расширения.

Смежные вопросы