Change History -------------- 2018-10-03 luaotfload v2.91 * solved copy & paste of variant glyphs, https://tex.stackexchange.com/questions/451442/localized-glyphs-locl-have-unicode-value-ufffd * solved problem with PUA no longer accessible with \char, see https://github.com/u-fischer/luaotfload/issues/7 2018-09-21 luaotfload v2.9 * added various testfiles for the l3build system/travis tests to the github repository * solved a bug regarding directions https://github.com/u-fischer/lua-font-pond/issues/12 * adapted luaotfload-letterspace to new fontloader * solved the case problem see https://github.com/u-fischer/lua-font-pond/issues/6 * Fix parsing of font.conf see https://github.com/lualatex/luaotfload/pull/420 * imported new versions of the context files - fontloader is compatible with luatex 1.08 again * adapted the files list * created a luaotfload-filelist.lua which describes the files of the package * removed some not functional files * adapted mkstatus to use the new file list. 2017-01-29, luaotfload v2.8: * Latest fontloader code. * Support for Luatex 1.0. * Integration of the extended AFM handler. * Fixes to font family assignment. * Skip initialization if Luaotfload is already loaded. * Optical sizes advertised by fonts treated as big points. 2016/04/21, luaotfload v2.7: * Rework lookup chaining. * Combining glyphs from different fonts (``combo: ...`` requests). * Glyph fallbacks. * Latest fontloader code. * Adapt packaging to changed upstream file layout. * Remove support for builtin Fontforge libraries (this includes the PFA, PFB, DFONT, and feature file readers). * Allow configuration of anonymous lookups. 2015/12/09, luaotfload v2.6 * Add ``sign`` target to makefile for automated package signing. * Add ``--dumpconf`` option to luaotfload-tool for generating configuration files. * Move fontloader files to subtree src/fontloader. * New script ``mkimport`` facilitates maintainance of code imported from Context. * Revised letterspacing, now utilizing the ``node.direct`` interface. * Revized colorization of fonts, utilizing ``node.direct`` (Dohyun Kim). * Colorization was moved to the ``post_linebreak_filter`` stage. * Move remaining functionality from ``luaotfload-override`` into initialization. * Write names index if fonts were removed. * Separate module loading from initialization. * Custom fontloader package with the files from Lualibs removed. * Swappable fontloader via configuration option. * Lualibs are now a dependency when used in a TeX run as well. * Respect interword spaces when letterspacing. 2014/07/13, luaotfload v2.5 * Remove legacy code. * Remove compatibility with the old mkluatexfontdb script. * Remove test directory. Use https://bitbucket.org/phg/lua-la-tex-tests instead. * Remove luaotfload.lua from luaotfload.dtx; it is now a separate file luaotfload-main.lua. * Standard source tree structure: the code is now located in the ./doc, ./scripts, ./src, ./build, and ./misc directories. * Move the heavier LPEG parsers from luaotfload-features (syntax) and luaotfload-database (fontconfig) into the new file luaotfload-parsers.lua. * Move logging routines from luaotfload-override in to luaotfload-log. * Scan local font files (``--local`` flag to luaotfload-tool, flag ``scan_local`` during TeX run). * Add bisection mode (``--bisect``) to luaotfload-tool. * Add functions for accessing the database: ``aux.font_index()`` and ``aux.read_font_index()``. * Distinguish XDG configuration paths (Reuben Thomas) * Optional configuration via rc files. * Configure default features via configuration file. 2013/12/31, luaotfload v2.4 * Additional self-tests, now in separate file (luaotfload-diagnostics.lua) * Better path and directory handling, especially on Windows * database now indexes Type1 fonts (PFA, PFB) and makes them accessible with style modifiers (requires --format=+pfa,pfb option to luaotfload-tool) * Test runner (script mktests) * New luaotfload-tool option: ``--no-reload`` * ``luaotfload-tool --find`` now understands request syntax * text (Lua script) version of the font index is filtered through gzip by default, the ``--no-compress`` option of luaotfload-tool will prevent this * rename ``luaotfload-merged.lua`` (the fontloader package from Context) to ``luaotfload-fontloader.lua`` * Treat arguments of the ``letterspace`` option as percentages; add ``kernfactor`` option that behaves as before. * Remove imported version of typo-krn.lua. Xetex-style per-font letterspacing is now the canonical method. * Merge functionality from extralibs (fake Context layer) into luaotfload-letterspace.lua as it is only needed there anyways. 2013/07/10, luaotfload v2.3a * Detect LuaJIT interpreter (LuaJITTeX) * Self-test functionality for luaotfload-tool.lua (option ``--diagnose``) 2013/07/03, luaotfload v2.3: * New experimental lookups: ``kpse`` (kpathsea), ``my`` (callback) * Precedence of texmf over system fonts can be requested using the ``--prefer-texmf`` option of luaotfload-tool * Resolve file names to full paths at later stage * Rewrite the output of ``\fontname`` via ``patch_font`` callback * Allow blacklisting directories * Drop compatibility layer * Remove dependency on luaotfload-lib-dir (references to dir.glob() and dir.mkdirs()) * luaotfload-tool now displays extensive information about a font if given the argument --inspect 2013/05/20, luaotfload v2.2: * There is now a central, non-personal dev repo on github: https://github.com/lualatex/luaotfload * Synchronisation with ConTeXt from TeXLive 2013, inducing backward-incompatible changes in the font structure. A backward-compatibility layer has been added for the current versions of fontspec, unicode-math and microtype, but it should disapear in a future version. * Synchronisation with ConTeXt is now easier and can be done by just updating luaotfload-merged.lua (<= luatex-fonts-merged.lua from the LuaTeX-Plain format) * Improved and extended documentation * Font filenames are stored in the database (file: lookups more efficient) * Optional caching of name: lookups (uses separate cache file) * Rewriting and increased fidelity of XeTeX emulation * Renaming mkluatexfontdb into luaotfload-tool (the old behavior is kept if the script is symlinked or renamed mkluatexfontdb) * Added options to luaotfload-tool for simple database queries * Logging facilities have been rewritten and allow for more granularity * All files have been renamed, abandoning cryptic acronyms; also the new prefix is "luaotfload" (<= "otfl") * The Adobe Glyph List (font-age.lua) is now built via script (mkglyphlist) * Hans adapted the font loader to several of our requests (attribute allocation, custom merged package name etc.) * Auxiliary functions for package authors * Man page for luaotfload-tool * Unsupported v1.3 codebase is included in the luaotfload-*lua files. Crude, but effective way to support older Luatex binaries * implemented basic cache control/stats option for luaotfload-tool * Character list is generated from char-def.lua (mkcharacters) 2013/04/27, luaotfload v1.3: * blacklisting lingoes.ttf (segfaults) * unblacklisting ttc fonts (warning: may break LuaTeX < 0.65) * fixing font cache file name with non-ascii characters 2013/04/25, luaotfload v1.29: * Reverting the unified resolver, as the database was rebuilt too often which made the compilation longer. This will come back improved in the next version, hopefully for TeXLive 2013. * Fix resolving of Libertine Mono * Fix a bug that made fontconfig files not parsed when OSFONTDIR is set 2013/04/11, luaotfload v1.28: * Adapting to LuaTeX 0.75 * Fix small documentation issues in mkluatexfontdb * Fix possible infite loop with fontconfig config files references * Adding semibold synonym for bold * file:xxx syntax now uses the same search function as name: which make more fonts recognized 2012/05/28, luaotfload v1.27: * Fix "endless loop in charlist" with some OpenType math fonts 2012/03/27, luaotfload v1.26: * Enable setting italic correction values by default * Fix finding demibold italic fonts 2011/04/21, luaotfload v1.25: * Fix bug loading *.dfont fonts * Misc. documentation fixes * Fix the need to manually delete font cache when feature file is changed * Hack to support Demi fonts 2011/02/16, luaotfload v1.24: * Fix infinite loop first time creating a name list 2011/02/04, luaotfload v1.23: * Fix a typo breaking fonts.names.scan() 2011/01/25, luaotfload v1.22: * Remove --database-dir and --sys options from mkluatexfontdb * Provide a "luaotfload.patch_font" callback for on the fly patching of fonts * Some documentation improvements 2010/11/11, luaotfload v1.21: * Adapt to luatexbase v3.0 2010/10/16, luaotfload v1.20: * Make cache directory creation more robust * Fix GPOS mark placement in left-to-right direction * Reject fonts missing 'names' table * Sanitize color value before attempting to use it 2010/09/12, luaotfload v1.19: * fix LaTeX's detection (made Tikz fail under a non-LaTeX format) 2010/07/15, luaotfload v1.18: * fix for \overwithdelims and brothers 2010/07/14, luaotfload v1.17: * allow stylistic sets features in base mode * don't scale percent math constants 2010/07/12, luaotfload v1.16: * support keys prefixed by "+", for compatibility with XeTeX * remove the progress bar from mkluatexfontdb, it is of little use now * minor code a documentation cleanups 2010/06/28, luaotfload v1.15: * anum feature did not work as advertised * add system shipped TTC fonts on Mac OS X to the blacklist, until the culprit ones are isolated 2010/06/25, luaotfload v1.14: * fix mkluatexfontdb which was broken in the last version * support general font blacklisting feature * temporally re-enable ttc fonts on Mac OS X * make sure mkluatexfontdb in verbose mode prints font filename before attempting to load it 2010/06/24, luaotfload v1.13: * fix typo in font cache path 2010/06/18, luaotfload v1.12: * populate MathConstants table for OpenType math fonts, now such fonts can be really used in math mode. * sync with ConTeXt beta 2010.06.18 * change cache dir to $TEXMFCACHE/luatex-cache/generic 2010/06/09, luaotfload v1.11: * when asking for a font with style that doesn't exist, we would return nothing, now we fallback to the regular font 2010/06/07, luaotfload v1.10: * provide a fonts.names.scan(dir) function that temporally loads fonts from the specified dir into the names database * Log loaded font file before attempting to open it * fix XeTeX's square brackets syntax so that it doesn't trigger database update * fix loading fonts with absolute path * add \fontdimen8 support, for XeTeX compatibility * be more verbose when updating the font database * improve fonts.conf parsing * make sure when a TFM font is requested we don't end up loading a non-TFM font with a similar name instead * Remove --fc-cache option from mkluatexfontdb.lua, since we no longer use fontconfig tools * misc. bug fixes 2010/05/30, luaotfload v1.09: * the last release didn't even load * fix passing --destdir to mkluatexfontdb 2010/05/28, luaotfload v1.08a: * revert experimental code that was committed by mistake 2010/05/28, luaotfload v1.08: * fix misc. bugs with system fonts scanning * parse fontconfig configuration directly, no longer dependant on 'fc-list' * now if no font names database is found, luaotfload will generate it, also it will force an update of the database if the asked font can not be found * avoid loading non-tfm fonts when the user asks for tfm font * update the documentation * blacklist .ttc and LastResort font on mac. * sync with ConTeXt beta 2010.05.22 * fix attribute handling * clarify license * misc. bug fixes 2010/05/10, luaotfload v1.07: * using the new luatexbase package * synchronizing with latest ConTeXt stable 2010.05.08 * adding support for microtypography * adding support for color and transparency * adding a script to generate a font database with TeX and system fonts * more verbose log file 2010/02/07, luaotfload v1.06a: * more complete tlig and trep * defaults options changed to "+ccmp;+locl;+rlig;+liga;+clig;+kern; +mark;+mkmk;" * supporting windows absolute path 2009/12/01, luaotfload v1.06: * synchronizing with ConTeXt stable 2009.11.26 * adding backward compatibility with LuaTeX 0.40.6