In einer Bash-Shell mit Emacs-Schlüsselbindung können Sie eine Tastenkombination wie Mf, Mb verwenden, um ein Wort an der Shell-Eingabeaufforderung vorwärts oder rückwärts zu verschieben. Normalerweise wird der Metaschlüssel unter Windows und Linux der Alt-Taste zugeordnet. In iTerm konnte ich jedoch keine Möglichkeit finden, diesen Metaschlüssel der Optionstaste oder der Befehlstaste auf meinem MacBook Pro zuzuordnen.
Es scheint, dass in OS X der Metaschlüssel standardmäßig dem ESC-Schlüssel zugeordnet ist. Sie können also ESC-f, ESC-b auf iTerm verwenden. Der ESC-Schlüssel ist jedoch anscheinend nicht praktisch zu verwenden. Darüber hinaus verfügt iTerm über eine Option, mit der Sie die Zuordnung des Metaschlüssels ändern können (Lesezeichen> Profile> Tastaturprofile> Global> Optionsschlüssel als ...). Diese Einstellung scheint überhaupt nicht zu funktionieren.
Wenn jemand weiß, was die Lösung für dieses Problem ist, lassen Sie es mich bitte wissen.
Ich habe ein Upgrade auf die neueste Version 0.9.6.1012 durchgeführt, und dieses Verhalten besteht weiterhin.
Edit: Einige Klarstellungen zu meiner Frage. Die Schlüsselbindung, von der ich spreche, ist für Bash-Shell, nicht für Emacs. Es kommt nur vor, dass die Bash-Shell standardmäßig dieselbe Schlüsselbindung verwendet wie Emacs.
Antworten:
Cmd+.,
Profiles
,Keys
Und wählen SieLeft option Key acts as: +Esc
.Funktioniert für mich in Emacs, obwohl ich nicht sicher bin, ob es andere unerwünschte Effekte haben wird.
quelle
Esc+
, obwohl ich die linke Optionstaste verwendete, wurden immer noch seltsame Zeichen gedruckt. Dies kann passieren , weil ich die Verwendung Tastatur Modifikatoren Option in Mac - Tastatureinstellungen , um die Tasten zu ändern.Gehen Sie zu Lesezeichen> Profile verwalten . Wählen Sie dann Tastaturprofile> Global und wählen Sie Optionstaste als Meta . Dies funktioniert bei mir in Version 0.9.6.1201.
quelle
alt
+->
undalt
+<-
zu Escape - Sequenz senden +f
/b
ist.In der Menüleiste Iterm2 => Einstellungen => Profile wählen Sie die Registerkarte Tasten und wählen Sie
linke Optionstaste fungiert als + Esc
arbeitete auch für mich in irssi.
quelle
Ich konnte die Alt-Taste auch nicht zum Laufen bringen, aber es gibt eine Problemumgehung, mit der sie zumindest für die Wortnavigation über die Cursortasten funktioniert:
Mit Alt / Wahltaste + Pfeiltasten nach links oder rechts zum nächsten oder vorherigen Wort in iTerm springen
quelle
backward-delete-word
(⎇-DEL) senden Sie einen Hex-Code0x17
, für den Sprung zum Anfang der Eingabe (⌘- ←) senden0x01
und für den Sprung zum Ende (⌘- →) senden0x05
.Ich benutze iTerm2 und für mich hat diese Antwort mein Problem nur teilweise gelöst:
Außerdem musste ich zu Cmd+ ,=> Profile => Schlüssel gehen und in der Liste der Schlüsselzuordnungen beide Schlüsselkombinationen finden : und doppelklicken Sie darauf und ändern Sie ihre Verknüpfungen wie folgt:
* Stellen Sie sicher, dass Sie die Aktion Escape-Sequenz senden auswählen .
quelle
Alle Zombie-Auferstehung hier gehen, aber der Nachwelt zuliebe -
In diesem Beitrag funktioniert es so, wie Sie es für mich, für Mb und Mf wünschen, während der Optionsschlüssel als Meta festgelegt bleibt, damit Sie keinen Modifikator opfern (ich habe Vim-Zuordnungen, die Meta verwenden, persönlich).
Zusammenfassend können Sie in Ihrem globalen Tastaturprofil zwei neue Zuordnungen mit Einstellungen hinzufügen:
man ascii
)Das einzige, was ich in Terminal.app noch vermisse, ist
Opt-Backspace
das Löschen per Wort. Es gibt andere Problemumgehungen dafür, aber ich versuche nur, mich für die Verwendung zu schulenCtrl-w
.quelle
Ctrl-w
beimOpt-Backspace
Drücken gesendet werden soll.In iTerm2 ist es einfacher. Gehen Sie zu Einstellungen-> Lesezeichen-> Tastatur und wählen Sie Option sendet + ESC. In iTerm2 können Sie die linken und rechten Optionstasten separat konfigurieren. Denken Sie also daran, beide zu ändern, wenn Sie dies wünschen. Link für iTerm2: http://sites.google.com/site/iterm2home/
quelle
Gehen Sie zu Lesezeichen> Profile verwalten. Wählen Sie dann Tastaturprofile> Global und wählen Sie Optionstaste als + ESC.
Funktioniert in iTerm Build 0.9.5.0611 & Build 0.9.6.20090415
quelle
Ich habe auch eine Lösung für den Stackoverflow gefunden. Gehen Sie einfach zum Tastaturprofil und wählen Sie unter "Global" die Optionstaste "+ ESC"
das funktioniert bei mir perfekt =) Übrigens gibt es auch einen iterm-Patch: http://www.emacswiki.org/emacs/EmacsForMacOS
quelle
Versuchen Sie "export LANG = C". Ich bin kein Emacs-Experte, aber ich habe festgestellt, dass Emacs unter OS X den Optionsschlüssel als Meta-Schlüssel in iTerm erkennen können.
quelle
Ich weiß nichts über iTerm, aber Sie können dies im Terminal tun. Anweisungen finden Sie hier:
Emacs unter Mac OS X Leopard-Tastenkombinationen
quelle
Folgendes hat bei mir funktioniert: Lesezeichen> Profile verwalten> Tastaturprofile> Global / xterm> Optionstaste als + Esc. Damit kann ich Option + Eingabetaste in Midnight Commander verwenden und der aktuell ausgewählte Datei- / Verzeichnisname wird in der Befehlszeichenfolge angezeigt, wie es sollte. Optionsschlüssel als Meta hat bei mir nicht funktioniert. Mein Build von iTerm ist 0.10.
quelle