Ich versuche, ⌘+Deletein iTerm2 eine Zuordnung (Rücktaste) zum Löschen am Anfang der Zeile (wie in Browsern und Texteditoren) in iTerm2 vorzunehmen, und ich kann keinen funktionierenden Escape-Code dafür finden. Ich habe 1K ( ^[1K
) basierend auf dem, was ich in Wikipedia gelesen habe, ausprobiert . Es wird nur ein "K" gedruckt.
Edit: Ich habe gefunden Ctrl+U. Nun erfahren Sie, wie Sie es abbilden können. Vielleicht Hex-Code 21 (U ist der 21. Buchstabe), also 0x15?
CTRL+A CTRL+K
in der Zwischenzeit. OderCTRL+C
ALT+Backspace
-> Sende Hex 0x17,ALT+RightArrow
-> Sende Exc Seq f,ALT+LeftArrow
-> Sende Exc Seq bAntworten:
Ich hab es geschafft. Ich habe keine Ahnung, warum Hex-Code-Zuordnungen in iTerm2 die zugehörigen Strg + -Tastenzuordnungen erzeugen, aber sie tun es. Keine Ahnung, was 0x00 bedeutet, da es nicht wie erwartet A zugewiesen ist. (obwohl ich glaube, dass Unix seine eigenen Konventionen in Bezug auf die Behandlung von Null-Bytes hat - wir
xargs
akzeptieren beispielsweise ein Null-Byte-Begrenzungsformat vonfind
- Es wäre ordentlich, wenn wir dies mit iTerm2 an einen Hotkey binden könnten)Ich konnte feststellen, dass Strg + U fast genau die Aufgabe erledigt, die ich möchte (es löscht die gesamte Zeile, anstatt nur das zu löschen, was vor dem Cursor steht, aber was auch immer ... Strg + Y als Bonus kann alles zurückbringen). Dann sehe ich neugierig , dass ich Hex - Codes hatte
0x1
und0x5
abgebildet^A
und^E
jeweils für meine Cmd + Links und Cmd + Recht ... so0x15
ist^U
!quelle
u
ist nur der 21. Buchstabe des Alphabets! Ich glaube also, dass der Ausdruck richtig ist.x
python -c "import string; print(hex(string.ascii_lowercase.find('x') + 1))"
~/.bashrc
~/.bash_profile
alias hexletter='python -c "import string,sys; print(hex(string.ascii_lowercase.find(sys.argv[-1]) + 1))"'
Durch die Zuordnung von Hex-Code
0x15
zu ⌘+ ←Deletein den meisten Shells wird die gesamte Zeile gelöscht (Inhalt links und rechts vom Cursor). Obwohl manchmal nicht so kompatibel, finde ich diese Zuordnung:⌘+ ←DeleteHex-Codes senden:
0x18 0x7f
führt die gewünschte Funktionalität aus. Wenn Sie ZSH ausführen, müssen Sie dies wahrscheinlich auch zu Ihrer .zshrc-Datei hinzufügen:
Standardmäßig ist ZSH
backward-kill-line
nichts zugeordnet.Darüber hinaus können Sie auch alles rechts von Ihrem Cursor löschen, indem Sie Folgendes zuordnen:
⌘+ fn+ ←Deleteoder ⌘+ Delete→um Hex-Codes zu senden:
0x0b
Ich schrieb einen umfassenden Leitfaden für das Hinzufügen meisten OSX Standard Keybinding zu Ihrem Terminal Hinzufügen hier
quelle
^X
und dann löscht die Rücktaste es einfach . Ich habe dies mit einer Tastenkombination in iTerm versucht (die die Sequenz ohne menschliche Verzögerung zusammen sendet) und sehe das gleiche Verhalten. Dies zeigt mir, dass Bash auch eine Bindung dafür erfordern würde.backward-kill-line
ist derjenige, mit dem Sie echte Parität herstellen können⌘ + ←Delete
. Die zusätzliche Konfiguration ist nur ein bisschen umständlich, aber überhaupt nicht schlecht.In OSX sind ⌥ + ⌫ und ⌘ + ⌫ die Verknüpfungen zum Löschen eines Wortes bzw. einer Zeile. ⌘ + ← und ⌘ + → stehen für den Anfang und das Ende von Zeilen. Standardmäßig ist iTerm2 nicht auf diese Weise konfiguriert, und es sind viele irreführende Anleitungen online. Folgendes habe ich auf meinem Computer gefunden.
Die Hex-Codes für ...
Hier ist ein Screenshot zur Verdeutlichung:
quelle
Unter Mac OS verwenden die meisten Editoren die allgemeine Verknüpfung
⌘
+Delete
: Löschen zum Zeilenanfang. In iTerm2 können wir zu dieser Tastenkonfiguration wechselnquelle
Ich hoffe das kann dir helfen
map ⌥ <- Löschen, um Hex-Codes zu senden: 0x1B 0x08
Ich hatte einen Test dafür und es ist richtig.
18.09.2013 Update
Dadurch wird ein Wort gelöscht, keine Zeile.
quelle
^H
für viele Terminals eigentlich "Rücktaste" bedeuten soll. Das Alt- / Meta- / Escape-Präfix, das daraus ein "Kill-Word" macht, erscheint sinnvoll, obwohl nicht klar ist, wie weit es unterstützt wird.Wie gezeigt
^U
löscht die Linie. Sie können den Befehl einfach mit dem Better Touch Tool neu zuordnen .Es hat auch coole Funktionen für die Automatisierung, Maus-, Pad- und Tastaturzuordnung. Enthält auch eine Fensterfunktion für intelligente Rahmen.
quelle