web-dev-qa-db-fra.com

Vim coincé en mode insertion

J'utilise Vim depuis plusieurs mois maintenant via mon hébergeur (ils permettent l'accès à PuTTY). Soudain, la touche escape est devenue insensible. Je ne peux pas exister ni insérer ni aucun autre mode en frappant simplement échapper. Je dois appuyer sur F1 qui appelle l'aide dans vim et me lance en mode commande.

Je suis presque certain que ma touche d'échappement sur mon clavier fonctionne correctement, car tous mes raccourcis Windows qui utilisent cette touche fonctionnent normalement.

Je sais que c'est une question ridicule et je suis convaincu qu'il y a encore beaucoup à étudier pour trouver une solution. Ce dont j’ai vraiment besoin, c’est d’une piste solide pour savoir par où commencer.

Choses qui pourraient aider:

  1. J'utilise vim via PuTTY
  2. Je me connecte en utilisant jailshell
  3. Je ne suis pas root
44
Levi Hackwith

Essayez d’utiliser Ctrl-[ au lieu de Esc.

Quel est le résultat de:

python -c "print ord(raw_input('char '))"

lorsque vous appuyez sur Esc et Enter? Il devrait être "27". Quel est le résultat en appuyant sur Ctrl-V puis Esc?

Avez-vous vérifié tous les paramètres dans PuTTY pour voir s'ils sont raisonnables?

Utilisez-vous Bash sur le système distant? Regardez la sortie de

bind -p | grep -i '\\e' | less

et voyez si vous voyez quelque chose d'inhabituel. Avez-vous un fichier appelé ~/.inputrc? Regardez son contenu pour voir si quelque chose est inhabituel.

Regardez votre ~/.vimrc et voyez si tout va bien, aussi.

13
Dennis Williamson

J'avais frappé par erreur Ctrl + set bloqué en mode insertion. Pour en sortir utiliser Ctrl + q.

132
bhaskar

Peut-être utilisez-vous le mode d’insertion ) .

'insertmode' 'im' 'noinsertmode' 'noim'
boolean (désactivé par défaut)
Fait fonctionner Vim de manière à ce que le mode Insertion soit le mode par défaut. Utile si vous souhaitez utiliser Vim en tant qu'éditeur non modal. Utilisé pour | evim |.
[...]
- Utilisation CTRL-O pour exécuter une commande de mode normal | i_CTRL-O |). Lorsqu'il s'agit d'un mappage, il est exécuté comme si "insertmode" était désactivé. Le mode normal reste actif jusqu'à ce que le mappage soit terminé. - Utilisation CTRL-L pour exécuter un certain nombre de commandes en mode normal, utilisez ensuite Esc pour revenir en mode insertion. Notez que CTRL-L déplace le curseur vers la gauche, comme lorsque le mode insertion n'est pas défini. | i_CTRL-L |

Je suggère de modifier ~/.vimrc pour ajouter la ligne suivante:

set noinsertmode         "disable insert mode
4
SandRock

J'ai eu ce problème, mais j'ai réalisé que c'était en changeant accidentellement le mode d'entrée SCIM en "Autre - RAW CODE". Je l'ai changé en anglais/clavier et je n'ai plus eu de problèmes.

0
vim_user