Jak sprawić, by klawisze Ctrl przesuwały się o jedno słowo w przód w Cygwin?
97
W domyślnej instalacji Cygwin użycie CTRL-STRZAŁKA W LEWO lub CTRL-STRZAŁKA W PRAWO po prostu drukuje 5C lub 5D zamiast pomijać słowo na raz zgodnie z oczekiwaniami.
Klawisz Home / End działa poprawnie, więc ponowne mapowanie powinno być możliwe.
Zauważ, że to pytanie dotyczy Cygwin, ale może mieć ogólne zastosowanie w systemach Unix / Linux. Jeśli korzystasz z PuTTY i stwierdzisz, że rozwiązania tutaj nie działają, spójrz na pytanie dotyczące tego, jakich kodów użyć dla PuTTY .
palswim
Zdarzyło mi się to również pod pełnym linuksem; na pewne porady online, dodałem ~/.inputrcplik - który anulował wszystkie domyślne ustawienia Linuksa mięty. Możesz je odzyskać, dodając $include /etc/inputrcdo górnej części ~ / .inputrc (zakładając, że / etc / inputrc jest ogólnosystemowym inputrc, który jest w Linux Mint)
użytkownik208769
Odpowiedzi:
133
Znalazłem rozwiązanie , zamieszczając je tutaj dla potomności.
Dodaj następujące wiersze do ~/.inputrc( C:\cygwin\home\<username>\.inputrc):
Niektóre kody klawiatury w ogóle się nie wyświetlają, np. <kbd> Shift </kbd> + <kbd> Enter </kbd>. Jak znaleźć te kody klawiatury za pomocą Mintty / Windows / Cygwin?
Jest to przydatne, ale tak naprawdę nie jest odpowiedzią na pytanie - może byłoby lepiej jako komentarz do innej odpowiedzi?
Martin Thompson
Dodano do powyższej odpowiedzi @ Toma
dovetalk
7
Jeśli chcesz coś, co będzie działać bez niestandardowych ustawień środowiska, na przykład podczas pracy na wspólnym koncie na serwerze lub po prostu w celu ograniczenia ilości używanej niestandardowej konfiguracji, Bash ma wbudowane w to Cygwin.
Mianowicie Alt+, faby przejść do przodu i Alt+, baby przejść do tyłu.
Dzięki, choć znam te klucze i używam ich. Używam także klawiszy strzałek, gdy jest to wygodne i nie chcę, aby wyrzucały kody ucieczki zamiast robić rozsądne czynności i przesuwać kursor.
Tom
0
Kiedy używałem rxvt z cygwinem, znalazłem rozwiązanie pod tym linkiem, które dla mnie zadziałało: control_arrow_keys_in_rxvt .
~/.inputrc
plik - który anulował wszystkie domyślne ustawienia Linuksa mięty. Możesz je odzyskać, dodając$include /etc/inputrc
do górnej części ~ / .inputrc (zakładając, że / etc / inputrc jest ogólnosystemowym inputrc, który jest w Linux Mint)Odpowiedzi:
Znalazłem rozwiązanie , zamieszczając je tutaj dla potomności.
Dodaj następujące wiersze do
~/.inputrc
(C:\cygwin\home\<username>\.inputrc
):Po
C-x C-r
zakończeniu możesz nacisnąć przycisk, aby ponownie odczytać.inputrc
plik dla bieżącej sesji.Warto zwrócić uwagę, jeśli chcesz mieć inne podobne dostosowania: Użyj
5A
i5B
dla strzałek w górę i w dół oraz2x
dla wersji przesuniętych.„Oficjalne” mapowanie klawiszy opisano w Podręczniku użytkownika Bash , ale w celu szybkiego znalezienia mapowania klucza w bash:
^[[1;3C
^[
i zastąp je,\e
aby zrobić\e[1;3C
.inputrc
pliku.źródło
Możesz ponownie załadować plik .inputrc poprzez:
Źródło
źródło
Jeśli chcesz coś, co będzie działać bez niestandardowych ustawień środowiska, na przykład podczas pracy na wspólnym koncie na serwerze lub po prostu w celu ograniczenia ilości używanej niestandardowej konfiguracji, Bash ma wbudowane w to Cygwin.
Mianowicie Alt+, faby przejść do przodu i Alt+, baby przejść do tyłu.
http://www.gnu.org/software/bash/manual/html_node/Commands-For-Moving.html
źródło
Kiedy używałem rxvt z cygwinem, znalazłem rozwiązanie pod tym linkiem, które dla mnie zadziałało: control_arrow_keys_in_rxvt .
Dodaj następujące wiersze do
~/.inputrc
:źródło
To rozwiązanie działa również w
msys2
konsolach:Wystarczy umieścić te kombinacje klawiszy w
.inputrc
pliku.źródło