From 9db0d829e3ee2c3ab607c3c624adf189b2da15f4 Mon Sep 17 00:00:00 2001 From: Context Git Mirror Bot Date: Tue, 6 Sep 2016 01:12:18 +0200 Subject: 2016-09-06 00:33:00 --- doc/context/scripts/mkii/ctxtools.html | 2 +- doc/context/scripts/mkii/imgtopdf.html | 2 +- doc/context/scripts/mkii/mptopdf.html | 2 +- doc/context/scripts/mkii/pdftools.html | 2 +- doc/context/scripts/mkii/pstopdf.html | 2 +- doc/context/scripts/mkii/rlxtools.html | 2 +- doc/context/scripts/mkii/texexec.html | 2 +- doc/context/scripts/mkii/texmfstart.html | 2 +- doc/context/scripts/mkii/textools.html | 2 +- doc/context/scripts/mkii/texutil.html | 2 +- doc/context/scripts/mkii/tmftools.html | 2 +- doc/context/scripts/mkii/xmltools.html | 2 +- doc/context/scripts/mkiv/context.html | 2 +- doc/context/scripts/mkiv/luatools.html | 2 +- doc/context/scripts/mkiv/mtx-babel.html | 2 +- doc/context/scripts/mkiv/mtx-base.html | 2 +- doc/context/scripts/mkiv/mtx-bibtex.html | 2 +- doc/context/scripts/mkiv/mtx-cache.html | 4 +- doc/context/scripts/mkiv/mtx-cache.man | 4 +- doc/context/scripts/mkiv/mtx-cache.xml | 2 +- doc/context/scripts/mkiv/mtx-chars.html | 2 +- doc/context/scripts/mkiv/mtx-check.html | 2 +- doc/context/scripts/mkiv/mtx-colors.html | 2 +- doc/context/scripts/mkiv/mtx-context.html | 2 +- doc/context/scripts/mkiv/mtx-dvi.html | 2 +- doc/context/scripts/mkiv/mtx-epub.html | 2 +- doc/context/scripts/mkiv/mtx-fcd.html | 2 +- doc/context/scripts/mkiv/mtx-flac.html | 2 +- doc/context/scripts/mkiv/mtx-fonts.html | 2 +- doc/context/scripts/mkiv/mtx-grep.html | 2 +- doc/context/scripts/mkiv/mtx-interface.html | 2 +- doc/context/scripts/mkiv/mtx-metapost.html | 2 +- doc/context/scripts/mkiv/mtx-metatex.html | 2 +- doc/context/scripts/mkiv/mtx-modules.html | 2 +- doc/context/scripts/mkiv/mtx-package.html | 2 +- doc/context/scripts/mkiv/mtx-patterns.html | 2 +- doc/context/scripts/mkiv/mtx-pdf.html | 2 +- doc/context/scripts/mkiv/mtx-plain.html | 2 +- doc/context/scripts/mkiv/mtx-profile.html | 2 +- doc/context/scripts/mkiv/mtx-rsync.html | 2 +- doc/context/scripts/mkiv/mtx-scite.html | 2 +- doc/context/scripts/mkiv/mtx-server.html | 2 +- doc/context/scripts/mkiv/mtx-texworks.html | 2 +- doc/context/scripts/mkiv/mtx-timing.html | 2 +- doc/context/scripts/mkiv/mtx-tools.html | 2 +- doc/context/scripts/mkiv/mtx-unicode.html | 2 +- doc/context/scripts/mkiv/mtx-unzip.html | 2 +- doc/context/scripts/mkiv/mtx-update.html | 2 +- doc/context/scripts/mkiv/mtx-watch.html | 2 +- doc/context/scripts/mkiv/mtx-youless.html | 2 +- doc/context/scripts/mkiv/mtxrun.html | 2 +- scripts/context/lua/mtx-cache.lua | 29 ++++-- scripts/context/lua/mtx-fonts.lua | 2 +- scripts/context/lua/mtxrun.lua | 31 ++++++- scripts/context/stubs/mswin/mtxrun.lua | 31 ++++++- scripts/context/stubs/unix/mtxrun | 31 ++++++- scripts/context/stubs/win64/mtxrun.lua | 31 ++++++- tex/context/base/context-version.pdf | Bin 4255 -> 4254 bytes tex/context/base/mkiv/cont-new.mkiv | 2 +- tex/context/base/mkiv/context.css | 3 + tex/context/base/mkiv/context.mkiv | 2 +- tex/context/base/mkiv/font-ext.lua | 14 +++ tex/context/base/mkiv/font-map.lua | 101 +++++++++++++-------- tex/context/base/mkiv/font-mis.lua | 2 +- tex/context/base/mkiv/font-otl.lua | 2 +- tex/context/base/mkiv/l-dir.lua | 30 ++++++ tex/context/base/mkiv/node-met.lua | 2 +- tex/context/base/mkiv/node-nut.lua | 2 +- tex/context/base/mkiv/status-files.pdf | Bin 9292 -> 9181 bytes tex/context/base/mkiv/status-lua.pdf | Bin 368304 -> 368800 bytes tex/context/interface/mkiv/i-context.pdf | Bin 775248 -> 775101 bytes tex/context/interface/mkiv/i-readme.pdf | Bin 60792 -> 60792 bytes tex/generic/context/luatex/luatex-fonts-ext.lua | 15 +++ tex/generic/context/luatex/luatex-fonts-merged.lua | 92 ++++++++++++------- 74 files changed, 378 insertions(+), 150 deletions(-) diff --git a/doc/context/scripts/mkii/ctxtools.html b/doc/context/scripts/mkii/ctxtools.html index 06ab4ba0d..405965c1e 100644 --- a/doc/context/scripts/mkii/ctxtools.html +++ b/doc/context/scripts/mkii/ctxtools.html @@ -17,7 +17,7 @@ CtxTools 1.3.5 diff --git a/doc/context/scripts/mkii/imgtopdf.html b/doc/context/scripts/mkii/imgtopdf.html index 40863c4b8..ec75e4886 100644 --- a/doc/context/scripts/mkii/imgtopdf.html +++ b/doc/context/scripts/mkii/imgtopdf.html @@ -17,7 +17,7 @@ ImgToPdf 1.1.2 diff --git a/doc/context/scripts/mkii/mptopdf.html b/doc/context/scripts/mkii/mptopdf.html index 4508402b2..24f1325dd 100644 --- a/doc/context/scripts/mkii/mptopdf.html +++ b/doc/context/scripts/mkii/mptopdf.html @@ -17,7 +17,7 @@ MPtoPDF 1.4.1 diff --git a/doc/context/scripts/mkii/pdftools.html b/doc/context/scripts/mkii/pdftools.html index 77e3efef3..94b5f1a2a 100644 --- a/doc/context/scripts/mkii/pdftools.html +++ b/doc/context/scripts/mkii/pdftools.html @@ -17,7 +17,7 @@ PDFTools 1.2.1 diff --git a/doc/context/scripts/mkii/pstopdf.html b/doc/context/scripts/mkii/pstopdf.html index 43593195e..9b8f50762 100644 --- a/doc/context/scripts/mkii/pstopdf.html +++ b/doc/context/scripts/mkii/pstopdf.html @@ -17,7 +17,7 @@ PStoPDF 2.0.1 diff --git a/doc/context/scripts/mkii/rlxtools.html b/doc/context/scripts/mkii/rlxtools.html index bb377860d..5aeffa129 100644 --- a/doc/context/scripts/mkii/rlxtools.html +++ b/doc/context/scripts/mkii/rlxtools.html @@ -17,7 +17,7 @@ RlxTools 1.0.1 diff --git a/doc/context/scripts/mkii/texexec.html b/doc/context/scripts/mkii/texexec.html index 1ba325ba9..8a3a60abd 100644 --- a/doc/context/scripts/mkii/texexec.html +++ b/doc/context/scripts/mkii/texexec.html @@ -17,7 +17,7 @@ TeXExec 6.2.1 diff --git a/doc/context/scripts/mkii/texmfstart.html b/doc/context/scripts/mkii/texmfstart.html index ed149a0d0..c51430273 100644 --- a/doc/context/scripts/mkii/texmfstart.html +++ b/doc/context/scripts/mkii/texmfstart.html @@ -17,7 +17,7 @@ texmfstart 7.0.0 diff --git a/doc/context/scripts/mkii/textools.html b/doc/context/scripts/mkii/textools.html index 6e7b2d8aa..397de9d8b 100644 --- a/doc/context/scripts/mkii/textools.html +++ b/doc/context/scripts/mkii/textools.html @@ -17,7 +17,7 @@ TeXTools 1.3.1 diff --git a/doc/context/scripts/mkii/texutil.html b/doc/context/scripts/mkii/texutil.html index c98571a07..b5974ab99 100644 --- a/doc/context/scripts/mkii/texutil.html +++ b/doc/context/scripts/mkii/texutil.html @@ -17,7 +17,7 @@ TeXUtil 9.1.0 diff --git a/doc/context/scripts/mkii/tmftools.html b/doc/context/scripts/mkii/tmftools.html index af275f69c..1e13062b9 100644 --- a/doc/context/scripts/mkii/tmftools.html +++ b/doc/context/scripts/mkii/tmftools.html @@ -17,7 +17,7 @@ TMFTools 1.2.1 diff --git a/doc/context/scripts/mkii/xmltools.html b/doc/context/scripts/mkii/xmltools.html index 5d7d25d3a..fcb27aaf4 100644 --- a/doc/context/scripts/mkii/xmltools.html +++ b/doc/context/scripts/mkii/xmltools.html @@ -17,7 +17,7 @@ XMLTools 1.2.1 diff --git a/doc/context/scripts/mkiv/context.html b/doc/context/scripts/mkiv/context.html index 5fbf49d2b..eab116a0f 100644 --- a/doc/context/scripts/mkiv/context.html +++ b/doc/context/scripts/mkiv/context.html @@ -17,7 +17,7 @@ ConTeXt Process Management 0.63 diff --git a/doc/context/scripts/mkiv/luatools.html b/doc/context/scripts/mkiv/luatools.html index 614896880..5ec428efd 100644 --- a/doc/context/scripts/mkiv/luatools.html +++ b/doc/context/scripts/mkiv/luatools.html @@ -17,7 +17,7 @@ luatools 1.35 diff --git a/doc/context/scripts/mkiv/mtx-babel.html b/doc/context/scripts/mkiv/mtx-babel.html index a26e94ed6..97f891516 100644 --- a/doc/context/scripts/mkiv/mtx-babel.html +++ b/doc/context/scripts/mkiv/mtx-babel.html @@ -17,7 +17,7 @@ Babel Input To UTF Conversion 1.20 diff --git a/doc/context/scripts/mkiv/mtx-base.html b/doc/context/scripts/mkiv/mtx-base.html index 93d79f40b..7eceb57fc 100644 --- a/doc/context/scripts/mkiv/mtx-base.html +++ b/doc/context/scripts/mkiv/mtx-base.html @@ -17,7 +17,7 @@ ConTeXt TDS Management Tool (aka luatools) 1.35 diff --git a/doc/context/scripts/mkiv/mtx-bibtex.html b/doc/context/scripts/mkiv/mtx-bibtex.html index 61a679716..a70c88483 100644 --- a/doc/context/scripts/mkiv/mtx-bibtex.html +++ b/doc/context/scripts/mkiv/mtx-bibtex.html @@ -17,7 +17,7 @@ bibtex helpers diff --git a/doc/context/scripts/mkiv/mtx-cache.html b/doc/context/scripts/mkiv/mtx-cache.html index fdab3ed20..e69a73977 100644 --- a/doc/context/scripts/mkiv/mtx-cache.html +++ b/doc/context/scripts/mkiv/mtx-cache.html @@ -17,7 +17,7 @@ ConTeXt & MetaTeX Cache Management 0.10 @@ -43,7 +43,7 @@ --erasecompletely remove cache --listshow cache - --allall (not yet implemented) + --fontsonly wipe fonts
diff --git a/doc/context/scripts/mkiv/mtx-cache.man b/doc/context/scripts/mkiv/mtx-cache.man index 91c9aa45e..969246a6a 100644 --- a/doc/context/scripts/mkiv/mtx-cache.man +++ b/doc/context/scripts/mkiv/mtx-cache.man @@ -20,8 +20,8 @@ completely remove cache .B --list show cache .TP -.B --all -all (not yet implemented) +.B --fonts +only wipe fonts .SH AUTHOR More information about ConTeXt and the tools that come with it can be found at: diff --git a/doc/context/scripts/mkiv/mtx-cache.xml b/doc/context/scripts/mkiv/mtx-cache.xml index 2e37f036c..0f851a1e0 100644 --- a/doc/context/scripts/mkiv/mtx-cache.xml +++ b/doc/context/scripts/mkiv/mtx-cache.xml @@ -13,7 +13,7 @@ show cache - all (not yet implemented) + only wipe fonts diff --git a/doc/context/scripts/mkiv/mtx-chars.html b/doc/context/scripts/mkiv/mtx-chars.html index 93f1995b9..0cc3840e6 100644 --- a/doc/context/scripts/mkiv/mtx-chars.html +++ b/doc/context/scripts/mkiv/mtx-chars.html @@ -17,7 +17,7 @@ MkII Character Table Generators 0.10 diff --git a/doc/context/scripts/mkiv/mtx-check.html b/doc/context/scripts/mkiv/mtx-check.html index 0ebbe750f..df50c7288 100644 --- a/doc/context/scripts/mkiv/mtx-check.html +++ b/doc/context/scripts/mkiv/mtx-check.html @@ -17,7 +17,7 @@ Basic ConTeXt Syntax Checking 0.10 diff --git a/doc/context/scripts/mkiv/mtx-colors.html b/doc/context/scripts/mkiv/mtx-colors.html index 1a62f1891..f9b05c74c 100644 --- a/doc/context/scripts/mkiv/mtx-colors.html +++ b/doc/context/scripts/mkiv/mtx-colors.html @@ -17,7 +17,7 @@ ConTeXt Color Management 0.10 diff --git a/doc/context/scripts/mkiv/mtx-context.html b/doc/context/scripts/mkiv/mtx-context.html index 5fbf49d2b..eab116a0f 100644 --- a/doc/context/scripts/mkiv/mtx-context.html +++ b/doc/context/scripts/mkiv/mtx-context.html @@ -17,7 +17,7 @@ ConTeXt Process Management 0.63 diff --git a/doc/context/scripts/mkiv/mtx-dvi.html b/doc/context/scripts/mkiv/mtx-dvi.html index 97ca9fed5..e83c43748 100644 --- a/doc/context/scripts/mkiv/mtx-dvi.html +++ b/doc/context/scripts/mkiv/mtx-dvi.html @@ -17,7 +17,7 @@ ConTeXt DVI Helpers 0.10 diff --git a/doc/context/scripts/mkiv/mtx-epub.html b/doc/context/scripts/mkiv/mtx-epub.html index 9b63234be..1a92a794a 100644 --- a/doc/context/scripts/mkiv/mtx-epub.html +++ b/doc/context/scripts/mkiv/mtx-epub.html @@ -17,7 +17,7 @@ ConTeXt EPUB Helpers 1.10 diff --git a/doc/context/scripts/mkiv/mtx-fcd.html b/doc/context/scripts/mkiv/mtx-fcd.html index 4b29b62eb..ec928f79d 100644 --- a/doc/context/scripts/mkiv/mtx-fcd.html +++ b/doc/context/scripts/mkiv/mtx-fcd.html @@ -17,7 +17,7 @@ Fast Directory Change 1.00 diff --git a/doc/context/scripts/mkiv/mtx-flac.html b/doc/context/scripts/mkiv/mtx-flac.html index cbb3167c0..c4fb4efc4 100644 --- a/doc/context/scripts/mkiv/mtx-flac.html +++ b/doc/context/scripts/mkiv/mtx-flac.html @@ -17,7 +17,7 @@ ConTeXt Flac Helpers 0.10 diff --git a/doc/context/scripts/mkiv/mtx-fonts.html b/doc/context/scripts/mkiv/mtx-fonts.html index e4548b255..43d81015f 100644 --- a/doc/context/scripts/mkiv/mtx-fonts.html +++ b/doc/context/scripts/mkiv/mtx-fonts.html @@ -17,7 +17,7 @@ ConTeXt Font Database Management 0.21 diff --git a/doc/context/scripts/mkiv/mtx-grep.html b/doc/context/scripts/mkiv/mtx-grep.html index 3ba8e8547..184ca0df3 100644 --- a/doc/context/scripts/mkiv/mtx-grep.html +++ b/doc/context/scripts/mkiv/mtx-grep.html @@ -17,7 +17,7 @@ Simple Grepper 0.10 diff --git a/doc/context/scripts/mkiv/mtx-interface.html b/doc/context/scripts/mkiv/mtx-interface.html index 468342893..045dea546 100644 --- a/doc/context/scripts/mkiv/mtx-interface.html +++ b/doc/context/scripts/mkiv/mtx-interface.html @@ -17,7 +17,7 @@ ConTeXt Interface Related Goodies 0.13 diff --git a/doc/context/scripts/mkiv/mtx-metapost.html b/doc/context/scripts/mkiv/mtx-metapost.html index 51708663b..793a411b9 100644 --- a/doc/context/scripts/mkiv/mtx-metapost.html +++ b/doc/context/scripts/mkiv/mtx-metapost.html @@ -17,7 +17,7 @@ MetaPost to PDF processor 0.10 diff --git a/doc/context/scripts/mkiv/mtx-metatex.html b/doc/context/scripts/mkiv/mtx-metatex.html index 0c563e566..0bdc78987 100644 --- a/doc/context/scripts/mkiv/mtx-metatex.html +++ b/doc/context/scripts/mkiv/mtx-metatex.html @@ -17,7 +17,7 @@ MetaTeX Process Management 0.10 diff --git a/doc/context/scripts/mkiv/mtx-modules.html b/doc/context/scripts/mkiv/mtx-modules.html index f13ccbb6f..8278c1aca 100644 --- a/doc/context/scripts/mkiv/mtx-modules.html +++ b/doc/context/scripts/mkiv/mtx-modules.html @@ -17,7 +17,7 @@ ConTeXt Module Documentation Generators 1.00 diff --git a/doc/context/scripts/mkiv/mtx-package.html b/doc/context/scripts/mkiv/mtx-package.html index 51dd6189f..3ebf5c5be 100644 --- a/doc/context/scripts/mkiv/mtx-package.html +++ b/doc/context/scripts/mkiv/mtx-package.html @@ -17,7 +17,7 @@ Distribution Related Goodies 0.10 diff --git a/doc/context/scripts/mkiv/mtx-patterns.html b/doc/context/scripts/mkiv/mtx-patterns.html index 8aa0d8132..8aa378298 100644 --- a/doc/context/scripts/mkiv/mtx-patterns.html +++ b/doc/context/scripts/mkiv/mtx-patterns.html @@ -17,7 +17,7 @@ ConTeXt Pattern File Management 0.20 diff --git a/doc/context/scripts/mkiv/mtx-pdf.html b/doc/context/scripts/mkiv/mtx-pdf.html index f292c0089..e2961d94d 100644 --- a/doc/context/scripts/mkiv/mtx-pdf.html +++ b/doc/context/scripts/mkiv/mtx-pdf.html @@ -17,7 +17,7 @@ ConTeXt PDF Helpers 0.10 diff --git a/doc/context/scripts/mkiv/mtx-plain.html b/doc/context/scripts/mkiv/mtx-plain.html index d7600397a..2ceda35e7 100644 --- a/doc/context/scripts/mkiv/mtx-plain.html +++ b/doc/context/scripts/mkiv/mtx-plain.html @@ -17,7 +17,7 @@ Plain TeX Runner 1.00 diff --git a/doc/context/scripts/mkiv/mtx-profile.html b/doc/context/scripts/mkiv/mtx-profile.html index 46714e67b..50ac0c42e 100644 --- a/doc/context/scripts/mkiv/mtx-profile.html +++ b/doc/context/scripts/mkiv/mtx-profile.html @@ -17,7 +17,7 @@ ConTeXt MkIV LuaTeX Profiler 1.00 diff --git a/doc/context/scripts/mkiv/mtx-rsync.html b/doc/context/scripts/mkiv/mtx-rsync.html index 9b2b3af3a..5a55fcbe5 100644 --- a/doc/context/scripts/mkiv/mtx-rsync.html +++ b/doc/context/scripts/mkiv/mtx-rsync.html @@ -17,7 +17,7 @@ Rsync Helpers 0.10 diff --git a/doc/context/scripts/mkiv/mtx-scite.html b/doc/context/scripts/mkiv/mtx-scite.html index 24229db73..3b540fa81 100644 --- a/doc/context/scripts/mkiv/mtx-scite.html +++ b/doc/context/scripts/mkiv/mtx-scite.html @@ -17,7 +17,7 @@ Scite Helper Script 1.00 diff --git a/doc/context/scripts/mkiv/mtx-server.html b/doc/context/scripts/mkiv/mtx-server.html index 11d3c59c3..01cf1cdf7 100644 --- a/doc/context/scripts/mkiv/mtx-server.html +++ b/doc/context/scripts/mkiv/mtx-server.html @@ -17,7 +17,7 @@ Simple Webserver For Helpers 0.10 diff --git a/doc/context/scripts/mkiv/mtx-texworks.html b/doc/context/scripts/mkiv/mtx-texworks.html index 624e9ab18..5de6a748f 100644 --- a/doc/context/scripts/mkiv/mtx-texworks.html +++ b/doc/context/scripts/mkiv/mtx-texworks.html @@ -17,7 +17,7 @@ TeXworks Startup Script 1.00 diff --git a/doc/context/scripts/mkiv/mtx-timing.html b/doc/context/scripts/mkiv/mtx-timing.html index 9626f6d81..1da0e6439 100644 --- a/doc/context/scripts/mkiv/mtx-timing.html +++ b/doc/context/scripts/mkiv/mtx-timing.html @@ -17,7 +17,7 @@ ConTeXt Timing Tools 0.10 diff --git a/doc/context/scripts/mkiv/mtx-tools.html b/doc/context/scripts/mkiv/mtx-tools.html index ae3933f24..0cb6d6de3 100644 --- a/doc/context/scripts/mkiv/mtx-tools.html +++ b/doc/context/scripts/mkiv/mtx-tools.html @@ -17,7 +17,7 @@ Some File Related Goodies 1.01 diff --git a/doc/context/scripts/mkiv/mtx-unicode.html b/doc/context/scripts/mkiv/mtx-unicode.html index c042b28c0..6c0729e0e 100644 --- a/doc/context/scripts/mkiv/mtx-unicode.html +++ b/doc/context/scripts/mkiv/mtx-unicode.html @@ -17,7 +17,7 @@ Checker for char-def.lua 1.02 diff --git a/doc/context/scripts/mkiv/mtx-unzip.html b/doc/context/scripts/mkiv/mtx-unzip.html index 6bc987e8f..885599f8f 100644 --- a/doc/context/scripts/mkiv/mtx-unzip.html +++ b/doc/context/scripts/mkiv/mtx-unzip.html @@ -17,7 +17,7 @@ Simple Unzipper 0.10 diff --git a/doc/context/scripts/mkiv/mtx-update.html b/doc/context/scripts/mkiv/mtx-update.html index feae398ec..577453246 100644 --- a/doc/context/scripts/mkiv/mtx-update.html +++ b/doc/context/scripts/mkiv/mtx-update.html @@ -17,7 +17,7 @@ ConTeXt Minimals Updater 1.02 diff --git a/doc/context/scripts/mkiv/mtx-watch.html b/doc/context/scripts/mkiv/mtx-watch.html index 42b55280e..1f0e49bb4 100644 --- a/doc/context/scripts/mkiv/mtx-watch.html +++ b/doc/context/scripts/mkiv/mtx-watch.html @@ -17,7 +17,7 @@ ConTeXt Request Watchdog 1.00 diff --git a/doc/context/scripts/mkiv/mtx-youless.html b/doc/context/scripts/mkiv/mtx-youless.html index 7f7fda694..6edb3fee6 100644 --- a/doc/context/scripts/mkiv/mtx-youless.html +++ b/doc/context/scripts/mkiv/mtx-youless.html @@ -17,7 +17,7 @@ YouLess Fetcher 1.00 diff --git a/doc/context/scripts/mkiv/mtxrun.html b/doc/context/scripts/mkiv/mtxrun.html index 6e4146899..635e1bbac 100644 --- a/doc/context/scripts/mkiv/mtxrun.html +++ b/doc/context/scripts/mkiv/mtxrun.html @@ -17,7 +17,7 @@ ConTeXt TDS Runner Tool 1.31 diff --git a/scripts/context/lua/mtx-cache.lua b/scripts/context/lua/mtx-cache.lua index bff1cb496..f0c0ae0ed 100644 --- a/scripts/context/lua/mtx-cache.lua +++ b/scripts/context/lua/mtx-cache.lua @@ -22,13 +22,19 @@ local helpinfo = [[ show cache - all (not yet implemented) + only wipe fonts ]] + +local find = string.find +local filesuffix, replacesuffix = file.suffix, file.replacesuffix +local isfile = lfs.isfile +local remove = os.remove + local application = logs.application { name = "mtx-cache", banner = "ConTeXt & MetaTeX Cache Management 0.10", @@ -45,7 +51,7 @@ local function collect(path) local tmas, tmcs, rest = { }, { }, { } for i=1,#all do local name = all[i] - local suffix = file.suffix(name) + local suffix = filesuffix(name) if suffix == "tma" then tmas[#tmas+1] = name elseif suffix == "tmc" then @@ -70,19 +76,22 @@ end local function purge(banner,path,list,all) report("%s: %s",banner,path) report() + local fonts = environment.argument("fonts") local n = 0 for i=1,#list do local filename = list[i] - if string.find(filename,"luatex%-cache") then -- safeguard - if all then - os.remove(filename) + if find(filename,"luatex%-cache") then -- safeguard + if fonts and not find(filename,"fonts") then + -- skip + elseif all then + remove(filename) n = n + 1 - else - local suffix = file.suffix(filename) + elseif not fonts or find(filename,"fonts") then + local suffix = filesuffix(filename) if suffix == "tma" then - local checkname = file.replacesuffix(filename,"tma","tmc") - if lfs.isfile(checkname) then - os.remove(filename) + local checkname = replacesuffix(filename,"tma","tmc") + if isfile(checkname) then + remove(filename) n = n + 1 end end diff --git a/scripts/context/lua/mtx-fonts.lua b/scripts/context/lua/mtx-fonts.lua index 6c25760af..0a404c67e 100644 --- a/scripts/context/lua/mtx-fonts.lua +++ b/scripts/context/lua/mtx-fonts.lua @@ -15,7 +15,7 @@ local nameonly, basename, joinpath, collapsepath = file.nameonly, file.basename, local lower = string.lower local otfversion = 2.826 -local otlversion = 3.026 +local otlversion = 3.027 local helpinfo = [[ diff --git a/scripts/context/lua/mtxrun.lua b/scripts/context/lua/mtxrun.lua index f5bd13761..4d38a34f9 100644 --- a/scripts/context/lua/mtxrun.lua +++ b/scripts/context/lua/mtxrun.lua @@ -4031,7 +4031,7 @@ do -- create closure to overcome 200 locals limit package.loaded["l-dir"] = package.loaded["l-dir"] or true --- original size: 17358, stripped down to: 11378 +-- original size: 18247, stripped down to: 12022 if not modules then modules={} end modules ['l-dir']={ version=1.001, @@ -4295,6 +4295,31 @@ local function globfiles(path,recurse,func,files) return files end dir.globfiles=globfiles +local function globdirs(path,recurse,func,files) + if type(func)=="string" then + local s=func + func=function(name) return find(name,s) end + end + files=files or {} + local noffiles=#files + for name in walkdir(path) do + if find(name,"^%.") then + else + local mode=attributes(name,'mode') + if mode=="directory" then + if not func or func(name) then + noffiles=noffiles+1 + files[noffiles]=path.."/"..name + if recurse then + globdirs(path.."/"..name,recurse,func,files) + end + end + end + end + end + return files +end +dir.globdirs=globdirs function dir.ls(pattern) return concat(glob(pattern),"\n") end @@ -18848,8 +18873,8 @@ end -- of closure -- used libraries : l-lua.lua l-package.lua l-lpeg.lua l-function.lua l-string.lua l-table.lua l-io.lua l-number.lua l-set.lua l-os.lua l-file.lua l-gzip.lua l-md5.lua l-url.lua l-dir.lua l-boolean.lua l-unicode.lua l-math.lua util-str.lua util-tab.lua util-fil.lua util-sac.lua util-sto.lua util-prs.lua util-fmt.lua trac-set.lua trac-log.lua trac-inf.lua trac-pro.lua util-lua.lua util-deb.lua util-mrg.lua util-tpl.lua util-env.lua luat-env.lua lxml-tab.lua lxml-lpt.lua lxml-mis.lua lxml-aux.lua lxml-xml.lua trac-xml.lua data-ini.lua data-exp.lua data-env.lua data-tmp.lua data-met.lua data-res.lua data-pre.lua data-inp.lua data-out.lua data-fil.lua data-con.lua data-use.lua data-zip.lua data-tre.lua data-sch.lua data-lua.lua data-aux.lua data-tmf.lua data-lst.lua util-lib.lua luat-sta.lua luat-fmt.lua -- skipped libraries : - --- original bytes : 802032 --- stripped bytes : 291598 +-- original bytes : 802921 +-- stripped bytes : 291843 -- end library merge diff --git a/scripts/context/stubs/mswin/mtxrun.lua b/scripts/context/stubs/mswin/mtxrun.lua index f5bd13761..4d38a34f9 100644 --- a/scripts/context/stubs/mswin/mtxrun.lua +++ b/scripts/context/stubs/mswin/mtxrun.lua @@ -4031,7 +4031,7 @@ do -- create closure to overcome 200 locals limit package.loaded["l-dir"] = package.loaded["l-dir"] or true --- original size: 17358, stripped down to: 11378 +-- original size: 18247, stripped down to: 12022 if not modules then modules={} end modules ['l-dir']={ version=1.001, @@ -4295,6 +4295,31 @@ local function globfiles(path,recurse,func,files) return files end dir.globfiles=globfiles +local function globdirs(path,recurse,func,files) + if type(func)=="string" then + local s=func + func=function(name) return find(name,s) end + end + files=files or {} + local noffiles=#files + for name in walkdir(path) do + if find(name,"^%.") then + else + local mode=attributes(name,'mode') + if mode=="directory" then + if not func or func(name) then + noffiles=noffiles+1 + files[noffiles]=path.."/"..name + if recurse then + globdirs(path.."/"..name,recurse,func,files) + end + end + end + end + end + return files +end +dir.globdirs=globdirs function dir.ls(pattern) return concat(glob(pattern),"\n") end @@ -18848,8 +18873,8 @@ end -- of closure -- used libraries : l-lua.lua l-package.lua l-lpeg.lua l-function.lua l-string.lua l-table.lua l-io.lua l-number.lua l-set.lua l-os.lua l-file.lua l-gzip.lua l-md5.lua l-url.lua l-dir.lua l-boolean.lua l-unicode.lua l-math.lua util-str.lua util-tab.lua util-fil.lua util-sac.lua util-sto.lua util-prs.lua util-fmt.lua trac-set.lua trac-log.lua trac-inf.lua trac-pro.lua util-lua.lua util-deb.lua util-mrg.lua util-tpl.lua util-env.lua luat-env.lua lxml-tab.lua lxml-lpt.lua lxml-mis.lua lxml-aux.lua lxml-xml.lua trac-xml.lua data-ini.lua data-exp.lua data-env.lua data-tmp.lua data-met.lua data-res.lua data-pre.lua data-inp.lua data-out.lua data-fil.lua data-con.lua data-use.lua data-zip.lua data-tre.lua data-sch.lua data-lua.lua data-aux.lua data-tmf.lua data-lst.lua util-lib.lua luat-sta.lua luat-fmt.lua -- skipped libraries : - --- original bytes : 802032 --- stripped bytes : 291598 +-- original bytes : 802921 +-- stripped bytes : 291843 -- end library merge diff --git a/scripts/context/stubs/unix/mtxrun b/scripts/context/stubs/unix/mtxrun index f5bd13761..4d38a34f9 100644 --- a/scripts/context/stubs/unix/mtxrun +++ b/scripts/context/stubs/unix/mtxrun @@ -4031,7 +4031,7 @@ do -- create closure to overcome 200 locals limit package.loaded["l-dir"] = package.loaded["l-dir"] or true --- original size: 17358, stripped down to: 11378 +-- original size: 18247, stripped down to: 12022 if not modules then modules={} end modules ['l-dir']={ version=1.001, @@ -4295,6 +4295,31 @@ local function globfiles(path,recurse,func,files) return files end dir.globfiles=globfiles +local function globdirs(path,recurse,func,files) + if type(func)=="string" then + local s=func + func=function(name) return find(name,s) end + end + files=files or {} + local noffiles=#files + for name in walkdir(path) do + if find(name,"^%.") then + else + local mode=attributes(name,'mode') + if mode=="directory" then + if not func or func(name) then + noffiles=noffiles+1 + files[noffiles]=path.."/"..name + if recurse then + globdirs(path.."/"..name,recurse,func,files) + end + end + end + end + end + return files +end +dir.globdirs=globdirs function dir.ls(pattern) return concat(glob(pattern),"\n") end @@ -18848,8 +18873,8 @@ end -- of closure -- used libraries : l-lua.lua l-package.lua l-lpeg.lua l-function.lua l-string.lua l-table.lua l-io.lua l-number.lua l-set.lua l-os.lua l-file.lua l-gzip.lua l-md5.lua l-url.lua l-dir.lua l-boolean.lua l-unicode.lua l-math.lua util-str.lua util-tab.lua util-fil.lua util-sac.lua util-sto.lua util-prs.lua util-fmt.lua trac-set.lua trac-log.lua trac-inf.lua trac-pro.lua util-lua.lua util-deb.lua util-mrg.lua util-tpl.lua util-env.lua luat-env.lua lxml-tab.lua lxml-lpt.lua lxml-mis.lua lxml-aux.lua lxml-xml.lua trac-xml.lua data-ini.lua data-exp.lua data-env.lua data-tmp.lua data-met.lua data-res.lua data-pre.lua data-inp.lua data-out.lua data-fil.lua data-con.lua data-use.lua data-zip.lua data-tre.lua data-sch.lua data-lua.lua data-aux.lua data-tmf.lua data-lst.lua util-lib.lua luat-sta.lua luat-fmt.lua -- skipped libraries : - --- original bytes : 802032 --- stripped bytes : 291598 +-- original bytes : 802921 +-- stripped bytes : 291843 -- end library merge diff --git a/scripts/context/stubs/win64/mtxrun.lua b/scripts/context/stubs/win64/mtxrun.lua index f5bd13761..4d38a34f9 100644 --- a/scripts/context/stubs/win64/mtxrun.lua +++ b/scripts/context/stubs/win64/mtxrun.lua @@ -4031,7 +4031,7 @@ do -- create closure to overcome 200 locals limit package.loaded["l-dir"] = package.loaded["l-dir"] or true --- original size: 17358, stripped down to: 11378 +-- original size: 18247, stripped down to: 12022 if not modules then modules={} end modules ['l-dir']={ version=1.001, @@ -4295,6 +4295,31 @@ local function globfiles(path,recurse,func,files) return files end dir.globfiles=globfiles +local function globdirs(path,recurse,func,files) + if type(func)=="string" then + local s=func + func=function(name) return find(name,s) end + end + files=files or {} + local noffiles=#files + for name in walkdir(path) do + if find(name,"^%.") then + else + local mode=attributes(name,'mode') + if mode=="directory" then + if not func or func(name) then + noffiles=noffiles+1 + files[noffiles]=path.."/"..name + if recurse then + globdirs(path.."/"..name,recurse,func,files) + end + end + end + end + end + return files +end +dir.globdirs=globdirs function dir.ls(pattern) return concat(glob(pattern),"\n") end @@ -18848,8 +18873,8 @@ end -- of closure -- used libraries : l-lua.lua l-package.lua l-lpeg.lua l-function.lua l-string.lua l-table.lua l-io.lua l-number.lua l-set.lua l-os.lua l-file.lua l-gzip.lua l-md5.lua l-url.lua l-dir.lua l-boolean.lua l-unicode.lua l-math.lua util-str.lua util-tab.lua util-fil.lua util-sac.lua util-sto.lua util-prs.lua util-fmt.lua trac-set.lua trac-log.lua trac-inf.lua trac-pro.lua util-lua.lua util-deb.lua util-mrg.lua util-tpl.lua util-env.lua luat-env.lua lxml-tab.lua lxml-lpt.lua lxml-mis.lua lxml-aux.lua lxml-xml.lua trac-xml.lua data-ini.lua data-exp.lua data-env.lua data-tmp.lua data-met.lua data-res.lua data-pre.lua data-inp.lua data-out.lua data-fil.lua data-con.lua data-use.lua data-zip.lua data-tre.lua data-sch.lua data-lua.lua data-aux.lua data-tmf.lua data-lst.lua util-lib.lua luat-sta.lua luat-fmt.lua -- skipped libraries : - --- original bytes : 802032 --- stripped bytes : 291598 +-- original bytes : 802921 +-- stripped bytes : 291843 -- end library merge diff --git a/tex/context/base/context-version.pdf b/tex/context/base/context-version.pdf index ff56bbb53..e992b43cb 100644 Binary files a/tex/context/base/context-version.pdf and b/tex/context/base/context-version.pdf differ diff --git a/tex/context/base/mkiv/cont-new.mkiv b/tex/context/base/mkiv/cont-new.mkiv index 0b90445f6..36549b442 100644 --- a/tex/context/base/mkiv/cont-new.mkiv +++ b/tex/context/base/mkiv/cont-new.mkiv @@ -11,7 +11,7 @@ %C therefore copyrighted by \PRAGMA. See mreadme.pdf for %C details. -\newcontextversion{2016.09.05 10:28} +\newcontextversion{2016.09.06 00:28} %D This file is loaded at runtime, thereby providing an excellent place for %D hacks, patches, extensions and new features. diff --git a/tex/context/base/mkiv/context.css b/tex/context/base/mkiv/context.css index be1dad796..b0aa38573 100644 --- a/tex/context/base/mkiv/context.css +++ b/tex/context/base/mkiv/context.css @@ -18,6 +18,9 @@ a.dir-view:link, a.dir-view:active, a.dir-view:visited { .invalid { color: #FF0000 ; } +.invisible { + visibility: hidden ; +} button, .commonlink, .smallbutton { font-weight: bold ; font-size: 12px ; diff --git a/tex/context/base/mkiv/context.mkiv b/tex/context/base/mkiv/context.mkiv index cc9538cca..20c1ef0f0 100644 --- a/tex/context/base/mkiv/context.mkiv +++ b/tex/context/base/mkiv/context.mkiv @@ -39,7 +39,7 @@ %D up and the dependencies are more consistent. \edef\contextformat {\jobname} -\edef\contextversion{2016.09.05 10:28} +\edef\contextversion{2016.09.06 00:28} \edef\contextkind {beta} %D For those who want to use this: diff --git a/tex/context/base/mkiv/font-ext.lua b/tex/context/base/mkiv/font-ext.lua index 16e201bd3..4af279590 100644 --- a/tex/context/base/mkiv/font-ext.lua +++ b/tex/context/base/mkiv/font-ext.lua @@ -1155,3 +1155,17 @@ implement { end end } + +-- requested for latex but not supported unless really needed in context: +-- +-- registerotffeature { +-- name = "ignoremathconstants", +-- description = "ignore math constants table", +-- initializers = { +-- base = function(tfmdata,key,value) +-- if value then +-- tfmdata.mathparameters = nil +-- end +-- end +-- } +-- } diff --git a/tex/context/base/mkiv/font-map.lua b/tex/context/base/mkiv/font-map.lua index 7ebb7349a..e2254f8ca 100644 --- a/tex/context/base/mkiv/font-map.lua +++ b/tex/context/base/mkiv/font-map.lua @@ -12,7 +12,7 @@ local match, format, find, concat, gsub, lower = string.match, string.format, st local P, R, S, C, Ct, Cc, lpegmatch = lpeg.P, lpeg.R, lpeg.S, lpeg.C, lpeg.Ct, lpeg.Cc, lpeg.match local floor = math.floor local formatters = string.formatters -local sortedhash = table.sortedhash +local sortedhash, sortedkeys = table.sortedhash, table.sortedkeys local trace_loading = false trackers.register("fonts.loading", function(v) trace_loading = v end) local trace_mapping = false trackers.register("fonts.mapping", function(v) trace_mapping = v end) @@ -237,30 +237,37 @@ local namesplitter = Ct(C((1 - ligseparator - varseparator)^1) * (ligseparator * -- to be completed .. for fonts that use unicodes for ligatures which -- is a actually a bad thing and should be avoided in the first place -local overloads = allocate { - IJ = { name = "I_J", unicode = { 0x49, 0x4A }, mess = 0x0132 }, - ij = { name = "i_j", unicode = { 0x69, 0x6A }, mess = 0x0133 }, - ff = { name = "f_f", unicode = { 0x66, 0x66 }, mess = 0xFB00 }, - fi = { name = "f_i", unicode = { 0x66, 0x69 }, mess = 0xFB01 }, - fl = { name = "f_l", unicode = { 0x66, 0x6C }, mess = 0xFB02 }, - ffi = { name = "f_f_i", unicode = { 0x66, 0x66, 0x69 }, mess = 0xFB03 }, - ffl = { name = "f_f_l", unicode = { 0x66, 0x66, 0x6C }, mess = 0xFB04 }, - fj = { name = "f_j", unicode = { 0x66, 0x6A } }, - fk = { name = "f_k", unicode = { 0x66, 0x6B } }, -} - -for k, v in next, overloads do - local name = v.name - local mess = v.mess - if name then - overloads[name] = v - end - if mess then - overloads[mess] = v +do + + local overloads = allocate { + IJ = { name = "I_J", unicode = { 0x49, 0x4A }, mess = 0x0132 }, + ij = { name = "i_j", unicode = { 0x69, 0x6A }, mess = 0x0133 }, + ff = { name = "f_f", unicode = { 0x66, 0x66 }, mess = 0xFB00 }, + fi = { name = "f_i", unicode = { 0x66, 0x69 }, mess = 0xFB01 }, + fl = { name = "f_l", unicode = { 0x66, 0x6C }, mess = 0xFB02 }, + ffi = { name = "f_f_i", unicode = { 0x66, 0x66, 0x69 }, mess = 0xFB03 }, + ffl = { name = "f_f_l", unicode = { 0x66, 0x66, 0x6C }, mess = 0xFB04 }, + fj = { name = "f_j", unicode = { 0x66, 0x6A } }, + fk = { name = "f_k", unicode = { 0x66, 0x6B } }, + } + + local o = { } + + for k, v in next, overloads do + local name = v.name + local mess = v.mess + if name then + o[name] = v + end + if mess then + o[mess] = v + end + o[k] = v end -end -mappings.overloads = overloads + mappings.overloads = o + +end function mappings.addtounicode(data,filename,checklookups) local resources = data.resources @@ -273,6 +280,7 @@ function mappings.addtounicode(data,filename,checklookups) end local properties = data.properties local descriptions = data.descriptions + local overloads = mappings.overloads -- we need to move this code unicodes['space'] = unicodes['space'] or 32 unicodes['hyphen'] = unicodes['hyphen'] or 45 @@ -291,17 +299,25 @@ function mappings.addtounicode(data,filename,checklookups) local usedmap = cidinfo and fonts.cid.getmap(cidinfo) local uparser = makenameparser() -- hm, every time? if usedmap then - oparser = usedmap and makenameparser(cidinfo.ordering) - cidnames = usedmap.names - cidcodes = usedmap.unicodes + oparser = usedmap and makenameparser(cidinfo.ordering) + cidnames = usedmap.names + cidcodes = usedmap.unicodes end - local ns = 0 - local nl = 0 + local ns = 0 + local nl = 0 + -- + -- in order to avoid differences between runs due to hash randomization we + -- run over a sorted list -- - for du, glyph in next, descriptions do - local name = glyph.name + local dlist = sortedkeys(descriptions) + -- + -- for du, glyph in next, descriptions do + for i=1,#dlist do + local du = dlist[i] + local glyph = descriptions[du] + local name = glyph.name if name then - local overload = overloads[name] + local overload = overloads[name] or overloads[du] if overload then -- get rid of weird ligatures -- glyph.name = overload.name @@ -437,6 +453,11 @@ function mappings.addtounicode(data,filename,checklookups) end end end + else + local overload = overloads[du] + if overload then + glyph.unicode = overload.unicode + end end end if type(checklookups) == "function" then @@ -447,7 +468,10 @@ function mappings.addtounicode(data,filename,checklookups) local collected = false local unicoded = 0 - for unicode, glyph in next, descriptions do + -- for du, glyph in next, descriptions do + for i=1,#dlist do + local du = dlist[i] + local glyph = descriptions[du] if glyph.class == "ligature" and (force_ligatures or not glyph.unicode) then if not collected then collected = fonts.handlers.otf.readers.getcomponents(data) @@ -455,7 +479,7 @@ function mappings.addtounicode(data,filename,checklookups) break end end - local u = collected[unicode] -- always tables + local u = collected[du] -- always tables if u then local n = #u for i=1,n do @@ -479,7 +503,10 @@ function mappings.addtounicode(data,filename,checklookups) report_fonts("%n ligature tounicode mappings deduced from gsub ligature features",unicoded) end if trace_mapping then - for unic, glyph in sortedhash(descriptions) do + -- for unic, glyph in sortedhash(descriptions) do + for i=1,#dlist do + local du = dlist[i] + local glyph = descriptions[du] local name = glyph.name or "-" local index = glyph.index or 0 local unicode = glyph.unicode @@ -489,12 +516,12 @@ function mappings.addtounicode(data,filename,checklookups) for i=1,#unicode do unicodes[i] = formatters("%U",unicode[i]) end - report_fonts("internal slot %U, name %a, unicode %U, tounicode % t",index,name,unic,unicodes) + report_fonts("internal slot %U, name %a, unicode %U, tounicode % t",index,name,du,unicodes) else - report_fonts("internal slot %U, name %a, unicode %U, tounicode %U",index,name,unic,unicode) + report_fonts("internal slot %U, name %a, unicode %U, tounicode %U",index,name,du,unicode) end else - report_fonts("internal slot %U, name %a, unicode %U",index,name,unic) + report_fonts("internal slot %U, name %a, unicode %U",index,name,du) end end end diff --git a/tex/context/base/mkiv/font-mis.lua b/tex/context/base/mkiv/font-mis.lua index f610ee983..5a3bf4999 100644 --- a/tex/context/base/mkiv/font-mis.lua +++ b/tex/context/base/mkiv/font-mis.lua @@ -21,7 +21,7 @@ local readers = otf.readers if readers then - otf.version = otf.version or 3.026 + otf.version = otf.version or 3.027 otf.cache = otf.cache or containers.define("fonts", "otl", otf.version, true) function fonts.helpers.getfeatures(name,save) diff --git a/tex/context/base/mkiv/font-otl.lua b/tex/context/base/mkiv/font-otl.lua index 0662290bd..cf6603fc7 100644 --- a/tex/context/base/mkiv/font-otl.lua +++ b/tex/context/base/mkiv/font-otl.lua @@ -52,7 +52,7 @@ local report_otf = logs.reporter("fonts","otf loading") local fonts = fonts local otf = fonts.handlers.otf -otf.version = 3.026 -- beware: also sync font-mis.lua and in mtx-fonts +otf.version = 3.027 -- beware: also sync font-mis.lua and in mtx-fonts otf.cache = containers.define("fonts", "otl", otf.version, true) otf.svgcache = containers.define("fonts", "svg", otf.version, true) otf.pdfcache = containers.define("fonts", "pdf", otf.version, true) diff --git a/tex/context/base/mkiv/l-dir.lua b/tex/context/base/mkiv/l-dir.lua index 81ac65e50..db4125cd2 100644 --- a/tex/context/base/mkiv/l-dir.lua +++ b/tex/context/base/mkiv/l-dir.lua @@ -335,6 +335,36 @@ end dir.globfiles = globfiles +local function globdirs(path,recurse,func,files) -- func == pattern or function + if type(func) == "string" then + local s = func + func = function(name) return find(name,s) end + end + files = files or { } + local noffiles = #files + for name in walkdir(path) do + if find(name,"^%.") then + --- skip + else + local mode = attributes(name,'mode') + if mode == "directory" then + if not func or func(name) then + noffiles = noffiles + 1 + files[noffiles] = path .. "/" .. name + if recurse then + globdirs(path .. "/" .. name,recurse,func,files) + end + end + end + end + end + return files +end + +dir.globdirs = globdirs + +-- inspect(globdirs("e:/tmp")) + -- t = dir.glob("c:/data/develop/context/sources/**/????-*.tex") -- t = dir.glob("c:/data/develop/tex/texmf/**/*.tex") -- t = dir.glob("c:/data/develop/context/texmf/**/*.tex") diff --git a/tex/context/base/mkiv/node-met.lua b/tex/context/base/mkiv/node-met.lua index ece7b5149..ded2280c4 100644 --- a/tex/context/base/mkiv/node-met.lua +++ b/tex/context/base/mkiv/node-met.lua @@ -133,7 +133,7 @@ if not node.rangedimensions then -- LUATEXVERSION < 0.99 local dimensions = node.dimensions local getfield = node.getfield - local findtail = node.tail + local find_tail = node.tail function node.rangedimensions(parent,first,last) return dimensions( diff --git a/tex/context/base/mkiv/node-nut.lua b/tex/context/base/mkiv/node-nut.lua index 3b73ce134..7562e5292 100644 --- a/tex/context/base/mkiv/node-nut.lua +++ b/tex/context/base/mkiv/node-nut.lua @@ -230,7 +230,7 @@ if not direct.rangedimensions then -- LUATEXVERSION < 0.99 local dimensions = direct.dimensions local getfield = direct.getfield - local findtail = direct.tail + local find_tail = direct.tail function direct.rangedimensions(parent,first,last) return dimensions( diff --git a/tex/context/base/mkiv/status-files.pdf b/tex/context/base/mkiv/status-files.pdf index 00e9651dd..ed02cb42b 100644 Binary files a/tex/context/base/mkiv/status-files.pdf and b/tex/context/base/mkiv/status-files.pdf differ diff --git a/tex/context/base/mkiv/status-lua.pdf b/tex/context/base/mkiv/status-lua.pdf index c822d48db..9a312c723 100644 Binary files a/tex/context/base/mkiv/status-lua.pdf and b/tex/context/base/mkiv/status-lua.pdf differ diff --git a/tex/context/interface/mkiv/i-context.pdf b/tex/context/interface/mkiv/i-context.pdf index 0d6937a5d..b286e539b 100644 Binary files a/tex/context/interface/mkiv/i-context.pdf and b/tex/context/interface/mkiv/i-context.pdf differ diff --git a/tex/context/interface/mkiv/i-readme.pdf b/tex/context/interface/mkiv/i-readme.pdf index 69de19ffd..9b256b9a6 100644 Binary files a/tex/context/interface/mkiv/i-readme.pdf and b/tex/context/interface/mkiv/i-readme.pdf differ diff --git a/tex/generic/context/luatex/luatex-fonts-ext.lua b/tex/generic/context/luatex/luatex-fonts-ext.lua index 9d8d3070b..0b61e27fd 100644 --- a/tex/generic/context/luatex/luatex-fonts-ext.lua +++ b/tex/generic/context/luatex/luatex-fonts-ext.lua @@ -270,3 +270,18 @@ otffeatures.register { node = reencode, } } + +local function ignore(tfmdata,key,value) + if value then + tfmdata.mathparameters = nil + end +end + +otffeatures.register { + name = "ignoremathconstants", + description = "ignore math constants table", + initializers = { + base = ignore, + node = ignore, + } +} diff --git a/tex/generic/context/luatex/luatex-fonts-merged.lua b/tex/generic/context/luatex/luatex-fonts-merged.lua index 861732578..d86c84892 100644 --- a/tex/generic/context/luatex/luatex-fonts-merged.lua +++ b/tex/generic/context/luatex/luatex-fonts-merged.lua @@ -1,6 +1,6 @@ -- merged file : c:/data/develop/context/sources/luatex-fonts-merged.lua -- parent file : c:/data/develop/context/sources/luatex-fonts.lua --- merge date : 09/05/16 10:28:36 +-- merge date : 09/06/16 00:28:22 do -- begin closure to overcome local limits and interference @@ -7166,7 +7166,7 @@ local match,format,find,concat,gsub,lower=string.match,string.format,string.find local P,R,S,C,Ct,Cc,lpegmatch=lpeg.P,lpeg.R,lpeg.S,lpeg.C,lpeg.Ct,lpeg.Cc,lpeg.match local floor=math.floor local formatters=string.formatters -local sortedhash=table.sortedhash +local sortedhash,sortedkeys=table.sortedhash,table.sortedkeys local trace_loading=false trackers.register("fonts.loading",function(v) trace_loading=v end) local trace_mapping=false trackers.register("fonts.mapping",function(v) trace_mapping=v end) local report_fonts=logs.reporter("fonts","loading") @@ -7258,28 +7258,32 @@ mappings.fromunicode16=fromunicode16 local ligseparator=P("_") local varseparator=P(".") local namesplitter=Ct(C((1-ligseparator-varseparator)^1)*(ligseparator*C((1-ligseparator-varseparator)^1))^0) -local overloads=allocate { - IJ={ name="I_J",unicode={ 0x49,0x4A },mess=0x0132 }, - ij={ name="i_j",unicode={ 0x69,0x6A },mess=0x0133 }, - ff={ name="f_f",unicode={ 0x66,0x66 },mess=0xFB00 }, - fi={ name="f_i",unicode={ 0x66,0x69 },mess=0xFB01 }, - fl={ name="f_l",unicode={ 0x66,0x6C },mess=0xFB02 }, - ffi={ name="f_f_i",unicode={ 0x66,0x66,0x69 },mess=0xFB03 }, - ffl={ name="f_f_l",unicode={ 0x66,0x66,0x6C },mess=0xFB04 }, - fj={ name="f_j",unicode={ 0x66,0x6A } }, - fk={ name="f_k",unicode={ 0x66,0x6B } }, -} -for k,v in next,overloads do - local name=v.name - local mess=v.mess - if name then - overloads[name]=v - end - if mess then - overloads[mess]=v +do + local overloads=allocate { + IJ={ name="I_J",unicode={ 0x49,0x4A },mess=0x0132 }, + ij={ name="i_j",unicode={ 0x69,0x6A },mess=0x0133 }, + ff={ name="f_f",unicode={ 0x66,0x66 },mess=0xFB00 }, + fi={ name="f_i",unicode={ 0x66,0x69 },mess=0xFB01 }, + fl={ name="f_l",unicode={ 0x66,0x6C },mess=0xFB02 }, + ffi={ name="f_f_i",unicode={ 0x66,0x66,0x69 },mess=0xFB03 }, + ffl={ name="f_f_l",unicode={ 0x66,0x66,0x6C },mess=0xFB04 }, + fj={ name="f_j",unicode={ 0x66,0x6A } }, + fk={ name="f_k",unicode={ 0x66,0x6B } }, + } + local o={} + for k,v in next,overloads do + local name=v.name + local mess=v.mess + if name then + o[name]=v + end + if mess then + o[mess]=v + end + o[k]=v end + mappings.overloads=o end -mappings.overloads=overloads function mappings.addtounicode(data,filename,checklookups) local resources=data.resources local unicodes=resources.unicodes @@ -7291,6 +7295,7 @@ function mappings.addtounicode(data,filename,checklookups) end local properties=data.properties local descriptions=data.descriptions + local overloads=mappings.overloads unicodes['space']=unicodes['space'] or 32 unicodes['hyphen']=unicodes['hyphen'] or 45 unicodes['zwj']=unicodes['zwj'] or 0x200D @@ -7313,10 +7318,13 @@ function mappings.addtounicode(data,filename,checklookups) end local ns=0 local nl=0 - for du,glyph in next,descriptions do + local dlist=sortedkeys(descriptions) + for i=1,#dlist do + local du=dlist[i] + local glyph=descriptions[du] local name=glyph.name if name then - local overload=overloads[name] + local overload=overloads[name] or overloads[du] if overload then glyph.unicode=overload.unicode else @@ -7435,6 +7443,11 @@ function mappings.addtounicode(data,filename,checklookups) end end end + else + local overload=overloads[du] + if overload then + glyph.unicode=overload.unicode + end end end if type(checklookups)=="function" then @@ -7442,7 +7455,9 @@ function mappings.addtounicode(data,filename,checklookups) end local collected=false local unicoded=0 - for unicode,glyph in next,descriptions do + for i=1,#dlist do + local du=dlist[i] + local glyph=descriptions[du] if glyph.class=="ligature" and (force_ligatures or not glyph.unicode) then if not collected then collected=fonts.handlers.otf.readers.getcomponents(data) @@ -7450,7 +7465,7 @@ function mappings.addtounicode(data,filename,checklookups) break end end - local u=collected[unicode] + local u=collected[du] if u then local n=#u for i=1,n do @@ -7474,7 +7489,9 @@ function mappings.addtounicode(data,filename,checklookups) report_fonts("%n ligature tounicode mappings deduced from gsub ligature features",unicoded) end if trace_mapping then - for unic,glyph in sortedhash(descriptions) do + for i=1,#dlist do + local du=dlist[i] + local glyph=descriptions[du] local name=glyph.name or "-" local index=glyph.index or 0 local unicode=glyph.unicode @@ -7484,12 +7501,12 @@ function mappings.addtounicode(data,filename,checklookups) for i=1,#unicode do unicodes[i]=formatters("%U",unicode[i]) end - report_fonts("internal slot %U, name %a, unicode %U, tounicode % t",index,name,unic,unicodes) + report_fonts("internal slot %U, name %a, unicode %U, tounicode % t",index,name,du,unicodes) else - report_fonts("internal slot %U, name %a, unicode %U, tounicode %U",index,name,unic,unicode) + report_fonts("internal slot %U, name %a, unicode %U, tounicode %U",index,name,du,unicode) end else - report_fonts("internal slot %U, name %a, unicode %U",index,name,unic) + report_fonts("internal slot %U, name %a, unicode %U",index,name,du) end end end @@ -15322,7 +15339,7 @@ local trace_defining=false registertracker("fonts.defining",function(v) trace_de local report_otf=logs.reporter("fonts","otf loading") local fonts=fonts local otf=fonts.handlers.otf -otf.version=3.026 +otf.version=3.027 otf.cache=containers.define("fonts","otl",otf.version,true) otf.svgcache=containers.define("fonts","svg",otf.version,true) otf.pdfcache=containers.define("fonts","pdf",otf.version,true) @@ -26613,6 +26630,19 @@ otffeatures.register { node=reencode, } } +local function ignore(tfmdata,key,value) + if value then + tfmdata.mathparameters=nil + end +end +otffeatures.register { + name="ignoremathconstants", + description="ignore math constants table", + initializers={ + base=ignore, + node=ignore, + } +} end -- closure -- cgit v1.2.3