Putty SSH: les touches CTRL + Curseur ne fonctionnent pas, passez au mot précédent / suivant


29

Lorsque je suis connecté à mon serveur de développement Ubuntu local avec du mastic (à partir de ma boîte Windows 7) via SSH, les combinaisons de touches suivantes ne fonctionnent pas pour déplacer le curseur vers l'avant et vers l'arrière sur les limites des mots:

  • Ctrl+ Left Arrowsur le curseur
  • Ctrl+ Right Arrowsur le curseur

Le curseur ne déplace qu'un caractère à la fois. J'utilise bash.


bash utilise les raccourcis clavier Emacs par défaut, Alt+Bet Alt+Fse déplacera donc d'un mot en arrière / en avant. Vous pouvez changer pour les liaisons vi si vous voulez et passerw
phuclv

Réponses:


42

Ajoutez ces deux lignes à votre ~/.inputrcfichier sur la machine de destination:

"\eOD": backward-word
"\eOC": forward-word

Pour vous assurer qu'il s'agit des séquences correctes, à l'invite Bash, tapez Ctrl- V Ctrl- LeftArrowet Ctrl- V Ctrl- RightArrow, vous devriez voir:

^[OD^[OC

Lorsque vous démarrez une nouvelle session, les touches sont disponibles ou vous pouvez appuyer sur Ctrl- xCtrl- rpour relire le ~/.inputrcfichier de la session en cours.


Une astuce similaire fonctionnerait-elle pour supprimer des mots entiers?
Casebash

@Casebash: essayez bind -P | grep kill-wordde vous montrer les raccourcis clavier existants pour supprimer des mots entiers. Vous pouvez modifier les liaisons d'une manière similaire à ma réponse ci-dessus, si nécessaire.
pause jusqu'à nouvel ordre.

J'ai remarqué que OpenSuSE (12.3) a lié ces séquences déjà backward-charet forward-char, donc plutôt que l' ajout de ces lignes, je devais remplacer les lignes qui contenait déjà les liaisons.
palswim

Génial! A travaillé pour Ubuntu 14.04 pour moi, et mon mastic fonctionne sur une boîte Windows 7.
Edwin Yip

Ne fonctionne pas avec Putty sur win10
nZeus

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.