Was ist LaTeX3, und wie kann ich es benutzen?

LaTeX wurde ursprünglich von Leslie Lamport geschrieben und durch eine Gruppe Freiwilliger zu dem heute aktuellen LaTeX2ɛ weiter entwickelt. Dieser Stand ist mehr oder weniger »eingefroren«, um höchstmögliche Kompatibilität und Stabilität von Dokumenten zu erreichen. LaTeX-Dokumente, so die Idee, sollten auch nach etlichen Jahren problemlos übersetzt werden können und exakt dieselben Ergebnisse reproduzieren.

Dem LaTeX-Team ist natürlich bewusst, dass sich die Anforderungen an den Textsatz ändern. Deshalb pflegt das Team einerseits die stabile Version von LaTeX2ɛ, entwickelt diese aber auch weiter. Der Name dieser Weiterentwicklung ist LaTeX3.

LaTeX3 wird in verschiedenen Modulen (l3kernel, l3packages, l3experimental, l3trial) entwickelt, die auch unter LaTeX2ɛ schon benutzt werden können. Marco Daniel hat in der DTK 2/2012 in einem Artikel über das LaTeX-Paket xparse gezeigt, wie LaTeX3 mit LaTeX2ɛ benutzt werden kann.

Ein Beispiel für ein Paket, das auf LaTeX3-Funktionalität zurückgreift, ist fontspec. Es verwendet OpenType-Schriftfamilien mit LaTeX. Übersetzt man das folgende Beispieldokument, sieht man in den Logausgaben viele Verweise auf LaTeX3-Pakete:

\documentclass{article}
\usepackage{fontspec}
\setmainfont{Linux Libertine O}
\begin{document}
Dieser Text ist mit Linux Libertine gesetzt.
\end{document}

Ausgabe (Auszug)

[...]
(/opt/texlive2012/texmf-dist/tex/latex/l3kernel/expl3.sty
(/opt/texlive2012/texmf-dist/tex/latex/l3kernel/l3names.sty
(/opt/texlive2012/texmf-dist/tex/latex/l3kernel/l3bootstrap.sty
[...]
(/opt/texlive2012/texmf-dist/tex/latex/l3packages/xparse/xparse.sty)

Der normale Anwender wird LaTeX3-Pakete benutzen, ohne es zu merken. Er profitiert nur davon, dass viele Dinge mit LaTeX3 einfacher zu entwickeln sind als mit bisherigen Methoden und dadurch die eingebundenen Pakete mehr Möglichkeiten bieten, wie im Beispiel oben mit dem Paket fontspec.

Wie kann ich es benutzen?

Die Grundlage der Benutzung von LaTeX3 wird in der Dokumentation expl3 erörtert. Um stets die neueste Version zu nutzen, bietet sich der Clone der Github-Repo an: LaTeX3 auf Github. Dieses Dokument verweist auf die Art und Weise der LaTeX3-Programmierung. Die Erläuterung der Module ist der Dokumentation „interface3“ zu entnehmen.

Die Grundidee der LaTeX3-Programmierung

Schnittstelle

Die Entwickler von LaTeX3 sehen die Nutzung von LaTeX auf drei Ebenen, die nachstehend aufgelistet sind. Die Erläuterung ist der Dokumentation expl3 detailliert zu entnehmen.

  1. Document mark-up: Anpassung in der „.tex“-Datei
  2. Designer interface: Anpassung durch den tyographischen Gestalter
  3. Programmer interface: Implementierung der Basisfunktionen

Die nachstehenden Ausführungen beziehen sich auf das Programmer interface

Das Namensschema

Dieser Abschnitt soll kurz die Besonderheiten der in erster Linie merkwürdig erscheinenden Befehlsnamen erläutern. Häufig sieht man etwas wie \l_tl_new:N. Bisher sind Macros durch @ und evtl. kryptischen Erweiterungen wie @ii als internes Macro gekennzeichnet, wobei es hier keine Konventionen gibt. LaTeX3 hat sich als Ziel gesetzt, eine klare und eindeutige Befehlsnamenstruktur einzuführen. Hierzu werden interne Makros wie bisher mittels \ eingeleitet, aber nicht das @ sondern _ und : sind die Bestandteile des Befehlsnamen. Zur Vereinheitlichungen gibt es zudem einen *vorgeschriebenen„ Befehlsnamenaufbau.

Webseiten zu LaTeX3 sind fast ausschließlich in englischer Sprache verfügbar.

This website uses cookies for visitor traffic analysis. By using the website, you agree with storing the cookies on your computer.More information

Creative Commons Lizenzvertrag Diese Seite bearbeiten Ältere Versionen Übersicht Links hierher RSS feed Impressum