ConTeXt

ConTeXt
Original author(s)Mainly Hans Hagen and Pragma ADE
Developer(s)Mainly Hans Hagen, Taco Hoekwater,[1] Aditya Mahajan, Mojca Miklavec, Wolfgang Schuster
Stable release
Mark IV 0.61 / May 24, 2015 (2015-05-24)[2][3][4]
Operating systemMultiplatform (TeX)
TypeDocument processor, Document markup language
LicenseProgram code under GPLv2 and Documentation under CC BY-NC-SA 3.0[5]
Websitecontextgarden

ConTeXt is a general-purpose document processor. Like LaTeX, it is derived from TeX. It is especially suited for structured documents, automated document production, very fine typography, and multilingual typesetting. It is based in part on the TeX typesetting system, and uses a document markup language for manuscript preparation. The typographical and automated capabilities of ConTeXt are extensive, including interfaces for handling microtypography, multiple footnotes and footnote classes, and manipulating OpenType fonts and features. Moreover, it offers extensive support for colors, backgrounds, hyperlinks, presentations, figure-text integration, and conditional compilation. It gives the user extensive control over formatting while making it easy to create new layouts and styles without learning the low-level TeX macro language.

While comparisons can be made between ConTeXt and LaTeX, the primary objectives of the two systems are distinct. From the onset, ConTeXt has been a typography and typesetting system designed to give users straightforward and consistent access to advanced typographical control, which is crucial for general-purpose typesetting. LaTeX's original vision, on the other hand, was to insulate the user from typographical decisions—an approach particularly useful for tasks such as submitting articles to a scientific journal. Although LaTeX has evolved from this original vision, ConTeXt's unified design prevents the package clashes often experienced with LaTeX.[6][7]

ConTeXt provides a multilingual user interface with support for markup in English, Dutch, German, French, and Italian and support for output in many scripts including western European, eastern European, Arabic, Chinese, Japanese, and Korean. It also allows the user to use different TeX engines like LuaTeX (MkIV) and LuaMetaTeX (LMTX). Older versions (MkII) worked with pdfTeX or XeTeX.[7]

As its native drawing engine, ConTeXt integrates a superset of MetaPost called MetaFun,[7] which allows users to draw page backgrounds and ornaments with MetaPost. MetaFun can also be used directly with MetaPost. ConTeXt also supports the use of other external drawing engines, like PGF/TikZ[8] and PSTricks.[9]

ConTeXt also provides a macro package for typesetting chemical structure diagrams with TeX called PPCHTeX,[10] as well as many other modules.[9][11][12] This package can also be used with plain TeX and LaTeX.

Originally entitled pragmatex, ConTeXt was given its name around 1996[13] by Hans Hagen from PRAGMA Advanced Document Engineering (Pragma ADE), a Netherlands-based company.

  1. ^ Dave Walden interview with Taco Hoekwater. TeX User Group 2006.
  2. ^ "Release notes of ConTeXt at contextgarden". Archived from the original on 2005-12-26. Retrieved 2009-03-09.
  3. ^ "List of releases of ConTeXt". Archived from the original on 2006-11-24. Retrieved 2009-03-18.
  4. ^ "ConTeXt files in Supelec". Archived from the original on 2010-11-06. Retrieved 2009-10-05.
  5. ^ Read Me (license of ConTeXt code and documentation)
  6. ^ "FAQ of the UK TeX Archive". Archived from the original on 2010-05-18. Retrieved 2009-03-16.
  7. ^ a b c "What is ConTeXt" page at contextgarden
  8. ^ PGF/TikZ official manual. Version 2.0 Archived January 9, 2011, at the Wayback Machine. Section 9.1.3 "Using the ConTeXt Format". p. 88
  9. ^ a b List of ConTeXt modules at contextgarden
  10. ^ PPCHTeX Module for ConTeXt reference page at contextgarden
  11. ^ List of ConTeXt modules (static page)
  12. ^ List of ConTeXt modules in web server for downloading
  13. ^ Hans Hagen Interview, 2006