Antworten:
:vertical
( vert
) funktioniert:
:vert help
Sie können auch steuern, ob das Fenster links / oben oder rechts / unten mit topleft
( to
) und botright
( bo
) geteilt wird . So öffnen Sie beispielsweise die Hilfe im rechten Fenster einer vertikalen Aufteilung:
:vert bo help
cnoremap help vert help
. Dadurch wird eine Befehlsmoduszuordnung erstellt, sodass beim Eingeben help
im Befehlsmodus eine Erweiterung angezeigt wird vert help
.
cnoremap help vert help
jeden Buchstaben von für sich help
erscheinen, sodass das Wort help
nicht in der Befehlszeile erscheint. Gibt es eine Möglichkeit, das zu beheben? Vielleicht etwas anderes als cnoremap
?
h
als vert h
: :cabbrev h vert h
. Jedes Mal :h
, wenn Sie tippen , wird es automatisch auf erweitert :vert h
.
Als Alternative zu den Antworten von Haroogan und Sean können Sie das FileType
Ereignis für den Autobefehl wie folgt verwenden :
autocmd FileType help wincmd L
Dies ändert zwar die Position eines Hilfefensters und verschiebt das Fenster nach dem manuellen Platzieren, wenn sich die angezeigte Datei ändert. Aber ich glaube, dass dies bei jeder Lösung ein Problem ist.
:vsplit
) viele positive Stimmen?
help,*
anstatt einfach help
. Außerdem habe ich festgestellt, dass dieser Befehl funktioniert, wenn ich ihn zu meinem hinzufüge _vimrc
und eine neue Instanz von GVim starte, aber nicht, wenn ich den Befehl in meiner aktuellen GVim-Sitzung :set ft=help
ausführe (ich muss ihn manuell auslösen, um den Autocmd auszulösen).
*
wurde eigentlich nicht gebraucht. Soweit ich für die aktuelle Sitzung im Vergleich zur neuen Sitzung verstehen kann, müssten Sie in der neuen Sitzung Ihre Daten neu beziehen, damit vimrc
Änderungen wirksam werden. Außerdem, wenn die Datei bereits im Puffer geöffnet ist und :help
Sie nur zu einer anderen führt Als Teil der Datei hat dies autocmd
keine Auswirkung
autocmd FileType help wincmd L
autocmd FileType h wincmd L
help
Dateityp, daher wird bei der Einstellung des help
Dateityps dieses Autocmd ausgeführt. Sie können dies testen, indem Sie dies :sef help
in einer beliebigen Datei tun, während sich in Ihrem Fenster ein Split befindet. Daher wäre @ danbruegges zweites Autocmd nicht erforderlich
Keine Notwendigkeit, Befehle neu zuzuordnen oder seltsame Aliase wie einzuführen :Help
. Hier ist die Lösung. Erstellen ~/.vim/after/ftplugin/help.vim
Sie, wo Sie alle Vim-Einstellungen speziell für überschreiben können, help
und fügen Sie dort die folgende Zeile hinzu:
autocmd BufWinEnter <buffer> wincmd L
Dieser Hook stellt sicher, dass alle help
Dateien in vertikaler Aufteilung geöffnet werden. Darüber hinaus hat es keine Nebenwirkung, die in Seans Antwort beschrieben ist. Persönlich ist dies bisher die perfekte Lösung für mich.
Hoffe das hilft. Viel Glück.
Dieser Befehl sollte es tun:
:vert help
:vsplit
tun müssen, ist das aktuelle Fenster vertikal zu teilen. Wie hilft dieses Öffnen in einem vertikalen Bereich?
Fügen Sie Folgendes in Ihr vimrc ein, damit Hilfedateien immer in vertikaler Aufteilung rechts geöffnet werden:
augroup helpfiles
au!
au BufRead,BufEnter */doc/* wincmd L
augroup END
Dies hat den Nebeneffekt, dass alles mit "doc" in seinem Pfad in einer vertikalen Aufteilung geöffnet ist, aber das ist möglicherweise kein Problem für Sie. Es ist nicht für mich. Wenn Sie es lieber in einer linken vertikalen Teilung oder etwas anderem öffnen möchten, können Sie dies ändern wincmd L
. Mit können Sie mehr darüber erfahren:he wincmd
:au BufEnter */doc/* if &filetype=='help' | wincmd L | endif
autocmd FileType help wincmd L
funktioniert nur einmal für mich, das funktioniert sehr gut!
Geben Sie Folgendes in Ihre ~/.vim/ftplugin/help.vim
wincmd L
Einfacher geht es nicht :)
Dadurch wird das Hilfefenster einmal verschoben . Sie können es also frei bewegen, nachdem das Fenster erstellt wurde.
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
Die Funktion ILikeHelpToTheRight()
wird nur wincmd L
einmal pro Fenster ausgeführt (dafür ist das w:
Präfix vorgesehen).
Dies wird dann aufgerufen, wenn eine "Hilfedatei" geöffnet wird. Dies hat nicht die Nebenwirkungen der EdJoJob-Lösung.
Öffnen Sie die Hilfefenster oben dynamisch, wenn sich mehr als ein Fenster in der aktuellen Registerkarte befindet, oder rechts, wenn nur ein Fenster vorhanden ist:
if winnr('$') > 2
wincmd K
else
wincmd L
endif
Sie müssen dies platzieren ftplugin/help.vim
oder mit einem verwenden autocmd
, z.
augroup my_filetype_settings
autocmd!
autocmd FileType help if winnr('$') > 2 | wincmd K | else | wincmd L | endif
augroup END
Dies soll die Antwort von @ m42 ergänzen, aber ich habe hier auf SO noch keine 50 Wiederholungen, um die Kommentare zu ergänzen.
In nnoremap <C-H> :vert bo help
.vimrc
Wenn Sie nun im Normalmodus Strg-H drücken, wird der Befehlsmodus aktiviert, der vorangestellt ist, um die Hilfe in einem vertikal geteilten Fenster rechts zu öffnen. Fügen Sie nach help·
<- am Ende der Konfigurationszeile ein nachfolgendes Leerzeichen ein , um die besten Ergebnisse zu erzielen.
Mit dieser Zuordnung können Sie weiterhin :help
\ verwenden :h
, um ein horizontal geteiltes Fenster zu öffnen oder Ihren vorherigen Hilfebefehlsverlauf zu durchlaufen, ohne dass die Eingabeaufforderung automatisch erweitert wird.