Замазка SSH: клавиши CTRL + курсор не работают, пропустите предыдущее / следующее слово

29

Когда я подключаюсь к своему локальному серверу разработки Ubuntu с помощью putty (из моего окна Windows 7) через SSH, следующие комбинации клавиш не работают для перемещения курсора вперед и назад на границах слов:

  • Ctrl+ Left Arrowна курсоре
  • Ctrl+ Right Arrowна курсоре

Курсор перемещается только на один символ за раз. Я использую Bash.

user26767
источник
bash использует привязки клавиш Emacs по умолчанию, поэтому Alt+Bи Alt+Fбудет двигаться вперед / назад на одно слово. Вы можете изменить привязки vi, если хотите, и перейти к нимw
phuclv

Ответы:

42

Добавьте эти две строки в ваш ~/.inputrcфайл на конечном компьютере:

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

Для того, чтобы убедиться , что они правильные последовательности, в строке типа Bash Ctrl- V Ctrl- LeftArrowи Ctrl- V Ctrl- RightArrow, вы должны увидеть:

^[OD^[OC

Когда вы начинаете новый сеанс, ключи будут доступны, или вы можете нажать Ctrl- xCtrl-, rчтобы перечитать ~/.inputrcфайл текущего сеанса.

Приостановлено до дальнейшего уведомления.
источник
Будет ли работать подобный трюк для удаления целых слов?
Casebash
@Casebash: попробуйте bind -P | grep kill-wordпоказать вам существующие привязки клавиш для удаления целых слов. При необходимости вы можете изменить привязки аналогично моему ответу выше.
Приостановлено до дальнейшего уведомления.
Я заметил, что OpenSuSE (12.3) уже связал эти последовательности backward-charи forward-charвместо того, чтобы просто добавлять эти строки, мне пришлось заменить строки, которые уже содержали привязки.
Palswim
Большой! Я работал на Ubuntu 14.04, и моя шпаклевка работает на Windows 7.
Эдвин Ип
Не работает с Putty на win10
ноября