Je n'arrive pas à comprendre comment revenir en Normal
mode après être entré Terminal
en Insert
mode ...
Échapper ne semble tout simplement pas fonctionner.
Une idée ?
Je n'arrive pas à comprendre comment revenir en Normal
mode après être entré Terminal
en Insert
mode ...
Échapper ne semble tout simplement pas fonctionner.
Une idée ?
Réponses:
La réponse de @romainl est correcte, mais je voulais ajouter un peu plus d’informations à ceux qui ont pu tomber sur Google, comme je l’ai fait.
Directement des docs nous obtenons cette note:
Le mode Terminal possède son propre espace de noms pour les mappages, auquel on accède avec le préfixe "t". Il est possible d'utiliser des mappages de terminaux pour personnaliser les interactions avec le terminal. Par exemple, voici comment mapper pour quitter le mode terminal:
:tnoremap <Esc> <C-\><C-n>
Sachant cela, vous aurez probablement besoin de créer des mappages de terminaux pour rester en ligne avec votre flux de travail actuel (déplacement des onglets / fenêtres, etc.).
tnoremap kj <C-\><C-n>
tnoremap <Esc> <C-\><C-n>:q!<CR>
Dans Vim 8, cela fonctionne aussi:
tnoremap <ESC> <C-w>:q!<CR>
N
in <c-w>N
, vous pouvez simplement appuyer :
après <c-w>
. Et si vous voulez vraiment fermer Vim avec tous ses tampons ouverts et toutes ses fenêtres, :qa!
ce sera peut-être le meilleur choix. Mais on perdrait tous les changements dans ce cas.
Si vous utilisez Tmux, vous avez peut-être installé des liaisons "vim-like" pour vous déplacer dans les fenêtres, ce qui permet notamment de saisir le "C- \" avant que Vim ne puisse l'utiliser. Si oui, supprimez-les .tmux.conf
et redémarrez tmux:
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
.