Fact-checked by Grok 2 weeks ago

ConTeXt

ConTeXt is a free and open-source document preparation and typesetting system built on the engine, designed to produce high-quality, structured documents with advanced typographic control for both print and digital formats. It emphasizes ease of use for complex layouts, multilingual support, and consistent syntax, serving as an alternative to while extending 's capabilities for professional document engineering. Developed primarily by Hans Hagen in collaboration with Ton Otten at PRAGMA ADE in the , ConTeXt originated in as a response to limitations in existing macro packages like , particularly for advanced mathematical typesetting and customizable workflows. Initially supported by the Nederlandstalige TeX Gebruikersgroep (NTG), it was released into the to encourage widespread adoption and community contributions. Key early collaborators included Taco Hoekwater, who later co-led the project to integrate scripting directly into the engine, enhancing ConTeXt's flexibility. By the early 2000s, ConTeXt had evolved through major versions, with MkII stabilizing support for pdfTeX and engines around 2004, and MkIV introducing integration in 2007 for improved handling, fonts, and dynamic content processing. Unlike LaTeX's package-based ecosystem, provides a more integrated and unified interface with built-in modules for features like automatic indexing, floating figures and tables, and interactive PDF elements, reducing the need for external add-ons. It supports structured authoring through commands for sections, buffers, and setups, enabling efficient handling of elements such as formulas, bibliographies, and multilingual text without verbose coding. This modular design, combined with Lua's extensibility in MkIV and later versions, allows users to define custom macros and automate document generation, making it particularly suited for technical manuals, books, and academic publications. Since 2019, the active development has focused on LMTX, the successor to MkIV, which uses the LuaMetaTeX engine for enhanced performance and modern features, while MkII and MkIV are maintained as legacy options. As of 2023, remains actively maintained by and contributors, with community-driven enhancements via the ConTeXt Garden and minimal installation distributions, addressing modern typesetting challenges like font technologies and web integration, while preserving TeX's precision for high-end output.

Introduction

Overview

ConTeXt is a macro package for the typesetting system, designed to enable the production of high-quality documents such as books, articles, and presentations through structured and automated processing. It builds directly on TeX's typographical capabilities, providing a comprehensive set of commands that handle document layout, formatting, and output generation, often converting TeX- or XML-encoded input into PDF files. The primary purposes of include facilitating automated decisions, supporting multilingual with built-in handling, and seamlessly integrating text, via MetaFun (an extension of ), and mathematical expressions without requiring extensive manual adjustments. This approach emphasizes separating content from presentation, allowing users to define document structure while the system manages typographic details like spacing, fonts, and page design for consistent results across complex or evolving documents. ConTeXt targets professional typographers, academics, and publishers who require greater flexibility and precision than offered by standard word processors, particularly for structured documents involving technical or multilingual content. Its design appeals to users in and , where reusable, adaptable layouts are essential. The name "ConTeXt" is a play on "context," derived from "con TeX t" to signify integration with for text processing.

Comparison to Other Systems

ConTeXt differs from in its foundational philosophy and architecture, emphasizing an integrated system designed for flexible document design rather than a modular, package-dependent framework. While separates content from presentation through external style files and a vast of third-party packages, ConTeXt is developed as a cohesive whole, with most functionalities built-in to facilitate customization without extensive add-ons. This approach stems from ConTeXt's origins in professional , where users—often designers—require direct control over layouts for books and complex documents. A key structural distinction is ConTeXt's use of an XML-like syntax with paired commands such as \startsection and \stopsection, which mirror XML tags and enable hierarchical, structured input that can directly process XML sources. In contrast, relies on a markup-oriented syntax with environments delimited by braces and commands like \begin{} and \end{}, often requiring additional packages for XML handling. ConTeXt's commands also favor more descriptive, natural-language styles (e.g., \setuphead for headings), reducing the verbosity of low-level markup and promoting for layout-focused tasks. This built-in XML support allows seamless of structured data, setting it apart from LaTeX's more fragmented approach to similar features. ConTeXt offers advantages over LaTeX in handling advanced without external dependencies, including native support for layered PDFs via commands like \definelayer, which enable optional content groups (OCGs) for interactive elements such as togglable overlays in documents. It also facilitates dynamic content generation, hyperlinks, forms, and cross-document links directly within the core system, making it simpler for complex layouts like multi-column designs or automated figure placement. These capabilities reduce the need for package conflicts common in LaTeX, streamlining workflows in professional publishing. Compared to plain , provides higher-level abstractions and automation layered atop the core engine, minimizing the requirement for manual programming of primitives. Plain offers fine-grained control with around 900 commands but demands expertise in 's low-level syntax for even basic layouts, whereas 's macros—enhanced by integration—handle tasks like font management, spacing, and interactions automatically. This elevates to a more user-friendly format while retaining 's precision, effectively bridging the gap between plain 's minimalism and LaTeX's structure. Despite these strengths, ConTeXt presents trade-offs, particularly a steeper for users accustomed to LaTeX's syntax and abundant , as ConTeXt's demands familiarity with its unique command set. However, this same cohesion benefits non-technical users in professional settings, where the system's consistency simplifies achieving polished, custom outputs without troubleshooting package incompatibilities. LaTeX's broader adoption in provides more resources, but ConTeXt excels in scenarios prioritizing layout sophistication over ecosystem size.

History and Development

Origins and Creators

Development of ConTeXt began around 1990 by and Ton Otten at PRAGMA ADE, a company specializing in -based solutions, with its first public release in 1996 as the MkI version. Taco Hoekwater joined as a key collaborator in the late 1990s. , the principal author, initially developed the system under the name "pragmatex" before renaming it ConTeXt, reflecting its focus on integrating within contextual document structures. PRAGMA ADE itself was established in 1986 by and three colleagues following their graduation, initially to provide consultancy services and educational materials using for complex needs. The primary motivation for creating ConTeXt stemmed from the limitations of LaTeX in handling Dutch typography and producing professional-grade documents for educational and publishing workflows. Hagen, frustrated by LaTeX's output that felt "totally un-Dutch" and its lack of flexibility for multilingual support and advanced math typesetting, sought a more configurable system inspired by Donald Knuth's TeX engine. This need arose in the early 1990s during Hagen's work on course materials and client projects at PRAGMA ADE, where existing tools failed to automate efficient, precise typesetting for real-world applications like structured documents and graphics integration. Early development of occurred within the ecosystem, building directly on Knuth's foundational engine to address gaps in multilingual processing and document modularity. It began as Hagen's and Otten's personal macro set for Dutch-language interfaces and evolved through informal testing and refinement by 1995, with the first public aspects emerging in 1996 via presentations at conferences. PRAGMA ADE played a central role by fostering as a free, open alternative to proprietary tools, aligning with the company's shift toward commercializing advanced while keeping core developments accessible to the community. This approach allowed to gain traction among users seeking automation in professional publishing without the constraints of commercial licensing.

Key Milestones and Evolution

The first public release of occurred in 1996 with the MkI version, which introduced core macro layers for advanced document structuring, including support for multiple interfaces in , English, and , along with features like colored verbatim environments. This marked the system's initial availability beyond internal use at PRAGMA ADE, building on earlier experiments with plain extensions from the early 1990s. MkI focused on flexibility for technical documentation, integrating tools like and PICTeX while emphasizing user extensibility without breaking compatibility. During the 2000s, underwent a significant architectural shift with the introduction of MkIV around 2007, integrating to enable embedded scripting for dynamic content processing and improved performance over traditional engines. The first public beta of MkIV was released on August 6, 2007, leveraging 's capabilities for faster execution and seamless handling of complex tasks like XML processing and font management. This evolution addressed limitations in earlier pdfTeX-based workflows, allowing to support modern scripting paradigms while maintaining through abstracted interfaces. In the , adopted node-based processing via , enhancing performance by permitting direct manipulation of TeX's internal node structures for optimized and output generation. This approach, inherent to since its development, enabled finer control over rendering, reducing overhead in graphics and layout computations compared to macro-only methods. By 2016, development transitioned away from MkII, freezing its pdfTeX and support as the community and shifted focus to MkIV's Lua-integrated ecosystem for ongoing advancements. Recent evolution through 2025 has centered on LMTX (introduced in 2019 as the successor to MkIV), incorporating LuaMetaTeX for a leaner engine with refined primitives and faster compilation. Key updates include full PDF 2.0 support added by 2024, enabling features like advanced annotations, layers, and hybrid document normalization via Lua hooks and compactors. Enhanced has been prioritized through expanded tagged PDF capabilities, using commands like \setuptagging to generate structured outputs compliant with screen readers and WCAG guidelines. In 2025, updates included the release of LuaMetaTeX 2.11 in August, with enhancements detailed at the ConTeXt Meeting 2025. All components, including LuaMetaTeX, have been fully open-sourced under the repository maintained by the community, facilitating broader contributions and integration.

Licensing and Versions

Licensing Details

ConTeXt's program code is licensed under the GNU General Public License (GPL) version 2 or later, enabling free modification and distribution of the software. This grants users the freedoms to run, study, share, and improve the code, while requiring that any distributed modifications or derivative works also be made available under the same terms, including provision of . The documentation, in contrast, falls under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) , which permits copying, redistribution, and adaptation with attribution and share-alike conditions. The GPL licensing ensures compatibility with free TeX distributions like , where is bundled and maintained alongside other open-source components, facilitating seamless integration for users and distributors.

Major Versions and Transitions

MkII, the primary version in use prior to 2010, relied on the pdfTeX engine for document processing, emphasizing static typesetting workflows integrated with for vector graphics generation. This architecture supported traditional TeX-based input handling, limited to eight-bit encodings and Type 1 fonts, without native Unicode capabilities, making it suitable for fixed-layout documents but less flexible for dynamic content. In contrast, MkIV, introduced around 2007, incorporated the engine to enable dynamic scripting through integration, significantly enhancing extensibility for complex . Key advancements included improved XML processing for structured content and optimized performance via Lua-driven subsystems, shifting from MkII's rigid eight-bit model to and font support for broader multilingual and modern typography needs. These changes allowed for programmable features like on-the-fly font loading and advanced math rendering with primitives such as \Umathprime for better prime positioning. The transition from MkII to MkIV involved providing layers in the distribution, enabling gradual migration by supporting legacy commands and encodings until approximately 2016, after which MkIV became the default due to Lua's superior extensibility for scripting and integration. Users could invoke MkII via specific format files (e.g., cont-ext.mkii), but the shift prioritized MkIV's foundation, with documentation and tools updated to facilitate code adaptation, such as converting static font setups to dynamic Lua handlers. As of 2025, has unified its ecosystem under the LuaMetaTeX engine (LMTX), introduced in 2019 as the successor to , supporting both legacy MkIV workflows and modern enhancements like 32/64-bit architecture and 5.4 for improved performance in rendering. This engine maintains compatibility with prior versions through extended and layers, allowing seamless handling of static and dynamic documents while deprecating obsolete MkII elements in major distributions like as of 2023.

Core Features

Typesetting Capabilities

ConTeXt offers robust typesetting capabilities centered on high-quality document production, leveraging the LuaMetaTeX engine (used in the current LMTX version since 2019) for advanced font handling and layout control. Its design emphasizes typographic precision and flexibility, enabling users to create professional layouts for books, brochures, and technical documents without relying on external extensions for core functions. These features stem from ConTeXt's integration of TeX primitives with Lua scripting, providing seamless automation for text arrangement and visual elements. In terms of font and , ConTeXt provides native support for fonts, allowing direct loading of system-installed typefaces without conversion. This includes comprehensive micro-typography adjustments such as kerning and ligature formation, which enhance readability by optimizing spacing and substitutions based on feature files. The \setupbodyfont command serves as the primary interface for configuring the document's base font, variant, and size, deriving header and other element sizes proportionally; for instance, specifying an font like automatically activates default features including and ligatures. Layout automation in facilitates complex designs through grid-based systems, which enforce consistent vertical and horizontal alignment for text and elements, ideal for multi-column magazine-style pages or brochures. Floating elements, such as figures and tables, are managed with commands like \placefloat, enabling automatic placement while respecting page boundaries and flow. Layered designs allow absolute positioning of content overlays, supporting dynamic switching of backgrounds, watermarks, or decorative elements across pages, which is particularly useful for book covers and promotional materials. For and , ConTeXt integrates with a natural syntax that extends conventions, offering inline and display modes enhanced by user-friendly macros for symbols, alignments, and numbering. This supports complex formulas with automatic spacing and font scaling, drawing from math fonts when available. Graphics capabilities include built-in for generating vector illustrations directly within documents, as well as import for scalable external images, ensuring high-resolution output in PDF without quality loss. Multilingual typesetting is handled natively, with built-in hyphenation patterns for approximately 74 languages to ensure proper word breaking and justification. supports these languages through patterns adapting to linguistic rules for optimal line filling. Right-to-left scripting, including for mixed-language documents, is enabled without additional modules, facilitating typesetting for scripts like and Hebrew alongside left-to-right content.

Integration and Modularity

integrates scripting as a core mechanism for embedding programmable logic directly into documents, enabling dynamic content generation and automation of tasks. code can be inserted using dedicated environments such as \startluacode...\stopluacode or the \ctxlua command, which execute within a controlled to produce output via the context() function that interfaces with the engine. This allows for procedural creation of elements like data-driven tables, where processes arrays or external datasets to generate formatted grids—for example, a script might populate a 10x20 table with computed values such as random numbers, applying styles conditionally based on content thresholds. Similarly, conditional layouts are implemented through 's mode-handling functions, such as context.doifmodeelse("screen", ...), which adapt document structure for different output s like print or digital viewing without altering the core markup. For handling external data, supports native parsing of XML inputs via specialized catcode regimes like xmlcatcodes, which prepare the input stream for structured processing and integration into the document flow. Markdown inputs are also natively parsable through Lua-based converters, transforming lightweight markup into commands for seamless inclusion. Furthermore, Lua's extensibility facilitates interfaces with databases; libraries such as LuaSQL enable connections to systems like , where queries retrieve records to dynamically populate sections, such as generating tables from query results without manual . Modularity in is achieved through a layered structure of environments and setups, which encapsulate definitions and behaviors to create reusable components isolated from global state. This design prevents unintended overrides by scoping changes locally— for instance, a setup can define rules for a specific section without affecting the entire document. Lua enhances this modularity via namespaces and loadable modules (e.g., require("mylib")), allowing developers to organize complex logic into independent units that can be imported and composed as needed, fostering extensible workflows. ConTeXt ensures broad compatibility by supporting direct output to diverse formats, including PDF via the LuaMetaTeX backend for print-ready documents, for reflowable e-books with embedded and navigation, and web-oriented XML or for online publishing. This multi-backend approach allows a single source document to yield variants tailored to mediums, with Lua hooks managing format-specific adjustments like . Documents produced in ConTeXt's plain-text format integrate naturally with version control tools such as , enabling tracking of revisions, branching for variants, and collaborative editing without proprietary locks.

Usage and Implementation

Installation and Setup

ConTeXt, particularly its current LMTX variant, is primarily distributed through two methods: integration with or as a standalone installation from official sources. The distribution includes ConTeXt LMTX by default in full installations or when selecting the "context" scheme during setup, making it accessible via the TeX Live Manager (tlmgr) with commands like tlmgr install collection-context for targeted addition to existing installations. Standalone installations, recommended for the latest updates independent of , are available as platform-specific ZIP archives from the Pragma-ade website and support Windows, macOS, and operating systems. To set up a standalone installation, first create a dedicated directory, such as ~/context on systems or C:\context on Windows. Download the appropriate archive—for example, context-linux-64.zip for 64-bit , context-osx-64.zip for macOS, or context-win64.zip for Windows—from https://lmtx.pragma-ade.com/install-lmtx/. Extract the archive into the directory and run the installer script: sh install.sh on or macOS (potentially requiring sudo xattr -r -d com.apple.quarantine bin/mtxrun on macOS to remove attributes), or install.bat followed by setpath.bat on Windows. Add the binary path to your system's environment variable, such as by appending export PATH=$HOME/context/tex/texmf-linux-64/bin:$PATH to ~/.bashrc on or editing the system on Windows. Finally, initialize the installation by running mtxrun --generate to build essential caches and formats. For older MkIV installations via contextgarden.net minimals, download the setup archive and run first-setup.sh or first-setup.bat with options like --modules=all. Configuration involves adjusting paths and user directories through TeX's standard mechanisms. Edit configuration files like texmf.cnf or the LMTX-specific texmfcnf.lua (located in paths such as /opt/context/tex/texmf/web2c/) to customize tree searches and variables, avoiding direct modification of defaults by creating overrides in higher-priority locations. Set environment variables such as TEXMFHOME to a personal directory like ~/texmf for storing user-specific files, packages, and macros, which integrates seamlessly with ConTeXt's . Updates for standalone LMTX require re-running the installer script and regenerating caches with mtxrun --generate, while users can update via tlmgr update --all. Common troubleshooting includes verifying the installation with context --version (which reports the ConTeXt LMTX version, e.g., 2025.02.19 as of February 2025) and mtxrun --version for LuaMetaTeX engine details (e.g., 2.11.07 or later). If fonts or formats fail to load, rebuild the font cache explicitly using mtxrun --generate or mtxrun --autogenerate during compilation. For path-related issues, ensure TEXMFCNF points to a valid configuration file and regenerate after changes. During initial setup, users may choose between LMTX (recommended) and legacy MkIV formats, as detailed in version documentation.

Syntax Fundamentals and Examples

ConTeXt employs a macro-based syntax built upon the engine, emphasizing structured environments and commands enclosed in backslashes for elements. Documents are typically organized using environment pairs like \starttext and \stoptext to delimit the main body content, allowing for a clear separation between setup instructions and actual text. This approach simplifies document creation by wrapping content in self-contained blocks, which can be nested for complex layouts. Basic formatting in ConTeXt relies on straightforward commands such as \bold{Text} to apply bold styling within braces, enabling inline emphasis without disrupting flow. For lists, the \startitemize and \stopitemize environments support ordered or unordered items, with options like [n] for numbering or [packed] for compact spacing; an example is \startitemize[n,packed] \item First point \item Second point \stopitemize. Images are inserted via \placefigure[reference]{caption}{\externalfigure[filename][width=\textwidth]}, which positions figures flexibly with respect to surrounding text. Sectioning uses \setuphead[chapter][style=\tfd] to configure headings globally, followed by structural commands like \startchapter{Title} Content \stopchapter for defining chapters. A minimal compilable ConTeXt document might include a title, paragraph, and equation as follows:
\starttext

\title{My Document}

This is a sample paragraph demonstrating basic text.

\startformula
a^2 + b^2 = c^2
\stopformula

\stoptext
This code produces a simple PDF with a centered title, the paragraph in default font, and the Pythagorean theorem displayed as a centered equation. To compile, save the file as example.tex and execute context example in from the file's , which processes the input through LuaMetaTeX and outputs example.pdf. If errors occur, ConTeXt generates detailed log files like example.tui or example.log for , highlighting issues such as undefined commands or syntax mismatches. Advanced integrations, such as embedding scripts for dynamic content, build upon these fundamentals but require additional modules.

Community and Extensions

Development Community

The development of ConTeXt is led by Hans Hagen at Pragma ADE in the , with support from a of volunteers who contribute via the ntg-context , maintained by the Netherlands TeX User Group (NTG) and active for over two decades. ConTeXt follows an informal open-source development model, where governance emerges from collaborative discussions on the ntg-context , the community at contextgarden.net, and GitHub repositories that mirror the source code for public access and contributions. Community members submit bug fixes, report issues, and propose features primarily through GitHub issue trackers and mailing list threads, fostering iterative improvements to the system. Annual International Meetings facilitate in-depth collaboration, with the 2024 edition held in Lutten, the , and the 2025 edition held in Chmielno, , featuring presentations on ongoing advancements and user experiences. Efforts toward inclusivity include initiatives for multilingual documentation on the community and engagement with a diverse user base spanning institutions and professional publishing houses worldwide.

Modules and Third-Party Resources

ConTeXt includes a collection of modules that are pre-installed in the and extend functionality for specific tasks such as font handling and . These modules, typically named with patterns like font-*.mkiv for font-related features (e.g., s-fonts-basics.mkiv for basic font operations) and graphic/*.mkiv for image and drawing support (e.g., m-graph.mkiv for and MetaFun graph integration), are loaded using the \usemodule command followed by the module name in square brackets, such as \usemodule[fonts-basics]. Third-party modules, contributed by the community, provide additional specialized capabilities and are hosted at the ConTeXt modules repository. Examples include integrations for niche typesetting needs, such as chess diagrams achieved via the filter module to process LaTeX's skak package for board rendering, and music notation through LilyPond integration using external filters to embed scores generated by LilyPond within ConTeXt documents. To install third-party modules, users can employ the mtxrun script with the command mtxrun --script install-modules --install <module-name>, which fetches and sets up modules from the repository at https://modules.contextgarden.net; manual installation involves placing files in the appropriate TeX directory tree and regenerating the format with context --generate. Best practices for using modules emphasize checking version compatibility between the module and the ConTeXt installation (e.g., MkIV or LMTX) to avoid conflicts, as modules may rely on specific LuaTeX features or syntax updates. For project-specific requirements, custom modules can be created by developing .mkiv files that combine Lua code for logic and ConTeXt macros for typesetting, then loading them via \usemodule in the same manner as official ones, ensuring they are placed in a user-defined TeX path for easy maintenance.

References

  1. [1]
    Introduction - Wiki
    **Summary of ConTeXt from https://wiki.contextgarden.net/Introduction:**
  2. [2]
    [PDF] Getting Started with CONTEXT - Services GUTenberg
    CONTEXT is a document engineering system based on TEX, easy to use for complex paper and electronic documents, and for typesetting.
  3. [3]
    [PDF] TUGboat, Volume 32 (2011), No. 1 9 16 years of ConTEXt Hans ...
    In this article I will reflect on some of ConTEXt's history and spend a few words on its future. First I will try to describe the landscape in which we have ...
  4. [4]
    [PDF] ConTEXt the manual Hans Hagen - Pragma-ADE
    Nov 12, 2001 · This manual is about ConTEXt, a system for typesetting documents. Central element in this name is the word TEX because the typographical ...
  5. [5]
  6. [6]
    What is ConTeXt? | The TeX FAQ
    May 26, 2018 · ConTeXt is a macro package based on TeX, providing structured interfaces for typography, and integrates MetaFun for vector graphics.
  7. [7]
    FAQ - Wiki - ConTeXt Garden
    What are the advantages of ConTeXt over LaTeX? ConTeXt is a macro package that's far more advanced than LaTeX. You can enhance LaTeX with third party ...
  8. [8]
    Input and compilation/XML source - Wiki - ConTeXt Garden
    It is possible to typeset XML sources with ConTeXt. Only an environment (or configuration file) is needed. ConTeXt has been dealing with XML since MkII.Missing: structure | Show results with:structure
  9. [9]
    Levels of TeX - TeX Users Group
    ConTeXt is a special case, straddling levels. It contains a format at the level of plain TeX and LaTeX, but unlike the other formats, it is invoked via a ...
  10. [10]
    Hans Hagen - Interview - TeX Users Group
    Mar 2, 2006 · Hans Hagen. [completed 2006-03-02] Hans Hagen is the principal author and developer of ConTeXt, past president of NTG, and active in many ...
  11. [11]
    [PDF] history.pdf - ConTeXt Meeting 2025
    A short history in 2. 4 parts. March 24, 2007. Page 2. 00001991-1992. Page 3. 00011993. Page 4. 00101994. Page 5. 00111995. Page 6. 01001996 ...
  12. [12]
    ConTeXt and Lua programming/ConTeXt Development/Mark IV - Wiki
    Introducing Mark IV. Mark IV is the name of the LuaTeX-aware part of ConTeXt; that is, when you use ConTeXt over the LuaTeX engine instead of PDFTeX or XeTeX.Missing: integration date
  13. [13]
    MKII MKIV LMTX - ConTeXt Meeting 2025
    This came with a performance hit so the reputation was that it was slow: inheritance, flexibility, user control . . . it all comes at a price.Missing: history | Show results with:history
  14. [14]
    [PDF] ConTEXt LMTX - Pragma-ADE
    In 2019 the code base was further overhauled and libraries got upgraded. The code base became smaller and compilation easier, smoother and much faster. Eventu.
  15. [15]
    contextgarden/luametatex: Temporary/draft repository with ... - GitHub
    Starting with LuaMetaTeX version 2.10 the interfaces are considered stable. Although we will fix bugs as fast as possible, we might end up with the same slow- ...
  16. [16]
    [PDF] Read Me First - Pragma-ADE
    The manuals that are distributed with ConTEXt comes with a rather liberal license. However, we try to adapt these documents to upgrades in the (sub)systems ...<|control11|><|separator|>
  17. [17]
    TeX Live - TeX Users Group
    TeX Live is intended to be a straightforward way to get up and running with the TeX document production system.Quick install for Unix · Install texlive · TeX Live on DVD · Other methods
  18. [18]
    [PDF] luametatex & context lmtx - Pragma-ADE
    Sep 22, 2021 · There have been some changes between MkII and MkIV, simply because there has been a shift from specific eight bit encodings to utf and Type1 to ...
  19. [19]
    [PDF] ConTEXt MkIV: Going UTF - TeX Users Group
    Just for the record: development in the LuaTEX project is done by Taco Hoekwater, Hartmut Henkel and Hans Hagen. Eventually, the stable versions will become ...
  20. [20]
    [PDF] TUGboat, Volume 44 (2023), No. 1 117 ConTEXt in TEX Live 2023 ...
    Already for a long time the MkII version used with pdfTEX, X ETEX and Aleph has been frozen and most users moved on from MkIV to LMTX (a more distinctive tag ...Missing: date | Show results with:date<|control11|><|separator|>
  21. [21]
    Command/setupbodyfont - Wiki - ConTeXt Garden
    Use \setupbodyfont to set the base font, variant, and size for whole document. Header sizes are derived from the body font size.
  22. [22]
    [PDF] Handling fonts in ConTEXt
    All necessary setups (typescripts) are provided in the distribution and the fonts can simply be loaded by \setupbodyfont[fontname, style, size]. Find the ...
  23. [23]
    [PDF] The (New) Font Loader - ConTeXt articles
    In addition to OPENTYPE font features we can also implement extra ones and there are quite some already. Think of tlig and trep, but protrusion, expansion, ...
  24. [24]
    Document layout and layers - Wiki - ConTeXt Garden
    Floating objects. Makeup. Layers or how to position elements on the page (in an absolute manner) and other advanced techniques like to switch them on and off.
  25. [25]
    Graphics and media - Wiki - ConTeXt Garden
    Sharing graphics: Export MetaPost drawings as PDF, import MetaPost drawings into MS Office, LibreOffice, etc. ... SVG in ConTeXt and metafun xl (2019).
  26. [26]
    [PDF] Drawing graphs with MetaPost - Alan Braslau - ConTeXt articles
    Before looking into importing data, we will first cheat and simulate data through calculation. Example 4. We define a path p through a Gaussian function and a ...
  27. [27]
    [PDF] Languages in ConTE Xt - Pragma-ADE
    We can hyphenate words in all languages (and scripts) that have a need for it, that is, split it at the end of a line and add a symbol before and/or after the ...
  28. [28]
    [PDF] Context Lua Documents - TeXDoc
    So, just for fun, I added a couple of commands to CONTEXT MKIV that permit coding a document in LUA. In retrospect it has been surprisingly easy to ...
  29. [29]
    ConTeXt and Lua programming/SQL example - Wiki
    ConTeXt and Lua programming/SQL example · 1 PostgreSQL · 2 CLD · 3 Sample output · 4 LuaLaTeX ...
  30. [30]
    tlmgr - the native TeX Live Manager
    tlmgr manages an existing TeX Live installation, both packages and configuration options. For information on initially downloading and installing TeX Live, see
  31. [31]
    Introduction/Installation - Wiki - ConTeXt Garden
    Installing Modules for ConTeXt LMTX; The official page Installing ConTeXt LMTX is hosted by Pragma ADE. Pragma ADE also provides the ConTeXt MkIV ...
  32. [32]
    [PDF] Tools: luatools, mtxrun, context - Pragma-ADE
    WhenwemovedontoRubyallthePerlscriptswererewrittenandwhenConTEXtMkIV showed up, Lua replaced Ruby. As we use LuaTEX this means that currently the tools and the ...
  33. [33]
    ConTeXt Standalone - Wiki
    ### Summary of ConTeXt Standalone
  34. [34]
    Custom Configuration - Wiki
    ### Summary of Configuring ConTeXt from https://wiki.contextgarden.net/Custom_Configuration
  35. [35]
    Installing ConTeXt LMTX on MacOS - Wiki
    Whenever you want to update your installation of LMTX, it is enough to go to ... mtxrun --generate. After that, in principle, the directory texmf-cache ...
  36. [36]
    None
    Summary of each segment:
  37. [37]
    Command/bold - Wiki - ConTeXt Garden
    \bold. Summary. The command \bold switches to bold text style. Description. Examples. Example 1. it works as a \bold{command} as well as as a {\bold switch}.
  38. [38]
    PRAGMA ADE web page: text
    ### Summary of ConTeXt Information from https://www.pragma-ade.com/
  39. [39]
    ConTeXt source file
    \ConTeXt\ is a macro package for \TeX\ written by Hans Hagen and Ton Otten of Pragma ADE in the Netherlands. ... ConTeXt\ mailing list at: \from[ntg-context].
  40. [40]
  41. [41]
    contextgarden/context: ConTeXt source code (mirror from ... - GitHub
    This repository hosts ConTeXt, a TeX macro package. There are three versions: Here we collect all the file needed to run ConTeXt, including the sources of ...Missing: 2004 | Show results with:2004
  42. [42]
    ConTeXt Meeting 2024
    18th International ConTEXt Meeting. The eightteenth ConTEXt meeting took place in Lutten, The Netherlands on. August 17th–23th, 2024.
  43. [43]
    Community and web resources - Wiki - ConTeXt Garden
    ConTeXt Mailing lists store years of precious Q&A. Please refer to the guidelines for writing to the mailing lists. ntg-context@ntg.nl ... starting about six ...
  44. [44]
    Input and compilation/Modules - Wiki - ConTeXt Garden
    Modules are extensions to ConTeXt’s core functions, and there are not as many as LaTeX packages because ConTeXt’s core already contains much.
  45. [45]
    How to draw chessboards in ConTeXt? - LaTeX Stack Exchange
    Nov 28, 2018 · I wonder which module you can use to draw chessboards in ConTeXt. When I was using LaTeX, skak is fine but now I a bit stuck. In LaTeX the ...
  46. [46]
    [PDF] Sing Happy Birthday Musical typesetting with gnu LilyPond
    Usually you would integrate LilyPond code in LATEX documents and use lilypond-book as a preprocessor. But how can I include LilyPond scores in my ConTEXt code?