W OSX mogę po prostu przytrzymać optionklawisz i naciskać lewy klawisz kursora, aż dojdę do słowa, które muszę edytować (lub w Vi mogę po prostu nacisnąć b, ale nie byłem w stanie wymyślić, jak to zrobić w Terminalu jeszcze...
bash
keyboard-shortcuts
Japończyk
źródło
źródło
Odpowiedzi:
Aby ustawić powiązanie klawiszy: Najpierw musisz dowiedzieć się, jakie kody klawiszy tworzy sekwencja klawiszy Ctrl+ Left. Wystarczy użyć polecenia,
cat
aby wyłączyć wszelkie interferencje z istniejącymi powiązaniami klawiszy, a następnie wpisać sekwencję klawiszy. W moim systemie (Linux) wygląda to tak:Naciśnij Ctrl+, daby wyjść z cat. Teraz dowiedziałeś się, że Ctrl-Left wydaje 6 kluczowych kodów:
Teraz możesz wydać polecenie bind:
źródło
Funkcja bash, którą chcesz, to
backward-word
. Możesz uruchomić,bind -q backward-word
aby uzyskać listę klawiszy powiązanych z tą funkcją. Jednym wspólnym wiązaniem jest Esc+bPonadto wiele terminali obsługuje Ctrl+ Left(ten sam skrót klawiszowy, którego można używać w X, aby przeskakiwać do tyłu o słowo)
źródło
backward-word can be invoked via "\eb".
ale jak powiązać Control + Lewo zamiast Esc + B? Jedną wadą Esc + b, którą już widzę, jest to, że muszę odpuścić klawisz Esc za każdym razem, gdy mogę cofnąć słowo, czy nie ma lepszego sposobu?set editing-mode vi
:)Domyślny skrót klawiszowy w Bash
backword-word
to Alt+ b. Ten sam wynik można uzyskać za pomocą Esc+ b. Powinieneś spróbować tych przed edycją skrótów klawiszowych.Użyj
bind
polecenia, aby edytować lubbind -q [name]
uzyskać aktualny skrót klawiaturowy dla określonej akcji.źródło
Alt + f