TeX Live 2014 erschienen – die Neuigkeiten

TeX Live 2014 ist erschienen und als Download verfügbar. Hier ein Blick auf die Neuigkeiten und Veränderungen.

TeX

TeX und MetaFont wurden aktualisiert. Zuletzt geschah das 2008, und dieses Jahr präsentierte Donald Knuth ein weiteres Update. Nun haben wir TeX Version 3.14159265, in TeX Live 2014 enthalten. Nun, die Änderungen sind nahezu unsichtbar: bei TeX betraf die einzige Änderung den “Null-Befehl” \csname\endcsname, an einer Stelle des Codes fehlte ein Leerzeichen. Wer ausprobieren möchte, mit diesem Code geschrieben von Oleg Bulatov, 2008:

\def\\#1{\message{#1bar}}
\def\surprise{wunder}
\let\foo=!
\\\surprise
\\{\csname\endcsname
}
\end

erhält man im Terminal die Ausgabe

wunderbar \csname\endcsnamebar

wo man einfach wunderbar bar erwartet hätte. Nun, das ist ja jetzt behoben, in der print_cs-Funktion! Schön, zu sehen, dass dieser letzte TeX-Fehler so “ernst” ist.

Auch MetaFont erhielt ein Update auf Version 2.7182818, was nur die Behebung eines verbliebenen Fehlers bedeutete, auch in 2008 gefunden. Ein klassischer Fehler, ein “memory leak”, wodurch zuviel Speicher verbraucht wird.

Der Rest betrifft allgemeine Pflege der Software. Mehr Details kann man in Donald Knuth’s Artikel “The TeX tuneup of 2014” lesen.

Den meisten bekannt, hier noch als Hinweis für neue Nutzer: die ungewöhnliche Nummerierung der Versionen von TeX und MetaFont nähert sich bekannten fundamentalen mathematischen Konstanten an.

pdfTeX

“Falsche Leerzeichen” wurden eingeführt. Das originale TeX fügt keine Leerzeichen zwischen Wörtern ein, stattdessen werden Wörter und Satzzeichen passend mit Zwischenraum so positioniert, dass der Randausgleich für Blocksatz perfekt wird, ohne ein explizites Leerzeichen dazwischen. Das ist gut für den Druck auf Papier, jedoch lesen wir heute Dokumente oft auf elektronischen Geräten, wie Laptops, Tablet PCs und Smartphones. Dort trifft man auf verschiedene Seitenbreiten, selbst auf ein und demselben Gerät kann sich die Breite ändern, wenn man es dreht. Der Textfluss sollte sich auf die geänderte Breite anpassen. Hierfür ist es für Lesesoftware besser, Leerzeichen als Wortbegrenzer zu haben.

TeX Live 2014 kommt jetzt mit pdfTeX 1.40.15, was die Befehle \pdfinterwordspaceon und \pdfinterwordspaceoff bereitstellt zum Umschalten des Einfügens von Pseudo-Leerzeichen. \pdffakespace fügt einfach so ein Pseudo-Leerzeichen ein, egal was voreingestellt ist. Diese Pseudo-Leerzeichen ändern die übliche Ausrichtung, sie sind unsichtbar und erzeugen selber keinen Leerraum. Jedoch verbessern sie den automatischen Textfluss bei veränderlicher Seitenbreite und das Extrahieren von Text.

Weiterhin bringt pdfTeX 1.40.15 einen neuen Parameter \pdfsuppresswarningpagegroup. Das Setzen auf einen positiven ganzzahligen Wert kann unnötige Warnungs-Ausgaben reduzieren. Genauer gesagt, die Warnungen, dass mehr als eine eingefügte PDF-Datei ein sogenanntes “page group object” (/Group) enthält. Idealerweise sollte pdfTeX erkennen, ob diese Gruppen die gleichen sind oder nicht und die Warnungen nur im letzteren Fall bringen, doch dazu ist es augenblicklich noch nicht in der Lage. Doch oft ist es kein echtes Problem, und so kann man nun auf Wunsch diese Warnungen abschalten.

LuaTeX

Es gibt eine neue Compiler-Variante, luajittex, noch in Entwicklung. Diese verwendet einen just-in-time Lua-Compiler. Lua ist eine Interpreter-Sprache, wenngleich sie zunächst in einen Bytecode übersetzt, der dann in einer virtuellen Maschine (Software-Prozessor) ausgeführt wird, die in ANSI-C geschrieben ist. Der LuaJIT-Bytecode-Interpreter hingegen ist in Assembler-Sprache geschrieben, was eine bessere Ausnutzung der Ressourcen (Register) ermöglicht sowie eine geringere Programmgröße. Letzteres ist auch bedeutsam: ein kleines Programm wie dieses kann im Prozessor-Cache gehalten werden, der durchaus hundertmal so schnell sein kann als normaler RAM-Speicher. Die virtuelle Maschine von LuaJIT kann den Bytecode zur Laufzeit in Maschinencode übersetzen – in anderen Worten, sie ist sehr schnell. Ich würden gern damit einmal die 1165 Seiten der PGF-Dokumentation damit übersetzen, was LuaTeX benötigt, und vergleichen. Mehr kann man hier nachlesen: LuaJITTeX introduction von Luigi Scarso.

Zu weiteren Compilern und Veränderungen

Nachdem ich schon oben recht in Details, gegangen bin, ehe es zu langweilig wird, nun verbleibende wesentliche Änderungen kurz zusammengefasst (aus der Dokumentation):

  • XeTeX: die gleichen Bildformate werden nun auf allen Plattformen einschließlich Mac unterstützt (vorher war das Bilder-Laden auf dem Mac anders programmiert); bei hybriden OpenType/Graphite-Schriften wird nun OpenType bevorzugt, um mit früheren XeTeX-Versionen (vor 0.9999) kompatibel zu sein, Memory-Leaks bei AAT-Schriften wurden behoben.
  • MetaPost: Ein neues Zahlensystem decimal wird unterstützt, zusmmen mit begleitendem internem numberprecision; neue Definition von drawdot in plain.mp (Knuth); Fehlerbehebungen in SVG- und PNG-Ausgabe, und weiteres.
  • Das pstopdf ConTeXt-Werkzeug wird demnächst als eigenständiges Werkzeug wegen Namenskonflikts zu Betriebssystemtools entfernt. Es kann dann (und jetzt) immer noch via mtxrun –script pstopdf aufgerufen werden.
  • psutils wurde wesentlich überarbeitet. Mehrere wenig genutzte Werkzeuge (fix*, getafm, psmerge, showchar) befinden sich nun im Unterverzeichnis scripts/, statt Anwenderprogramme zu sein. Falls sich das als problematisch zeigen würde, kann es rückgängig gemacht werden. Ein neues Script psjoin wurde hinzugefügt.
  • Die MacTeX-Version der TeX Live Distribution enthält die optionalen Mac-spezifischen Pakete für die Schriften Latin Modern und TeX Gyre nicht mehr, da es sehr einfach für den Anwender ist, sie selber zu installieren. Das Programm convert von ImageMagick wurde auch entfernt, da TeX4ht (genauer gesagt, tex4ht.env) nun Ghostscript direkt verwendet.
  • Die Sammlung langcjk für die Unterstützung von Chinesisch, Japanisch und Koreanisch wurde nun in einzelne Sprachsammlungen aufgeteilt für handlichere Paketgrößen.
  • Plattformen: x86_64-cygwin hinzugefügt, mips-irix entfernt; da Microsoft Windows XP nicht mehr unterstützt, kann auch für TeX-Programme auf XP nicht mehr die Funktion garantiert werden.
  • Weitere Plattformen werden durch maßgeschneiderte Binaries unterstützt (http://tug.org/texlive/custom-bin.html). Weiterhin ist Software für einige Plattformen zwar nicht mehr auf der DVD enthalten, einfach um Platz zu sparen, doch können normal über das Internet installiert werden.

Herunterladen kann man TeX Live wie üblich von CTAN-Servern oder über den Startpunkt http://tug.org/texlive installieren.

Viel Spaß mit der neuesten Version dieser exzellenten Open Source Software!

21. Juni 2014 von Stefan Kottwitz
Kategorien: TeX Live | 1 Kommentar

1 Kommentar


  1. Warning: preg_replace_callback(): Error while studying pattern in /opt/osqa-1.0rc-2/apps/osqa/blog/wp-includes/formatting.php on line 1610

    Super Beitrag. Vielen Dank :-)

Schreibe einen Kommentar

Pflichtfelder sind mit * markiert