it-swarm.com.de

Wie bekomme ich die Kontrolle + linker Pfeil, um ein Wort in iTerm2 zurückzugehen?

Ich habe im Linux-Handbuch nachgelesen und festgestellt, dass ich mit Strg + Links und Strg + Rechts Wörter im Terminal vor- und zurückspulen kann, während ich sie bearbeite.

"Wenn Sie die Strg-Taste und die Nach-Links- oder Nach-Rechts-Taste gleichzeitig drücken, wird ein Wort vor- oder zurückgespult, ebenso wie beim Drücken von Esc und dann B oder F."

Unter OS X steuern control+left und control+right normalerweise Leerzeichen. Ich habe diese deaktiviert. Ich habe auch versucht, die Tastaturkürzel über das Einstellungsfenster festzulegen:

enter image description here

enter image description here

Dies funktioniert jedoch nicht und verursacht diesen Fehler:

enter image description here

Wenn ich mich in iTerm befinde und alt+escape verwende, bewegt sich der Buchstabe B oder F hin und her. Dies geschah, bevor sich meine Konfiguration änderte. Aber ich möchte wirklich in der Lage sein, die Steuerung + die Pfeiltasten zu verwenden.

110
cwd

bash

Fügen Sie einfach Folgendes zu ~/.inputrc hinzu:

"\e[1;5D": backward-Word
"\e[1;5C": forward-Word

Siehe dieser archivierte Wiki-Beitrag für weitere Erklärungen. Wenn Sie die verwenden möchten alt Verwenden Sie stattdessen für die Wort-zu-Wort-Bewegung (wie das Standardverhalten von OS X):

"\e[1;9D": backward-Word
"\e[1;9C": forward-Word

zsh

zsh verwendet standardmäßig nicht die Bibliothek readline und liest daher nicht ~/.inputrc. Um die gleiche Funktionalität zu erhalten, könnten Sie Ihrem ~/.zshrc Folgendes hinzufügen - dies würde wiederum den verwenden alt Schlüssel:

bindkey -e
bindkey '^[[1;9C' forward-Word
bindkey '^[[1;9D' backward-Word

Weitere Informationen zum integrierten zsh-Zeileneditor (zle) finden Sie unter diese Dokumentation .


Warum ist das? Sie haben Ihr Profil so eingerichtet, dass die Xterm-Standardeinstellungen verwendet werden:

enter image description here

Aus diesem Grund müssen Sie diese Sequenz "abfangen" und readline mitteilen, was zu tun ist.


Wenn das oben genannte Problem weiterhin besteht und Sie mit OS X 10.9 (Mavericks) arbeiten, müssen Sie wahrscheinlich die globalen Mission Control-Verknüpfungen deaktivieren, die verhindern, dass Control + Pfeiltasten auf iTerm zugreifen, auch wenn Mission Control selbst deaktiviert ist. Sie können dies in den Systemeinstellungen → Tastatur → Verknüpfungen → Missionssteuerung tun:

mission control keyboard prefs

132
slhck

Arbeitslösung für zsh. Einfach, unkompliziert und sofort einsatzbereit.

  1. Gehe zu: ⌘, Preferences → Profiles → Keys → Keyboard Behavior

  2. Voreinstellung laden: Natural Text Editing

Load Preset "Natural Text Editing"

41
Happy Torturer

Eigentlich fand ich die einfachste Lösung darin, zu meinen Profileinstellungen zu gehen (zu finden unter Profile/Schlüssel) und die entsprechenden Profilverknüpfungen zu entfernen (da das Profil in iTerm global überschreibt), in meinem Fall Alt + Links und Alt + Rechts und dann Global Verknüpfungen funktionierten perfekt für mich!

Wenn Sie OS X verwenden, ist es wahrscheinlich am besten, sich an systemweite Verknüpfungen zu halten, d. H. Wenn Sie stattdessen Alt + Links und Alt + Rechts verwenden, wird ein unterschiedliches Verhalten im Terminal möglicherweise Schmerzen verursachen.

Abgesehen davon war die Lösung von chmac, Better Touch Tool zu verwenden, eine elegante Möglichkeit, das Verhalten von control + arrow nur in iterm zu ändern.

7
nayyarv

Ich habe es so behoben:

Im oberen Menü; gehe zu

Profiles 
-> Open profiles... 
-> Edit profiles... (button) 
-> Keys (tab) 
-> Load Preset... (dropdown) 
->  Choose "Natural text editing". Done! :-)
7
rassom

Ich habe einen anderen Ansatz gewählt. Mit BetterTouchTool habe ich eine benutzerdefinierte Tastenkombination für iTerm2 programmiert. Wenn ich in iTerm2 Alt-Links drücke, wird die Tastenkombination Strg-Links mit der Aktion "Tastenkombination an bestimmte Anwendung senden" gesendet. Die Anwendung ist iTerm2. Ich habe dasselbe für Alt-Rechts gemacht, das auf Strg-Rechts abgebildet wurde.

Der Effekt ist, dass durch Drücken von Alt-Links oder Alt-Rechts in iTerm direkt Strg-Links oder Strg-Rechts an iTerm2 gesendet wird, wobei die übliche systemweite Verknüpfung zum Verschieben eines Desktops nach links oder rechts umgangen wird. Auf diese Weise erhalte ich das typische Mac-Verhalten in iTerm2 bei lokalen Terminalsitzungen, aber auch bei Remote-SSH-Sitzungen, und kann mit der Standard-Tastenkombination Strg-Links/Strg-Rechts zu verschiedenen Desktops wechseln. Ich habe es hier geschrieben:

http://www.callum-macdonald.com/2013/04/17/ctrl-left-and-ctrl-right-on-iterm2/

7
chmac

In diesem Beitrag werden diese und andere Verknüpfungen wie folgt beschrieben: ⌥ ← Löschen, um ein Wort zu löschen:

http://elweb.co/making-iterm-2-work-with-normal-mac-osx-keyboard-shortcuts/

2
Seralto

Sie müssen in die Registerkarte Profiles gehen und die Zuordnung für löschen alt+left und alt+right Standardmäßig werden einige hexadezimale Werte ausgegeben.

1
Sid