MultiLaTeX2e

Viele treue ATARIaner und Neu-ATARIaner sorgen dafür, dass die ATARI-Plattform auch in Zukunft attraktiv ist. Nun, die Akzeptanz einer Plattform steht und fällt mit der verfügbaren Software. TeX ist an vielen Universitäten Standard. Leider gab es bisher nur LaTeX 2.09 als Bestandteil von MultiTeX 5.4. Es ist zwar optimal an MagiC 5 und MagiC Mac/PC angepaßt, ganz zeitgemäß ist es aber nicht mehr. Stand der Dinge ist LaTeX2e. Im Juni 1994 kam LaTeX2e auf den Markt und ist seitdem zur LaTeX-Standardversion erklärt worden. Die bis dahin verfügbare LaTeX-Version ist seither als LaTeX 2.09 bekannt. Bezüglich seiner Systemgliederung ist LaTeX2e seinem Vorgänger bereits aus formaler Sicht überlegen. Die verschiedenen Systemkomponenten wie Klassenoptionsfiles, Klassenfiles und sonstige Ergänzungspakete werden hier durch die Extensions *.clo, *.cls, bzw. *.sty gekennzeichnet. In der alten LaTeX 2.09 Version gab es jedoch nur die einheitliche Extension *.sty für alle Arten von Files. Zwischen dem LaTeX2e-Kern, den Klassenfiles und den Ergänzungspaketen haben sich die Wechselbeziehungen deutlich vereinfacht .durch die Einführung sogenannter Interface-Befehle.

Interfacebefehle In LaTeX2e

Mittels Interfacebefehlen erhält man Zugang zum LaTeX2e-Kern, indem man durch diese bei ihrer Ausführung auf im LaTeX-Kern verborgene Befehle zurückgreift. Für den User ist die Nutzung dieser verborgenen LaTeX-Befehle nicht zwingend erforderlich. Es steht ihm aber frei, diese durch die Interfacebefehle zu nutzen. Für die Flexibilität des LaTeX2e-Konzeptes spricht auch, dass man LaTeX2e-Interfacebefehle auch aus der Anwenderebene ansprechen kann, denn ihre Namen sind leicht zu merken. Typisch für diese neuen Interfacebefehle sind gemischte Groß- und Kleinschreibung. Wir kommen nun zu einem konkreten Beispiel. Gelegentlich ist es sinnvoll, bestimmte Teile eines Eingabetextes in Groß- oder Kleinschreibung umzuwandeln. In LaTeX 2.09 würde ein Beispiel wie folgt aussehen:
\uppercase{ATARI} ergibt ATARI. Problematisch wird es aber in LaTeX 2.09, wenn man Sonderzeichen umwandeln möchte. Mit dem Befehl
\uppercase{aBcD\ae\ss} erreichen wir lediglich folgendes: ABCDæß
Das Problem lässt sich in LaTeX2e mit Interfacebefehlen beheben, z. B.
\MakeUpperCase{WelcoMeToLæso}
ergibt WELCOMETOL&AeligSO.

LaTeX2e in der Praxis

Der einzige Schönheitsfehler der LaTeX2e-Shell ist, dass prinzipiell *.tex-Files erwartet wird. Zur Installation von LaTeX2e wurden *.ins und *.dtx-Files benötigt. Handbücher zu LaTeX2e liegen im *.TEX-Format vor. Aus diesen lässt sich ein passendes !DVI generieren, welches man dann in DVI VIEW betrachten kann. Wie man an den Snapshots sehen kann, lassen sich alle LaTeX2e-Ergänzungspakete problemlos installieren.

Der LaTeX 2.09-Kompatibiltätsmodus

Nun, als treuer und begeisterter LaTeX 2.09 Anwender sind Sie natürlich gewillt, Ihre neuen LaTeX-Texte im 2e Format statt im veralteten 2.09-Format zu layouten, aber alle alten Texte umstellen zu müssen, das würde natürlich keinen Spaß machen, und es wäre sinnlos vergeudete Zeit. Daher bietet LaTeX2e einen sogenannten Kompatibilitätsmodus, der es ermöglicht, alte LaTeX 2.09 Texte im nagelneuen LaTeX2e zu verarbeiten.

Trifft LaTeX2e auf den Eröffnungsbefehl
\documentstyle {bearb klasse} so entnimmt es dieser Information, dass der zu bearbeitende Text im LaTeX 2.09 Kompatibiltätsmodus zu bearbeiten ist. In LaTeX 2.09 war es üblich, diverse Bearbeitungsklassen dadurch zu realisieren, dass sogenannte Hauptstilklassen eingeführt wurden. Charakteristisch war, dass diese den Grundnamen der Bearbeitungsklasse und die Extension .sty trugen. Das neue LaTeX2e sucht daher nach einem File klasse.sty. Nachdem die LaTeX2e Installation durchgelaufen ist, entstehen im ersten Installationsschritt neben den Klassenfiles .cls auch Dateien mit den Namen klasse.sty mit article, book, report, letter und proc anstatt des Wortes klasse. Wir kommen nun zu einem typischen LaTeX2e-File.

\NeedsTeXFormat{LaTeX2e}
\@obsoletfile{klasse.cls}{klasse.sty}
\LoadClass{klasse}
\endinput

Standardklassenfiles unter MultiLaTeX2e für ATARI

Im Folgenden geht es um die Klassenfiles des LaTeX2e. Jedes LaTeX-Eingabefile fordert für seine Bearbeitung ein Klassenfile, das mit dem \documentclass-Befehl festgelegt wird. Hierbei sorgt das Klassenfile für die Bereitstellung der Formatierungsvorgaben der jeweiligen Bearbeitungsklasse. Dazu zählen auch Makrodefinitionen wie z.B. die Gliederungsbefehle \chapter, \section, \subsection, die nur in den Klassenfiles erfolgen und dem eigentlichen LaTeX-Kern unbekannt sind.

Der Vorspann der Standardklassenfiles

Jedes LaTeX2e-File beginnt folgendermaßen:

\NeedsTeXFormat{LaTeX2e}(vers_datum)
\ProvideClass{klassen_name}
[vers-datum vers_nr Standard LaTeX document class]

Der Sinn dieses Vorspannes besteht darin, dass der erste Befehl prüft, ob das zugeladene Formatfile aus LaTeX2e stammt und seine Ausgangsquellen nicht älter als das angegebene vers_datum sind. Der zweite Befehl sorgt dafür, dass sich LaTeX auf dem Bildschirm und im Protokollfile unter Angabe des Klassennamens, des Versionsdatums und der Versionsnummer für dieses Klassenfile identifiziert. Schließlich wird der Texthinweis Standard LaTeX document class. Zu beachten ist, dass der String "Standard LaTeX" den Makropaketen aus dem Original LaTeX2e-Paket vorbehalten ist. Möchten Sie eigene Klassenfiles verwenden, so wandeln Sie den Identifikationstext nach eigenen Wünschen ab. Soweit zur Einführung in MultiLaTeX2e.


Filipe P. Martins
Aus: ST-Computer 10 / 1997, Seite 48

Links

Copyright-Bestimmungen: siehe Über diese Seite