Difference between revisions of "Main Page"
From LuaTeXWiki
(→Welcome) |
(Undo revision 10817 by 62.170.80.133 (talk)) (Tag: Undo) |
||
| (36 intermediate revisions by 16 users not shown) | |||
| Line 1: | Line 1: | ||
| − | = Welcome = | + | == Welcome to the LuaTeX wiki == |
| − | This wiki | + | This is a wiki for [http://www.luatex.org LuaTeX], a typesetting engine derived from |
| + | [http://en.wikipedia.org/wiki/TeX TeX] that includes [http://www.lua.org Lua] as an embedded scripting language. | ||
| + | |||
| + | See [[Special:Allpages|all the articles]] or the [[Special:Recentchanges|recent changes]]. | ||
| + | |||
| + | * [http://www.mediawiki.org/wiki/Help:Formatting How to edit wiki pages] | ||
| + | * [[Bug tracking|Bug tracking]]: Mantis [http://tracker.luatex.org bug tracker] | ||
| + | |||
| + | == Some articles == | ||
| + | |||
| + | * [[Documentation and help]] points to other online resources (manuals, mailing list, etc.) related to LuaTeX. | ||
| + | * [[Writing Lua in TeX]] explains how to write Lua code in a TeX document (and back). | ||
| + | * [[Attributes]] introduces LuaTeX's thrilling new concept. | ||
| + | * Pages on callbacks: | ||
| + | ** [[Callbacks]] introduces callbacks and how to use them. | ||
| + | ** There is a page on the [[Post linebreak filter|<tt>post_linebreak_filter</tt>]] callback, explaining and illustrating it with a couple of examples. The [[Show the hyphenation points]] article is another example of use. | ||
| + | ** The page on [[process input buffer|the <tt>process_input_buffer</tt> callback]] illustrates how to read documents with non-UTF-8 encoding, and how to write TeX with lightweight markup instead of the usual commands. | ||
| + | ** Another callback is [[show error hook|<tt>show_error_hook</tt>]], which lets you enliven your error messages! | ||
| + | ** You can fake XeTeX's interchar tokens with the [[token filter|<tt>token_filter</tt>]]. | ||
| + | * [[TeX without TeX]] is about using TeX's functionality (typesetting, pdf writing) only using Lua code (no <tt>\TeX</tt> macros). | ||
| + | * [[TeX_without_TeX_revised_and_expanded]] is a revision and expansion of the above. | ||
| + | * [[fontsampler|Create a fontsampler]] using plain LuaTeX and <tt>luaotfload</tt>. | ||
| + | * [[Annotate math expressions]] in PDF with a bounding box using LuaLaTeX. | ||
| + | |||
| + | == Packages on LuaTeX == | ||
| + | |||
| + | * [http://ctan.org/pkg/lua-visual-debug lua-visual-debug] Visual debugging with LuaLaTeX. | ||
| + | * [https://github.com/koppor/luabibentry luabibentry] Repeat BibTeX entries in a LuaLaTeX document body. | ||
| + | * [http://ctan.org/pkg/luacode luacode] Helper for executing lua code from within TeX. | ||
| + | * [http://en.sourceforge.jp/projects/luatex-ja/ LuaTeX-ja] LuaTeX-ja is a macro package to typeset Japanese(also Chinese) texts using Lua(La)TeX. | ||
| + | * [http://ctan.org/pkg/luaindex luaindex] Create index using lualatex. | ||
| + | * [http://ctan.org/pkg/luainputenc luainputenc] Replacing inputenc for use in LuaTeX. | ||
| + | * [http://ctan.org/pkg/lualatex-math lualatex-math] Fixes for mathematics-related LuaLaTeX issues. | ||
| + | * [http://ctan.org/pkg/lualibs lualibs] Additional Lua functions for LuaTeX macro programmers. | ||
| + | * [http://ctan.org/pkg/luamplib luamplib] Use LuaTeX's built-in MetaPost interpreter. | ||
| + | * [http://ctan.org/pkg/luaotfload luaotfload] OpenType layout system for Plain TeX and LaTeX. | ||
| + | * [http://ctan.org/pkg/luasseq luasseq] Drawing spectral sequences in LuaLaTeX. | ||
| + | * [http://ctan.org/pkg/luatexbase luatexbase] Basic resource management for LuaTeX code. | ||
| + | |||
| + | == Useful modules == | ||
| + | |||
| + | |||
| + | * [http://ctan.org/pkg/nodetree nodetree] visualize node lists in a tree view | ||
| + | |||
| + | * [https://gist.github.com/556247 viznodelist] LuaTeX nodelist visualization | ||
| + | |||
| + | * [https://ctan.org/pkg/minim minim] A modern plain format for the LuaTeX engine | ||
| + | |||
| + | == From the old bluwiki.com == | ||
| + | |||
| + | (Mostly by and thanks to [http://omega.enstb.org/yannis/ Yannis Haralambous]) | ||
| + | |||
| + | * An example of code [[traversing TeX nodes]] before an horizontal list goes through the line breaking engine; | ||
| + | * An example of code [[traversing tokens]] just before execution or expansion; | ||
| + | * you want to [[explore the table obtained from a TrueType font]], loaded by <tt>font.read_ttf</tt>; | ||
| + | * you want to [[explore the internal font table]] of a pre-loaded font or of a font you have loaded by <tt>\font</tt> and then used for at least one glyph; | ||
| + | * how to [[use a TrueType font]] without going through a TFM or a OFM file; | ||
| + | * how to do <i>kinsoku</i> ([[Japanese and more generally CJK typesetting]]); | ||
| + | * you want a newline in your log file or on the terminal? add <tt>\string\n</tt> to your string; | ||
| + | * you want to [[sort a token list]]; | ||
| + | * you want to [[split a comma-separated list]]; | ||
| + | * you want to [[encrypt your document using ROT13]]; | ||
| + | * you want to [[typeset non-TeX files by converting them using Lua code]]; | ||
| + | * example code to [[mirror characters with Bidi_Mirrored property]]; | ||
| + | * using mplib to write [[metapost with LuaTeX]] | ||
Latest revision as of 12:05, 7 June 2025
Contents
Welcome to the LuaTeX wiki[edit]
This is a wiki for LuaTeX, a typesetting engine derived from TeX that includes Lua as an embedded scripting language.
See all the articles or the recent changes.
Some articles[edit]
- Documentation and help points to other online resources (manuals, mailing list, etc.) related to LuaTeX.
- Writing Lua in TeX explains how to write Lua code in a TeX document (and back).
- Attributes introduces LuaTeX's thrilling new concept.
- Pages on callbacks:
- Callbacks introduces callbacks and how to use them.
- There is a page on the post_linebreak_filter callback, explaining and illustrating it with a couple of examples. The Show the hyphenation points article is another example of use.
- The page on the process_input_buffer callback illustrates how to read documents with non-UTF-8 encoding, and how to write TeX with lightweight markup instead of the usual commands.
- Another callback is show_error_hook, which lets you enliven your error messages!
- You can fake XeTeX's interchar tokens with the token_filter.
- TeX without TeX is about using TeX's functionality (typesetting, pdf writing) only using Lua code (no \TeX macros).
- TeX_without_TeX_revised_and_expanded is a revision and expansion of the above.
- Create a fontsampler using plain LuaTeX and luaotfload.
- Annotate math expressions in PDF with a bounding box using LuaLaTeX.
Packages on LuaTeX[edit]
- lua-visual-debug Visual debugging with LuaLaTeX.
- luabibentry Repeat BibTeX entries in a LuaLaTeX document body.
- luacode Helper for executing lua code from within TeX.
- LuaTeX-ja LuaTeX-ja is a macro package to typeset Japanese(also Chinese) texts using Lua(La)TeX.
- luaindex Create index using lualatex.
- luainputenc Replacing inputenc for use in LuaTeX.
- lualatex-math Fixes for mathematics-related LuaLaTeX issues.
- lualibs Additional Lua functions for LuaTeX macro programmers.
- luamplib Use LuaTeX's built-in MetaPost interpreter.
- luaotfload OpenType layout system for Plain TeX and LaTeX.
- luasseq Drawing spectral sequences in LuaLaTeX.
- luatexbase Basic resource management for LuaTeX code.
Useful modules[edit]
- nodetree visualize node lists in a tree view
- viznodelist LuaTeX nodelist visualization
- minim A modern plain format for the LuaTeX engine
From the old bluwiki.com[edit]
(Mostly by and thanks to Yannis Haralambous)
- An example of code traversing TeX nodes before an horizontal list goes through the line breaking engine;
- An example of code traversing tokens just before execution or expansion;
- you want to explore the table obtained from a TrueType font, loaded by font.read_ttf;
- you want to explore the internal font table of a pre-loaded font or of a font you have loaded by \font and then used for at least one glyph;
- how to use a TrueType font without going through a TFM or a OFM file;
- how to do kinsoku (Japanese and more generally CJK typesetting);
- you want a newline in your log file or on the terminal? add \string\n to your string;
- you want to sort a token list;
- you want to split a comma-separated list;
- you want to encrypt your document using ROT13;
- you want to typeset non-TeX files by converting them using Lua code;
- example code to mirror characters with Bidi_Mirrored property;
- using mplib to write metapost with LuaTeX