Ich habe die folgenden Zuordnungen, um das Verlassen eines Terminalfensters in neovim zu vereinfachen:
tnoremap <C-h> <C-\><C-n><C-w>h
" Workaround since <C-h> isn't working in neovim right now
tnoremap <C-w>h <C-\><C-n><C-w>h
tnoremap <C-j> <C-\><C-n><C-w>j
tnoremap <C-k> <C-\><C-n><C-w>k
tnoremap <C-l> <C-\><C-n><C-w>l
Das einzige Problem ist, dass ich beim Zurückkehren in den Terminalbereich auf drücken muss i
, um in den Einfügemodus zurückzukehren. Ich möchte immer, dass es sich im Einfügemodus befindet, wenn ich in ein Neovim-Fenster wechsle, in dem Terminal ausgeführt wird. Was ist der beste Weg, um dies zu erreichen?
quelle
BufEnter
autocmd scheint dieses Problem nicht zu haben.Wenn Sie Terminal-Puffersets
buftype
in Terminal eingeben, können Sie dies auch verwenden:quelle
:help terminal
Tatsächlich heißt es darin ausdrücklich: "startinsert ist unwirksam." Ich fand, dassexec 'normal! i'
das stattdessen funktioniert.Oder noch etwas besser:
Was das
<buffer>
wird der Au - Befehl macht lokal angewandt werden, so dass nur für den Terminal ausgeben Puffertyp. Dies ist auch nützlich, um diese Einstellung nur für das Terminal zu ändern. Wie zum Beispiel von relativen Linien zu absoluten;)Außerdem ... kann ich nicht
:startinsert
zur Arbeit gehen, auch wenn alle Dokumente darauf verweisen. Ich musste Folgendes tun:quelle