Używanie Alt / Cmd + Strzałka w prawo / w lewo w iTerm

219

Czy można przechodzić między słowami w iTerm przy użyciu klawiszy Alt + Strzałka w prawo / w lewo? Teraz, jeśli naciśniesz Alt + Left, dostanę „[D” i „[C”, jeśli naciśniesz Alt + Right

demas
źródło
Wystarczy dodać notatkę dla tych, którzy po prostu chcą wiedzieć, czy można to zrobić za pomocą niektórych skrótów klawiszowych, istnieje sposób. Jeśli chcesz go zmapować, to dobrze, ale w terminalu CTRL + A przejdzie na początek linii, a CTRL + E do końca. Opcja + Strzałka w lewo, aby przejść na początek słowa, a następnie Opcja + Strzałka w prawo, aby zakończyć słowo.
sierpień

Odpowiedzi:

253

Przejdź do Preferencje iTerm → Profile, wybierz swój profil, a następnie kartę Klucze. Kliknij Załaduj ustawienie wstępne ... i wybierz Natural Text Editing.

Gordon Gao
źródło
2
Włącza to pomijanie słów, ale za pomocą klawisza cmd, a nie klawisza opt (to jest to, czego używają wszystkie inne aplikacje Apple).
TheProletariat
3
W grudniu 2018 r. W Mojave klawisz opt jest tym, co przesuwa się między słowami po wybraniu edycji tekstu naturalnego.
Rob Dawson,
1
Przez wiele miesięcy cierpiałem bez tego, ale dziś jesteś moim wybawcą.
Raimi bin Karim
3
Pamiętaj, że jest to Preferencje> Profile> Klucze> Załaduj ustawienia wstępne, a nie Preferencje> Klucze> Preferencje ładowania
kevin
162

Przejdź do Preferencje iTerm → Profile, wybierz swój profil, a następnie kartę Klucze. Znajdź ⌥ ← i ⌥ → i ustaw je tak, aby wysyłały odpowiednio sekwencje specjalne bi sekwencje specjalne f.

Mapowanie Alt-prawo, aby przesunąć kursor o jedno słowo do przodu

Jeśli użyjesz ⌘ → i ← ⌘, będziesz musiał ponownie przypisać skróty do następnej i poprzedniej karty, które są ustawione jako domyślne. Terminal używa do tego ⇧⌘ → i ⇧⌘ ←.

Możesz to zrobić w obszarze Profile lub tylko globalnie w obszarze Klucze (pokazane poniżej), jeśli chcesz ustawić to globalnie. Pamiętaj, że ustawienia w profilach zastępują ustawienia globalne w kluczach.

Globalne mapowanie alt-prawo, aby przesunąć kursor o jedno słowo do przodu

grg
źródło
24

Jeśli używasz bash, możesz również dodać

"\e\e[D": backward-word
"\e\e[C": forward-word

do ~/.inputrc.

Lri
źródło
1
To działało dla mnie najlepiej. Próba skonfigurowania go w iTerm2 tylko generowana [Dlub za [Ckażdym razem próbowałem użyć nowej akcji przycisku. Dziękuję Ci.
dgig
O ile wiem, nic nie możesz zrobić w iTerm2 v3.0.10. To musi być ta konfiguracja bash.
fiorix
1
Nie jestem pewien iTerm2 v3.0.10, ale iTerm2 v3.0.14zdecydowanie działa z tym Natural Text Editingrozwiązaniem, więc nie musisz uciekać się do konfiguracji wprowadzania bash.
dwanderson
10
  1. Przejdź do: Preferencje > Profile > Klucze

  2. Poszukaj działań ⌥ ← i ⌥ →. Zostałyby zmapowane na: Wyślij kody heksadecymalne

  3. Zmień je na Wyślij sekwencję Escape za pomocą Esc+, Baby przewijać wstecz i Esc+, Faby przewijać.

yottabytt
źródło
2

Późno w grze, ale dla wizualizacji:

wprowadź opis zdjęcia tutaj

Mianowicie zobacz, czy Esc+ wybrano.

JustGage
źródło
1

CMD + Usuń - Wyślij kod szesnastkowy - 0x15

Aby usunąć całą linię (podobnie jak Option + U)

neaumusic
źródło
0

Dla zsh wstawiłem ~ / .zshrc

bindkey "\e\e[D" backward-word
bindkey "\e\e[C" forward-word

dla bash wstawiłem do ~ / .inputrc

"\e\e[D": backward-word
"\e\e[C": forward-word
Nick Korolkov
źródło