From 19cac18e1e25c7e7025cbc2d66062728f0272a1a Mon Sep 17 00:00:00 2001 From: Hans Hagen Date: Fri, 12 Apr 2013 17:05:00 +0200 Subject: beta 2013.04.12 17:05 --- scripts/context/lua/mtxrun.lua | 40 ++++++----- scripts/context/stubs/mswin/mtxrun.lua | 40 ++++++----- scripts/context/stubs/unix/mtxrun | 40 ++++++----- tex/context/base/cont-new.mkiv | 2 +- tex/context/base/context-version.pdf | Bin 4129 -> 4131 bytes tex/context/base/context-version.png | Bin 40255 -> 40176 bytes tex/context/base/context.mkiv | 2 +- tex/context/base/data-res.lua | 75 ++++++++------------- tex/context/base/status-files.pdf | Bin 24752 -> 24744 bytes tex/context/base/status-lua.pdf | Bin 211777 -> 211772 bytes tex/context/fonts/lucida-opentype-math.lfg | 9 ++- tex/generic/context/luatex/luatex-fonts-merged.lua | 2 +- 12 files changed, 104 insertions(+), 106 deletions(-) diff --git a/scripts/context/lua/mtxrun.lua b/scripts/context/lua/mtxrun.lua index 1e4fead77..8c144f2c6 100644 --- a/scripts/context/lua/mtxrun.lua +++ b/scripts/context/lua/mtxrun.lua @@ -12656,7 +12656,7 @@ do -- create closure to overcome 200 locals limit package.loaded["data-res"] = package.loaded["data-res"] or true --- original size: 61256, stripped down to: 42565 +-- original size: 61105, stripped down to: 42866 if not modules then modules={} end modules ['data-res']={ version=1.001, @@ -12699,16 +12699,16 @@ resolvers.homedir=environment.homedir resolvers.criticalvars=allocate { "SELFAUTOLOC","SELFAUTODIR","SELFAUTOPARENT","TEXMFCNF","TEXMF","TEXOS" } resolvers.luacnfname="texmfcnf.lua" resolvers.luacnfstate="unknown" -resolvers.luacnfspec={ - "home:texmf/web2c", - "selfautoparent:/texmf-local/web2c", - "selfautoparent:/texmf-context/web2c", - "selfautoparent:/texmf-dist/web2c", - "selfautoparent:/texmf/web2c", - "selfautoparent:", -} -if type(resolvers.luacnfspec)=="table" then - resolvers.luacnfspec=concat(resolvers.luacnfspec,";") +if environment.default_texmfcnf then + resolvers.luacnfspec="home:texmf/web2c;"..environment.default_texmfcnf +else + resolvers.luacnfspec=concat ({ + "home:texmf/web2c", + "selfautoparent:/texmf-local/web2c", + "selfautoparent:/texmf-context/web2c", + "selfautoparent:/texmf-dist/web2c", + "selfautoparent:/texmf/web2c", + },";") end local unset_variable="unset" local formats=resolvers.formats @@ -12881,15 +12881,19 @@ local function identify_configuration_files() local cnfpaths=expandedpathfromlist(resolvers.splitpath(cnfspec)) local luacnfname=resolvers.luacnfname for i=1,#cnfpaths do - local filename=collapsepath(filejoin(cnfpaths[i],luacnfname)) - local realname=resolvers.resolve(filename) + local filepath=cnfpaths[i] + local filename=collapsepath(filejoin(filepath,luacnfname)) + local realname=resolvers.resolve(filename) + if trace_locating then + local fullpath=gsub(resolvers.resolve(collapsepath(filepath)),"//","/") + local weirdpath=find(fullpath,"/texmf.+/texmf") or not find(fullpath,"/web2c") + report_resolving("looking for %a on %s path %a from specification %a",luacnfname,weirdpath and "weird" or "given",fullpath,filepath) + end if lfs.isfile(realname) then - specification[#specification+1]=filename + specification[#specification+1]=filename if trace_locating then report_resolving("found configuration file %a",realname) end - elseif trace_locating then - report_resolving("unknown configuration file %a",realname) end end if trace_locating then @@ -15847,8 +15851,8 @@ end -- of closure -- used libraries : l-lua.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-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 : 662112 --- stripped bytes : 243148 +-- original bytes : 661961 +-- stripped bytes : 242696 -- end library merge diff --git a/scripts/context/stubs/mswin/mtxrun.lua b/scripts/context/stubs/mswin/mtxrun.lua index 1e4fead77..8c144f2c6 100644 --- a/scripts/context/stubs/mswin/mtxrun.lua +++ b/scripts/context/stubs/mswin/mtxrun.lua @@ -12656,7 +12656,7 @@ do -- create closure to overcome 200 locals limit package.loaded["data-res"] = package.loaded["data-res"] or true --- original size: 61256, stripped down to: 42565 +-- original size: 61105, stripped down to: 42866 if not modules then modules={} end modules ['data-res']={ version=1.001, @@ -12699,16 +12699,16 @@ resolvers.homedir=environment.homedir resolvers.criticalvars=allocate { "SELFAUTOLOC","SELFAUTODIR","SELFAUTOPARENT","TEXMFCNF","TEXMF","TEXOS" } resolvers.luacnfname="texmfcnf.lua" resolvers.luacnfstate="unknown" -resolvers.luacnfspec={ - "home:texmf/web2c", - "selfautoparent:/texmf-local/web2c", - "selfautoparent:/texmf-context/web2c", - "selfautoparent:/texmf-dist/web2c", - "selfautoparent:/texmf/web2c", - "selfautoparent:", -} -if type(resolvers.luacnfspec)=="table" then - resolvers.luacnfspec=concat(resolvers.luacnfspec,";") +if environment.default_texmfcnf then + resolvers.luacnfspec="home:texmf/web2c;"..environment.default_texmfcnf +else + resolvers.luacnfspec=concat ({ + "home:texmf/web2c", + "selfautoparent:/texmf-local/web2c", + "selfautoparent:/texmf-context/web2c", + "selfautoparent:/texmf-dist/web2c", + "selfautoparent:/texmf/web2c", + },";") end local unset_variable="unset" local formats=resolvers.formats @@ -12881,15 +12881,19 @@ local function identify_configuration_files() local cnfpaths=expandedpathfromlist(resolvers.splitpath(cnfspec)) local luacnfname=resolvers.luacnfname for i=1,#cnfpaths do - local filename=collapsepath(filejoin(cnfpaths[i],luacnfname)) - local realname=resolvers.resolve(filename) + local filepath=cnfpaths[i] + local filename=collapsepath(filejoin(filepath,luacnfname)) + local realname=resolvers.resolve(filename) + if trace_locating then + local fullpath=gsub(resolvers.resolve(collapsepath(filepath)),"//","/") + local weirdpath=find(fullpath,"/texmf.+/texmf") or not find(fullpath,"/web2c") + report_resolving("looking for %a on %s path %a from specification %a",luacnfname,weirdpath and "weird" or "given",fullpath,filepath) + end if lfs.isfile(realname) then - specification[#specification+1]=filename + specification[#specification+1]=filename if trace_locating then report_resolving("found configuration file %a",realname) end - elseif trace_locating then - report_resolving("unknown configuration file %a",realname) end end if trace_locating then @@ -15847,8 +15851,8 @@ end -- of closure -- used libraries : l-lua.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-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 : 662112 --- stripped bytes : 243148 +-- original bytes : 661961 +-- stripped bytes : 242696 -- end library merge diff --git a/scripts/context/stubs/unix/mtxrun b/scripts/context/stubs/unix/mtxrun index 1e4fead77..8c144f2c6 100755 --- a/scripts/context/stubs/unix/mtxrun +++ b/scripts/context/stubs/unix/mtxrun @@ -12656,7 +12656,7 @@ do -- create closure to overcome 200 locals limit package.loaded["data-res"] = package.loaded["data-res"] or true --- original size: 61256, stripped down to: 42565 +-- original size: 61105, stripped down to: 42866 if not modules then modules={} end modules ['data-res']={ version=1.001, @@ -12699,16 +12699,16 @@ resolvers.homedir=environment.homedir resolvers.criticalvars=allocate { "SELFAUTOLOC","SELFAUTODIR","SELFAUTOPARENT","TEXMFCNF","TEXMF","TEXOS" } resolvers.luacnfname="texmfcnf.lua" resolvers.luacnfstate="unknown" -resolvers.luacnfspec={ - "home:texmf/web2c", - "selfautoparent:/texmf-local/web2c", - "selfautoparent:/texmf-context/web2c", - "selfautoparent:/texmf-dist/web2c", - "selfautoparent:/texmf/web2c", - "selfautoparent:", -} -if type(resolvers.luacnfspec)=="table" then - resolvers.luacnfspec=concat(resolvers.luacnfspec,";") +if environment.default_texmfcnf then + resolvers.luacnfspec="home:texmf/web2c;"..environment.default_texmfcnf +else + resolvers.luacnfspec=concat ({ + "home:texmf/web2c", + "selfautoparent:/texmf-local/web2c", + "selfautoparent:/texmf-context/web2c", + "selfautoparent:/texmf-dist/web2c", + "selfautoparent:/texmf/web2c", + },";") end local unset_variable="unset" local formats=resolvers.formats @@ -12881,15 +12881,19 @@ local function identify_configuration_files() local cnfpaths=expandedpathfromlist(resolvers.splitpath(cnfspec)) local luacnfname=resolvers.luacnfname for i=1,#cnfpaths do - local filename=collapsepath(filejoin(cnfpaths[i],luacnfname)) - local realname=resolvers.resolve(filename) + local filepath=cnfpaths[i] + local filename=collapsepath(filejoin(filepath,luacnfname)) + local realname=resolvers.resolve(filename) + if trace_locating then + local fullpath=gsub(resolvers.resolve(collapsepath(filepath)),"//","/") + local weirdpath=find(fullpath,"/texmf.+/texmf") or not find(fullpath,"/web2c") + report_resolving("looking for %a on %s path %a from specification %a",luacnfname,weirdpath and "weird" or "given",fullpath,filepath) + end if lfs.isfile(realname) then - specification[#specification+1]=filename + specification[#specification+1]=filename if trace_locating then report_resolving("found configuration file %a",realname) end - elseif trace_locating then - report_resolving("unknown configuration file %a",realname) end end if trace_locating then @@ -15847,8 +15851,8 @@ end -- of closure -- used libraries : l-lua.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-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 : 662112 --- stripped bytes : 243148 +-- original bytes : 661961 +-- stripped bytes : 242696 -- end library merge diff --git a/tex/context/base/cont-new.mkiv b/tex/context/base/cont-new.mkiv index 89ad2c16d..060baa4da 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.04.12 15:10} +\newcontextversion{2013.04.12 17:05} %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 index 7974209e1..37877f43b 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/context-version.png b/tex/context/base/context-version.png index cbcb53a75..be0d6de08 100644 Binary files a/tex/context/base/context-version.png and b/tex/context/base/context-version.png differ diff --git a/tex/context/base/context.mkiv b/tex/context/base/context.mkiv index bcf7e3fda..cdde12823 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.04.12 15:10} +\edef\contextversion{2013.04.12 17:05} \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 23bdde637..36e4faecc 100644 --- a/tex/context/base/data-res.lua +++ b/tex/context/base/data-res.lua @@ -95,47 +95,25 @@ resolvers.luacnfstate = "unknown" -- selfautoparent:texmf-context/web2c -- selfautoparent:texmf/web2c --- -- Till 2013 we had this: --- --- if environment.default_texmfcnf then --- -- unfortunately we now have quite some overkill in the spec (not so nice on a network) --- resolvers.luacnfspec = environment.default_texmfcnf --- else --- resolvers.luacnfspec = "selfautoparent:texmf{-local,-context,-dist,}/web2c" --- -- resolvers.luacnfspec = "{selfautoloc:,selfautodir:,selfautoparent:}{,/texmf{-local,-dist,}/web2c}" --- end --- --- resolvers.luacnfspec = 'home:texmf/web2c;' .. resolvers.luacnfspec --- --- -- which (as we want users to use the web2c path) be can be simplified to this: --- --- if environment and environment.ownpath and string.find(environment.ownpath,"[\\/]texlive[\\/]") then --- resolvers.luacnfspec = 'selfautodir:/texmf-local/web2c,selfautoparent:/texmf-local/web2c,selfautoparent:/texmf/web2c' --- else --- resolvers.luacnfspec = 'selfautoparent:/texmf-local/web2c,selfautoparent:/texmf/web2c' --- end --- --- -- But I gave up on that after the change to texmf-dist (why-oh-why), so we stick to: - -resolvers.luacnfspec = { - -- for taco - "home:texmf/web2c", - -- for users - "selfautoparent:/texmf-local/web2c", - -- for completeness - "selfautoparent:/texmf-context/web2c", - -- for tex live - "selfautoparent:/texmf-dist/web2c", - -- for minimals - "selfautoparent:/texmf/web2c", - -- for mojca: - "selfautoparent:", -} - --- not yet table, some reporters expect strings - -if type(resolvers.luacnfspec) == "table" then - resolvers.luacnfspec = concat(resolvers.luacnfspec,";") +-- This is a real mess: you don't want to know what creepy paths end up in the default +-- configuration spec, for instance nested texmf- paths. I'd rather get away from it and +-- specify a proper search sequence but alas ... it is not permitted in texlive and there +-- is no way to check if we run a minimals as texmf-context is not in that spec. It's a +-- compiled-in permutation of historics with the selfautoloc, selfautodir, selfautoparent +-- resulting in weird combinations. So, when we eventually check the 30 something paths +-- we also report weird ones, with weird being: (1) duplicate /texmf or (2) no /web2c in +-- the names. + +if environment.default_texmfcnf then + resolvers.luacnfspec = "home:texmf/web2c;" .. environment.default_texmfcnf -- texlive + home: for taco etc +else + resolvers.luacnfspec = concat ( { + "home:texmf/web2c", + "selfautoparent:/texmf-local/web2c", + "selfautoparent:/texmf-context/web2c", + "selfautoparent:/texmf-dist/web2c", + "selfautoparent:/texmf/web2c", + }, ";") end local unset_variable = "unset" @@ -355,7 +333,6 @@ local function identify_configuration_files() if cnfspec == "" then cnfspec = resolvers.luacnfspec resolvers.luacnfstate = "default" --- resolvers.setenv("TEXMFCNF",cnfspec) -- for running texexec etc else resolvers.luacnfstate = "environment" end @@ -363,15 +340,19 @@ local function identify_configuration_files() local cnfpaths = expandedpathfromlist(resolvers.splitpath(cnfspec)) local luacnfname = resolvers.luacnfname for i=1,#cnfpaths do - local filename = collapsepath(filejoin(cnfpaths[i],luacnfname)) - local realname = resolvers.resolve(filename) + local filepath = cnfpaths[i] + local filename = collapsepath(filejoin(filepath,luacnfname)) + local realname = resolvers.resolve(filename) -- can still have "//" ... needs checking + if trace_locating then + local fullpath = gsub(resolvers.resolve(collapsepath(filepath)),"//","/") + local weirdpath = find(fullpath,"/texmf.+/texmf") or not find(fullpath,"/web2c") + report_resolving("looking for %a on %s path %a from specification %a",luacnfname,weirdpath and "weird" or "given",fullpath,filepath) + end if lfs.isfile(realname) then - specification[#specification+1] = filename + specification[#specification+1] = filename -- unresolved ! as we use it in matching, relocatable if trace_locating then report_resolving("found configuration file %a",realname) end - elseif trace_locating then - report_resolving("unknown configuration file %a",realname) end end if trace_locating then diff --git a/tex/context/base/status-files.pdf b/tex/context/base/status-files.pdf index 1c54f117a..d2487d071 100644 Binary files a/tex/context/base/status-files.pdf and b/tex/context/base/status-files.pdf differ diff --git a/tex/context/base/status-lua.pdf b/tex/context/base/status-lua.pdf index ab275c62e..7c6595276 100644 Binary files a/tex/context/base/status-lua.pdf and b/tex/context/base/status-lua.pdf differ diff --git a/tex/context/fonts/lucida-opentype-math.lfg b/tex/context/fonts/lucida-opentype-math.lfg index c8556ebca..946458dea 100644 --- a/tex/context/fonts/lucida-opentype-math.lfg +++ b/tex/context/fonts/lucida-opentype-math.lfg @@ -12,6 +12,11 @@ return { calligraphic = { feature = 'ss04', value = 1, comment = "Mathematical Alternative Calligraphic Characters" }, zero = { feature = 'ss05', value = 1, comment = "Mathematical Alternative Zero" }, partial = { feature = 'ss20', value = 1, comment = "Mathematical Alternative Upright Partial Differential" }, - } - } + }, + dimensions = { + default = { -- experimental values + [0x2044] = { xoffset = 275, width = 600 }, + }, + }, + }, } diff --git a/tex/generic/context/luatex/luatex-fonts-merged.lua b/tex/generic/context/luatex/luatex-fonts-merged.lua index e0e42f4da..94ddd4678 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 : 04/12/13 15:10:40 +-- merge date : 04/12/13 17:05:57 do -- begin closure to overcome local limits and interference -- cgit v1.2.3