Aus Linux-Magazin 08/2006

Desktop-Tools für Metacity

© photocase.com

Viele Gnome-Anwender schätzen die Einfachheit des Window-Managers Metacity, der ohne Allüren seine Arbeit verrichtet. Wer dennoch Funktionalität vermisst, wird vielleicht bei den hier vorgestellten Erweiterungen Brightside und Devil's Pie fündig.

Geschmäcker sind bekanntlich verschieden, da macht Software keine Ausnahme. Der eine Anwender mag es barock üppig, der andere lieber sachlich. Auch bei Window-Managern herrschen die Extreme vor, vom minimalistischen TWM bis zum hochkomplexen Enlightenment, der seine Fenster mit Schnörkeln und sogar Animationen verziert [1].

Metacity, der Window-Manager für den Gnome-Desktop, will dem Benutzer das Leben vereinfachen, statt ihn mit vielen Konfigurationsmöglichkeiten zu verwirren. So beschränkt er sich auf die Kernkompetenz eines Window-Managers: Fensterdekorationen zeichnen, Fenster auf dem Bildschirm anordnen und bewegen. Zusatzfunktionen wie virtuelle Desktops werden von Gnome-Applets übernommen.

Die beiden Programme Brightside und Devil\’s Pie, die dieser Artikel vorstellt, erweitern Metacity um eine Reihe weiterer nützlicher Funktionen. Brightside macht die Ecken und Kanten des Gnome-Desktops sensibel für den Mauszeiger, mit dem der Benutzer zum Beispiel seine virtuellen Desktops umschalten kann. Devil\’s Pie erlaubt es ihm, in Konfigurationsdateien verschiedene Aktionen festzulegen, die der Desktop beim Starten von Programmen ausführt. Beide Programme benutzen zur Kommunikation mit dem Window-Manager die Extended Window Manager Hints [2].

Aktive Bildschirmecken

Manche Distributionen wie Ubuntu Dapper Drake und Fedora Core 5 enthalten Brightside in ihren Repositories. Alternativ führt der Weg zum Programm übers Selbstkompilieren des Pakets von [3]. Bei den Anforderungen gibt sich Brightside bescheiden, es setzt fast nur die üblichen Gnome-Bibliotheken voraus. Eine ungewöhnliche Voraussetzung ist lediglich die Bibliothek Libwnck, die Informationen über laufende Desktop-Programme liefert und die Programmierung von Programmen wie Task-Umschaltern vereinfacht.

Ist das Paket mit »make install« installiert, finden sich auch die ausführbaren Programme »brightside« und »brightside-properties« auf der Platte. Im Gnome-Menü taucht Brightside unter »System | Einstellungen | Weitere Präferenzen« auf. Konfiguriert wird Brightside mit »brightside-properties«, dessen Menü- und Dialogtexte bisher nicht übersetzt sind (Abbildung 1). Damit die Aktionen wirksam werden, muss der Anwender »brightside« von Hand starten oder über »gnome-session-properties« in die Liste der in einer Gnome-Session zu startenden Programme eintragen.

Abbildung 1: Mit Brightside lässt sich für jede Ecke des Bildschirms eine Aktion festlegen, die das Programm ausführt.

Abbildung 1: Mit Brightside lässt sich für jede Ecke des Bildschirms eine Aktion festlegen, die das Programm ausführt.

Für die vier Bildschirmecken ist jeweils eine Aktion voreingestellt, die sich über die Ausklappliste verändern lässt, vom Leise- und wieder Laut-Schalten der Soundausgabe über das Aktivieren des Bildschirmschoners bis zum Schlafmodus. Leider sind diese Aktionen im Quellcode einprogrammiert, statt dafür zum Beispiel eine Konfigurationsdatei zu verwenden. Prompt funktionierte auch die Funktion zum Starten des Bildschirmschoners (Start Screensaver) nicht, denn sie verwendet Kommandos des Programms Xscreensaver, das aber in Fedora Core 5 fehlt.

Eigene Aktionen

Um andere als die voreingestellten Aktionen den Bildschirmecken zuzuweisen, bietet Metacity so genannte Custom Actions. Wählt der Benutzer sie aus, öffnet Brightside einen kleinen Dialog, in den er das auszuführende Programm eintragen kann (Abbildung 2). Um den Screensaver unter Fedora Core 5 über eine Bildschirmecke zu aktivieren, trägt man unter »On entering region« den Befehl »gnome-screensaver-command –activate« ein. Die beiden Optionen, die Brightside beim Verlassen der Ecke auszuführen anbietet, bleiben ungenutzt. Der Screensaver beendet sich ja selbst, wenn der Benutzer die Maus bewegt.

Abbildung 2: Mit der Einstellung »Custom action« kann der Benutzer auszuführende Programme eintragen, die Brightside nicht von Haus aus kennt.

Abbildung 2: Mit der Einstellung »Custom action« kann der Benutzer auszuführende Programme eintragen, die Brightside nicht von Haus aus kennt.

Fließend umschalten

Praktisch ist auch das Edge-Flipping-Feature, das den aktuellen virtuellen Desktop wechselt, wenn der Benutzer die Maus zum linken oder rechten Bildschirmrand bewegt. Eine einstellbare Verzögerung verhindert dabei ungewolltes Umschalten (siehe Abbildung 1). Brightside funktioniert übrigens nicht nur mit Metacity. Im Test arbeitete es auch problemlos mit Fluxbox und WMX zusammen, die unter Fedora als Metacity-Alternativen bereitstehen.

Die Metacity-Entwickler haben bewusst darauf verzichtet, in ihren Window-Manager Code einzubauen, der Fenster intelligent anordnet. Das gehört nach ihrer Meinung nicht zu den Aufgaben eines Fenstermanagers. Statt ihrer hat der Gnome-Entwickler Ross Burtonini zu Editor und Compiler gegriffen und eine Software geschrieben, die genau dies tut.

Devil\’s Pie [4] lässt den Benutzer über Konfigurationsdateien festlegen, was beim Starten einer neuen Anwendung passiert. Das kann nicht nur die Anordnung auf dem Bildschirm betreffen, sondern auch das Auftauchen in der Taskliste, die Position auf einem virtuellen Desktop oder das Entfernen der Fensterdekoration. Es lohnt sich, auch Devil\’s Pie zum ständigen Gebrauch in die Gnome-Session aufzunehmen.

Lisp-Syntax statt XML

Bis Version 0.12 verarbeitete Devil\’s Pie Konfigurationsdateien in einem XML-Format, seit 0.13 setzt es auf eine Syntax mit S-Expressions, die vor allem von der Programmiersprache Lisp bekannt sind. Diese Dateien wandern ins Verzeichnis »/.devilspie« und tragen die Erweiterung ».ds«. In einer Datei darf jeweils nur eine Regel stehen, die auf eine Anwendung zutrifft. Beispielsweise legt der folgende Ausdruck beim Start des P2P-Clients Amule das Fenster auf den zweiten virtuellen Desktop:

(if
  (is (application_name) "amule")
  (set_workspace 2)
)

Ähnlich sieht eine Konfigurationsdatei aus, die den KDE-Mediaplayer Kaffeine maximiert startet:

(if
    (matches (application_name) "Kaffeine Player")
    (maximize)
)

Die Anweisung »fullscreen« statt »maximize« sorgt dafür, dass Kaffeine gleich im Vollbildmodus startet. Wer eine Konfigurationsdatei ändert, muss allerdings »devilspie« neu starten, damit es die Veränderungen registriert. Wirken sie sich nicht wie erwartet aus, hilft der Schalter »-d« des Programms bei der Fehlersuche. Alternativ schreibt man ans Ende einer Datei die Anweisung »(debug)«.

Natürlich beherrscht Devil\’s Pie wie jedes anständige Unix-Tool mit der Anweisung »matches« auch Regular Expressions. Soll das Programm mehrere Anweisungen pro Anwendung ausführen, übernimmt »begin« die Gruppierung:

(if
    (matches (application_name) "Firefox")
    (begin
        (geometry "600x800")
        (center)
     )
)

Mehr Informationen über verfügbare Anweisungen geben das Devil\’s-Pie-Wiki [6] und das ausführliche Tutorial [7].

Fast perfekt

Brightside und Devil\’s Pie sind nützliche Erweiterungen für Gnomes Window-Manager Metacity. Devil\’s Pie steuert über einfache Textdateien, was der Desktop mit neu gestarteten Anwendungen macht. Brightside veredelt Bildschirmecken und -kanten zu aktiven Bedienelementen, die die Interaktion mit dem Gnome-Desktop beschleunigen.

Leider ist Brightside nicht so flexibel, wie es sein könnte, denn es erlaubt neben den vorgegeben nur einfache benutzerdefinierte Aktionen. Eine Konfigurationsdatei, die grundlegende Aktionen festlegt, wäre die bessere Lösung.

Infos

[1] X-Window-Manager im Überblick: [http://xwinman.org]

[2] Extended Window Manager Hints: [http://standards.freedesktop.org/wm-spec/wm-spec-1.3.html]

[3] Brightside: [http://home.jesus.ox.ac.uk/~ecatmur/brightside]

[4] Devil\’s Pie: [http://www.burtonini.com/blog/computers/devilspie]

[5] S-Expressions: [http://theory.lcs.mit.edu/~rivest/sexp.html]

[6] Devil\’s-Pie-Wiki: [http://live.gnome.org/DevilsPie]

[7] Devil\’s-Pie-Tutorial: [http://wiki.foosel.net/linux/devilspie]

DIESEN ARTIKEL ALS PDF KAUFEN
EXPRESS-KAUF ALS PDFUmfang: 2 HeftseitenPreis €0,99
(inkl. 19% MwSt.)
LINUX-MAGAZIN KAUFEN
EINZELNE AUSGABE Print-Ausgaben Digitale Ausgaben
ABONNEMENTS Print-Abos Digitales Abo
TABLET & SMARTPHONE APPS Readly Logo
E-Mail Benachrichtigung
Benachrichtige mich zu:
0 Kommentare
Älteste
Neuste Beste Bewertung
Inline Feedbacks
Alle Kommentare anzeigen
Nach oben