Ctrl+s et vi

Si vous êtes un maniaque du ctrl+s comme moi. Vous avez surement déjà fait un ctrl+s sous vi (ou vim) et vous avez ressenti ce moment de panique où tout ce freeze. La solution pour s’en sortir et toute simple il suffit de faire un ctrl+q.

Mais pourquoi ? Comment cela se fasse ? La réponse vient de la FAQ de VIM.

De nombreux simulateurs de terminaux ou de terminaux réels utilise le raccourci CTRL+S pour arrêter le flux de donnée entrant. L’idée est de permettre de pouvoir arrêter quand on veut une avalanche de donnée s’affichant sur le terminal et de pouvoir le reprendre quand on veut en utilisant CTRL+Q. C’est pour cela que lorsque l’on presse CTRL+S sous vi ou vim, les données ne sont plus envoyées et on a l’impression que VI/VIM est freezé. Presser CTRL+Q permet donc de tout remettre à la normale.

Si vous voulez désactiver cette fonctionnalité utilisez cette commande :

$ stty -ixon -xoff

Ou sinon changez les raccourcis clavier de gestion du terminal :

$ stty stop <char>
$ stty start <char>

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *