Risposte:
:vertical( vert) funziona:
:vert help
È inoltre possibile controllare se la finestra si divide a sinistra / in alto oa destra / in basso con topleft( to) e botright( bo) . Ad esempio, per aprire la guida nella finestra di destra di una divisione verticale:
:vert bo help
cnoremap help vert help. Questo crea una mappatura della modalità di comando in modo che quando digiti helpin modalità di comando la vedrai espandere in vert help.
cnoremap help vert helpfa apparire ogni lettera di helpda sola, quindi la parola helpnon appare sulla riga di comando. C'è un modo per risolverlo? Forse qualcosa di diverso cnoremap?
h come vert h: :cabbrev h vert h. Quindi ogni volta che digiti :h, si espanderà automaticamente in :vert h.
In alternativa alle risposte di Haroogan e Sean puoi usare l' FileTypeevento per l'autocomando in questo modo:
autocmd FileType help wincmd L
Anche se questo cambierà la posizione di qualsiasi finestra della guida così come lo spostamento della finestra dopo averla posizionata manualmente se il file che stai guardando cambia. Ma credo che questo sia un problema con qualsiasi soluzione.
:vsplit) ha molti voti positivi !?
help,*invece che semplicemente help. Inoltre, ho notato che questo comando funziona quando lo aggiungo al mio _vimrce avvio una nuova istanza di GVim ma non quando :set ft=helpeseguo il comando nella mia attuale sessione GVim (devo attivare manualmente l'autocmd).
*non era effettivamente necessario. Per quanto posso capire per la sessione corrente rispetto alla nuova sessione, nella nuova sessione dovresti reindirizzare il tuo vimrcper rendere effettive le modifiche, inoltre se il file è già aperto nel buffer e :helpti porta a un altro parte del file, questo autocmdnon avrà alcun effetto
autocmd FileType help wincmd L autocmd FileType h wincmd L
helpfile, quindi impostando il tipo di helpfile verrà eseguito questo autocmd. Puoi testarlo :sef helpin qualsiasi file mentre c'è una divisione nella tua finestra, quindi il secondo autocmd di @ danbruegge non sarebbe necessario
Non è necessario rimappare alcun comando o introdurre strani alias come :Help. Ecco la soluzione. Crea ~/.vim/after/ftplugin/help.vimdove puoi sovrascrivere qualsiasi impostazione di Vim in particolare per helpe aggiungi la seguente riga lì:
autocmd BufWinEnter <buffer> wincmd L
Questo hook garantirà che qualsiasi helpfile venga aperto in divisione verticale. Inoltre, non ha un effetto collaterale descritto nella risposta di Sean. Personalmente, questa è la soluzione perfetta per me finora.
Spero che questo ti aiuti. Buona fortuna.
Questo comando dovrebbe farlo:
:vert help
:vsplitfa è dividere la finestra corrente verticalmente. Come funziona questo aiuto aperto in un riquadro verticale?
Per fare in modo che i file di aiuto si aprano sempre in una divisione verticale a destra, mettilo nel tuo vimrc:
augroup helpfiles
au!
au BufRead,BufEnter */doc/* wincmd L
augroup END
Questo avrà l'effetto collaterale di avere qualsiasi cosa con "doc" nel suo percorso aperto in una divisione verticale, ma potrebbe non essere un problema per te. Non è per me. Se preferisci che si apra in una divisione verticale sinistra, o qualsiasi altra cosa per quella materia, puoi cambiare wincmd L. Puoi saperne di più con:he wincmd
:au BufEnter */doc/* if &filetype=='help' | wincmd L | endif
autocmd FileType help wincmd Lfunziona solo una volta per me, funziona molto bene!
Metti quanto segue nel tuo file ~/.vim/ftplugin/help.vim
wincmd L
Non può essere più semplice di così :)
Questo sposta la finestra della guida una volta . Quindi puoi spostarlo liberamente dopo aver creato la finestra.
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
La funzione ILikeHelpToTheRight()verrà eseguita solo wincmd Luna volta per finestra (è a questo scopo il w:prefisso).
Questo viene quindi chiamato ogni volta che viene aperto un file di "aiuto". Questo non ha gli effetti collaterali della soluzione di EdJoJob.
Apri dinamicamente le finestre della guida in alto se c'è più di una finestra nella scheda corrente, oa destra, se c'è solo una finestra:
if winnr('$') > 2
wincmd K
else
wincmd L
endif
Dovrai ftplugin/help.viminserirlo o usarlo con un autocmd, ad esempio:
augroup my_filetype_settings
autocmd!
autocmd FileType help if winnr('$') > 2 | wincmd K | else | wincmd L | endif
augroup END
Questo è pensato per aggiungere alla risposta di @ m42, ma non ho ancora 50 rappresentanti qui su COSÌ corretto da aggiungere ai commenti.
Aggiungi nnoremap <C-H> :vert bo helpa .vimrc
Ora premendo Ctrl-H in modalità Normale si passerà alla modalità Comando, prefissata per aprire la guida in una finestra divisa verticalmente a destra. Includere uno spazio finale dopo help·<- alla fine della riga di configurazione per ottenere i migliori risultati.
Questa mappatura ti consente di utilizzare ancora :help\ :hper aprire una finestra divisa orizzontalmente o scorrere la cronologia dei comandi della guida precedente senza che il prompt si espanda automaticamente.