Directory graphics/pgf/contrib/integramme
integramme - release candidate 0.9.0
integramme is a LaTeX package for typesetting staircase-style logic-grid puzzles (integrammes / Einstein-style logic-grid puzzles).
Version 0.9.0 is the first release candidate. The public long-form API and the ordinary drawing engine are frozen for the planned 1.0 release except for serious defects. It includes the documented Einstein-riddle preset introduced during the 0.8 cycle and the completed author/copyright metadata.
Requirements
- LaTeX2ε 2022-06-01 or newer
- TikZ
The package is regression-tested with pdfTeX, LuaTeX and XeTeX.
Quick start
\documentclass{article} \usepackage{integramme} \begin{document} \begin{integramme} \IntegrammeCategory{person}{Person}{ alice={Alice}, bruno={Bruno}, clara={Clara} } \IntegrammeCategory{drink}{Drink}{ tea={Tea}, coffee={Coffee}, juice={Juice} } \IntegrammeCategory{pet}{Pet}{ cat={Cat}, dog={Dog}, rabbit={Rabbit} } \IntegrammeIndices{% \item Alice does not drink tea. \item The rabbit owner drinks coffee. } \end{integramme} \end{document}
See integramme.pdf for the user manual and API.md for the candidate stable public API.
Einstein preset
The classic five-houses puzzle can be produced directly:
\begin{integramme}[preset=einstein,preset-language=fr] \end{integramme}
Use preset-language=en for English labels and clues, or add mode=solution to print the complete solved grid. The preset is only a convenience data set: it uses the same categories, clue list and solution-row mechanisms as an ordinary user-authored puzzle.
Public API
New documents should use the long-form interface:
\integrammeset{...}\begin{integramme}[...] ... \end{integramme}\IntegrammeCategory\IntegrammeIndices\IntegrammeYes/\IntegrammeNo\IntegrammeSolutionRow
Legacy compact solution syntax, slash references and short \Int... aliases remain available for compatibility, but are not part of the candidate stable 1.0 interface.
Building from source
Generate the package file with DocStrip:
latex integramme.ins
The source tree also supports l3build:
l3build unpack l3build check l3build doc l3build ctan
The standard l3build file is named build.lua.
Files
integramme.dtx- documented source and user manualintegramme.ins- DocStrip installerintegramme.pdf- compiled manualintegramme.sty- generated development copy (not shipped in the CTAN source archive)build.lua- l3build configurationAPI.md- candidate stable API contractCHANGELOG.md- release historyTESTS.md- regression-test notesLICENSE.md- licensing statementexample*.tex- worked/minimal examples, including the Einstein puzzle
The development tree also contains prepublication material (CTAN.md, RELEASE.md, AUDIT.md and support/release-audit.py). These files are for maintainers and are not required by end users.
Current limitations
- all categories must contain the same number of items;
- only the staircase layout is implemented;
- long slanted header labels are not automatically constrained to their own category block;
- internal identifiers should remain simple and should avoid
,and=; - the package is still pre-1.0.
Release-candidate status
The technical CTAN layout is generated and checked. Jonathan LAFARGE is the public author, copyright holder and CTAN maintainer. A public repository, bug tracker or support URL may be added later; CTAN exposes these as optional communication channels, so they are not blockers for this release candidate. The uploader email is intentionally not stored in the source tree and can be supplied privately at upload time. See CTAN.md and RELEASE.md.
Authorship and AI assistance
Author and copyright holder: Jonathan LAFARGE. OpenAI ChatGPT was used as an interactive development assistant for code drafting, refactoring, test generation and documentation drafting/revision. The model used for the current development cycle was GPT-5.6 Sol (August 2026). Final design choices, review, testing and release responsibility remain with the human author.
License
This material is subject to the LaTeX Project Public License 1.3c or later. The work has LPPL maintenance status author-maintained; Jonathan LAFARGE is the copyright holder and public package maintainer.
Download the contents of this package in one zip archive (510.4k).
integramme – Typeset staircase logic-grid puzzles (or zebra
puzzles)
This is a LaTeX package for typesetting staircase-style
logic-grid puzzles (or zebra
puzzles – intégrammes
or logigrammes
in French).
Authors declare categories, item labels and clues; the package generates the staircase grid automatically. It supports blank puzzles, partially filled grids for worked solutions, and complete solution grids derived from keyed solution rows.
A built-in Einstein-riddle preset is included in English and French.
| Package | integramme |
| Version | 0.9.0 2026-08-23 |
| Licenses | The LaTeX Project Public License 1.3c |
| Copyright | 2026 Jonathan LAFARGE |
| Topics | Puzzle PGF TikZ Graphics |