CTAN Comprehensive TeX Archive Network

Directory macros/luatex/generic/minim-mp

Version: 2024/1.6


This package offers low-level mplib integration for both plain LuaTeX and 
LuaLaTeX. It is designed with the purpose of being easy to extend.

The use of multiple simultaneous MetaPost instances is supported, as well as 
running TeX or lua code from within MetaPost. With the included minim-mp 
format file, you can even use LuaTeX as a stand-alone MetaPost compiler.


In order to obtain the typeset manual of this package, simply say:

    luatex minim-mp.doc


In order to use minim-mp as a stand-alone metapost compiler, you will have to 
generate the appropriate format files. For metapost with plain tex, say

    luatex --ini minim-mp.ini

For metapost with latex, say

    luatex --ini minim-lamp.ini

The resulting format (.fmt) files will be found if they are either in the same 
directory as your metapost source file, or in ${TEXMFHOME}/web2c/luatex (the 
latter is of course recommended).

Useful shell aliases are

    alias mpost='luatex --fmt=minim-mp'
    alias lampost='luatex --fmt=minim-lamp'


2024/1.6 (25/3/2024)

  New features:

    * Add per-instance \everymp token lists
    * Reduce the number of metapost error messages echoed to the terminal.
    * The operators infont and glyph of now also accept font names.
    * Provide \mpdim to latex class.

  Bug fixes:

    * Newlines are now handled by metapost too.
    * As are all special characters: #$%^&_~
    * Plain and luatex now use the same catcode regime.
    * Add the missing tex.skip macro.
    * Improve debugging messages.

2024/1.5 (25/2/2024)

  New features:

    * Add a luamplib compatibility mode to the latex package.
    * Make default format and math mode configurable.

  Bug fixes:

    * Make metafun not crash immediately.
    * Comments (% characters) are now handled by metapost, not tex.

2024/1.4 (5/1/2024)

    * Support the extended graphics state (extgstate).
    * Allow box resource (xform) creation directly from metapost.
    * Support transparency and transparency groups.

2023/1.3 (20/10/2023)

    * Various runscript improvements:
       - Supplement runscript environment with runscript-specific functions.
       - Provide an escape hatch for passing raw strings to lua.
       - Add helper macros and functions for safely passing values between 
         metapost and lua.
    * File i/o from metapost code is now included in the --recorder output.
    * Improve font handling in minim-lamp.ini, and provide \begin{document}.
    * Add a minim-mp.sty package file for LaTeX users.

2023/1.2 (3/3/2023)

    * Add a few more metapost macros.
    * Various small bug fixes.

2022/1.1 (3/3/2022)

  New features:

    * Made instance initialisation more flexible; this replaces M.init_files 
      with M.init_code (see manual).
    * Add support for the glyph of operator.
    * Add support for the even-odd rule of filling and noncontinuous paths.
    * Add experimental latex support (the minim-lamp format).
    * Make minim-mp compatible with tikz/pgf.
    * Expand the plain macro set slightly.

  Minor changes:

    * Improved display of metapost logs.
    * Redefine units to fit other numerical engines better.
    * Fixed a bug in pattern generation that prevented simplifying patterns 
      into raw pdf code.
    * No longer write out superfluous line widths.

2021/1.0 (1/6/2021)

  This was the original release.


(c) 2022 Esger Renkema, Michal Vlasák

These files may be distributed under the terms of the European Union Public 
Licence (EUPL) version 1.2 or later. A copy can be obtained at:


Download the contents of this package in one zip archive (160.8k).

minim-mp – Low-level mplib integration for Lua

This package offers low-level mplib integration for Lua and plain Lua. It is designed with the purpose of being easy to extend.

The use of multiple simultaneous instances is supported, as well as running or lua code from within . With the included minim-mp and minim-lamp format files, you can even use Lua as a stand-alone compiler.

LicensesEuropean Union Public License 1.2
Copyright2022–2024 Esger Renkema
MaintainerEsger Renkema
Contained inTeX Live as minim-mp
MiKTeX as minim-mp
See alsominim
Guest Book Sitemap Contact Contact Author