Auf einer Debian Wheezy-Maschine in der Vergangenheit habe ich mich an Alt + Links und Alt + Rechts gewöhnt, um zwischen Wörtern in der aktiven Befehlszeile zu wechseln (in Bash).
Da ich jedoch zu Hause ein Upgrade auf Jessie (Debian 8.0, Testzweig) durchgeführt habe, funktioniert dies nicht mehr: Statt zum vorherigen Wort zu springen, druckt Alt-Links etwas wie D
oder [D
. OTOH, wenn ich ssh öffne und mich mit meinem kopflosen Debian Wheezy verbinde, funktioniert es perfekt.
Außerdem habe ich gerade Fedora 20 in meinem neuen Job installiert und hier ist das Verhalten dasselbe. Dies gilt für bash, csh und ksh (gestartet unter env -i
) sowie für rxvt-unicode und xfce4-terminal, es muss also etwas außerhalb dieser Ebene sein.
Wo sonst im Stapel soll ich nach dem Unterschied suchen?
quelle
Antworten:
Wahrscheinlich wurde eine lokale
~/.inputrc
oder globale/etc/inputrc
Datei definiert, die beim Upgrade verloren gegangen ist. Eine einfache Lösung besteht darin, eine~/.inputrc
Datei mit den folgenden Zeilen zu erstellen :Diese funktionieren mit
xterm
undterminator
und müssengnome-terminal
möglicherweise für andere Terminals angepasst werden. Leider kann jeder Terminalemulator eine andere Syntax verwenden. Weitere Details finden Sie in meiner Antwort hier .quelle
terdon hat mich in die richtige richtung gebracht: inputrc file.
Der Täter ist, dass readline6 nicht intuitiv ~ / .inputrc anstelle von / etc / inputrc verwendet, was readline (3) weder hervorhebt noch widerlegt:
Während also in beiden Debian - Maschinen / etc / inputrc zu , dass die von einem dritten identisch ist libreadline6 Paket (die Version ist das gleiche wie gut), auf der neueren Maschine ~ / .inputrc mit einzelner Zeile vorhanden ist :
set bell-style none
. Wenn diese Datei gelöscht wird, funktioniert alles einwandfrei (siehe Hinweise unten).Ich kann Fedora erst morgen überprüfen, aber ich denke, es ist das gleiche Problem. Update: Auf Fedora gab es ~ / .inputrc nicht. Hier ist die / etc / inputrc einfach anders, so dass sie dies möglicherweise nicht definiert. Als Hotfix habe ich einfach Debians Inputrc als ~ / .inputrc gespeichert.
Anmerkungen:
Das Rätsel, wie es während des Upgrades von 7 auf 8 geändert wurde, ist immer noch ungelöst, kann aber teilweise auf mein schlechtes Gedächtnis und das Jonglieren einiger unbeabsichtigter Punktedateien zurückgeführt werden. (Übrigens handelte es sich nicht um ein APT-Upgrade, sondern um ein erneutes Installieren und manuelles Verschieben von Punktdateien, so dass sich die ~ .inputrc möglicherweise irgendwie in die Quere kam.)
Außerdem, wenn ich OK sage, meine ich, dass es mit Strg überall außer Rxvt funktioniert (OK, ich habe nur xfce4-terminal angekreuzt, aber wir wissen, dass Rxvt der übliche Rebell ist), wobei dies Alt neu zugeordnet wird, anscheinend weil Strg von Rxvt übernommen wird -Funktionalität - Aktive Registerkarte in Liste verschieben.
Wie in der Manpage erwähnt, können Sie mit bash den eingebauten Bindebefehl verwenden, um zu untersuchen, was Sie aktuell haben.
quelle
$include /etc/inputrc
oben drauf,~/.inputrc
wenn du das auch lesen willst.$include
d standardmäßig).