This package provides a wrapper for the truncate
package, thus fixing issues related to LuaTeX's hyphenation algorithm.
This is a collection of packages for LuaTeX, a TeX engine using Lua as an embedded scripting and extension language, with native support for Unicode, OpenType/TrueType fonts, and both PDF and DVI output. The LuaTeX engine itself, and plain formats, are in collection-basic
.
Unmodified TeX has very few ways of preventing widows and orphans. In documents with figures, section headings, and equations, TeX can stretch the vertical glue between items in order to prevent widows and orphans, but many documents have no figures or headings. TeX can also shorten the page by 1 line, but this will give each page a different length which can make a document look uneven. The typical solution is to strategically insert \looseness=1, but this requires manual editing every time that the document is edited. Lua-widow-control is essentially an automation of the \looseness
method: it uses Lua callbacks to find stretchy paragraphs, then it lengthens them to remove widows and orphans. Lua-widow-control is compatible with all LuaTeX and LuaMetaTeX-based formats.
GopherLua is a Lua5.1(+ goto statement in Lua5.2) VM and compiler. It provides Go APIs that allow you to easily embed a scripting language to your Go host programs.
Package gopher-luar
simplifies data passing to and from gopher-lua.
Luar is designed to make using Lua from Go more convenient. Go structs, slices and maps can be automatically converted to Lua tables and vice-versa. The resulting conversion can either be a copy or a proxy. In the latter case, any change made to the result will reflect on the source.
Any Go function can be made available to Lua scripts, without having to write C-style wrappers.
Luar support cyclic structures (lists, etc.).
User-defined types can be made available to Lua as well: their exported methods can be called and usual operations such as indexing or arithmetic can be performed.