Zum Inhalt springen

ConTeXt

aus Wikipedia, der freien Enzyklopädie
Dies ist die aktuelle Version dieser Seite, zuletzt bearbeitet am 20. April 2026 um 19:58 Uhr durch imported>Mielas (Einzelnachweis verschoben, da die Infobox beim Datum sonst nur Invalid format anzeigt).
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
ConTEXt

colspan="2" class="notheme" style="text-align:center; background:#Vorlage:Standardfarbe; color:#202122;" | Inoffizielles ConTeXt-Logo (contextgarden-Logo)
Basisdaten

Maintainer Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value)
Entwickler Hauptsächlich Hans Hagen und Pragma ADE
Erscheinungsjahr Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value)
Aktuelle Version Mark IV<ref>Pragma ADE: ConTeXt distribution – current version</ref>
(21. März 2019)
Aktuelle Vorabversion Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value)
(Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value))
Betriebssystem Multiplattform (TeX)
Programmier­sprache Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value)
Kategorie Dokumententext-
auszeichnungssprache
Lizenz GNU General Public License (Programmcode), Creative Commons licenses Attribution, NonCommercial, ShareAlike (Dokumentation)
contextgarden

ConTeXt, in Eigenschreibweise <math>\mathrm{Con T\!_{\displaystyle E} \! Xt}</math>, ist eine Text- und Dokumenten-Auszeichnungssprache bzw. ein Dokumentenformat. Es basiert auf dem Textsatzsystem TeX, wobei es aber eine von dessen Weiterentwicklungen, früher pdfTeX oder XeTeX (ConTeXt Mark II), aktuell LuaTeX (ConTeXt Mark IV) oder LuaMetaTeX (ConTeXt LMTX)<ref name='context_lmtx'>ConTeXt LMTX. Abgerufen am 23. Juli 2023 (Lua-Fehler in Modul:Multilingual, Zeile 153: attempt to index field 'data' (a nil value)).</ref> als „Engine“ (Interpreter) benötigt.

Funktion

ConTeXt ist – im Gegensatz zum anderen großen, älteren TeX-Makropaket LaTeX – monolithischer aufgebaut, dementsprechend gibt es nur wenige zusätzliche Module.<ref>Modules - ConTeXt wiki. DANTE, 11. September 2011, abgerufen am 21. März 2012 (Lua-Fehler in Modul:Multilingual, Zeile 153: attempt to index field 'data' (a nil value)): „There are not as many modules for ConTeXt as packages for LaTeX, because a lot of LaTeX package features are in ConTeXt’s core.“</ref> Beispielsweise sind TeX-basierte Vektorgrafiken durch MetaFun, einen Nachfolger von MetaPost, vollständig in ConTeXt integriert.

ConTeXt legt einen Schwerpunkt auf die Unterstützung des PDF-Formats und ist in der Lage, eine interaktive PDF-Datei mit hoher Komplexität sowie eine Papierversion desselben Dokuments direkt zu erzeugen. Alle Querverweise werden automatisch zu Hypertext-Links umgewandelt. Solche Dokumente können angesehen und mit einem PDF-Reader gesteuert werden. ConTeXt kann sämtliche Navigationselemente zur Verfügung stellen, die ohne Programmierung aktiviert werden können. Dadurch bekommen die elektronischen Versionen von Dokumenten einen hohen Nutzen für Bildungszwecke. Zudem enthält ConTeXt einige Perl-Hilfsskripte wie TeXutil und TeXexec.

Entwicklung

Das System wurde 1990 von Hans Hagen und Ton Otten von der niederländischen Firma PRAGMA Advanced Document Engineering (Pragma ADE) geschaffen. Seitdem wird es hauptsächlich von Hans Hagen weiterentwickelt.

Mark II, Mark IV und LMTX

Es gibt derzeit (2020) die folgenden Entwicklungszweige:

  • ConTeXt Mark II (.mkii) gilt als stabile, eingefrorene Version. Sie nutzt pdfTeX und XeTeX.
  • ConTeXt Mark IV (.mkiv/.mkvi) ist in aktiver Entwicklung und basiert auf LuaTeX. Obwohl der Code von Mark IV drastische Änderungen enthält, ist Mark IV in vielen Punkten abwärtskompatibel mit Mark II.
  • ConTeXt LMTX (.mkxl/.mklx) basiert auf LuaMetaTeX, einer minimalistischen LuaTeX-Variante.<ref>Hans Hagen: ConTeXt LMTX. In: TeX Users Group (Hrsg.): TUGboat. Band 40, Nr. 1, 2019 (tug.org [PDF]).</ref>

Dateien mit der Endung .mkvi oder .mklx passieren einen Filter, um benannte Funktionsparameter zu unterstützen, statt den bei TeX üblichen numerischen<ref>Hans Hagen: Mail bzgl. Dateiendungen. Archiviert vom Vorlage:IconExternal (nicht mehr online verfügbar) am 28. Juni 2021; abgerufen am 4. Februar 2020 (Lua-Fehler in Modul:Multilingual, Zeile 153: attempt to index field 'data' (a nil value)).  Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis.@1@2Vorlage:Webachiv/IABot/mailman.ntg.nl</ref>.

Codebeispiel

Das Erstellen von ConTeXt-Dokumenten ist einfach: Schreiben von datei.tex und Kompilieren mit context. Nachfolgend ein Beispiel,<ref>Übersetzung von ConTeXt in der polnischsprachigen Wikipedia</ref> das zum abgebildeten PDF-Dokument führt:

Quelltext eines ConTeXt-Dokuments Ausgabe des Dokuments

<syntaxhighlight lang="latex"> \setupbodyfont[modern,11pt] \mainlanguage[de] \language[de] \enableregime[utf]

\setuphead[title][style={\ss\bfd}, % hier wird das Aussehen des Titels definiert

   before={\begingroup},
   after={Hans Wikipedianer\bigskip\endgroup}]

\starttext

\title{\ConTeXt}

\section{Text} Genau so wie \LaTeX{} macht es auch \ConTeXt{} einfach, den Text durch eine Abschnittsnummerierung sowie durch Verweise auf Tabellen, Zeichnungen und andere Elemente zu gliedern. So kann man ganz einfach auf Gleichung \in[eqn:gleichung100] verweisen.

\section{Mathematik} Die folgende Gleichung stellt die Möglichkeiten von \ConTeXt{} auf dem Gebiet mathematischer Formeln dar. Gleichungen können automatisch nummeriert werden. \placeformula[eqn:gleichung100] \startformula

   E = mc^2

\stopformula worin \placeformula[eqn:gleichung200] \startformula

   m = \frac{m_0}{\sqrt{1-\frac{v^2}{c^2}}}

\stopformula ist.

\stoptext </syntaxhighlight>

Datei:ConTeXt output DE.svg
Aus dem Codebeispiel übersetztes ConTeXt-Dokument

Literatur

  • Taco Hoekwater, Hans Hagen, Willi Egger: Layouts in ConTeXt. Boekplan, Hasselt 2011, ISBN 978-94-90688-00-4
  • Taco Hoekwater, Hans Hagen: Fonts in ConTeXt. Boekplan, Hasselt 2011, ISBN 978-94-90688-03-5
  • Hans Hagen, Taco Hoekwater: ConTeXt Reference Manual. (PDF; 2,04 MB) 27. September 2013, abgerufen am 23. Januar 2014 (Lua-Fehler in Modul:Multilingual, Zeile 153: attempt to index field 'data' (a nil value)).
  • Aditya Mahajan, Willi Egger: Beginners Tutorial ConTeXt. (PDF; 371 kB) 20. August 2008, abgerufen am 23. Januar 2014 (Lua-Fehler in Modul:Multilingual, Zeile 153: attempt to index field 'data' (a nil value)).

Weblinks

Einzelnachweise

<references />