Die Erstellung eigener Themes scheint für viele User interessant zu sein. So hatte dieser Artikel die meisten Zugriffe in dieser Woche und auch andere Blogs berichten über unser Vorhaben. So wie Valentin von Gnubuntux, der in seinem Artikel folgerichtig darauf hinweist, dass sogenannte Engines die eigentliche Grundlage von Themes bilden und die Angaben in der Datei gtkrc darauf aufbauen.
Auf die Programmierung dieser Engines wollen wir in diesem Artikel nicht eingehen! Das ist auch nicht notwendig, können doch – anders als Valentin meint – verschiedene Engines innerhalb eines Themes eingesetzt werden! Somit bleibt doch genug Flexibilität, um sein Wunschtheme umsetzen zu können. Das von mir erwähnte Theme Cillop-Go benutzt z.B. die Engine pixmap, um Bilder für die Buttons, Scrollbars, usw. zu verwenden, für die restlichen Einstellungen kommt die Engine clearlooks zum Einsatz.
Eine Übersicht über die gängigsten Engines findet Ihr bei gnome.org (en) und auch im Wiki von ubuntuusers (de). Bevor wir aber (im nächsten Teil) richtig in das Thema einsteigen, möchte ich Euch auf eine besondere Engine hinweisen, auf murrine! Diese ist eine sehr schnelle und elegante Engine und wie man hört, wird in der nächsten Ubuntuversion „Intrepid Ibex“ murrine die jetzt verwendete ubuntu human-clearlooks – Engine ablösen. Das Besondere ist, dass für murrine ein grafisches Konfigurationstool vorhanden ist! Das macht die Konfiguration vieler Details fast zum Kinderspiel. In Hardy Heron sind die Engine und der Konfigurator in den Paketen enthalten. Sucht mit Synaptic nach „murrine“ und installiert Euch diese beiden Pakete:
- gtk2-engines-murrine
- murrine-configurator
Den Konfigurator kann man dann über das Menü System → Einstellungen → Murrine Einstellungen starten. Wer noch kein Murrine-Theme installiert hat, wird nun wenig anfangen können, also holen wir uns erstmal eins. Die verlinkte Webseite ist zur Zeit leider nicht erreichbar, alternativ kann man ja bei gnome-look.org ein Theme herunterladen. Entpackt den Ordner in Euer .theme-Verzeichnis. Achtet bitte darauf, dass der Ordnername mit „Murrina“ anfängt, sonst wird er im Konfigurator nicht angezeigt!
Noch ein Tipp: Legt Euch eine Kopie des Ordners an, falls Ihr das Original-Theme behalten wollt!
Nachfolgende Galerie mit Bildbeschreibung geht auf die Bedienung ein:
In der aktuellen Version (1.4) können bis auf die Scrollbars leider noch keine Farben angepasst werden. Aber auch das ist recht einfach zu bewerkstelligen, indem man diese direkt in der Datei gtkrc ändert. Nachfolgend zuerst ein Screenshot der relevanten Daten:
Die Farben werden in hexadezimaler Schreibweise angegeben. Wer sich ein wenig mit HTML auskennt, wird damit gut zurecht kommen. Es gibt noch andere Notationen, darauf kommen wir später noch zurück.
2 Tipps: Installiert Euch die kleinen Gnometools „gcolor2“ und „Agave“, so habt Ihr mit dem ersten Tool einen Farbwähler für den Desktop und jede Farbe wird dort auch hexadezimal angezeigt. Außerdem verfügt das Tool über eine Pipette, mit der sich jede Farbe vom Desktop oder aus Bildern aufnehmen lässt! Mit Agave lassen sich ganz komfortabel Farbkombinationen erstellen.
Zu den Farbangaben
Zuerst zu den in grüner Farbe dargestellten Angaben fg, bg, base und text. Diese beziehen sich auf:
- die Vordergrundfarbe (foreground) der Buttonbeschriftung, bei manchen Engines auch für den Buttonrahmen,
- den Hintergrund (background) der Fenster und Buttons,
- den Hintergrund (base) für Texteingabefelder und Listenansichten,
- die Textfarbe (text) für Texteingabefelder und Listenelemente.
Durch die Angaben in eckigen Klammern kann dem aktuellen Zustand des jeweiligen Elements eine andere Farbe zugewiesen werden:
- NORMAL → normaler Zustand
- PRELIGHT → Zustand, wenn man mit der Maus über ein Element fährt, also der Mausover-Effekt
- ACTIVE → zeigt den Zustand eines aktiven Elements, dass z.B. mit der Maus angeklickt wurde
- INSENSITIVE → Zustand für inaktive Elemente, die im Moment nicht anwähl‑ oder veränderbar sind.
- SELECTED → Zustand von bspw. selektiertem Text oder selektierten Listeneinträgen
Somit ergeben sich 20 Farben, die allgemeingültig vorgegeben werden können. Aber es lassen sich natürlich auch für einzelne Elemente andere Farben zuweisen, dazu kommen wir im nächsten Teil. Schön wäre natürlich ein entsprechendes Tool, mit welchem man die Farben im Zusammenhang betrachten kann. Einzig zu gebrauchen ist momentan The Widget Factory, dieses Programm habe ich schon im ersten Teil vorgestellt. Hier hat man schnell eine Vorschau, ohne erst das verwendete Theme ändern zu müssen.
Noch ein Wort zu den beiden Einstellungen in Zeile 16 und 17 des Screenshots, xthickness und ythickness. Diese Angaben geben den horizontalen (ⅹ) bzw. vertikalen (y) Abstand zum Rahmen des Elementes an. Bspw. den Abstand des Buttontextes zum Buttonrand oder den Abstand des Textes zum Rand innerhalb einer Texteingabebox. Einfach mal mit verschiedenen Werten experimentieren. Analog zu HTML bzw. CSS entspricht das dem Attribut padding…
Das war der 2. Teil zum Thema GTK-Themes, im nächsten Teil gehen wir dann genauer auf die einzelnen Elemente innerhalb der gtkrc ein. Bis dahin kann man ja mit der Murrine-Engine ein wenig herumspielen. Dem einen reichen vielleicht die Einstellmöglichkeiten – wer mehr möchte, bekommt mit der vorgestellten Methode schon ein wenig mehr „Feeling“ für den Umgang mit GTK-Themedateien und wird vielleicht zu eigenen Versuchen angespornt. Viel falsch machen kann man nicht. Sollten falsche Angaben die Darstellung verhindern, schaltet Gnome automatisch auf das Default-Theme um. Das sieht zwar ätzend aus, aber dann weiß man, dass da was schief gelaufen ist.
Viel Spaß!
PS: Wie im ersten Teil schon erwähnt, taste ich mich selbst Schritt für Schritt an dieses Thema heran und teile hier meine Erkenntnisse mit. Ist mir ein Fehler unterlaufen oder habe ich etwas vergessen? Dann hinterlasst doch bitte einen Kommentar, vielen Dank für Deine Hilfe!