Bind: Unterschied zwischen den Versionen

Aus Foxwiki
K (Dirkwagner verschob die Seite Bash:Builtin:bind nach Bind, ohne dabei eine Weiterleitung anzulegen: Textersetzung - „Bash:Builtin:“ durch „“)
K (Textersetzung - „Linux:Shell:Bash:Interaktiv“ durch „Bash:Interaktiv“)
Zeile 90: Zeile 90:
[[Category:Linux:Befehl]]
[[Category:Linux:Befehl]]
[[Category:Linux:Shell:Bash:Builtin]]
[[Category:Linux:Shell:Bash:Builtin]]
[[Category:Linux:Shell:Bash:Interaktiv]]
[[Category:Bash:Interaktiv]]

Version vom 26. Mai 2022, 22:19 Uhr

topic kurze Beschreibung

Beschreibung

Installation

Syntax

Parameter

Optionen

Konfiguration

Anwendungen

Links

Dateien

Man-Pages

Intern

Weblinks

Kontrollfragen

Testfrage 1

Antwort1

Testfrage 2

Antwort2

Testfrage 3

Antwort3

Testfrage 4

Antwort4

Testfrage 5

Antwort5


bind

Das Kommando besitzt in erster Linie im Zusammenspiel mit der Datei /etc/inputrc (bzw. ~/.inputrc) eine Rolle. Besagte Dateien enthalten die »Keybindings«, also die Zuordnungen von Tastenkombinationen zu bestimmten Funktionalitäten.

Wenn bspw. die unter Interaktive Bash aufgeführten Eingabehilfen bei Ihnen nicht funktionieren sollten, dann fehlt in der Konfiguration Ihrer Bash die notwendige Zuordnung (oder Sie verwenden eine ältere Bashversion).

bind kann auch interaktiv benutzt werden, um bestimmte Keybindings zu löschen, um sie sich anzeigen zu lassen oder neue zu definieren.

Letzteres ermöglicht gar die Ausführung von Kommandos bei Betätigung einer zuvor definierten Tastensequenz. Benötigen Sie solche Sequenzen häufig, so nehmen Sie sie in ihre persönliche ~/.inputrc auf.

Wenn Sie mit der Bash einigermaßen per Du sind, so kennen

Sie die eine oder andere Tastenkombination, um geschwind auf der Kommandozeile zu navigieren oder diese zu manipulieren. Hinter den Mechanismen verbergen sich readline-Funktionen.

Welche es gibt, verrät der Aufruf »bind -l« und über deren aktuelle Belegung weiß »bind -p« bescheid. Erscheint in letzter Ausgabe »not bound«, so ist diese Funktion nicht belegt.

$ bind -p | head -5
"\C-g": abort
"\C-x\C-g": abort
"\e\C-g": abort
"\C-j": accept-line

Angenommen Sie verfassen im vi ein deutschsprachiges html-Dokument.

Um die Zeichen »ä«, »ö«,... in Browsern, die deutsche Zeichensätze nicht unterstützen, korrekt darzustellen, sollten alle länderspezifischen Zeichen im Unicode dargestellt werden, also bspw. »ü« anstatt »ü«.

Die komfortable Lösung ist das Verändern der Tastaturbelegung, so dass automatisch der Unicode im Text erscheint. In der Bash erreichen Sie dies wie folgt:

bind '"ü":"ü"' 

Sobald Sie »ü« tippen, erscheint in der Eingabe »ü«. Um die Bindung aufzuheben, geben sie »bind -r <Tastensequenz>« an; aber für gewöhnlich besteht der Wunsch, die alte Belegung wieder herzustellen.

Eine Taste, die »als sie selbst« definiert wird, wird in folgender Manier belegt:

bind 'ü:self-insert' 

Obige Form der Tastenbindung nennt man auch Makro; daneben können sie auch Funktionen und gar Kommando(s) an Tasten(sequenzen) binden.

Das nachfolgende Beispiel bindet [Strg]+[b] an die Ausgabe des Kalenders des aktuellen Monats:

bind -x '"\C-b":cal' 
[Strg]+[B]
    November 2000
So Mo Di Mi Do Fr Sa
          1  2  3  4
 5  6  7  8  9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30

Ihre gesammelten Werke der Tastenbindungen können Sie auch in eine beliebige Datei schreiben und diese mittels "bind -f <Datei>" laden.