diff options
22 files changed, 37 insertions, 24 deletions
diff --git a/doc/context/documents/general/qrcs/setup-cs.pdf b/doc/context/documents/general/qrcs/setup-cs.pdf Binary files differindex cd07f659f..36acb37d9 100644 --- a/doc/context/documents/general/qrcs/setup-cs.pdf +++ b/doc/context/documents/general/qrcs/setup-cs.pdf diff --git a/doc/context/documents/general/qrcs/setup-de.pdf b/doc/context/documents/general/qrcs/setup-de.pdf Binary files differindex b5f8e7ae3..9424a661d 100644 --- a/doc/context/documents/general/qrcs/setup-de.pdf +++ b/doc/context/documents/general/qrcs/setup-de.pdf diff --git a/doc/context/documents/general/qrcs/setup-en.pdf b/doc/context/documents/general/qrcs/setup-en.pdf Binary files differindex 361ff877c..b32bd0a85 100644 --- a/doc/context/documents/general/qrcs/setup-en.pdf +++ b/doc/context/documents/general/qrcs/setup-en.pdf diff --git a/doc/context/documents/general/qrcs/setup-fr.pdf b/doc/context/documents/general/qrcs/setup-fr.pdf Binary files differindex cc936ec8a..ae7c1d274 100644 --- a/doc/context/documents/general/qrcs/setup-fr.pdf +++ b/doc/context/documents/general/qrcs/setup-fr.pdf diff --git a/doc/context/documents/general/qrcs/setup-it.pdf b/doc/context/documents/general/qrcs/setup-it.pdf Binary files differindex 351ac9209..17160c278 100644 --- a/doc/context/documents/general/qrcs/setup-it.pdf +++ b/doc/context/documents/general/qrcs/setup-it.pdf diff --git a/doc/context/documents/general/qrcs/setup-nl.pdf b/doc/context/documents/general/qrcs/setup-nl.pdf Binary files differindex 849b70ece..0598ce45e 100644 --- a/doc/context/documents/general/qrcs/setup-nl.pdf +++ b/doc/context/documents/general/qrcs/setup-nl.pdf diff --git a/doc/context/documents/general/qrcs/setup-ro.pdf b/doc/context/documents/general/qrcs/setup-ro.pdf Binary files differindex d04e3709e..50cf44626 100644 --- a/doc/context/documents/general/qrcs/setup-ro.pdf +++ b/doc/context/documents/general/qrcs/setup-ro.pdf diff --git a/tex/context/base/mkii/cont-new.mkii b/tex/context/base/mkii/cont-new.mkii index 293a87f19..8d3267e35 100644 --- a/tex/context/base/mkii/cont-new.mkii +++ b/tex/context/base/mkii/cont-new.mkii @@ -11,7 +11,7 @@ %C therefore copyrighted by \PRAGMA. See mreadme.pdf for %C details. -\newcontextversion{2017.05.09 10:14} +\newcontextversion{2017.05.10 10:41} %D This file is loaded at runtime, thereby providing an %D excellent place for hacks, patches, extensions and new diff --git a/tex/context/base/mkii/context.mkii b/tex/context/base/mkii/context.mkii index ee0cb8adf..0386cce0c 100644 --- a/tex/context/base/mkii/context.mkii +++ b/tex/context/base/mkii/context.mkii @@ -20,7 +20,7 @@ %D your styles an modules. \edef\contextformat {\jobname} -\edef\contextversion{2017.05.09 10:14} +\edef\contextversion{2017.05.10 10:41} %D For those who want to use this: diff --git a/tex/context/base/mkiv/cont-new.mkiv b/tex/context/base/mkiv/cont-new.mkiv index 8412a0bce..e05965282 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{2017.05.09 10:14} +\newcontextversion{2017.05.10 10:41} %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.mkiv b/tex/context/base/mkiv/context.mkiv index be0623bd4..61c837076 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{2017.05.09 10:14} +\edef\contextversion{2017.05.10 10:41} \edef\contextkind {beta} %D For those who want to use this: diff --git a/tex/context/base/mkiv/font-otj.lua b/tex/context/base/mkiv/font-otj.lua index fb526ecbb..634f8a83c 100644 --- a/tex/context/base/mkiv/font-otj.lua +++ b/tex/context/base/mkiv/font-otj.lua @@ -1021,7 +1021,7 @@ local function inject_everything(head,where) -- end if pn.checkmark then local wn = getwidth(n) -- in arial marks have widths - if wn ~= 0 then + if wn and wn ~= 0 then wn = wn/2 if trace_injections then report_injections("correcting non zero width mark %C",getchar(n)) @@ -1228,7 +1228,7 @@ local function inject_everything(head,where) if hasmarks then local pm = i.markbasenode if pm then - processmark(pm,current,i) + processmark(pm,n,i) end end end @@ -1260,7 +1260,7 @@ local function inject_everything(head,where) if hasmarks then local pm = i.markbasenode if pm then - processmark(pm,current,i) + processmark(pm,n,i) end end end @@ -1292,7 +1292,7 @@ local function inject_everything(head,where) if hasmarks then local pm = i.markbasenode if pm then - processmark(pm,current,i) + processmark(pm,n,i) end end end diff --git a/tex/context/base/mkiv/font-sel.lua b/tex/context/base/mkiv/font-sel.lua index 455310e14..b4dd9a555 100644 --- a/tex/context/base/mkiv/font-sel.lua +++ b/tex/context/base/mkiv/font-sel.lua @@ -562,7 +562,7 @@ function selectfont.registerfontalternative(alternative) end function selectfont.registerfallback(index) - local data = data[index] + local data = data[index] local fontclass = data.metadata.typeface local fontstyle = data.metadata.style local fallback = fallbacks[fontclass] diff --git a/tex/context/base/mkiv/grph-con.lua b/tex/context/base/mkiv/grph-con.lua index 65bb91631..49b5952df 100644 --- a/tex/context/base/mkiv/grph-con.lua +++ b/tex/context/base/mkiv/grph-con.lua @@ -53,7 +53,10 @@ do -- eps | ps local runner = sandbox.registerrunner { name = "eps to pdf", - program = { windows = "gswin64c", unix = "gs" }, + program = { + windows = os.platform == "win64" and "gswin64c" or "gswin32c", + unix = "gs", + }, template = longtostring [[ -q -sDEVICE=pdfwrite diff --git a/tex/context/base/mkiv/math-act.lua b/tex/context/base/mkiv/math-act.lua index ee78b64f0..ead26bd4f 100644 --- a/tex/context/base/mkiv/math-act.lua +++ b/tex/context/base/mkiv/math-act.lua @@ -9,7 +9,7 @@ if not modules then modules = { } end modules ['math-act'] = { -- Here we tweak some font properties (if needed). local type, next = type, next -local fastcopy = table.fastcopy +local fastcopy, insert, remove = table.fastcopy, table.insert, table.remove local formatters = string.formatters local trace_defining = false trackers.register("math.defining", function(v) trace_defining = v end) @@ -674,6 +674,9 @@ end function mathematics.injectfallbacks(target,original) if #stack > 0 then -- for now + if trace_collecting then + report_math("stack overflow in math fallbacks") + end return end local properties = original.properties @@ -684,7 +687,7 @@ function mathematics.injectfallbacks(target,original) if fallbacks then local definitions = fonts.collections.definitions[fallbacks] if definitions then - table.insert(stack, { + insert(stack, { target = target, original = original, list = { }, @@ -710,7 +713,7 @@ function mathematics.injectfallbacks(target,original) end function mathematics.finishfallbacks() - local top = table.remove(stack) + local top = remove(stack) if not top then report_math("finish error in math fallbacks") return @@ -725,7 +728,7 @@ function mathematics.finishfallbacks() local fallbacks = specification.fallbacks if fallbacks then local definitions = fonts.collections.definitions[fallbacks] - if definitions then + if definitions and #definitions > 0 then if trace_collecting then report_math("adding fallback characters to font %a",specification.hash) end @@ -770,6 +773,7 @@ function mathematics.finishfallbacks() end characters[unic] = copiedglyph(target,characters,chars,unicode,index) done[unic] = true + else end end for unicode = start, stop do @@ -786,6 +790,8 @@ function mathematics.finishfallbacks() xlist = nil xtarget = nil xoriginal = nil + elseif trace_collecting then + report_math("no fallback characters added to font %a",specification.hash) end end end diff --git a/tex/context/base/mkiv/math-noa.lua b/tex/context/base/mkiv/math-noa.lua index 3a45bb30d..4db35c2d6 100644 --- a/tex/context/base/mkiv/math-noa.lua +++ b/tex/context/base/mkiv/math-noa.lua @@ -23,6 +23,7 @@ if not modules then modules = { } end modules ['math-noa'] = { -- nota bene: uunderdelimiter uoverdelimiter etc are radicals (we have 5 types) +local next, tonumber = next, tonumber local utfchar, utfbyte = utf.char, utf.byte local formatters, gmatch = string.formatters, string.gmatch local sortedhash = table.sortedhash @@ -378,7 +379,6 @@ noads.process = processnoads noads.processnested = processnested noads.processouter = process - -- experiment (when not present fall back to fam 0) -- needs documentation local unknowns = { } @@ -541,7 +541,8 @@ do processors.relocate = { } local function report_remap(tag,id,old,new,extra) - report_remapping("remapping %s in font %s from %C to %C%s",tag,id,old,new,extra) + report_remapping("remapping %s in font (%s,%s) from %C to %C%s", + tag,id,fontdata[id].properties.fontname or "",old,new,extra) end local remapalphabets = mathematics.remapalphabets diff --git a/tex/context/base/mkiv/node-syn.lua b/tex/context/base/mkiv/node-syn.lua index 31243cd60..1b8e07382 100644 --- a/tex/context/base/mkiv/node-syn.lua +++ b/tex/context/base/mkiv/node-syn.lua @@ -67,6 +67,9 @@ local get_synctex_fields = nuts.get_synctex_fields local set_synctex_fields = nuts.set_synctex_fields local set_syntex_tag = nodes.set_synctex_tag +local getcount = tex.getcount +local setcount = tex.setcount + local getpos = function() getpos = backends.codeinjections.getpos return getpos() @@ -480,11 +483,11 @@ local synctex = false directives.register("system.synctex", function(v) if v == "context" then luatex.synctex.enable() - tex.normalsynctex = 0 + setcount("normalsynctex",0) synctex = true else v = tonumber(v) or (toboolean(v,true) and 1) or (v == "zipped" and 1) or (v == "unzipped" and -1) or 0 - tex.normalsynctex = v + setcount("normalsynctex",v) synctex = v ~= 0 end if synctex then @@ -495,7 +498,7 @@ directives.register("system.synctex", function(v) end) statistics.register("synctex tracing",function() - if synctex or tex.normalsynctex ~= 0 then + if synctex or getcount("normalsynctex") ~= 0 then return "synctex has been enabled (extra log file generated)" end end) diff --git a/tex/context/base/mkiv/status-files.pdf b/tex/context/base/mkiv/status-files.pdf Binary files differindex c6da00b91..4948cc2fb 100644 --- a/tex/context/base/mkiv/status-files.pdf +++ b/tex/context/base/mkiv/status-files.pdf diff --git a/tex/context/base/mkiv/status-lua.pdf b/tex/context/base/mkiv/status-lua.pdf Binary files differindex 89f2632f3..16575aea7 100644 --- a/tex/context/base/mkiv/status-lua.pdf +++ b/tex/context/base/mkiv/status-lua.pdf diff --git a/tex/context/interface/mkiv/i-context.pdf b/tex/context/interface/mkiv/i-context.pdf Binary files differindex 361ff877c..b32bd0a85 100644 --- a/tex/context/interface/mkiv/i-context.pdf +++ b/tex/context/interface/mkiv/i-context.pdf diff --git a/tex/context/interface/mkiv/i-readme.pdf b/tex/context/interface/mkiv/i-readme.pdf Binary files differindex 32a57f497..e0cfaf5b3 100644 --- a/tex/context/interface/mkiv/i-readme.pdf +++ b/tex/context/interface/mkiv/i-readme.pdf diff --git a/tex/generic/context/luatex/luatex-fonts-merged.lua b/tex/generic/context/luatex/luatex-fonts-merged.lua index 90e4e7624..953d2bf00 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 : 05/09/17 10:14:12 +-- merge date : 05/10/17 10:41:46 do -- begin closure to overcome local limits and interference @@ -19827,7 +19827,7 @@ local function inject_everything(head,where) ox=px-pn.markx if pn.checkmark then local wn=getwidth(n) - if wn~=0 then + if wn and wn~=0 then wn=wn/2 if trace_injections then report_injections("correcting non zero width mark %C",getchar(n)) @@ -20014,7 +20014,7 @@ local function inject_everything(head,where) if hasmarks then local pm=i.markbasenode if pm then - processmark(pm,current,i) + processmark(pm,n,i) end end end @@ -20044,7 +20044,7 @@ local function inject_everything(head,where) if hasmarks then local pm=i.markbasenode if pm then - processmark(pm,current,i) + processmark(pm,n,i) end end end @@ -20074,7 +20074,7 @@ local function inject_everything(head,where) if hasmarks then local pm=i.markbasenode if pm then - processmark(pm,current,i) + processmark(pm,n,i) end end end |