X Window benutzen

Willemers Informatik-Ecke

Das X Window System verhält sich an vielen Stellen etwas anders und so werden Benutzer anderer grafischer Oberflächen manchmal etwas überrascht sein. Das hängt einerseits damit zusammen, dass einige Elemente und Programme noch dem Athena Widget Set entstammen, die heute etwas archaisch wirken. Dazu kommt die Steuerungsmöglichkeit von Programmen durch Aufrufe von der Shell und die Art der Konfiguration. Einige dieser Kuriositäten sind mit den moderneren Desktops bereits verschwunden, andere liegen nur verborgen unter der bunten Oberfläche.

Bedienungselemente des Athena Widget Set

Alt, aber verfügbar

Einige X-Programme haben sich durch die Jahrzehnte erhalten. Sie wurden mit dem ersten verfügbaren Widget Set, dem Athena Widget Set (AWS) geschrieben. Die Elemente wirken heute etwas spartanisch, da ihnen die dreidimensionalen Effekte neuerer Systeme fehlen. Auch die Bedienung ist teilweise ungewöhnlich. Da aber immer die Chance besteht, Programmen zu begegnen, die auf dem AWS basieren, macht es Sinn, die Bedienung kurz zu betrachten. Zu den mit dem AWS geschriebenen Programmen gehören einige Klassiker.

xman
Das Program zeigt die Manpages. Nach dem Start erscheint erst ein kleines Fenster, das eigentlich nur den Zweck hat, dass man auf den Button >>Manual Page<< drückt. Nun erscheint das eigentliche Hauptfenster von xman. Das Menü besteht nicht aus einer Menüleiste, sondern aus Buttons, denen man eine Menüleiste angehängt hat. Im Menü Options verbirgt sich der Punkt >>Show Both Screens<<. Damit teilt sich das Fenster von xman waagerecht. Diese Linie wird rechts durch ein kleines Rechteck unterbrochen, mit dessen Hilfe man die Trennlinie verschieben kann. Im oberen Fenster bekommt man nun ein Fenster mit den angebotenen Manpages und im unteren sieht man davon die zuletzt angeklickte. Unter dem Menüpunkt Sections findet man die angebotenen Büchereien und so kann man mit xman auch dann noch Hilfe finden, wenn man nicht ganz genau weiß, was man eigentlich sucht.
xterm
xterm ist eine Terminalemulation. Mit xterm hat man eine Shell zur Verfügung wie in einer Textoberfläche.
xcalc
Dies ist ein mathematisch wissenschaftlicher Taschenrechner.
xpaint
Ein einfaches Malprogramm für das Erstellen von Grafiken.
xedit
Ein einfacher Texteditor, der aber vielleicht für Einsteiger nicht ganz so ungewohnt ist wie vi oder emacs.

Rollbalken

Der Rollbalken erscheint auf der linken Seite des Fensters und dient in erster Linie der optischen Rückmeldung. Er wird durch die drei Maustasten gesteuert. Allerdings ist die Steuerung für Benutzer anderer grafischer Oberflächen etwas ungewohnt.

linke Maustaste:
Blättert weiter. In welcher Schrittgröße vorgegangen wird, hängt davon ab, wo sich der Mauszeiger befindet. Ist er oben, ergeben sich kleine Schritte. Ist er unten, werden die Schritte größer.
rechte Maustaste:
Blättert zurück. Auch hier hängt die Schrittgröße in gleicher Weise von der Position des Mauszeigers im Rollbalken ab.
mittlere Maustaste:
Bewegt den Rollbalkenschlitten an die aktuelle Mausposition. Bei PCs mit nur zwei Maustasten wird die mittlere Taste oft durch das Drücken beider Tasten gleichzeitig emuliert.

Menüs

Menüs befinden sich beim Athena Widget Set nicht zwingend in der obersten Zeile. Sie sind manchmal gar nicht als solche zu erkennen, da ein Menükopf aus Sicht des AWS nichts anderes als ein normaler Button ist.

Trennbalken

Recht früh kannte X bereits das Kontrollelement des Trennbalkens. Dieser Balken hat in der Nähe der rechten Seite eine Verdickung in Rechteckform. Wenn man diese mit der Maus ergreift, kann man den Balken verschieben.

Der Aufruf von X-Programmen

Wenn man X-Programme von der Shell aus startet, setzt man an das Ende der Zeile ein kaufmännisches Und & und schiebt sie damit in den Hintergrund, um die Shell anschließend frei zu haben.

Gleiche Optionen aller X-Programme

Die meisten X-Programme übergeben beim Start alle Parameter an die X-Funktion XtAppInitialize(), die auch für die Initialisierung des Programms zuständig ist. Diese durchsucht die Parameter nach Optionen, die sich an das X richten. Dazu gehören beispielsweise -fg oder -bg zum Verändern der Farben. Da die Optionen bei allen Programmen von der gleichen Funktion ausgewertet werden, sind die Optionen auch durchgängig für alle X-Programme gültig. Leider gilt das nicht unbedingt für Programme von KDE oder GNOME. Der folgende Aufruf startet xman mit einem gelben Hintergrund und roten Buchstaben.

xman -bg yellow -fg blue &

Neben der Möglichkeit, diese Optionen aus einer Shell den Programmen mitzugeben, haben diese Optionen vor allem ihren Einsatz, um aus Skripten gestartet zu werden, beispielsweise aus der bereits genannten xinitrc.

Die folgende Tabelle zeigt einige der wichtigsten Optionen, die man unter X verwenden kann.

Option Wirkung
-display display zu verwendender X-Server
-geometry geometry Startposition und Größe des Fensters
-bg color, -background color Farbe Fensterhintergrund
-bd color, -bordercolor color Farbe Fensterrand
-bw pixel, -borderwidth pixel Breite des Fensterrand
-fg color, -foreground color Vordergrundfarbe
-fn font, -font font verwendeter Zeichensatz
-iconic Programm bei Start als Symbol abstellen
-title string Der Titel im Schiebebalken

Die kursiv angegebenen Parameter bedürfen noch einer näheren Erläuterung.

geometry
Die Geometrie ist die Ausdehnung des Fensters. Als Parameter wird ohne Leerzeichen hintereinander Breite x Höhe + X-Abstand + Y-Abstand zur linken oberen Ecke angegeben. Beispiel:

xcalc -geometry 90x120+60+40 &

Die Abstände können auch durch ein Minuszeichen angegeben werden. Dann beziehen sie sich die Abstände auf die untere bzw. rechte Kante. Eine Mischung ist möglich.

display
Der Display ist die exakte Bezeichnung des X-Servers, auf dem das Programm ablaufen soll. Der Aufbau lautet Host:Display.Screen. Der Hostname ist der übliche Name des Rechners, wie er beispielsweise in der /etc/hosts hinterlegt wird. Der Display ist eine Einheit aus Bildschirm, Maus und Tastatur und wird je Rechner durchnummeriert. Da die wenigsten Rechner heutzutage noch mehr als einen solchen Arbeitsplatz zur Verfügung stellen, ist diese Zahl meistens 0. Mit dem Screen wird der Bildschirm des Displays bezeichnet. Wenn ein Arbeitsplatz mit zwei Bildschirmen ausgestattet ist, werden diese ebenfalls durchnummeriert. Auch dieser Fall ist eher selten und darum ist der Screen meistens 0 und kann auch inklusive Punkt völlig weggelassen werden. Soll die Anwendung auf dem lokalen Host stattfinden, kann der Name weggelassen werden, aber der Doppelpunkt und die folgende 0 muss bleiben.

Beispiel: gaston:0 oder localhost:0.0 oder :0

color
Farben können oft mit ihren englischen Namen verwendet werden, die in /usr/lib/X11/rgb.txt definiert sind. Alternativ gibt es die Möglichkeit, sie als RGB-Werte anzugeben. Beispielsweise als rgb:50/99/99.
pixel
Bildpunkte auf dem Bildschirm.
font
Der Zeichensatz kann nach Schriftart, -größe oder -attributen eingegrenzt werden.

Cut and Paste

Aktive Markierung

Unter X gibt es einen extrem schnellen Mechanismus, Texte zwischen Anwendungen per Maus auszutauschen, der sich von anderen grafischen Oberflächen stark unterscheidet. Im ersten Schritt wird der zu kopierende Textbereich markiert. Das wird durch Überstreichen mit der Maus bei gedrückter linker Maustaste erreicht. Es kann immer nur eine Markierung im X geben. Wird etwas anderes in einem anderen Fenster markiert, wird die bisherige Markierung aufgehoben. Durch die mittlere Maustaste wird das Markierte unter dem Mauszeiger als Texteingabe eingefügt. Das betroffene Fenster muss zu diesem Zeitpunkt nicht den Fokus haben, oder anders ausgedrückt, nicht aktiv sein.

Cut an Paste: X gegen StarOffice

Einige Programme, wie etwa StarOffice oder Netscape verwenden das von MS-Windows oder MacOS bekannte Verfahren des Cut and Paste über ein so genanntes Clippboard. Dabei wird mit ctrl-C (oder ctrl-insert) die Markierung auf das Clipboard kopiert und mit ctrl-V (oder shift-insert) der Clipboardpuffer wieder eingefügt. Alternativ zum Kopieren kann auch mit ctrl-X (shift-delete) der markierte Bereich entfernt und auf das Clipboard gelegt werden. Der Austausch mit anderen X-Programmen ist zumindest bei StarOffice gewährleistet, da Markierungen außerhalb von StarOffice aus dessen Sicht im Clipboard stehen und das Clipboard von StarOffice vom restlichen X als aktive Markierung angesehen wird.

Soll also ein Text im xterm in ein geöffnetes Dokument von StarOffice gelangen, markiert man den Text im xterm und gibt im StarOffice an der Zielstelle ctrl-V ein. Um einen Text aus dem StarOffice ins xterm zu bringen, markiert man ihn im StarOffice, drückt ctrl-C und kann ihn nun im xterm durch Drücken der mittleren Maustaste einfügen.

Weitere praktische Helfer

Fenster einschlagen

Das Programm xkill verwandelt den Mauszeiger in einen Totenkopf, denn es beendet das Programm, in dessen Fenster als nächstes geklickt wird.

xwd - Hardcopy

Mit dem Programm xwd kann man eine so genannte Hardcopy vom Bildschirm herstellen. Das Programm wird gestartet, dann wird mit der Maus der zu kopierende Bereich markiert. Ein Kontrollpiep meldet, dass der Bereich erfasst ist. Die Ausgabe wird nach stdout geschrieben oder durch die Option -o umgeleitet. Das Format dieser Datei nennt sich XWD und ist ein originäres X Window Format. Zum Betrachten dieser Bilder gibt es das Programm xuwd, aber auch moderne Programme wie gimp können mit diesem Format umgehen.

Zusätzliche, kleinere Komfortprogramme werden ebenfalls mitgeliefert. xclock ist eine Uhr, xcalc ein kleiner Taschenrechner. Mit xload kann man sich die Belastung der Maschine ansehen. xbiff meldet, wenn E-Mail eingetroffen ist.

Diese Seite basiert auf Inhalten aus dem Buch Arnold Willemer: Wie werde ich UNIX-Guru
Verlagsrechte bei galileo computing


Homepage (C) Copyright 2002 Arnold Willemer