CTAN Comprehensive TeX Archive Network

Directory macros/generic/gates

This is the README file for the Gates package.
Author: Paul Isambert.
E-mail: zappathustra AT free DOT fr
Comments and suggestions are welcome.
Date: May 2012.
Version: 0.2.

Gates helps writing code in a modular fashion: macros are broken into
small chunks with names, which can be externally controlled and/or
augmented with new ones. Code thus written can be easily modified.

Gates is implemented independantly for both TeX and Lua; the former
requires the texapi package, while the latter can run with any Lua
interpreter (not just LuaTeX).

The files in this distribution are:

gates.tex     - TeX implementation
gates.sty     - wrapper for LaTeX
t-gates.tex   - wrapper for LaTeX
gates.lua     - Lua implementation
gates-doc.tex - master file for the doc
gates-doc.txt - text of the doc (readable in a text editor)
gates-doc.pdf - typeset doc

Licensing of this package is covered by LPPL.

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

gates – Support for writing modular and customisable code

The package provides the means of writing code in a modular fashion: big macros or functions are divided into small chunks (called gates) with names, which can be externally controlled (e.g. they can be disabled, subjected to conditionals, loops...) and/or augmented with new chunks.

Thus complex code may easily be customised without having to rewrite it, or even understand its implementation: the behavior of existing gates can be modified, and new ones can be added, without endangering the whole design. This allows code to be hacked in ways the original authors might have never envisioned.

The gates package is implemented independently for both and Lua. The implementation, running in any current environment, requires the texapi package, whereas the Lua version can be run with any Lua interpreter, not just Lua.

LicensesThe Project Public License
MaintainerYuri Robbers
Paul Isambert (inactive)
Contained inTeX Live as gates
MiKTeX as gates
TopicsMacro support
Guest Book Sitemap Contact Contact Author