Präsentationen auf der Kommandozeile

Aus LinuxUser 11/2004

Präsentationen auf der Kommandozeile

Textvortrag

Wenn’s für fast jede Anwendung eine Möglichkeit gibt, alternativ auf grafische oder textbasierter Software zurück zu greifen – warum sollte das bei Vorträgen und Präsentationen anders sein?

Macht Powerpoint dumm? Wer allzu freudig in die Debatte einstimmt, die der emeritierte Yale-Professor Edward Tufte anzettelte [1], darf sich nicht wundern, wenn das Publikum mit KPresenter oder OpenOffice Impress gehaltene Vorträge in Sippenhaft nimmt. Was also tun? Zurück zur guten alten Overhead-Folie und sich so als ewig gestrig outen? Das muss nicht sein, meinten Andreas Krennmair und Nico Golde und schrieben mit dem “Text-Präsentationsprogramm” TPP [2] das ultimative Präsentationswerkzeug für Kommandozeilen-Freaks.

Nach der Installation (Kasten 1) in einer virtuellen Konsole oder einem X-Terminal mit dem Befehl tpp praesentationsdatei gestartet, beweist es vor allem eins: Um Argumentationspunkte von links, rechts, oben oder unten auf der Folie einschweben zu lassen, braucht es keinerlei Grafik. Der Überraschungseffekt allein dürfte beim Publikum für Aufmerksamkeit sorgen.

Kasten 1: Installation

TPP ist in der Skriptsprache Ruby geschrieben und setzt außer dem Paket ruby-1.8 die Bibliothek ncurses-ruby[3] voraus. Um das Paket ncurses-ruby-0.9.1.tar.bz2 von der Heft-CD erfolgreich zu installieren, fehlen dem Ruby-Paket mancher Distributionen, darunter Debian, einige Dateien: Hier benötigt man zusätzlich das Archiv libruby, andere Distributoren nennen es ruby-lib. Manchmal muss zudem ein zusätzliches dev(el)-Paket eingespielt werden.

Ob das bei Ihnen der Fall ist, merken Sie an einer Fehlermeldung, die nach dem Auspacken des ncurses-ruby-Archivs mit tar -xjvf und dem anschließenden Aufruf von

ruby extconf.rb

im Verzeichnis ncurses-ruby-0.9.1 das Fehlen der Datei mkmf.rb bemängelt. Ging in diesem Schritt hingegen alles glatt, sorgen make und make install, letzteres mit root-Rechten, dafür, dass das neue Ruby-Modul unterhalb von /usr /local/lib/site_ruby/1.8/ zu liegen kommt.

Erst wenn ncurses-ruby installiert ist, entpacken Sie das Archiv tpp-1.0.tar.gz mit tar -xzvf. Dann geben Sie im Verzeichnis tpp-1.0 als root den Befehl make install ein. Anschließend steht das Präsentationsprogramm als /usr/local/bin/tpp zur Verfügung. Enthält der Suchpfad das Verzeichnis /usr/local/bin, reicht zum Start des Vortrags der Befehl tpp praesentationsdatei.

Benutzer von Debian Sarge oder Unstable brauchen nicht zum Compiler greifen, ihnen reicht die Eingabe von apt-get install tpp.

Am Anfang steht die Textdatei

Wie bei anderen Präsentationsprogrammen macht auch hier die Vorbereitung des Vortrags die Hauptarbeit aus. Dazu benötigt man bei TPP lediglich einen Texteditor. Wer den Editor Vim verwendet, kommt sogar in den Genuss von Syntax-Highlighting (Kasten 2).

Kasten 2: Vim-Syntax-Highlighting für TPP

Für Vim, eine fast allen Distributionen beiliegende moderne Inkarnation des klassischen Unix-Editors Vi, gibt es auf der Heft-CD eine TPP-Syntaxdatei von [5]. Sie sorgt dafür, dass sich TPP-Befehle vom Folientext farblich abheben, und erleichtert so das Erstellen der Präsentation.

Um sie Vim zugänglich zu machen, erstellt man – so noch nicht vorhanden – im Home-Verzeichnis einen Ordner namens .vim/syntax:

mkdir -p ~/.vim/syntax

Darin legt man die Syntaxdatei tpp.vim ab. Damit vim alle auf die Dateinamensendung .tpp hörenden Textdateien automatisch als TPP-Dateien erkennt, erzeugt man zudem eine Datei namens ~/.vim/filetype.vim folgenden Inhalts:

if exists("did_load_filetypes")
    finish
endif
augroup filetypedetect
    au! BufRead,BufNewFile *.tpp  setfiletype tpp
augroup END

Existiert sie bereits, fügt man die vorletzte Zeile an der passenden Stelle ein. In einem neugestarteten Vim reicht es jetzt, das Syntax-Highlighting für die geladene .tpp-Datei durch Wechsel in den Kommandomodus mit [Esc] und Eingabe des Vim-Befehls :syn on zu aktivieren.

Zur Formatierung stehen zwei Arten von Befehlen zur Verfügung: Solche, die sich auf den ihnen folgenden Text bis zum Ende der Zeile auswirken, und Umgebungen, die sich auf alles beziehen, was zwischen einem Anschalt- und einem Ausschaltbefehl steht. Alle “TPP-Kommandos” beginnen mit zwei Minuszeichen am Zeilenanfang; Zeichenformatierungen innerhalb einer Zeile (etwa die Fettung eines einzelnen Worts) sind daher nicht möglich.

Listing 1

Beispiel-Präsentation

--withborder
--fgcolor blue
--bgcolor white
--title Linux-Begriffe-Quiz
--author Patricia Jung
--date 10. September 2004
—
--revon
--beginshelloutput
$ /etc/init.d/quiz auswertung
--endshelloutput
--revoff
--newpage Die richtigen Antworten
--heading Die richtigen Antworten
--center Für jede richtige Quizantwort gibt es einen Punkt
--newpage Betriebssystem
--color green
--heading 1. Was davon gehört zu einem Betriebssystem?
--color black
—
--beginslideleft
d) Ein Dateisystem
--endslideleft

Jede TPP-Präsentation muss eine Präambel enthalten, die die Vorder- und Hintergrundfarbe (--fgcolor und --bgcolor) für alle Folien festlegt. Entscheidender ist jedoch, dass die – nur darin zugänglichen – Befehle --title, --author und --date eine Titelseite gestalten, die das Thema, den oder die Vortragende sowie das Datum verrät.

--date today

fügt selbstständig das aktuelle Datum am Präsentationstag ein, allerdings in der anglo-amerikanischen Reihenfolge Monat-Tag-Jahr und immer in der Form “Sep 30 2004”. Diese Unzulänglichkeit versprechen die Entwickler, in der nächsten Version zu beheben. In Zukunft soll sich das Datumsformat mit Platzhaltern ähnlich wie beim Kommando date festlegen lassen: %d.%m.%Y bringt dann voraussichtlich das jeweils aktuelle Datum in die Form “30.09.2004”.

Wie Listing 1 und Abbildung 1 zeigen, darf die so gestaltete Anfangsseite um zusätzliche Informationen ergänzt werden. Unter Ausnahme der “Einflugeffekte” sind darin auch Formatierungen erlaubt, wie sie im Rest der Präsentation vorkommen. TPP generiert übrigens immer eine Titelseite, auch dann, wenn man die genannten fünf, nur in der Präambel erlaubten Befehle nicht nutzt.

Abbildung 1: Der "--withborder"-Befehl umrahmt die Titelseite aus Listing 1. Er lässt sich auch auf die übrigen Folien anwenden.

Abbildung 1: Der “–withborder”-Befehl umrahmt die Titelseite aus Listing 1. Er lässt sich auch auf die übrigen Folien anwenden.

Eine neue Folie leitet der Befehl --newpage ein. Gibt man ihm wie in Listing 1 ein Stichwort mit auf den Weg, zeigt TPP die ersten 11 Zeichen davon während der Präsentation in einer Übersichtsseite an, in die man mit [j] gelangt (Abbildung 2). Durch Angabe der laufenden Nummer, gefolgt von [Enter], springt man von hier aus direkt zu einer bestimmten Folie.

Abbildung 2: Auf der Übersichtsseite kennzeichnet TPP die aktive Folie (hier: 25) mit einem stilisierten Pfeil.

Abbildung 2: Auf der Übersichtsseite kennzeichnet TPP die aktive Folie (hier: 25) mit einem stilisierten Pfeil.

Überschriften innerhalb einer “Seite” leitet der Befehl --heading ein. Da TPP Text von sich aus nicht sinnvoll umbricht, muss man überlange Titel von Hand auf mehrere, mit --heading eingeleitete Zeilen verteilen.

Farbspiele

Anders als die Hintergrundfarbe lässt sich die Schriftfarbe im Laufe der Präsentation mit dem Befehl --color ändern (Listing 1/Abbildung 3). Wie die beiden Farbkommandos in der Präambel kennt er acht Argumente: white (weiß), yellow (ockergelb) , red (rot), green (grün), blue (dunkelblau), cyan (hellblau), magenta (rosa) und black (schwarz).

Leider gibt es keinen Befehl, der die Schriftfarbe anschließend wieder auf den --fgcolor-Standardwert zurückstellt; hier hilft nur ein erneutes --color-Kommando. Dies empfiehlt sich grundsätzlich am Beginn jeder neuen Folie: Fehlt dort der --color-Befehl, färbt sich die Folie beim Springen mit [j] in der Vordergrundfarbe ein, die auf der zuletzt besuchten Seite aktuell war.

Zum Hervorheben von Text gibt es des Weiteren die Umgebungen --boldon/--boldoff zum Fetten, --revon/revoff zum Tauschen von Vorder- und Hintergrundfarbe (Listing 1/Abbildung 1) und --ulon/--uloff zum Unterstreichen. Letzteres funktioniert leider nur in manchen Terminals, speziell in der Linux-Konsole oft nicht.

Eher eine Spielerei bietet der Befehl --huge, der den darauf folgenden Text bis zum Zeilenende in einem riesigen Outline-Font als – schlecht lesbare – ASCII-Grafik darstellt. Damit das funktioniert, muss allerdings das Programm figlet[4] installiert sein.

Zum Absetzen von Listings vom restlichen Text dienen die beiden Umgebungen --beginoutput/--endoutput und --beginshelloutput/--endshelloutput (Listing 1/Abbildung 1). Der Unterschied: Letztere interpretiert Zeilen, die mit einem $ beginnen, als Kommandozeilenbefehle und “tippt” diese vor den Augen des Publikums ein, statt sie sofort anzuzeigen.

Mit --exec kommando lassen sich zwar auch Shell-Befehle in Echtzeit ausführen, aber leider stellt TPP deren Ausgabe oft nicht präsentationsreif dar. Der Befehl eignet sich daher eher zur Demonstration externer Programme mit eigener Oberfläche, etwa des Filemanagers mc oder des textbasierten Webbrowsers links.

Solche Programme lassen sich übrigens zu jedem Zeitpunkt im Laufe der Präsentation aufrufen: Ein Druck auf die [c]-Taste fordert eine “Kommandozeile” an, die Linux-Befehle entgegen nimmt (Abbildung 3).

Abbildung 3: Gibt man auf der TPP-Kommandozeile "mc" ein, übernimmt dieser Dateimanager die Kontrolle über das Präsentationsterminal. Beendet man ihn, geht die Präsentation weiter.

Abbildung 3: Gibt man auf der TPP-Kommandozeile “mc” ein, übernimmt dieser Dateimanager die Kontrolle über das Präsentationsterminal. Beendet man ihn, geht die Präsentation weiter.

Möchte man den nächsten Punkt auf einer Folie nicht sofort, sondern erst auf (Leer-)Tastendruck “an die Wand werfen”, fügt man an der entsprechenden Stelle den TPP-Befehl --- ein (Listing 1). Hat man die vollständige Folie vor dem Publikum entfaltet, erscheint vor der Seitenangabe am linken unteren Rand ein kleines Sternchen (Abbildung 1). Dann führt der Druck auf die Leertaste zur nächsten Folie; [b] geht zur vorherigen Seite zurück und [q] beendet den Vortrag.

Richtungsweisend

Fehlen noch die Befehle zum Ausrichten von Text: --center zentriert den Text bis zum Ende der Zeile, --right und --left positionieren ihn rechts- bzw. linksbündig. Mit Richtungsangaben hantieren auch die vier Umgebungen, die Text von oben, unten, links bzw. rechts “einfliegen” lassen und damit wohl für den spektakulärsten Effekt sorgen: --beginslidetop/--endslidetop, --beginslidebottom/--endslidebottom, --beginslideleft/--endslideleft (Listing 1) und --beginslideright/--endslideright.

Während sich TPP in der Kategorie “Spezialeffekte” nicht verstecken muss, sieht es etwas mager aus, was die Möglichkeit betrifft, papierne Handouts zu einer Präsentation zu erstellen. Zwar kennt der tpp-Befehl die Option -l, die aus der am Ende der Befehlszeile angegebenen TPP-Datei ein LaTeX-Dokument macht:

tpp -l handout.tex prasentation.tpp

Doch leider ist der Export noch mit so vielen Fehlern behaftet, dass wohl nur TeX-Enthusiasten das Ergebnis so korrigieren, dass es den LaTeX-Durchlauf latex handout.tex fehlerfrei übersteht und dabei ansehnlich bleibt. Wer mit TeX nicht vertraut ist, dürfte ohnehin vor dem Problem stehen, die nötigen LaTeX-Stile, darunter das TexPower-Paket [6], nachzuinstallieren, denn dazu liefert TPP keine Dokumentation.

Ganz anders sieht es bei der Anleitung zu TPP selbst aus: Die Manpage erklärt alle vorhandenen Tastenkommandos; die standardmäßig ins Verzeichnis /usr/local/share/doc/tpp/ kopierte README-Datei listet zudem sorgsam alle Formatierungsbefehle auf, und das Verzeichnis examples im selben Ordner bietet genügend Anschauungsmaterial in Form von Beispielen. Wenn alle Stricke reißen, sorgt die neu eingerichtete Mailingliste [7] für Kontakt zu den Entwicklern und anderen TPP-Usern.

Glossar

X-Terminal

Unter Terminal versteht man ursprünglich eine Hardware-Kombination, über die Nutzer mit einem Rechner kommunizieren, etwa Bildschirm und Tastatur. Im übertragenen Sinn bezeichnet man auch die über [Alt] und Funktionstaste zugänglichen virtuellen Konsolen als Terminals und Programme, die auf der grafischen Oberfläche, dem X-Window-System, eine Kommandozeilenschnittstelle bieten, als X-Terminals.

Syntax-Highlighting

Meist farbliches Hervorheben von Formatierungsangaben oder von Syntax-Elementen einer Programmiersprache. Somit wird Quellcode oder anderweitig ausgezeichneter Text leichter überschaubar.

Outline-Font

Ein Schriftschnitt, der nur die Umrisse der Buchstaben zeichnet.

LinuxUser 11/2004 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