Neues Design für das Terminal mit Bashish

Aus LinuxUser 09/2006

Neues Design für das Terminal mit Bashish

Farbenspiel

Terminalfenster glänzen durch ein komplett nüchternes Erscheinungsbild. Mit der Erweiterung Bashish verleihen Sie der Kommandozeile etwas Pepp.

Wer die Kommandozeile regelmäßig nutzt, der schätzt das schlichte Aussehen. Ein Prompt, der nur die wichtigsten Informationen enthält, stört nicht die Ausgabe von Programmen. Für alle, die die Shell nur selten einsetzen oder mit einem etwas verspielterem Design klarkommen, eröffnet die Software Bashish [1] ungeahnt Möglichkeiten: Das Programm versieht Terminals mit einem Hintergrundbild aus ASCII-Grafiken und hilft dabei hilft, den Prompt an die eigenen Wünsche anzupassen.

Als Grundlage für die Modifikationen am Aussehen, dient die Software Dialog [2]. Bashish funktioniert im Zusammenspiel mit den Terminalprogrammen Gnome-Terminal, Xterm, Rxvt, Rxvt-Unicode [4], Aterm, Mlterm und Linux Console. Bei der KDE-Terminalemulation Konsole ändert Bashish bisher nur den Titel. Hier planen der Entwickler Thomas Eriksson für die Zukunft aber zusätzliche Features. Als Shell empfiehlt er die Bash, das Programm unterstützt aber auch andere Shells wie Zsh und Tcsh.

Wenn möglich, sollte das verwendete Terminal Unicode als Zeichensatz unterstützen. Viele der mitgelieferten Themes enthalten nämlich Zeichen, wie etwa Linien oder Spielkartensymbole, die in den normalen europäischen Zeichensätzen der Codepages 8859-1 oder 8859-15 nicht enthalten sind.

Eine korrekte Installation von Bashish setzt aktueller Software voraus: Die Bourne Again Shell (Bash) sollte in einer Version ab 2.04 vorliegen; gleiches gilt für das Terminal. Mit dem Mandriva 2006 beiliegenden Rxvt ließ sich Bashish nicht verwenden. Bei fast jedem Theme stürzte das Terminalprogramm kommentarlos ab. Die bei Ubuntu 6.06 beiliegenden Versionen funktionierten hingegen klaglos, auch das bei Suse 10.1 mitgelieferte Rxvt lief mit Bashish. Mit der im Web [3] vorhandenen Variante von Rxvt-Unicode gab es unter Mandriva ebenfalls keine Probleme.

Installation

Bashish selbst ist nach dem Entpacken des Quelltextarchivs bashish-2.0.5.1.tar.gz mit dem üblichen Dreisatz ./configure, make und make install schnell installiert. Nach dem Setup geben Sie in einem Terminalprogramm den Befehl bashish ein. Das Programm fragt Sie jetzt, welche Shell Sie benutzen und konfiguriert die Shell so, dass diese Bashish beim Start automatisch mitlädt.

Jetzt starten Sie mit dem Befehl exec bash eine neue Shell, damit Bash die Änderungen übernimmt. Sie sehen jetzt die Standardeinstellungen von Bashish: hellgraue Schrift auf schwarzem Hintergrund. Um Bashish wieder zu entfernen, starten Sie das Programm mit dem Parameter --uninstall.

Farbenspiel

Bashish fasst die Verschönerungen der Shell unter dem Begriff Theme zusammen. Ein solches Thema enthält die Daten für die Hintergrundgrafik und den Prompt. Um die Shell mit einem Theme auszustatten, starten Sie das Programm Bashishtheme. Im ersten Dialog fragt die Software Sie, ob Sie den Prompt generell für die Shell oder nur für ein bestimmtes Programm verändern möchten.

Stellen Sie lediglich ein neues Outfit für die Shell ein, wählen Sie im Menü den Eintrag prompt theme at the command prompt aus. Eine Liste erscheint, in der Sie das gewünschte Aussehen festlegen. Habe Sie sich für ein Design entschieden und eventuell noch die Hintergrundfarbe verändert, verlassen Sie das Konfigurationsprogramm. Anschließend erstrahlt das Terminal in neuem Glanz (Abbildung 1).

Abbildung 1: Die Terminalemulation Rxvt-Unicode mit dem Theme Urbandawn.

Abbildung 1: Die Terminalemulation Rxvt-Unicode mit dem Theme Urbandawn.

Es lohnt sich, ein wenig mit den mitgelieferten Hintergründen zu experimentieren. Für Nostalgiker lohnt sich vor allem ein Blick auf die Prompts mit dem Präfix computer/. Mit diesen modulieren Sie die Eingabeaufforderung dergestalt, dass das Aussehen einem DOS-Prompt gleicht. Das geht sogar soweit, dass Bashish die Schrägstriche in Pfaden in Backslashes umwandelt (Abbildung 2).

Abbildung 2: Ein Rxvt-Terminal im Gewand des guten alten DOS-Betriebssystems.

Abbildung 2: Ein Rxvt-Terminal im Gewand des guten alten DOS-Betriebssystems.

Stören Sie die bunten Einsprengsel, die Bashish zwischen den Prompt und die normalen Programmausgaben streut, dann seien Sie doch einfach wählerischer: Weisen Sie die Themes gezielt einzelnen Anwendungen zu. Dazu nutzen Sie im Hauptmenü von Bashishtheme den Menüpunkt application theme selected application. Darüber gelangen in einen Dialog, in dem Sie den Namen des gewünschten Programms eingeben und anschließend eines der angebotenen Themes auswählen. Bashish legt jetzt ein Launcher genanntes Skript mit dem Namen des Programms im Suchpfad ab.

Der Launcher versorgt nach dem Programmaufruf zunächst die Shell mit dem gewünschten Theme und startet im Anschluss die eigentliche Software. Nach Ende des Programms setzt das Launcher-Skript das Theme wieder auf den vorherigen Zustand zurück. Das Launcher-Skript behindert nicht das Übergeben von Parametern an die aufzurufende Software.

Bashish speichert die Launcher-Skripts im Verzeichnis ./bashish/launcher im Home-Verzeichnis des Anwenders. Die Themes für bestimmte Anwendungen finden Sie unter ./basish/bt/app. Hier legt Bashish ein Verzeichnis mit dem Namen des jeweiligen Programms an.

Weder das Theming noch die Prompts funktionieren allerdings besonders sicher. Bei einigen Prompts erscheint die Ausgabe selbst einfacher Befehle wie less oder ps nicht mehr auf dem Bildschirm. Das in Abbildung 1 gezeigte Theme Urbandawn verhindert ab und zu die Ausgabe von Daten auf dem Terminal. Hin und wieder kommt es auch vor, dass Bashish die Größe des Terminalfensters falsch berechnet. In solchen Fällen sehen Sie dann nur einen Teil der Programmausgabe.

Programme wie Playmp3list wollten gar unter keinem anderen Theme als dem Standardtheme von Bashish starten. Bei jedem anderen stürzte das Programm mit einem Segfault ab. Auch der Textmodusbrowser Elinks zeigte sich unwillig und ließ sich bei aktivierten Themes zuweilen nicht starten.

Themes selbst gebaut

Die Theme-Daten liegen bei einer Standardinstallation aus den Quellen in den Dateien unterhalb des Verzeichnisses /usr/local/share/bashish/themes. Je ein TGZ-Archiv mit dem Suffix bt enthält die binäre Teile, die in dieser Form nicht zu bearbeiten sind. Möchten Sie ein Theme anpassen, aktivieren Sie es mit Hilfe von Bashishtheme. Anschließend finden Sie die zum Theme gehörenden Teile im Verzeichnis ~/.bashish/bt/cache/. Dort liegen eine Reihe von Textdateien, die Sie zuerst in ein neues Verzeichnis kopieren und anschließend zum Ändern in einen Unicode-fähigen Editor laden.

Die Datei Theme enthält Angaben zum Autor und verwendeten Farben, in Prompt.bash finden Sie die Definition des Promptes, einschließlich der Grafiken, die Bashish bei der Anzeige ausgibt. Im Internet [4] finden Sie ein Dokument, das die verwendeten Befehle erläutert. Diese Hilfe ist noch lückenhaft und unstrukturiert, sodass Sie um einiges Ausprobieren nicht herumkommen. Am einfachsten tun Sie sich, wenn Sie daher ein existierendes Theme als Grundlage für eigene Experimente verwenden.

Haben Sie Veränderungen vorgenommen, wechseln Sie in das Verzeichnis, das die Theme-Dateien enthält und geben bashishtheme save ein. Haben Sie ein neues Theme erstellt, fragt Bashish Sie nach einem Speicherort für das neue Theme.

Fazit

Bashish bringt ein wenig Farbe und Abwechslung in den grauen Terminalalltag. Allerdings läuft das Programm noch lange nicht fehlerfrei, einige Themes verhindern die Ausgabe von Daten auf dem Terminal, andere Programme stürzen beim Einsatz von Bashish schlicht ab. Die Programmdokumentation wirkt zudem wenig sortiert, sodass das Erstellen eigener Themes zu einem größeren Experiment ausartet.

Glossar

Segfault

Kurzform für Segmentation fault. Es handelt sich dabei um einen unberechtigten Zugriffsversuch auf Daten im Hauptspeicher, der in einigen Fällen zum Absturz des Programms führt

LinuxUser 09/2006 KAUFEN
EINZELNE AUSGABE
ABONNEMENTS
TABLET & SMARTPHONE APPS
E-Mail Benachrichtigung
Benachrichtige mich zu:

Hinweis: Dieser Artikel ist älter als ein Jahr, enthaltene Informationen sind möglicherweise veraltet.

0 Kommentare
Älteste
Neuste Beste Bewertung
Inline Feedbacks
Alle Kommentare anzeigen
Nach oben