Ich kann nicht herausfinden , wie man zurück gehen Normal
Modus nach der Eingabe Terminal
in Insert
Modus ...
Flucht scheint einfach nicht zu funktionieren.
Irgendeine Idee ?
Ich kann nicht herausfinden , wie man zurück gehen Normal
Modus nach der Eingabe Terminal
in Insert
Modus ...
Flucht scheint einfach nicht zu funktionieren.
Irgendeine Idee ?
Antworten:
Die Antwort von @romainl ist richtig, aber ich wollte ein bisschen mehr Informationen für alle hinzufügen, die wie ich von Google darauf gestoßen sind.
Direkt aus den Dokumenten erhalten wir diesen Hinweis:
Der Terminalmodus verfügt über einen eigenen Namespace für Zuordnungen, auf den mit dem Präfix "t" zugegriffen wird. Mithilfe von Terminalzuordnungen können Sie die Interaktion mit dem Terminal anpassen. So ordnen Sie beispielsweise zu, dass der Terminalmodus beendet wird:
:tnoremap <Esc> <C-\><C-n>
Mit diesem Wissen müssen Sie höchstwahrscheinlich einige Terminalzuordnungen erstellen, um mit Ihrem aktuellen Workflow (Tabulator- / Fensterbewegung usw.) Schritt zu halten.
tnoremap kj <C-\><C-n>
tnoremap <Esc> <C-\><C-n>:q!<CR>
In Vim 8 funktioniert das auch:
tnoremap <ESC> <C-w>:q!<CR>
N
in <c-w>N
, können Sie drücken Sie einfach :
nach <c-w>
. Und wenn Sie Vim mit all seinen offenen Puffern und Fenstern wirklich schließen möchten, ist dies :qa!
möglicherweise die bessere Wahl. Aber in diesem Fall würde man alle Änderungen verlieren.
Wenn Sie Tmux verwenden, haben Sie möglicherweise einige "vim-ähnliche" Bindungen installiert, um sich in den Fensterscheiben zu bewegen, die unter anderem das "C- \" greifen, bevor Vim die Möglichkeit hat, es zu verwenden. Wenn ja, entferne diese von deinem .tmux.conf
und starte tmux neu:
bind-key -n C-\ if-shell "$is_vim" "send-keys C-\\" "select-pane -l"
bind-key -T copy-mode-vi C-\ select-pane -l
:help terminal-emulator-input
.