summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarius <mariausol@gmail.com>2013-11-25 21:20:13 +0200
committerMarius <mariausol@gmail.com>2013-11-25 21:20:13 +0200
commit3a4769dbc4ecb788c53d91e1eca7affb73abc01d (patch)
tree401f55a9fd2f2712beaca44e4932225a43c088a5
parentcde16bedc683a2749f548e9a36d2b88bd3d4aa50 (diff)
downloadcontext-3a4769dbc4ecb788c53d91e1eca7affb73abc01d.tar.gz
beta 2013.11.25 20:09
-rw-r--r--scripts/context/lua/mtxrun.lua17
-rw-r--r--scripts/context/stubs/mswin/mtxrun.lua17
-rw-r--r--scripts/context/stubs/unix/mtxrun17
-rw-r--r--tex/context/base/cont-new.mkiv2
-rw-r--r--tex/context/base/context-version.pdfbin4128 -> 4128 bytes
-rw-r--r--tex/context/base/context.mkiv2
-rw-r--r--tex/context/base/data-res.lua3
-rw-r--r--tex/context/base/font-otf.lua3
-rw-r--r--tex/context/base/font-otn.lua15
-rw-r--r--tex/context/base/font-sel.lua10
-rw-r--r--tex/context/base/l-os.lua3
-rw-r--r--tex/context/base/spac-ali.mkiv7
-rw-r--r--tex/context/base/status-files.pdfbin24724 -> 24679 bytes
-rw-r--r--tex/context/base/status-lua.pdfbin227331 -> 227449 bytes
-rw-r--r--tex/context/base/util-lib.lua3
-rw-r--r--tex/context/base/util-sql-imp-swiglib.lua4
-rw-r--r--tex/generic/context/luatex/luatex-fonts-merged.lua15
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
index 4df980db9..cd0e34fc4 100644
--- a/tex/context/base/context-version.pdf
+++ b/tex/context/base/context-version.pdf
Binary files differ
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
index 62dd8403d..7258c8591 100644
--- a/tex/context/base/status-files.pdf
+++ b/tex/context/base/status-files.pdf
Binary files differ
diff --git a/tex/context/base/status-lua.pdf b/tex/context/base/status-lua.pdf
index 79d1197ec..ae56770be 100644
--- a/tex/context/base/status-lua.pdf
+++ b/tex/context/base/status-lua.pdf
Binary files differ
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