diff options
-rw-r--r-- | scripts/context/lua/mtxrun.lua | 17 | ||||
-rw-r--r-- | scripts/context/stubs/mswin/mtxrun.lua | 17 | ||||
-rw-r--r-- | scripts/context/stubs/unix/mtxrun | 17 | ||||
-rw-r--r-- | tex/context/base/cont-new.mkiv | 2 | ||||
-rw-r--r-- | tex/context/base/context-version.pdf | bin | 4128 -> 4128 bytes | |||
-rw-r--r-- | tex/context/base/context.mkiv | 2 | ||||
-rw-r--r-- | tex/context/base/data-res.lua | 3 | ||||
-rw-r--r-- | tex/context/base/font-otf.lua | 3 | ||||
-rw-r--r-- | tex/context/base/font-otn.lua | 15 | ||||
-rw-r--r-- | tex/context/base/font-sel.lua | 10 | ||||
-rw-r--r-- | tex/context/base/l-os.lua | 3 | ||||
-rw-r--r-- | tex/context/base/spac-ali.mkiv | 7 | ||||
-rw-r--r-- | tex/context/base/status-files.pdf | bin | 24724 -> 24679 bytes | |||
-rw-r--r-- | tex/context/base/status-lua.pdf | bin | 227331 -> 227449 bytes | |||
-rw-r--r-- | tex/context/base/util-lib.lua | 3 | ||||
-rw-r--r-- | tex/context/base/util-sql-imp-swiglib.lua | 4 | ||||
-rw-r--r-- | tex/generic/context/luatex/luatex-fonts-merged.lua | 15 |
17 files changed, 79 insertions, 39 deletions
diff --git a/scripts/context/lua/mtxrun.lua b/scripts/context/lua/mtxrun.lua index 7810bac01..27893cf5e 100644 --- a/scripts/context/lua/mtxrun.lua +++ b/scripts/context/lua/mtxrun.lua @@ -2575,7 +2575,7 @@ do -- create closure to overcome 200 locals limit package.loaded["l-os"] = package.loaded["l-os"] or true --- original size: 15915, stripped down to: 9551 +-- original size: 15946, stripped down to: 9548 if not modules then modules={} end modules ['l-os']={ version=1.001, @@ -2726,7 +2726,7 @@ elseif os.type=="windows" then function os.resolvers.platform(t,k) local platform,architecture="",os.getenv("PROCESSOR_ARCHITECTURE") or "" if find(architecture,"AMD64") then - platform="mswin-64" + platform="win64" else platform="mswin" end @@ -13452,7 +13452,7 @@ do -- create closure to overcome 200 locals limit package.loaded["data-res"] = package.loaded["data-res"] or true --- original size: 61782, stripped down to: 42959 +-- original size: 61799, stripped down to: 42957 if not modules then modules={} end modules ['data-res']={ version=1.001, @@ -14706,7 +14706,7 @@ local function findwildcardfiles(filename,allresults,result) for k=1,#hashes do local hash=hashes[k] local hashname,hashtype=hash.name,hash.type - if doit(path,files[hashname][bname],bname,hashname,hashtype,result,allresults) then done=true end + if doit(path,files[hashname][base],base,hashname,hashtype,result,allresults) then done=true end if done and not allresults then break end end end @@ -16213,7 +16213,7 @@ do -- create closure to overcome 200 locals limit package.loaded["util-lib"] = package.loaded["util-lib"] or true --- original size: 11205, stripped down to: 5618 +-- original size: 11340, stripped down to: 5739 if not modules then modules={} end modules ['util-lib']={ version=1.001, @@ -16233,6 +16233,9 @@ local function requireswiglib(required,version) local trace_swiglib=trace_swiglib or package.helpers.trace local library=loaded[required] if library==nil then + if trace_swiglib then + report_swiglib("requiring library %a with version %a",required,version or "any") + end local required_full=gsub(required,"%.","/") local required_path=pathpart(required_full) local required_base=nameonly(required_full) @@ -16627,8 +16630,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-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 : 683633 --- stripped bytes : 242022 +-- original bytes : 683816 +-- stripped bytes : 242089 -- end library merge diff --git a/scripts/context/stubs/mswin/mtxrun.lua b/scripts/context/stubs/mswin/mtxrun.lua index 7810bac01..27893cf5e 100644 --- a/scripts/context/stubs/mswin/mtxrun.lua +++ b/scripts/context/stubs/mswin/mtxrun.lua @@ -2575,7 +2575,7 @@ do -- create closure to overcome 200 locals limit package.loaded["l-os"] = package.loaded["l-os"] or true --- original size: 15915, stripped down to: 9551 +-- original size: 15946, stripped down to: 9548 if not modules then modules={} end modules ['l-os']={ version=1.001, @@ -2726,7 +2726,7 @@ elseif os.type=="windows" then function os.resolvers.platform(t,k) local platform,architecture="",os.getenv("PROCESSOR_ARCHITECTURE") or "" if find(architecture,"AMD64") then - platform="mswin-64" + platform="win64" else platform="mswin" end @@ -13452,7 +13452,7 @@ do -- create closure to overcome 200 locals limit package.loaded["data-res"] = package.loaded["data-res"] or true --- original size: 61782, stripped down to: 42959 +-- original size: 61799, stripped down to: 42957 if not modules then modules={} end modules ['data-res']={ version=1.001, @@ -14706,7 +14706,7 @@ local function findwildcardfiles(filename,allresults,result) for k=1,#hashes do local hash=hashes[k] local hashname,hashtype=hash.name,hash.type - if doit(path,files[hashname][bname],bname,hashname,hashtype,result,allresults) then done=true end + if doit(path,files[hashname][base],base,hashname,hashtype,result,allresults) then done=true end if done and not allresults then break end end end @@ -16213,7 +16213,7 @@ do -- create closure to overcome 200 locals limit package.loaded["util-lib"] = package.loaded["util-lib"] or true --- original size: 11205, stripped down to: 5618 +-- original size: 11340, stripped down to: 5739 if not modules then modules={} end modules ['util-lib']={ version=1.001, @@ -16233,6 +16233,9 @@ local function requireswiglib(required,version) local trace_swiglib=trace_swiglib or package.helpers.trace local library=loaded[required] if library==nil then + if trace_swiglib then + report_swiglib("requiring library %a with version %a",required,version or "any") + end local required_full=gsub(required,"%.","/") local required_path=pathpart(required_full) local required_base=nameonly(required_full) @@ -16627,8 +16630,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-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 : 683633 --- stripped bytes : 242022 +-- original bytes : 683816 +-- stripped bytes : 242089 -- end library merge diff --git a/scripts/context/stubs/unix/mtxrun b/scripts/context/stubs/unix/mtxrun index 7810bac01..27893cf5e 100644 --- a/scripts/context/stubs/unix/mtxrun +++ b/scripts/context/stubs/unix/mtxrun @@ -2575,7 +2575,7 @@ do -- create closure to overcome 200 locals limit package.loaded["l-os"] = package.loaded["l-os"] or true --- original size: 15915, stripped down to: 9551 +-- original size: 15946, stripped down to: 9548 if not modules then modules={} end modules ['l-os']={ version=1.001, @@ -2726,7 +2726,7 @@ elseif os.type=="windows" then function os.resolvers.platform(t,k) local platform,architecture="",os.getenv("PROCESSOR_ARCHITECTURE") or "" if find(architecture,"AMD64") then - platform="mswin-64" + platform="win64" else platform="mswin" end @@ -13452,7 +13452,7 @@ do -- create closure to overcome 200 locals limit package.loaded["data-res"] = package.loaded["data-res"] or true --- original size: 61782, stripped down to: 42959 +-- original size: 61799, stripped down to: 42957 if not modules then modules={} end modules ['data-res']={ version=1.001, @@ -14706,7 +14706,7 @@ local function findwildcardfiles(filename,allresults,result) for k=1,#hashes do local hash=hashes[k] local hashname,hashtype=hash.name,hash.type - if doit(path,files[hashname][bname],bname,hashname,hashtype,result,allresults) then done=true end + if doit(path,files[hashname][base],base,hashname,hashtype,result,allresults) then done=true end if done and not allresults then break end end end @@ -16213,7 +16213,7 @@ do -- create closure to overcome 200 locals limit package.loaded["util-lib"] = package.loaded["util-lib"] or true --- original size: 11205, stripped down to: 5618 +-- original size: 11340, stripped down to: 5739 if not modules then modules={} end modules ['util-lib']={ version=1.001, @@ -16233,6 +16233,9 @@ local function requireswiglib(required,version) local trace_swiglib=trace_swiglib or package.helpers.trace local library=loaded[required] if library==nil then + if trace_swiglib then + report_swiglib("requiring library %a with version %a",required,version or "any") + end local required_full=gsub(required,"%.","/") local required_path=pathpart(required_full) local required_base=nameonly(required_full) @@ -16627,8 +16630,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-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 : 683633 --- stripped bytes : 242022 +-- original bytes : 683816 +-- stripped bytes : 242089 -- end library merge diff --git a/tex/context/base/cont-new.mkiv b/tex/context/base/cont-new.mkiv index db204d665..1f720a526 100644 --- a/tex/context/base/cont-new.mkiv +++ b/tex/context/base/cont-new.mkiv @@ -11,7 +11,7 @@ %C therefore copyrighted by \PRAGMA. See mreadme.pdf for %C details. -\newcontextversion{2013.11.22 22:29} +\newcontextversion{2013.11.25 20:09} %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/context-version.pdf b/tex/context/base/context-version.pdf Binary files differindex 4df980db9..cd0e34fc4 100644 --- a/tex/context/base/context-version.pdf +++ b/tex/context/base/context-version.pdf diff --git a/tex/context/base/context.mkiv b/tex/context/base/context.mkiv index 2f74afd60..69ef0a112 100644 --- a/tex/context/base/context.mkiv +++ b/tex/context/base/context.mkiv @@ -25,7 +25,7 @@ %D up and the dependencies are more consistent. \edef\contextformat {\jobname} -\edef\contextversion{2013.11.22 22:29} +\edef\contextversion{2013.11.25 20:09} \edef\contextkind {beta} %D For those who want to use this: diff --git a/tex/context/base/data-res.lua b/tex/context/base/data-res.lua index f1ddb62aa..64c38f82c 100644 --- a/tex/context/base/data-res.lua +++ b/tex/context/base/data-res.lua @@ -1526,10 +1526,11 @@ local function findwildcardfiles(filename,allresults,result) -- todo: remap: and end else local hashes = instance.hashes +-- inspect(hashes) for k=1,#hashes do local hash = hashes[k] local hashname, hashtype = hash.name, hash.type - if doit(path,files[hashname][bname],bname,hashname,hashtype,result,allresults) then done = true end + if doit(path,files[hashname][base],base,hashname,hashtype,result,allresults) then done = true end if done and not allresults then break end end end diff --git a/tex/context/base/font-otf.lua b/tex/context/base/font-otf.lua index e2fd845a0..b2ca54615 100644 --- a/tex/context/base/font-otf.lua +++ b/tex/context/base/font-otf.lua @@ -2025,6 +2025,9 @@ local function copytotfm(data,cache_id) properties.space = spacer properties.encodingbytes = 2 properties.format = data.format or otf_format(filename) or formats.otf +-- if units ~= 1000 and format ~= "truetype" then +-- properties.format = "truetype" +-- end properties.noglyphnames = true properties.filename = filename properties.fontname = fontname diff --git a/tex/context/base/font-otn.lua b/tex/context/base/font-otn.lua index 3733d51c2..d9e4b9b64 100644 --- a/tex/context/base/font-otn.lua +++ b/tex/context/base/font-otn.lua @@ -624,9 +624,9 @@ function handlers.gsub_ligature(head,start,kind,lookupname,ligature,sequence) break end end - if stop then - local lig = ligature.ligature - if lig then + local lig = ligature.ligature + if lig then + if stop then if trace_ligatures then local stopchar = stop.char head, start = toligature(kind,lookupname,head,start,stop,lig,skipmark,discfound) @@ -636,8 +636,15 @@ function handlers.gsub_ligature(head,start,kind,lookupname,ligature,sequence) end return head, start, true else - -- ok, goto next lookup + -- weird but happens (in some arabic font) + start.char = lig + if trace_ligatures then + logprocess("%s: replacing %s by (no real) ligature %s case 3",pref(kind,lookupname),gref(startchar),gref(lig)) + end + return head, start, true end + else + -- weird but happens end end return head, start, false diff --git a/tex/context/base/font-sel.lua b/tex/context/base/font-sel.lua index fff425fa1..7926d8dd3 100644 --- a/tex/context/base/font-sel.lua +++ b/tex/context/base/font-sel.lua @@ -10,6 +10,7 @@ local context = context local cleanname = fonts.names.cleanname local gsub, splitup, find = string.gsub, string.splitup, string.find local splitbase, removesuffix = file.splitbase, file.removesuffix +local splitat, lpegmatch = lpeg.splitat, lpeg.match local formatters = string.formatters local settings_to_array = utilities.parsers.settings_to_array @@ -286,21 +287,23 @@ local function savefont(data,alternative,entries) end local function savefeatures(data,alternative,entries) + local e = gsub(entries,"{(.*)}","%1") local f = data.features if not f then f = { } data.features = f end - f[alternative] = entries + f[alternative] = e end local function savegoodies(data,alternative,entries) + local e = gsub(entries,"{(.*)}","%1") local g = data.goodies if not f then g = { } data.goodies = g end - g[alternative] = entries + g[alternative] = e end methods[v_simplefonts] = function(data,alternative,style) @@ -446,10 +449,11 @@ end function selectfont.filterinput(index) local data = data[index] + local p = splitat(":",true) for alternative, _ in next, alternatives do local list = settings_to_array(data.alternatives[alternative]) for _, entry in next, list do - method, entries = splitup(entry,":") + method, entries = lpegmatch(p,entry) if not entries then entries = method method = "name" diff --git a/tex/context/base/l-os.lua b/tex/context/base/l-os.lua index 44e0f53e1..57edc3915 100644 --- a/tex/context/base/l-os.lua +++ b/tex/context/base/l-os.lua @@ -238,7 +238,8 @@ elseif os.type == "windows" then function os.resolvers.platform(t,k) local platform, architecture = "", os.getenv("PROCESSOR_ARCHITECTURE") or "" if find(architecture,"AMD64") then - platform = "mswin-64" + -- platform = "mswin-64" + platform = "win64" else platform = "mswin" end diff --git a/tex/context/base/spac-ali.mkiv b/tex/context/base/spac-ali.mkiv index 6f1ba7f4a..9c7e81379 100644 --- a/tex/context/base/spac-ali.mkiv +++ b/tex/context/base/spac-ali.mkiv @@ -20,6 +20,13 @@ %D merged into one and caching has been added, which makes switching %D twice as fast. +% Todo: find a way to force last lines to have some distance from the right +% edge (problem: keywords or presets), maybe a plugin +% +% \setupalign[...,myoption] % last +% +% but that also means myoption gets frozen due to caching. + \registerctxluafile{spac-ali}{1.001} \definesystemattribute[realign] [public] % might be combined with the next one diff --git a/tex/context/base/status-files.pdf b/tex/context/base/status-files.pdf Binary files differindex 62dd8403d..7258c8591 100644 --- a/tex/context/base/status-files.pdf +++ b/tex/context/base/status-files.pdf diff --git a/tex/context/base/status-lua.pdf b/tex/context/base/status-lua.pdf Binary files differindex 79d1197ec..ae56770be 100644 --- a/tex/context/base/status-lua.pdf +++ b/tex/context/base/status-lua.pdf diff --git a/tex/context/base/util-lib.lua b/tex/context/base/util-lib.lua index 6498d2661..301ef4e9b 100644 --- a/tex/context/base/util-lib.lua +++ b/tex/context/base/util-lib.lua @@ -93,6 +93,9 @@ local function requireswiglib(required,version) local trace_swiglib = trace_swiglib or package.helpers.trace local library = loaded[required] if library == nil then + if trace_swiglib then + report_swiglib("requiring library %a with version %a",required,version or "any") + end -- initialize a few variables local required_full = gsub(required,"%.","/") -- package.helpers.lualibfile local required_path = pathpart(required_full) diff --git a/tex/context/base/util-sql-imp-swiglib.lua b/tex/context/base/util-sql-imp-swiglib.lua index 1d64ac115..af7012392 100644 --- a/tex/context/base/util-sql-imp-swiglib.lua +++ b/tex/context/base/util-sql-imp-swiglib.lua @@ -23,8 +23,8 @@ local report_state = logs.reporter("sql","swiglib") local helpers = require("swiglib.helpers.core") local sql = utilities.sql -local mysql = require("swiglib.mysql.core") -- "5.6" ------ mysql = swiglib("mysql.core") -- "5.6" +local mysql = require("swiglib.mysql.core") -- "5.6.14" +----- mysql = swiglib("mysql.core") -- "5.6.14" local new_u_char_array = helpers.new_u_char_array or helpers.new_ucharArray local ucharArray_setitem = helpers.u_char_array_setitem or helpers.ucharArray_setitem diff --git a/tex/generic/context/luatex/luatex-fonts-merged.lua b/tex/generic/context/luatex/luatex-fonts-merged.lua index 9bb358c97..6d1450d58 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 : luatex-fonts-merged.lua -- parent file : luatex-fonts.lua --- merge date : 11/22/13 22:29:17 +-- merge date : 11/25/13 20:09:50 do -- begin closure to overcome local limits and interference @@ -10075,9 +10075,9 @@ function handlers.gsub_ligature(head,start,kind,lookupname,ligature,sequence) break end end - if stop then - local lig=ligature.ligature - if lig then + local lig=ligature.ligature + if lig then + if stop then if trace_ligatures then local stopchar=getchar(stop) head,start=toligature(kind,lookupname,head,start,stop,lig,skipmark,discfound) @@ -10085,9 +10085,14 @@ function handlers.gsub_ligature(head,start,kind,lookupname,ligature,sequence) else head,start=toligature(kind,lookupname,head,start,stop,lig,skipmark,discfound) end - return head,start,true else + setfield(start,"char",lig) + if trace_ligatures then + logprocess("%s: replacing %s by (no real) ligature %s case 3",pref(kind,lookupname),gref(startchar),gref(lig)) + end end + return head,start,true + else end end return head,start,false |