Die Datei ~/.inputrc
ist eine Konfigurationsdatei für die Bibliothek readline, welche von bash und anderen Shells für das Einlesen von Tastatureingaben verwendet wird. Diese Datei konfiguriert beispielsweise, wie readline (und damit bash) Tastatureingaben wie "Home" (Pos1), "End", "Insert" und Sonderzeichen wie "ä", "ü", "ö", etc. interpretiert.
In der Datei können diese Keyboard-Belegungen geändert werden und es lassen sich weitere Optionen einstellen. Häufig werden hier Tastenkombinationen neu belegt. Es können z.B. Alt + ←
oder Alt + →
mit "Cursor ein Wort nach links" und "Cursor ein Wort nach rechts" belegt werden. Dazu kann der jeweilige "Escape Code" mit einem Befehl belegt werden:
"\eOd": backward-word
"\eOc": forward-word
Die Standard-Belegungen weichen je nach Linux-Distribution ab. Eine Liste von möglichen Befehlen für readline in Ubuntu Linux sowie Standard-Belegungen sind in der "manpage" für readline im Abschnitt "default key bindings" angegeben.
Ein Problem, dass sich mit dieser Datei lösen lässt: wenn bei der Eingabe von Umlauten wie ä, ö, ü oder ß z.B. in der Konsole (arg: 6)
angezeigt wird oder die aktuelle Eingabe gelöscht wird, werden diese Zeichen mit einer falschen Länge interpretiert. Das liegt daran, dass der Terminal-Client (z.B. Putty, MacOS Terminal) dem Server keine Unterstützung für einen 8 bit-Zeichensatz ankündigt. Die Zeichen werden aber mit 8 bit gesendet, woraufhin Zeichen vertauscht werden. Dies lässt sich umstellen:
# Enable 8bit input
set input-meta On
# Turns off 8th bit stripping
set convert-meta Off
# Keep the 8th bit for display
set output-meta On