TeX/LaTeX

Das Textsatzsystem TeX/LaTeX

Das Textsatzsystem TeX wurde als τεχ ab Ende der 1970 Jahre von Donald Ervin Knuth entwickelt. Der Mathematiker Knuth erhielt 1968 die Professur für The Art of Computer Programming an der Stanford University. The Art of Computer Programming ist auch der Titel seines 1962 begonnenen und ursprünglich auf sieben Bände angelegten Lebenswerks. Während die ersten drei Teile: Fundamental Algorithms, Seminumerical Algorithms sowie Sorting and Searching zwischen 1968 und 1973 erschienen, sind von Band 4: Combinatorial Algorithms erst Teile, sog. Faszikel, zur Überprüfung veröffentlicht. Die Darstellung der Beispielprogramme erfolgt dabei in einer eigens von Knuth entwickelten Assemblersprache für einen idealen Computer namens MIX (eine überarbeitete Version dieses Computers, die zukünftigen Ausgaben zugrundeliegen soll, heisst Millennium MIXMMIX). Knuth begründet den radikalen Schritt der Benutzung einer eigenen Assemblersprache konsequent sowohl mit technischen als auch pädagogischen Argumenten sowie der Absicht, ein langfristiges Werk zu schaffen, das nicht von der jeweiligen Modeprogrammiersprache beeinflusst sein soll. Für den Druck der Reihe schuf Knuth zwischen 1977 und 1986 das Textsatzprogramm TeX: »Ever since those beginnings in 1977, the TeX research project that I embarked on was driven by two major goals. The first goal was quality: we wanted to produce documents that were not just nice, but actually the best. (…) The second major goal was archival: to create systems that would be independent of changes in printing technology as much as possible. When the next generation of printing devices came along, I wanted to be able to retain the same quality already achieved, instead of having to solve all the problems anew. I wanted to design something that would be still usable in 100 years.«** Donald E. Knuth, Digital typography. Stanford, Calif.: CSLI Publications, 1999, S. 559. Knuth prägte den Begriff des literate programming, dem Schreiben von Computerprogrammen in einer für menschliche Leser geeigneten Form, so dass die Programme einen literischen Text bilden.

Das von Knuth entwickelte TeX-Programm stellt im engeren Sinn lediglich eine Programmiersprache bereit, mit der sich Textsatzsysteme entwickeln lassen. Knuth entwickelte ein erstes mit dem sogenannten plain-TeX-Format,** Zum plain-TeX-Format vgl. den Appendix B von Donald Knuth, The TeXbook (= Reihe Computers and Typesettung, vol. A). Reading, Mass.: Addison Wesley, 7th printing 1986, S. 338 365. weitere wie LaTeX oder Context folgten.

Dass TeX also prinzipiell eine Programmiersprache darstellt, sorgt bei vielen Anwendern gerade anfangs zu einiger Verwirrung. Das typische Arbeiten mit TeX sieht denn etwa so aus: In einem Texteditor eigener Wahl wird ein Text inkl. TeX-Anweisungen geschrieben. Nach dem Abspeichern des Textes wird das TeX-Programm aufgerufen, das zunächst einmal eine Formatdefinition liest (etwa plain TeX oder das unten beschriebene LaTeX-Format), dann den Text »kompiliert«, das heißt den Text setzt und schließlich den gesetzten Text in eine PDF-Datei ausgibt.** Ein modernes TeX erzeugt in der Regel PDF als Ausgabeformat. Knuth' originales TeX setzte auf die Eigenentwicklung DVI (device independant), die sich jedoch außerhalb der TeX-Welt nicht durchsetzen konnte. Die Eingabe von `latex beispiel.tex' würde also das TeX aufrufen, automatisch das LaTeX-Format laden, dann die Datei beispiel.tex übersetzen und schließlich die Datei beispiel.pdf erzeugen.

Parallel zu Knuth' TeX-Entwicklung begann Leslie Lamport Anfang der 1980er seine Arbeit am LaTeX-Format, das auf TeX' Textsatzmaschine und Makrosystem aufsetzte. Die Kenntnis einiger weniger »High-level«-Kommandos sollte ausreichen, um Dokumente verschiedenster Art erstellen zu können.** Zur Geschichte von LaTeX vgl. Frank Mittelbach und Michael Goossens, The LaTeX Companion. Second Edition. Boston: Addison Wesley, 2004, S. 1–6, Ermöglicht wurde dies durch eine (mehr oder weniger konsequente) Trennung von Form und Inhalt: Während an einer Stelle das Aussehen eines Dokuments (oder besser: einer bestimmten Klasse von Dokumenten) festgelegt wird, enthält das eigentliche Dokument neben dem Text nur noch die Anweisungen, mit denen die logische Struktur des Textes festgelegt wird: dies ist eine Überschrift, dies eine Aufzählung, dies eine Hervorhebung.

In der zweiten Auflage von LaTeX: A Document Preparation System schreibt Lamport: »LaTeX is a system for typesetting documents. Its first widely available version, myseriously numbered 2.09 appeared in 1985.«** Ebd., S. 2. 1991 haben Frank Mittelbach und Rainer Schöpf die Rolle des Maintainers für LaTeX übernommen, aus dem bald das LaTeX 3 Project Team hervorging. 1994 erschien die immer noch aktuelle Version, LaTeX 2ε; die halbjährlich Abständen mit Bugfixreleases gepflegt wird.

Nachdem Donald Knuth 1990 verkündet hatte, die Entwicklung von TeX sei für ihn abgeschlossen und er fürderhin nur noch Bugfixes veröffentlichen würde, aber keine neuen Funktionalitäten mehr einbauen würde** Donald E. Knuth, »The future of TeX and METAFONT« (1990). In: Ders., Digital typography. A. a. O., S. 571–572. wurden auf dessen Basis eine Vielzahl von Weiterentwicklungen begonnen. Die weitverbreitetste ist Hàn Thế Thànhs pdfTeX, das ohne Umwege PDF-Dateien zu erzeugen vermag und mit einer Vielzahl von mikrotypografischen Finessen aufwartet wie optischen Randausgleich und Erzeugen von unterschiedlich großen Lettern (font expansion), um einen möglichst gleichmäßigen Grauwert der Seite zu erreichen.** Vgl. Hàn Thế Thành, Micro-typographic extensions to the TeX typesetting system. Dissertation, Faculty of Informatics, Masaryk University. Brno, Czech Republic 2001. An einer umfangreichen Unterstützung für das Unicodeformat und Opentype-Schriften wird derzeit gearbeitet.

Ein modernes TeX-System besteht aus einer Vielzahl von Programmen, Schriften und Hilfsmitteln. Verteilt wird es über sogenannte Distributionen, von denen die bekanntesten MikTeX für Windows- und TeXLive für Unix/Linux-Systeme sind, die beide frei übers Netz verfügbar sind.

(La)TeX ist zum Schreiben wissenschaftlicher Texte hervorragend geeignet. Insbesondere in den Naturwissenschaften und in der Mathematik wird es bis heute häufig eingesetzt; sein mathematischer Formelsatz gilt immer noch als unübertroffen. In den Geistes- und Sozialwissenschaften ist es hingegen kaum bekannt, was sehr schade ist, verfügt es doch über Qualitäten, von der auch so mancher Leid geplagte Officeanwender profitieren könnte.** Zudem ist es auch für komplexere Anwendungen brauchbar, etwa zum Satz kritischer Editionen. (La)TeX ist für praktisch alle gebräuchlichen Betriebssysteme verfügbar und wird dies aufgrund seiner Quelloffenheit auch in der Zukunft sein. Seit 1996, das heißt seit mehr als zehn Jahren, ist das LaTeX-Format stabil. Dokumente von damals sind heute noch problemlos zu verarbeiten, und auch für die Zukunft kann dies als gesichert gelten. Zudem wird der Anwender nicht zum permanenten Um- und Neulernen gezwungen.

LaTeX hält zum strukturierten Arbeiten an: Zwar ist es auch möglich, Texte mit harten Layoutanweisungen wie »20 Punkt fett« zu versehen, doch ist es leichter, lediglich die logische Struktur eines Textes anzugeben und den eigentlichen Textsatz dem System zu überlassen. Die typografischen Fähigkeiten von TeX übertreffen die üblicher Textverarbeitungsprogramme wie Microsoft Word oder OpenOffice Writer bei weitem und stehen denen professioneller Desktop Publishing Systeme wie Indesign nicht nach. Mit Biblatex existiert auch eine mächtige, auf die Bedürfnisse von Sozial- und Geisteswissenschaftlern zugeschnittene Schnittstelle zum Literaturdatenbankformat BibTeX, die den Autor beim Zitieren in verschiedenen Zitationsstilen unterstützt.

Einer der größten Vorteile ist jedoch vielleicht, dass (La)TeX einfache Textdateien liest und verarbeitet. Diese können prinzipiell mit jedem Texteditor erzeugt und bearbeitet werden, so dass garantiert ist, dass die Inhalte selbst ohne ein vorhandenes TeX-System lesbar sind. Außerdem ist der Benutzer frei in der Wahl seines Editors und kann den seiner Arbeitsweise am nähesten kommenden benutzen. Eine Vielzahl von Editoren, proprietären wie freien, besitzt eine Unterstützung von LaTeX. Erwähnen möchte ich an dieser Stelle neben den beiden »großen« Editoren vi und Emacs noch kile (Linux), TeXShop (MacOS X) und TeXniccenter (Windows).

Zum Thema »LaTeXen mit Emacs: AucTeX, preview-latex und RefTeX« habe ich eine Unterseite eingerichtet.

Eine weitere Unterseite mit Tipps und Tricks, auf der derzeit nur die Einbindung von Indexziffern etwa für Fußnotenmarken im Haupttext beschrieben wird.

Und auf der Seite von scriptorium adp finden sich unter anderem Beispiele meiner Arbeit im Buchsatz mit LaTeX.



www.cacert.org
© 2006–2009 Oliver Heins <olli@sopos.org>
GnuPG-Key: https://sopos.org/pgp/olli.asc
GnuPG-Fingerprint: F27A BA8C 1CFB B905 65A8 2544 0F07 B675 9A00 D827
Letzte Änderung dieser Seite: Dienstag, 28. April 2009, 13:54.