Was ist ConTeXt?

Grundlagen

ConTeXt ist, genau wie LaTeX, ein Makropaket für das TeX Textsatzprogramm. Da die beiden aber vollkommen unabhängig voneinander entwickelt werden, haben sie nicht sehr viel miteinander zu tun. Beide haben natürlich gemeinsam, dass sie auf Plain TeX aufbauen und daher dieselben Regeln zutreffen, z. B. dass Makros mit \ beginnen.

Am Beispiel des folgenden Hallo-Welt-Dokuments sieht man die gravierenden Syntax-Unterschiede.

\documentclass{article}
\begin{document}
\section{Hallo Welt!}
Hallo Welt.
\end{document}

In ConTeXt:

% !TEX context
\starttext
\startsection[title={Hallo Welt!}]
Hallo Welt!
\stopsection
\stoptext

Die aktuelle Version von ConTeXt heißt MkIV (Mark 4) und baut auf LuaTeX auf. Die stabile, eingefrorene Vorgängerversion heißt MkII und unterstützte pdfTeX und XeTeX. Wenn man etwas über ConTeXt lernen möchte sollte man sich ausschließlich mit MkIV beschäftigen, da MkII seit langem nicht mehr weiterentwickelt wird und neue, interessante Features nur in MkIV implementiert werden.

Einen guten Einstieg in die ConTeXt-Syntax liefert »ConTeXt MkIV, an excursion« welches in TeXlive über texdoc ma-cb-en zugänglich ist. Das ältere »ConTeXt, an excursion« ist unvollständiger und bezieht sich auf MkII.

Warum sollte man sich für ConTeXt interessieren?

  1. Es gibt keine Pakete. Es existieren ein paar wenige Module, welche man mit \usemodule[<Modul>] einbindet, eigentlich ist es aber so gedacht, dass ConTeXt bereits alles mitbringt. Nie wieder Option clash for package XYZ.
  2. XML-Unterstützung. Mit ConTeXt kann man XML verarbeiten und setzen, aber auch exportieren um zum Beispiel docbook oder ePub zu erstellen.
  3. PDF-X. Manchmal ist es nötig standardisiertes PDF zu erzeugen. ConTeXt kann sogar tagged PDF erstellen, was mit LaTeX als unmöglich gilt.
  4. UTF-8- und Systemschriftunterstützung. ConTeXt MkIV baut auf LuaTeX auf und bringt entsprechend alle Funktionen mit, welche auch standardmäßig aktiviert sind.
  5. Konsistentes Key-Value-Interface. Beinahe alles in ConTeXt funktionert über das Tripel \setupsomething[key=value], \startsomething, \stopsomething.
  6. Buffer und Setups. Um das zu schätzen muss man sich schon etwas mit ConTeXt beschäftigt haben.
  7. Lua)-Interface. Alle Befehle, die in ConTeXt als \befehl verfügbar sind kann man innerhalb von ConTeXt auch in Lua verwenden mit context.befehl.
  8. Das context-Programm macht alles in einem Aufwasch. Es erkennt selbst wie oft es durchlaufen muss um Querverweise, Indizes und Literaturverzeichnis richtig zu haben. Es werden mit MkIV keine Zusatzprogramme wie makeindex oder bibtex benötigt.
  9. Es gibt weniger »Dateimüll«. context legt lediglich eine .log-Datei und eine .tuc-Datei an (Äquivalent zur .aux-Datei).

Quelle

Verfasst von Henri Menke auf TeXwelt.de: Was ist ConTeXt?

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