ConTeXt and Lua programming/ConTeXt Development/LuaTeX

From Wiki
Jump to navigation Jump to search

LuaTeX is an extended version of PdfTeX - Old Content using Lua, as an embedded scripting language. The LuaTeX project's main objective is to provide an open and configurable variant of TeX while at the same time offering downward compatibility.

The project started in the summer of 2005, and has since progressed into a first official early beta that was released during the TUG2007 conference in San Diego. Development is supported by a grant from Colorado State University and the TeX User groups.


TODO: what do we want to do of this page? Cleanup probably required (See: To-Do List)


The official website offers some more information.

Links

Programming

Fonts

ConTeXt Lua Extensions

Context MkIV extends the vanilla Lua libraries by some very useful functionality. This pertains mostly to stuff people tend to implement over and over again because it is provided by default with other scripting languages. Thus, before you reimplement, say, a string stripping function for the thousandth time – have a look at these files:

File Content
l-boolean.lua toboolean() – equivalent of tonumber() and tostring();
util-dim.lua Tex dimensions (accessible as number.* namespace);
l-dir.lua directory handling (globbing &c., namespace: dir.*);
l-file.lua filesystem related functions (namespace: file.*);
l-io.lua file/stream handling;
l-lpeg.lua pattern helpers;
l-math.lua extra functions for the Lua math library;
l-md5.lua checksum comparison, loading and saving;
l-number.lua additions to the number.* namespace – bitset handling;
l-os.lua additions to the os.* library, platform initialization;
l-pdfview.lua --autopdf handling of mtxrun;
l-set.lua set handling (set.* namespace);
l-string.lua string manipulation;
l-table.lua ConTeXt and Lua programming/Extensions to the Lua IO library/Table manipulation;
l-unicode.lua extensions to the sln-unicode lib, converters for character encodings;
l-url.lua URI matching (namespace: url.*; also a nice tutorial on lpeg).
Lua Library Extensions.

Further Links

General

Luatex Libs

Miscellanea