Home / LinuxUser / 2002 / 02 / The Answer Girl

Newsletter abonnieren

Lies uns auf...

Folge LinuxCommunity auf Twitter

Top-Beiträge

Mandriva gibt Distribution in die Hände der Community
(268 Punkte bei 24 Stimmen)
Neues vom Systemd
(161 Punkte bei 4 Stimmen)
Mandriva in Nöten
(161 Punkte bei 4 Stimmen)

Heftarchiv

LinuxUser Heftarchiv

EasyLinux Heftarchiv

Ubuntu User Heftarchiv

Ubuntu User Heftarchiv

Partner-Links:

Shopping
Topsuche
 
Yatego Deutschlands größte Shoppingmall. 10000 Shops,
3.5 Mio Artikel. Alle Bestseller, Servertechnik und Technik Themenwelten.

Notebooks und Netzwerkhardware bei Mercateo günstig kaufen.
Internet Telefonie mit VoIP Telefonen von Gigaset
Das B2B Portal www.Linx.de informiert über Produkte und Dienstleistungen.
Günstige Digitalkameras finden Sie im Preisvergleich.

Kommandozeilen-Jongleur

The Answer Girl

Umlaute sind Readline-Sache

Inputrc? Wer bei einer schlecht vorkonfigurierten Distribution schon einmal versucht hat, die Umlaute eines deutschen Keyboards in der Textkonsole zur Darstellung zu bewegen, bei dem/der sollte dieser Name ein Glöckchen läuten. Drei mysteriöse Zeilen (Listing 1) in der /etc/inputrc haben hier schon vielen weitergeholfen – doch wird erst jetzt klar, was sie bedeuten: Mit den darin gesetzten drei Variablen konfiguriert man die Readline-Bibliothek korrekt.

Listing 1

Umlaute in der Konsole funktionieren nur bei richtig gesetzten Readline-Variablen

set meta-flag on
# Die nun angeschaltete Variable meta-flag sorgt dafür, dass
# die Bash niemals das achte Bit eines Buchstabens abschneidet.
# Umlaute lassen sich nämlich nur in 8-Bit-, nicht aber in
# 7-Bit-ASCII darstellen.
set output-meta on
# 8-Bit-Zeichen werden jetzt richtig (und nicht als
# komische Escape-Sequenzen) dargestellt.
set convert-meta off
# convert-meta ist standardmäßig angeschaltet und sorgt dann
# dafür, dass 8-Bit-Zeichen in einen Escape-Character und
# ein 7-Bit-ASCII-Zeichen konvertiert werden. Umlaute gehen
# dabei natürlich kaputt, weshalb diese Option abzuschalten ist.

Doch zurück zur Sache: Das, was wir suchen, ist offensichtlich ein Readline-Kommando, das ein Wort rückwärts löscht. Zwar bietet der naheliegende Unterabschnitt Commands for Changing Text nichts passendes, doch bei Killing und Yanking ("Löschen und wieder einfügen", wobei yank im wörtlichen (und bildlichen) Sinne aus einem ominösen Papierkorb, dem "kill ring" bereits gelöschte Strings wieder "herauszieht") werden wir fündig:

backward-kill-word (M-Rubout)
       Kill the word behind the cursor. […]

Wenn wir jetzt noch wüssten, was eine Rubout-Taste ist… Netterweise setzt uns gleich der erste Treffer einer Google-Suche nach Rubout key (Abbildung 2) davon in Kenntnis, dass es sich lediglich um einen anderen Namen für die [Backspace]-Taste handelt. Tatsächlich funktioniert [Esc-Backspace] wie gewünscht – nicht jedoch [Alt-Backspace], was schade ist, aber der Manpage recht gibt, die als Ersatz für die Meta-Taste nur [Esc], nicht aber das bei ordentlichen Emacs-Vorkonfigurationen auch mögliche [Alt] vorsieht.

Abbildung 2: Rubout ist nur der Backspace-Key

Der ärgerliche vi-String aus der "index.html vi"-Beispielkommandozeile ist also weg – jetzt müssten wir nur auf schnellstem Wege an den Zeilenanfang zurück, um ihn dort mit C-y, also [Strg-y], wieder einzufügen ("yank"). Der passende Readline-Befehl steht im Abschnitt Commands for Moving und ist mit [Strg-a] leicht zu merken. Dass [Strg-e] den Cursor ans Zeilenende befördert, lernen wir genauso im Vorbeigehen, wie die nützliche Möglichkeit, mit M-b ein Wort vorwärts, mit M-f hingegen ein Wort rückwärts zu springen.

Jetzt fehlt eigentlich nur noch eine Übersicht, die alle vorbelegten Tastenkürzel auflistet und ihre Bedeutung dahinterschreibt. Die gibt es tatsächlich – aber nicht in allen Distributionen. Wer mit man readline eine eigene Manpage zu readline(3) findet, braucht nur in den Abschnitt namens DEFAULT KEY BINDINGS zu schauen. Doch ehe der Rest seinen Distributor verflucht, sei verraten: Dieser Abschnitt ist fast alles, was das readline-Manual dem Bash-Handbuch voraus hat. Wer hier wohl von wem abgeschrieben hat?

Glossar

Shell-Prompt

Das Bereitzeichen der Shell. Erst wenn eine Zeichenkette, die gern den User- und/oder Rechnernamen, aber auch das Arbeitsverzeichnis enthält und typischerweise auf $, > oder (bei root) auf # endet, auf der Kommandozeile zu sehen ist, nimmt die Shell Kommandos an. Selbstverständlich kann der Prompt individuell angepasst werden.

Shell

Der Kommandozeilen-Interpreter, der Benutzerbefehle für die Ausführung durch den Kernel vorbereitet und diesem übergibt. Vom Standpunkt eines Kommandozeilenusers umschließt die Shell den Kernel wie eine Muschel, daher der Name.

X-Terminal

Ein GUI-Programm, das eine Kommandozeile zur Verfügung stellt. Egal, ob sich das Programm xterm, konsole oder aterm nennt, läuft darin immer auch eine Shell.

bash

Die Standard-Shell unter Linux. Ihr Name, "Bourne Again Shell", weist darauf hin, dass sie mit der traditionellen Bourne Shell sh kompatibel ist, aber zusätzlich eine Menge Funktionalität mitbringt, die jene nicht hat.

Emacs

Neben dem vi der zweite, auf fast jedem Unix-System installierte Standard-Texteditor. Wie vom vi auch, existieren verschiedene Implementationen dieses Editors, von denen die beliebteste wohl die GUI-Applikation xemacs ist. Wer sich einmal in die teils recht gewöhnungsbedürftige Bedienung eingearbeitet hat, bekommt ein äußerst vielfältiges, in der Programmiersprache Lisp erweiterbares Tool an die Hand, das dank verschiedener, in Emacs-Lisp geschriebener Module von der Programmierumgebung bis hin zum E-Mail- und News-Programm alle möglichen Einsatzgebiete abdeckt.

Vordergrundprozesse

Ruft man ein Kommando für sich auf der Kommandozeile auf, so bleibt diese Shell so lange blockiert, bis dieses Vordergrundkommando sich beendet. Bei Kommandozeilenbefehlen wie ls ist das normalerweise kein Problem, doch wer ein GUI-Programm aufrufen will, möchte die Shell für die Dauer seiner Benutzung nur ungern unbrauchbar sehen. Deshalb kann man Befehle in den Hintergrund schicken: Fügt man an den Befehl ein & an, blockiert er die aufrufende Shell nicht mehr.

Einem Freund empfehlen    Druckansicht Bookmark and Share
Kommentare

Hits
Wertung: 0 Punkte (0 Stimmen)

Schlecht Gut

Infos zur Publikation

Infos zur Publikation

LinuxUser 06/2012

Aktuelle Ausgabe kaufen:

Heft bestellen Heft als PDF kaufen

LinuxUser erscheint monatlich und kostet in der Nomedia-Ausgabe EUR 5,50 und mit DVD EUR 8,50. Weitere Informationen zum Heft finden Sie auf der LinuxUser-Homepage.

Im LinuxUser-Probeabo erhalten Sie drei Ausgaben für 3 Euro. Das Jahresabo (ab EUR 56,10) können Sie im LNM-Shop bestellen.

Tipp der Woche

Adobe AIR
Adobe-AIR-Programme installieren und (manuell) starten
Tim Schürmann, 14.05.2012 13:09, 0 Kommentare

Es gibt sie noch: neue Anwendungen, die Adobes Integrated Runtime voraussetzen. Aktuellstes und vermutlich auch größtes Beispiel ist das Adventure Botanicula

Aktuelle Fragen

gibt es ein Kommandozeilen Tool, um ein X11-Fenster in ein Anderes einzubetten?
GoaSkin , 21.05.2012 16:44, 0 Antworten
Das XEmbed-Protokoll ist u.A. dazu gedacht, dass man eine X11-Anwendung in eine andere wie ein Wi...
Apache2, Options -Indexes geht nicht
no no, 12.05.2012 19:01, 8 Antworten
Habe in apache2.conf folgendes stehen: Options -Indexes ...
LInux auf Dell LS H500
Andreas Endresl, 09.05.2012 08:54, 2 Antworten
Habe einen alten Dell Latitude LS H500 nur mit ext. Floppy und CD es geht nur immer eines von den...
Datenwiederherstellung unter Ubuntu 12.04 mit "Simple Backup" nach Umzug von Linux Mint
Christian Lottmann, 07.05.2012 13:33, 0 Antworten
Vor dem Umzug auf Ubuntu 12.04 habe ich unter Linux MInt mit "Simple Backup" voll (15.4.2012) und...
DKMS für den propritären NVIDIA-Treiber
Commander Data, 26.04.2012 22:02, 2 Antworten
Hallo an die Gemeinde. Ich habe hier ein interessantes Stück openSuSE gefunden. http://forums.op...