Schwebende Elemente
LyX-Workshop, Teil 3
Textklassen
Im letzten Abschnitt dieses Workshops betrachten wir den Aufbau der Textklassen. Sicher haben Sie schon bemerkt, dass sich in den LyX-Dateien Muster zur konkreten Struktur eines Dokumentes befinden.
Sie werden allerdings keinen Hinweis darin entdecken, was einen Artikel zu einem Artikel und einen Brief zu einem Brief macht. Durch Einträge wie \layout Standard wendet der Editor zwar verschiedene Absatztypen an, definiert sie jedoch nicht. Diese Aufgaben übernehmen Layout-Dateien.
Sie finden einen Dialog, mit dem Sie die Grundeinstellungen der Klassen verändern können, unter Layout/Dokument in der Menüleiste. In der Karteikarte Dokument liegt das Listenfenster Klasse. Dort suchen Sie die gewünschte Textklasse für Ihr Schriftstück heraus. Die Grundlage für diese Liste liefern die Dateien im Verzeichnis /usr/local/share/lyx/layouts/ oder /usr/share/lyx/layouts/.
Allen Konfigurationsdateien dieses Ordners ist die Endung .layout gemeinsam. Wie Sie sehen werden, ist an dieser Stelle die Verzahnung zwischen dem Textsatzsystem LaTeX und dem Frontend LyX sehr deutlich.
Um sich gefahrlos den Aufbau der Textklassen zu verinnerlichen, kopieren Sie die Datei g-brief-de.layout vom systemweiten in Ihr lokales Konfigurationsverzeichnis.
cp /usr/share/lyx/layouts/g-brief-de.layout ~/.lyx/layouts/
Öffnen Sie nun die Datei in Ihrem Lieblings-Editor. Die Abkürzung g-brief-de meint Geschäftsbrief-Deeutsch. Lassen Sie sich von den vielfältigen Konfigurationsvariablen nicht Bange machen, der Aufbau der Datei ist recht einfach zu durchschauen. Als Erstes stoßen sie auf zwei Zeilen hinter dem Kommentarzeichen #:
#% Do not delete the line below; configure depends on this
# \DeclareLaTeXClass[g-brief]{letter (g-brief, german)}Die Declare-Zeile wird von einem Skript eingelesen, das zum LaTeX-Paket gehört. Durch diese Angabe ist die Textklasse letter deklariert. Den Text zwischen den geschweiften Klammern lesen Sie auch in der Klassenliste des Menüs Layout/Dokument/dokument.
Diese Textklasse nutzt die LaTeX-Dokumentenklasse g-brief. Die Dokumentenklassen tragen als Dateien die Endung .sty (engl. Style) oder .cls (engl. Class). Sie legen die Gliederung fest und geben Vorlagen für den Textsatz. Wenn Sie einen Geschäftsbrief als pure LaTeX-Datei erstellen würden, bräuchten Sie folgenden Befehl als Einleitungszeile:
\documentclass[option]{g-brief}Nur so weiß das Satzsystem, dass Ihre Datei das Format eines professionellen Briefes bekommen soll. Und nichts anders sagt die Declare-Zeile des Frontends. Das Wissen um die LaTeX-Dokumentenklassen ist übrigens unverzichtbar, wenn Sie sich vornehmen, eigene Textklassen zu erfinden. Sollte Ihr Interesse an den Class- und Style-Dateien des Geschäftsbriefes geweckt sein, bringt Sie der Befehl locate g-brief auf den richtigen Pfad.
Doch schauen wir weiter nach grundlegenden Einstellungen in der Layout-Datei. Unter dem Header der Datei sehen Sie eine auskommentierte Input-Anweisung. Es ist nicht schwer zu erraten, dass der Eintrag
# Input stdletter.inc
die Datei stdletter.inc einbindet. In stdletter.inc ist das Standardlayout vieler Textklassen festgeschrieben.
Einen Abschnitt darunter liegen die Voreinstellungen zur Spaltigkeit des Dokumentes (Columns) und dem doppel- oder einseitigen Druck (Sides). Auch der Stil der Standardseite (PageStyle) und des Standardabsatzes (DefaultStyle) sind hier zu finden.
Die Beschreibung des Standard-Zeichensatzes steht zwischen der Einleitung DefaultFont und dem Abschluss EndFont. Diese Sektion beherbergt die Schriftfamilie (Family), die Zeichenformatierung (Serie, die Gestalt der Schrift (Shape) und die Farbe (Color). Die Bandbreite der einzelnen Variablen können Sie im Hilfstext Anpassung, Kapitel 6.3.4 erfragen.
Der Rest der Datei besteht hauptsächlich aus Definitionen einzelner Absatztypen wie Anlagen, Betreff oder Verteiler. Zwei Stil-Parameter gliedern einen Layout-Block und geben ihm einen Namen:
Style Absatztyp [Inhalt] End
Was bewirken die Zeilen im Inneren des Blocks für den genannten Absatztyp? Als erstes wäre die Variable Margin zu nennen. Sie bestimmt den linken Rand des Textes. LatexType sagt, wie LaTeX die Textgestalt übernimmt. LatexName legt fest, welchen Namen das Textsatzsystem für das Layout annimmt.
LeftMargin, wie sollte es anders sein, definiert den linken Rand des Dokumentes. Der Eintrag Align beschreibt die generelle Ausrichtung des Textes, während AlignPossible die möglichen Textausrichtungen angibt.
Label-Variablen beziehen sich immer auf den Schriftzug, der im Editor erscheint, wenn Sie einen neuen Absatztyp in Ihr Dokument eingeben. So nimmt der Editor aus LabelString den Inhalt dieses Schriftzugs und aus LabelSep den Abstand zum Text. Das Schriftbild des Labels samt Farbe wird in dem Bereich zwischen LabelFont und EndFont notiert.
Am Ende der Datei stoßen Sie auf zwei NoStyle-Zeilen, die mit einem Kommentarzeichen geschützt sind. NoStyle arbeitet wie eine Löschtaste, mit der Sie ein bereits konfigurertes Layout überspielen, ohne es von Hand aus der Datei zu entfernen.
Nun steht eigenen Experimenten mit Textklassen nichts mehr im Weg. Geben Sie Ihrer Datei ~/.lyx/layouts/g-brief-de.layout einen neuen, einprägsamen Namen wie mein-gbrief-de.layout. Dann nehmen Sie sich die Declare-Zeile vor und passen sie an:
\DeclareLaTeXClass[g-brief]{letter (g-brief, angepasst)}Nach dem Aktualisieren der Konfiguration über Bearbeiten/Neu Konfigurieren und einem Neustart des Editors ist das Programm bereit. In der Klassenliste des Menüs Layout/Dokument ist ein Punkt hinzugekommen: Die Dokumentenklasse letter (g-brief, angepasst).
Jetzt können Sie nach Herzenslust basteln, umschreiben und das ganze Layout auf den Kopf stellen. Vielleicht gelingt es Ihnen sogar, Autor eines nützlichen neuen Layouts zu werden und damit die Entwickler von LyX zu überraschen.



