Laborausstattung

Schlanker Fenstermanager

01.09.2005
Wenn Sie sich eine funktionale und schnelle Arbeitsumgebung wünschen, sollten Sie einen Blick auf den Fenstermanager WindowLab riskieren. Der minimalistische Fensterherrscher verzichtet auf überflüssigen Schnickschnack und konzentriert sich auf das Wesentliche.

Im Labor arbeiten, heißt die Übersicht zu bewahren. Unnötige Funktionalitäten führen zu falschen oder wiedersprüchlichen Ergebnissen und behindern die Konzentration auf die eigentliche Arbeit. Den gleichen Ansatz verfolgt WindowLab [1] (Abbildung 1), der sich ganz bewußt auf die Kernaufgaben eines Window Managers – die Organisation der Anwendungsfenster auf dem Desktop – beschränkt.

Abbildung 1: In der Grundkonfiguration präsentiert sich WindowLab schlicht und funktional.

Erste Experimente

WindowLab basiert auf dem Quellcode von aewm [2]. Sie installieren ihn aus dem Quellcode-Archiv von der Projekt-Homepage oder unser Heft-CD. Im Gegensatz zu anderen Programmen entfällt bei WindowLab der Aufruf des Skripts configure. Mit den beiden Befehlen make und su -c "make install" im Quellcode-Verzeichnis übersetzen Sie das Fensterlabor und kopieren die Programmdateien in Verzeichnisse unterhalb von /usr/local. Das Programm gibt sich genügsam und setzt zum Selbstkompilieren nur den gcc und die Entwicklerpakete des grafischen Systems voraus. Unter Suse Linux 9.3 heißt das richtige Paket xorg-x11-devel.

Damit Ihre Neuerwerbung nach dem Anmelden startet, binden Sie WindowLab wie unter [3] beschrieben in das Auswahlmenü des Display Managers ein. Welche Besonderheiten Sie unter Suse Linux 9.3 beachten müssen, erklärt Kasten 1. Um WindowLab nur einmal probeweise zu starten, genügt die Auswahl des Sitzungstyps Failsafe im KDM-Menü. Der Display Manager startet dann lediglich den X Server und ein Terminalfenster. Geben Sie dort windowlab ein. Dieser Befehl ruft den schlichten Fenstermanager auf. Einen großen Unterschied bemerken Sie nicht: Weder ändert sich der Hintergrund, noch erscheint ein Startmenü oder Dekstop-Icons. WindowLab versieht jedoch das Terminalfenster mit einem Rahmen und platziert eine Task-Leiste am oberen Bildschirmrand. Diese listet die geöffneten Fenster auf.

Die Fensterleiste (Abbildung 2) beschränkt sich auf den Fenstertitel und drei Knöpfe auf der rechten Seite. Von links nach rechts dienen diese in Kombination mit einem Linksklick zum Minimieren, um das aktuelle Fenster in den Hinter- oder Vordergrund zu bringen und um es zu schließen. Minimierte oder von anderen verdeckte Fenster bringen Sie durch einen Linksklick auf ihren Eintrag in der Task-Leiste wieder in den Vordergrund. Alternativ bedienen Sie sich der Tastenkürzel zur Fensternavigation. [Alt]+[Q] holt die Fenster in der Reihenfolge in der sie in der Task-Leiste erscheinen in den Vordergrund. Mit [Alt]+[Tab] blättern Sie in die umgekehrte Richtung. Der Shortcut [Alt]+[F12] befördert das aktive Fenster in den Hintergrund, [Alt]+[F11] schaltet zwischen dem normalen und dem Vollbildmodus um.

Abbildung 2: Die WindowLab Fensterleiste beschränkt sich auf die unbedingt notwendigen Funktionen.

Klicken Sie mit der rechten Maustaste auf den Desktop oder die Task-Leiste, so verwandelt sich diese in ein Startmenü (Abbildung 3). Es enthält von rechts nach links einen Eintrag zum Beenden von WindowLab (Quit) einen Eintrag, der Versionsinformationen zum Fenstermanager anzeigt (About) und diverse Menüpunkte zum Starten von Applikationen. Um einen der Einträge zu aktivieren, reicht es aus, die rechte Maustaste über dem Menüpunkt loszulassen. Der Eintrag Edit Menü öffnet jedoch nicht etwa einen grafischen Einrichtungsdialog, sondern lediglich einen Texteditor – standardmäßig gvim – mit der WindowLab-Konfigurationsdatei.

Abbildung 3: Die Taskleiste verwandelt sich durch einen Rechtsklick in ein Startmenü.

Beim Verschieben von Fenstern gibt es eine Besonderheit zu beachten: Die Fensterleisten müssen sich immer vollständig auf dem Desktop befinden und dürfen die Task-Leiste nicht überdecken. Das Herausschieben der Fenster aus dem Arbeitsbereich ist damit nicht möglich.

Um die Größe eines Fensters zu ändern, halten Sie [Alt] gedrückt und klicken mit der linken Maustaste auf den Fensterrahmen. In diesem Modus zeigt WindowLab den Inhalt des Fensters nicht an, sondern blendet lediglich ein Rechteck ein, das den Fensterrahmen symbolisiert. Seine Größe passen Sie durch Ziehen der Maus an.

Einstellungssache

Über die WindowLab-Konfigurationsdatei modifizieren Sie das Startmenü des Fensterherrschers. Um nicht die Einstellungen für alle Nutzer zu ändern, legen Sie zunächst das Verzeichnis ~/.windowlab an und kopieren die Vorlage /etc/X11/windowlab/menurc in diesen Ordner. Selbst wer ansonsten nichts mit dem Editieren von Konfigurationsdateien am Hut hat, kommt mit dem Aufbau der menurc schnell zurecht: Bei jeder Zeile, die nicht mit einer Raute (#) beginnt, handelt es sich um einen Menüeintrag der Form Menüpunkt:Programm. Menüpunkt steht für den Text, den WindowLab in der Menüleiste anzeigt. Hinter dem Doppelpunkt folgt der gewünschte Programmaufruf. Beispielsweise sorgt die Zeile XEmacs:xemacs dafür, dass das Startmenü nach einem Neustart von WindowLab den zusätzlichen Eintrag XEmacs enthält, über den Sie den Text-Editor starten. Der Eintrag, der in der menurc an erster Stelle steht, erscheint im Menü ganz links.

Zusätzliches Laborgerät

WindowLab stellt von Haus aus nur einen Desktop zur Verfügung. Sind Sie ein Liebhaber mehrerer virtueller Arbeitsflächen, können Sie das Feature nur über ein externes Tool wie beispielsweise vdesk nachrüsten. Sie erhalten das Kommandozeilenprogramm unter [4] und kompilieren es mit dem bekannten Dreisatz ./configure && make && make install. Das kleine Helferlein kümmert sich im Hintergrund darum, Ihnen den Eindruck virtueller Desktops zu vermitteln.

Um WindowLab mit vier virtuellen Desktops auszustatten, tragen Sie die folgenden Zeilen ind die Datei ~/.windowlab/menurc ein:

Desk1:vdesk 1
Desk2:vdesk 2
Desk3:vdesk 3
Desk4:vdesk 4

Nach dem Neustart präsentiert WindowLab vier zusätzliche Menüpunkte, über die Sie auf einen anderen Desktop wechseln. Möchten Sie außerdem die Möglichkeit haben, Anwendungsfenster auf einen andere virtuelle Arbeitsfläche zu verschieben, erreichen Sie das mit einem Skript, das die interne ID eines Fensters ermittelt und diese an den Aufruf von vdesk übergibt.

Erzeugen Sie zunächst durch die folgenden Zeilen in der menurc die Buttons, mit denen Sie ein Fenster auf einen der vier Desktops verschieben:

ToDesk1:/pfad/zu/to.sh 1
ToDesk2:/pfad/zu/to.sh 2
ToDesk3:/pfad/zu/to.sh 3
ToDesk4:/pfad/zu/to.sh 4

Erstellen Sie nun mit einem Text-Editor das Skript to.sh mit dem Inhalt

#!/bin/bash
vdesk $1 `xwininfo | grep ↩
"Window id:" | cut -d" " -f4`

und machen Sie es ausführbar.

Wenn Sie nun einen der vier Menüeinträge auswählen, sorgt der Befehl xwininfo | grep "Window id:" | cut -d" " -f4 dafür, dass das Anklicken eines Fensters die Fenster-ID zurückgibt. Diese reicht das Skript an vdesk weiter, das das Fenster danach auf den gewünschten Desktop befördert. Darüber hinaus bietet vdesk die Option, ein Fenster auf allen virtuellen Desktops anzuzeigen, was beispielsweise bei einem Prozessmonitor praktisch ist. Um die Omnipräsenz zu aktivieren, gilt es, das Fenster auf die Arbeitsfläche 0, also nach vdesk 0 zu verschieben. Der passende Menüeintrag könnte so aussehen:

Sticky:/pfad/zu/to.sh 0

Auch weitere, eventuell gewünschte Funktionen, wie etwa ein Hintergrundbild oder Desktpop-Icons, gilt es mit externen Tools nachzurüsten. Für die Anzeige einer Hintergrundgrafik bieten sich Tools wie Esetroot oder der Bildbetrachter xv an. Das Kommando xv -quit -root /opt/kde3/share/wallpapers/SuSE-Desktop_1024.png verschönert unter Suse Linux 9.3 die Arbeitsoberfläche mit dem Standard-Desktop-Hintergrund. Das einfache Einfärben gelingt auch mit xsetroot, dass die Arbeitsoberfläche nach einem xsetroot -solid blue in einheitliches blau taucht.

Fazit

WindowLab ist ein schlanker, rein funktionaler Fenstermanager, der Task-Leite und Startmenü platzsparend in einem Element vereint. Dabei ist die Anwendung nicht nur für Minimalisten interessant, sondern auch für Benutzer, die sich Ihre Desktop-Umgebung nach dem Baukastenprinzip aus vielen einzelnen Tools zusammenbasteln möchten. Ganz frei von Nebenwirkungen ist dieses Vorhaben jedoch nicht, da nicht alle Zusatzprogramme optimal mit WindowLab zusammenspielen. Das Umschalten der Fenster mithilfe der Taskleiste bring beispielsweise vdesk komplett durcheinander.

Kasten 1: WindowLab unter Suse Linux 9.3

Um WindowLab in das KDM-Auswahlmenü von Suse Linux 9.3 zu integrieren, reicht es aus, die Datei /opt/kde3/share/apps/kdm/sessions/windowlab.desktop anzulegen und mit folgendem Inhalt zu füllen:

[Desktop Entry]
Encoding=UTF-8
Type=XSession
Exec=windowlab
TryExec=windowlab
Name=WindowLab
Comment[de]=Das Fensterlabor

Möchten Sie direkt beim Start des Fensterherrschers ein Hintergrundbild anzeigen, erreichen Sie das mit Hilfe eines Skripts, etwas start_windowlab.sh.

#!/bin/bash
xv -quit -root /opt/kde3/share/wallpapers/SuSE-Desktop_1024.png &
windowlab

Machen Sie dieses ausführbar und tragen Sie den vollen Pfad zu dem Skript hinter den Eintrag Exec= in der Datei windowlab.desktop ein.

Infos

[1] WindowLab: http://www.nickgravgaard.com/windowlab/

[2] aewm: http://www.red-bean.com/~decklin/aewm/

[3] KDM und GDM konfigurieren: Hagen Höpfner, "Hereinspaziert!", LinuxUser, 11/2004, S. 42 ff.

[4] vdesk: http://offog.org/code/

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 

Related content

Kommentare