Wie man das Verhalten der Befehle ändert, die links "Wörter" löschen
Ich habe vor kurzem versucht, von einem langjährigen Benutzer von tcsh auf bash umzusteigen, und ich beklagte mich darüber, dass zusätzliche Tasten gedrückt wurden, um "Wörter" auf der linken Seite zu löschen. Daher habe ich mich bemüht, das Verhalten in bash so zu ändern, dass es wie tcsh aussieht damit ich meine 18 Jahre Muskelgedächtnis nicht neu zuordnen muss. Was ich gerade versuche herauszufinden, ist:
So ändern Sie die "Wortgrenzen" bei der escape delete
Eingabe. (Beachten Sie, ich meine 2 separate Tastendrücke.)
Wenn ich in tcsh ein Wort nach links löschen möchte, würde ich zwei Tastenanschläge wiederholen: Escape-Delete. Ich weiß, dass bash Control-w verwendet, um das Wort auf der linken Seite zu töten, und ich habe herausgefunden, wie man das machen kann, um Striche und Unterstriche als Wortgrenzen zu ignorieren (aber mein tcsh-Muskelgedächtnis verwendet Control-w, um alles, was vom Cursor noch übrig ist, zu löschen control-u). Sie können eine der folgenden Optionen ausführen:
bind '\C-w:unix-filename-rubout'
oder
stty altwerase
(obwohl ich noch nicht weiß, ob das irgendwelche unbeabsichtigten Nebenwirkungen hat - ich versuche immer noch, die Dinge herauszufinden). Diese erlauben jeweils das Löschen von Strichen und Unterstrichen, aber ich weiß nicht, wie sie sich sonst unterscheiden.
Ich war jedoch überrascht, dass die escape delete
Schlüsselsequenz in beiden Fällen immer noch bei Strichen und Unterstrichen stoppte. Ich habe verschiedene Bind-Befehle ausprobiert, um dies zu ändern, wie zum Beispiel:
set bind-tty-special-chars Off set bind-tty-special-chars On bind '\e\C-h:unix-filename-rubout' bind '\e\C-?:unix-filename-rubout'
Aber keiner von ihnen ändert das Wortgrenzverhalten von escape delete
.
Einige Anmerkungen: Ich weiß wirklich nicht, was escape delete
in meinem Terminal gemacht wird - dh was es an Bash sendet. Wenn ja control-v escape
, sehe ich ^[
. Wenn ja control-v delete
, sehe ich ^?
. Ich verwende Terminal.app unter MacOS. Ich habe die Löschtaste so eingestellt, dass sie nicht control-h sendet, weil sie sich nicht so verhält, wie ich es in jedem Kontext erwartet habe. Ich habe auch keine Option als Metaschlüssel festgelegt, da ich vorsichtig war, um die Verwendung von Optionspfeil und Optionsklick für die Cursorbewegung nicht zu stören.
0 Antworten auf die Frage
Verwandte Probleme
-
2
Wie wird das Escape-Zeichen auf dem OS X-Terminal gesendet?
-
1
Wie entsperren Sie eine gesperrte Alias-Datei in OS X?
-
1
Pausieren Sie alle Aufgaben außer x CPU-intensiven Aufgaben
-
4
Verwenden Sie öffentliche Terminals, um sich mit Ihren persönlichen Zugangsdaten anzumelden
-
2
Wie kann ich OSX Terminal.app dazu bringen, den Vollbildmodus zu öffnen und nicht zu kaskadieren?
-
3
Mac OS X: herkömmliche Orte, an denen Binärdateien gespeichert werden sollen
-
2
Mac OS X: einfaches Skript gesucht
-
10
Wie kann ich die Bash-Historie durchsuchen und einen Befehl erneut ausführen?
-
2
Kann die Ausgabe eines Befehls an zwei andere Befehle weitergeleitet werden?
-
4
Transparentes Unicode X-Terminal, das nicht an eine Desktop-Umgebung gebunden ist?