Putty SSH: CTRL + klawisze kursora nie działają, przejdź do poprzedniego / następnego słowa


29

Kiedy jestem połączony z moim lokalnym serwerem deweloperskim Ubuntu z pakietem (z mojego Windows 7) przez SSH, następujące kombinacje klawiszy nie działają, aby przesunąć kursor do przodu i do tyłu na granicach słów:

  • Ctrl+ Left Arrowna klawiaturze kursora
  • Ctrl+ Right Arrowna klawiaturze kursora

Kursor przesuwa tylko jeden znak na raz. Używam bash.


bash używa kluczowych Emacs powiązań domyślnie, więc Alt+Bi Alt+Fruszy tyłu / do przodu o jedno słowo. Możesz zmienić wiązanie na vi, jeśli chcesz, i przejść dalejw
phuclv

Odpowiedzi:


42

Dodaj te dwa wiersze do ~/.inputrcpliku na komputerze docelowym:

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

Aby upewnić się, że są to prawidłowe sekwencje, w wierszu polecenia Bash wpisz Ctrl- V Ctrl- LeftArrowi Ctrl- V Ctrl- RightArrow, powinieneś zobaczyć:

^[OD^[OC

Po rozpoczęciu nowej sesji klucze będą dostępne lub możesz nacisnąć Ctrl- xCtrl-, raby ponownie odczytać ~/.inputrcplik dla bieżącej sesji.


Czy podobna sztuczka zadziała do usuwania całych słów?
Casebash

@Casebash: Spróbuj bind -P | grep kill-wordpokazać istniejące powiązania klawiszy do usuwania całych słów. W razie potrzeby możesz zmienić powiązania w podobny sposób do mojej powyższej odpowiedzi.
Wstrzymano do odwołania.

Zauważyłem, że OpenSuSE (12.3) już związał te sekwencje backward-chari forward-charzamiast dodawać te linie, musiałem zastąpić linie, które już zawierały wiązania.
palswim

Świetny! Pracowałem dla Ubuntu 14.04 dla mnie, a mój kit działa na systemie Windows 7.
Edwin Yip

Nie działa z Putty na win10
nZeus

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.