summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHans Hagen <pragma@wxs.nl>2014-09-03 22:05:00 +0200
committerHans Hagen <pragma@wxs.nl>2014-09-03 22:05:00 +0200
commit294b00e968fd22f9a3d2b4cd3335bef57abf17fb (patch)
tree7cd762b311d364ad3a6fea16d0e504997a3a6a28
parent19f0402bf96ee3aa359cd7361d2683b5ce05fdeb (diff)
downloadcontext-294b00e968fd22f9a3d2b4cd3335bef57abf17fb.tar.gz
beta 2014.09.03 22:05
-rw-r--r--scripts/context/lua/mtxrun.lua24
-rw-r--r--scripts/context/stubs/mswin/mtxrun.lua24
-rwxr-xr-xscripts/context/stubs/unix/mtxrun24
-rw-r--r--scripts/context/stubs/win64/mtxrun.lua24
-rw-r--r--tex/context/base/cont-new.mkiv2
-rw-r--r--tex/context/base/context-version.pdfbin4432 -> 4427 bytes
-rw-r--r--tex/context/base/context.mkiv2
-rw-r--r--tex/context/base/data-exp.lua14
-rw-r--r--tex/context/base/data-tre.lua5
-rw-r--r--tex/context/base/grph-inc.lua2
-rw-r--r--tex/context/base/grph-inc.mkiv3
-rw-r--r--tex/context/base/status-files.pdfbin24991 -> 24982 bytes
-rw-r--r--tex/context/base/status-lua.pdfbin327147 -> 327139 bytes
-rw-r--r--tex/generic/context/luatex/luatex-fonts-merged.lua2
14 files changed, 71 insertions, 55 deletions
diff --git a/scripts/context/lua/mtxrun.lua b/scripts/context/lua/mtxrun.lua
index 21820f5e5..ffddc9de2 100644
--- a/scripts/context/lua/mtxrun.lua
+++ b/scripts/context/lua/mtxrun.lua
@@ -12963,7 +12963,7 @@ do -- create closure to overcome 200 locals limit
package.loaded["data-exp"] = package.loaded["data-exp"] or true
--- original size: 17039, stripped down to: 10493
+-- original size: 17216, stripped down to: 10657
if not modules then modules={} end modules ['data-exp']={
version=1.001,
@@ -13155,18 +13155,20 @@ function resolvers.joinpath(str)
end
local attributes,directory=lfs.attributes,lfs.dir
local weird=P(".")^1+lpeg.anywhere(S("~`!#$%^&*()={}[]:;\"\'||<>,?\n\r\t"))
+local lessweird=P(".")^1+lpeg.anywhere(S("~`#$%^&*:;\"\'||<>,?\n\r\t"))
local timer={}
local scanned={}
local nofscans=0
local scancache={}
local fullcache={}
local nofsharedscans=0
-local function scan(files,remap,spec,path,n,m,r,onlyone)
+local function scan(files,remap,spec,path,n,m,r,onlyone,tolerant)
local full=path=="" and spec or (spec..path..'/')
local dirs={}
local nofdirs=0
+ local pattern=tolerant and lessweird or weird
for name in directory(full) do
- if not lpegmatch(weird,name) then
+ if not lpegmatch(pattern,name) then
local mode=attributes(full..name,"mode")
if mode=="file" then
n=n+1
@@ -13216,13 +13218,13 @@ local function scan(files,remap,spec,path,n,m,r,onlyone)
if nofdirs>0 then
sort(dirs)
for i=1,nofdirs do
- files,remap,n,m,r=scan(files,remap,spec,dirs[i],n,m,r,onlyone)
+ files,remap,n,m,r=scan(files,remap,spec,dirs[i],n,m,r,onlyonce,tolerant)
end
end
scancache[sub(full,1,-2)]=files
return files,remap,n,m,r
end
-function resolvers.scanfiles(path,branch,usecache,onlyonce)
+function resolvers.scanfiles(path,branch,usecache,onlyonce,tolerant)
local realpath=resolveprefix(path)
if usecache then
local content=fullcache[realpath]
@@ -13240,7 +13242,7 @@ function resolvers.scanfiles(path,branch,usecache,onlyonce)
end
local content
if isdir(realpath) then
- local files,remap,n,m,r=scan({},{},realpath..'/',"",0,0,0,onlyonce)
+ local files,remap,n,m,r=scan({},{},realpath..'/',"",0,0,0,onlyonce,tolerant)
content={
metadata={
path=path,
@@ -13278,7 +13280,7 @@ function resolvers.scanfiles(path,branch,usecache,onlyonce)
return content
end
function resolvers.simplescanfiles(path,branch,usecache)
- return resolvers.scanfiles(path,branch,usecache,true)
+ return resolvers.scanfiles(path,branch,usecache,true,true)
end
function resolvers.scandata()
table.sort(scanned)
@@ -16335,7 +16337,7 @@ do -- create closure to overcome 200 locals limit
package.loaded["data-tre"] = package.loaded["data-tre"] or true
--- original size: 7832, stripped down to: 5289
+-- original size: 7987, stripped down to: 5309
if not modules then modules={} end modules ['data-tre']={
version=1.001,
@@ -16414,7 +16416,7 @@ table.setmetatableindex(collectors,function(t,k)
local dataname=joinname(rootname,"dirlist")
local content=caches.loadcontent(dataname,"files",dataname)
if not content then
- content=resolvers.scanfiles(rootname)
+ content=resolvers.scanfiles(rootname,nil,nil,false,true)
caches.savecontent(dataname,"files",content,dataname)
end
t[k]=content
@@ -17425,8 +17427,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 : 720047
--- stripped bytes : 257290
+-- original bytes : 720379
+-- stripped bytes : 257438
-- end library merge
diff --git a/scripts/context/stubs/mswin/mtxrun.lua b/scripts/context/stubs/mswin/mtxrun.lua
index 21820f5e5..ffddc9de2 100644
--- a/scripts/context/stubs/mswin/mtxrun.lua
+++ b/scripts/context/stubs/mswin/mtxrun.lua
@@ -12963,7 +12963,7 @@ do -- create closure to overcome 200 locals limit
package.loaded["data-exp"] = package.loaded["data-exp"] or true
--- original size: 17039, stripped down to: 10493
+-- original size: 17216, stripped down to: 10657
if not modules then modules={} end modules ['data-exp']={
version=1.001,
@@ -13155,18 +13155,20 @@ function resolvers.joinpath(str)
end
local attributes,directory=lfs.attributes,lfs.dir
local weird=P(".")^1+lpeg.anywhere(S("~`!#$%^&*()={}[]:;\"\'||<>,?\n\r\t"))
+local lessweird=P(".")^1+lpeg.anywhere(S("~`#$%^&*:;\"\'||<>,?\n\r\t"))
local timer={}
local scanned={}
local nofscans=0
local scancache={}
local fullcache={}
local nofsharedscans=0
-local function scan(files,remap,spec,path,n,m,r,onlyone)
+local function scan(files,remap,spec,path,n,m,r,onlyone,tolerant)
local full=path=="" and spec or (spec..path..'/')
local dirs={}
local nofdirs=0
+ local pattern=tolerant and lessweird or weird
for name in directory(full) do
- if not lpegmatch(weird,name) then
+ if not lpegmatch(pattern,name) then
local mode=attributes(full..name,"mode")
if mode=="file" then
n=n+1
@@ -13216,13 +13218,13 @@ local function scan(files,remap,spec,path,n,m,r,onlyone)
if nofdirs>0 then
sort(dirs)
for i=1,nofdirs do
- files,remap,n,m,r=scan(files,remap,spec,dirs[i],n,m,r,onlyone)
+ files,remap,n,m,r=scan(files,remap,spec,dirs[i],n,m,r,onlyonce,tolerant)
end
end
scancache[sub(full,1,-2)]=files
return files,remap,n,m,r
end
-function resolvers.scanfiles(path,branch,usecache,onlyonce)
+function resolvers.scanfiles(path,branch,usecache,onlyonce,tolerant)
local realpath=resolveprefix(path)
if usecache then
local content=fullcache[realpath]
@@ -13240,7 +13242,7 @@ function resolvers.scanfiles(path,branch,usecache,onlyonce)
end
local content
if isdir(realpath) then
- local files,remap,n,m,r=scan({},{},realpath..'/',"",0,0,0,onlyonce)
+ local files,remap,n,m,r=scan({},{},realpath..'/',"",0,0,0,onlyonce,tolerant)
content={
metadata={
path=path,
@@ -13278,7 +13280,7 @@ function resolvers.scanfiles(path,branch,usecache,onlyonce)
return content
end
function resolvers.simplescanfiles(path,branch,usecache)
- return resolvers.scanfiles(path,branch,usecache,true)
+ return resolvers.scanfiles(path,branch,usecache,true,true)
end
function resolvers.scandata()
table.sort(scanned)
@@ -16335,7 +16337,7 @@ do -- create closure to overcome 200 locals limit
package.loaded["data-tre"] = package.loaded["data-tre"] or true
--- original size: 7832, stripped down to: 5289
+-- original size: 7987, stripped down to: 5309
if not modules then modules={} end modules ['data-tre']={
version=1.001,
@@ -16414,7 +16416,7 @@ table.setmetatableindex(collectors,function(t,k)
local dataname=joinname(rootname,"dirlist")
local content=caches.loadcontent(dataname,"files",dataname)
if not content then
- content=resolvers.scanfiles(rootname)
+ content=resolvers.scanfiles(rootname,nil,nil,false,true)
caches.savecontent(dataname,"files",content,dataname)
end
t[k]=content
@@ -17425,8 +17427,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 : 720047
--- stripped bytes : 257290
+-- original bytes : 720379
+-- stripped bytes : 257438
-- end library merge
diff --git a/scripts/context/stubs/unix/mtxrun b/scripts/context/stubs/unix/mtxrun
index 21820f5e5..ffddc9de2 100755
--- a/scripts/context/stubs/unix/mtxrun
+++ b/scripts/context/stubs/unix/mtxrun
@@ -12963,7 +12963,7 @@ do -- create closure to overcome 200 locals limit
package.loaded["data-exp"] = package.loaded["data-exp"] or true
--- original size: 17039, stripped down to: 10493
+-- original size: 17216, stripped down to: 10657
if not modules then modules={} end modules ['data-exp']={
version=1.001,
@@ -13155,18 +13155,20 @@ function resolvers.joinpath(str)
end
local attributes,directory=lfs.attributes,lfs.dir
local weird=P(".")^1+lpeg.anywhere(S("~`!#$%^&*()={}[]:;\"\'||<>,?\n\r\t"))
+local lessweird=P(".")^1+lpeg.anywhere(S("~`#$%^&*:;\"\'||<>,?\n\r\t"))
local timer={}
local scanned={}
local nofscans=0
local scancache={}
local fullcache={}
local nofsharedscans=0
-local function scan(files,remap,spec,path,n,m,r,onlyone)
+local function scan(files,remap,spec,path,n,m,r,onlyone,tolerant)
local full=path=="" and spec or (spec..path..'/')
local dirs={}
local nofdirs=0
+ local pattern=tolerant and lessweird or weird
for name in directory(full) do
- if not lpegmatch(weird,name) then
+ if not lpegmatch(pattern,name) then
local mode=attributes(full..name,"mode")
if mode=="file" then
n=n+1
@@ -13216,13 +13218,13 @@ local function scan(files,remap,spec,path,n,m,r,onlyone)
if nofdirs>0 then
sort(dirs)
for i=1,nofdirs do
- files,remap,n,m,r=scan(files,remap,spec,dirs[i],n,m,r,onlyone)
+ files,remap,n,m,r=scan(files,remap,spec,dirs[i],n,m,r,onlyonce,tolerant)
end
end
scancache[sub(full,1,-2)]=files
return files,remap,n,m,r
end
-function resolvers.scanfiles(path,branch,usecache,onlyonce)
+function resolvers.scanfiles(path,branch,usecache,onlyonce,tolerant)
local realpath=resolveprefix(path)
if usecache then
local content=fullcache[realpath]
@@ -13240,7 +13242,7 @@ function resolvers.scanfiles(path,branch,usecache,onlyonce)
end
local content
if isdir(realpath) then
- local files,remap,n,m,r=scan({},{},realpath..'/',"",0,0,0,onlyonce)
+ local files,remap,n,m,r=scan({},{},realpath..'/',"",0,0,0,onlyonce,tolerant)
content={
metadata={
path=path,
@@ -13278,7 +13280,7 @@ function resolvers.scanfiles(path,branch,usecache,onlyonce)
return content
end
function resolvers.simplescanfiles(path,branch,usecache)
- return resolvers.scanfiles(path,branch,usecache,true)
+ return resolvers.scanfiles(path,branch,usecache,true,true)
end
function resolvers.scandata()
table.sort(scanned)
@@ -16335,7 +16337,7 @@ do -- create closure to overcome 200 locals limit
package.loaded["data-tre"] = package.loaded["data-tre"] or true
--- original size: 7832, stripped down to: 5289
+-- original size: 7987, stripped down to: 5309
if not modules then modules={} end modules ['data-tre']={
version=1.001,
@@ -16414,7 +16416,7 @@ table.setmetatableindex(collectors,function(t,k)
local dataname=joinname(rootname,"dirlist")
local content=caches.loadcontent(dataname,"files",dataname)
if not content then
- content=resolvers.scanfiles(rootname)
+ content=resolvers.scanfiles(rootname,nil,nil,false,true)
caches.savecontent(dataname,"files",content,dataname)
end
t[k]=content
@@ -17425,8 +17427,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 : 720047
--- stripped bytes : 257290
+-- original bytes : 720379
+-- stripped bytes : 257438
-- end library merge
diff --git a/scripts/context/stubs/win64/mtxrun.lua b/scripts/context/stubs/win64/mtxrun.lua
index 21820f5e5..ffddc9de2 100644
--- a/scripts/context/stubs/win64/mtxrun.lua
+++ b/scripts/context/stubs/win64/mtxrun.lua
@@ -12963,7 +12963,7 @@ do -- create closure to overcome 200 locals limit
package.loaded["data-exp"] = package.loaded["data-exp"] or true
--- original size: 17039, stripped down to: 10493
+-- original size: 17216, stripped down to: 10657
if not modules then modules={} end modules ['data-exp']={
version=1.001,
@@ -13155,18 +13155,20 @@ function resolvers.joinpath(str)
end
local attributes,directory=lfs.attributes,lfs.dir
local weird=P(".")^1+lpeg.anywhere(S("~`!#$%^&*()={}[]:;\"\'||<>,?\n\r\t"))
+local lessweird=P(".")^1+lpeg.anywhere(S("~`#$%^&*:;\"\'||<>,?\n\r\t"))
local timer={}
local scanned={}
local nofscans=0
local scancache={}
local fullcache={}
local nofsharedscans=0
-local function scan(files,remap,spec,path,n,m,r,onlyone)
+local function scan(files,remap,spec,path,n,m,r,onlyone,tolerant)
local full=path=="" and spec or (spec..path..'/')
local dirs={}
local nofdirs=0
+ local pattern=tolerant and lessweird or weird
for name in directory(full) do
- if not lpegmatch(weird,name) then
+ if not lpegmatch(pattern,name) then
local mode=attributes(full..name,"mode")
if mode=="file" then
n=n+1
@@ -13216,13 +13218,13 @@ local function scan(files,remap,spec,path,n,m,r,onlyone)
if nofdirs>0 then
sort(dirs)
for i=1,nofdirs do
- files,remap,n,m,r=scan(files,remap,spec,dirs[i],n,m,r,onlyone)
+ files,remap,n,m,r=scan(files,remap,spec,dirs[i],n,m,r,onlyonce,tolerant)
end
end
scancache[sub(full,1,-2)]=files
return files,remap,n,m,r
end
-function resolvers.scanfiles(path,branch,usecache,onlyonce)
+function resolvers.scanfiles(path,branch,usecache,onlyonce,tolerant)
local realpath=resolveprefix(path)
if usecache then
local content=fullcache[realpath]
@@ -13240,7 +13242,7 @@ function resolvers.scanfiles(path,branch,usecache,onlyonce)
end
local content
if isdir(realpath) then
- local files,remap,n,m,r=scan({},{},realpath..'/',"",0,0,0,onlyonce)
+ local files,remap,n,m,r=scan({},{},realpath..'/',"",0,0,0,onlyonce,tolerant)
content={
metadata={
path=path,
@@ -13278,7 +13280,7 @@ function resolvers.scanfiles(path,branch,usecache,onlyonce)
return content
end
function resolvers.simplescanfiles(path,branch,usecache)
- return resolvers.scanfiles(path,branch,usecache,true)
+ return resolvers.scanfiles(path,branch,usecache,true,true)
end
function resolvers.scandata()
table.sort(scanned)
@@ -16335,7 +16337,7 @@ do -- create closure to overcome 200 locals limit
package.loaded["data-tre"] = package.loaded["data-tre"] or true
--- original size: 7832, stripped down to: 5289
+-- original size: 7987, stripped down to: 5309
if not modules then modules={} end modules ['data-tre']={
version=1.001,
@@ -16414,7 +16416,7 @@ table.setmetatableindex(collectors,function(t,k)
local dataname=joinname(rootname,"dirlist")
local content=caches.loadcontent(dataname,"files",dataname)
if not content then
- content=resolvers.scanfiles(rootname)
+ content=resolvers.scanfiles(rootname,nil,nil,false,true)
caches.savecontent(dataname,"files",content,dataname)
end
t[k]=content
@@ -17425,8 +17427,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 : 720047
--- stripped bytes : 257290
+-- original bytes : 720379
+-- stripped bytes : 257438
-- end library merge
diff --git a/tex/context/base/cont-new.mkiv b/tex/context/base/cont-new.mkiv
index 189bbf25f..deaf90116 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{2014.09.03 17:37}
+\newcontextversion{2014.09.03 22: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 0d9a5e990..e804806be 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 e7915b7d8..a0a38b843 100644
--- a/tex/context/base/context.mkiv
+++ b/tex/context/base/context.mkiv
@@ -28,7 +28,7 @@
%D up and the dependencies are more consistent.
\edef\contextformat {\jobname}
-\edef\contextversion{2014.09.03 17:37}
+\edef\contextversion{2014.09.03 22:05}
\edef\contextkind {beta}
%D For those who want to use this:
diff --git a/tex/context/base/data-exp.lua b/tex/context/base/data-exp.lua
index b8c66909e..0a7396171 100644
--- a/tex/context/base/data-exp.lua
+++ b/tex/context/base/data-exp.lua
@@ -325,6 +325,7 @@ end
local attributes, directory = lfs.attributes, lfs.dir
local weird = P(".")^1 + lpeg.anywhere(S("~`!#$%^&*()={}[]:;\"\'||<>,?\n\r\t"))
+local lessweird = P(".")^1 + lpeg.anywhere(S("~`#$%^&*:;\"\'||<>,?\n\r\t"))
local timer = { }
local scanned = { }
local nofscans = 0
@@ -336,12 +337,13 @@ local nofsharedscans = 0
-- So, we assume either a lowercase name or a mixed case one but only one such case
-- as having Foo fOo foo FoO FOo etc on the system is braindead in any sane project.
-local function scan(files,remap,spec,path,n,m,r,onlyone)
+local function scan(files,remap,spec,path,n,m,r,onlyone,tolerant)
local full = path == "" and spec or (spec .. path .. '/')
local dirs = { }
local nofdirs = 0
+ local pattern = tolerant and lessweird or weird
for name in directory(full) do
- if not lpegmatch(weird,name) then
+ if not lpegmatch(pattern,name) then
local mode = attributes(full..name,"mode")
if mode == "file" then
n = n + 1
@@ -392,14 +394,14 @@ local function scan(files,remap,spec,path,n,m,r,onlyone)
if nofdirs > 0 then
sort(dirs)
for i=1,nofdirs do
- files, remap, n, m, r = scan(files,remap,spec,dirs[i],n,m,r,onlyone)
+ files, remap, n, m, r = scan(files,remap,spec,dirs[i],n,m,r,onlyonce,tolerant)
end
end
scancache[sub(full,1,-2)] = files
return files, remap, n, m, r
end
-function resolvers.scanfiles(path,branch,usecache,onlyonce)
+function resolvers.scanfiles(path,branch,usecache,onlyonce,tolerant)
local realpath = resolveprefix(path)
if usecache then
local content = fullcache[realpath]
@@ -418,7 +420,7 @@ function resolvers.scanfiles(path,branch,usecache,onlyonce)
end
local content
if isdir(realpath) then
- local files, remap, n, m, r = scan({ },{ },realpath .. '/',"",0,0,0,onlyonce)
+ local files, remap, n, m, r = scan({ },{ },realpath .. '/',"",0,0,0,onlyonce,tolerant)
content = {
metadata = {
path = path, -- can be selfautoparent:texmf-whatever
@@ -457,7 +459,7 @@ function resolvers.scanfiles(path,branch,usecache,onlyonce)
end
function resolvers.simplescanfiles(path,branch,usecache)
- return resolvers.scanfiles(path,branch,usecache,true) -- onlyonce
+ return resolvers.scanfiles(path,branch,usecache,true,true) -- onlyonce
end
function resolvers.scandata()
diff --git a/tex/context/base/data-tre.lua b/tex/context/base/data-tre.lua
index dc9440deb..4aca21b68 100644
--- a/tex/context/base/data-tre.lua
+++ b/tex/context/base/data-tre.lua
@@ -108,7 +108,8 @@ table.setmetatableindex(collectors, function(t,k)
local dataname = joinname(rootname,"dirlist")
local content = caches.loadcontent(dataname,"files",dataname)
if not content then
- content = resolvers.scanfiles(rootname)
+ -- path branch usecache onlyonce tolerant
+ content = resolvers.scanfiles(rootname,nil,nil,false,true) -- so we accept crap
caches.savecontent(dataname,"files",content,dataname)
end
t[k] = content
@@ -135,6 +136,8 @@ local function checked(root,p,n)
return notfound()
end
+-- no funny characters in path but in filename permitted .. sigh
+
local function resolve(specification) -- can be called directly too
local filename = specification.filename
-- inspect(specification)
diff --git a/tex/context/base/grph-inc.lua b/tex/context/base/grph-inc.lua
index 7fa80aa6e..7e3ed6e69 100644
--- a/tex/context/base/grph-inc.lua
+++ b/tex/context/base/grph-inc.lua
@@ -1439,7 +1439,7 @@ local betterbox = P("%%BoundingBox:") * quadruple
* P("%AI3_Cropmarks:") * quadruple
* P("%%CropBox:") * quadruple
/ function(b,h,m,c)
- return formatters["%%%%BoundingBox: %i %i %i %i\n%%%%HighResBoundingBox: %F %F %F %F\n%%%%CropBox: %F %F %F %F\n"](
+ return formatters["%%%%BoundingBox: %i %i %i %i\n%%%%HiResBoundingBox: %F %F %F %F\n%%%%CropBox: %F %F %F %F\n"](
m[1],m[2],m[3],m[4],
m[1],m[2],m[3],m[4],
m[1],m[2],m[3],m[4]
diff --git a/tex/context/base/grph-inc.mkiv b/tex/context/base/grph-inc.mkiv
index 9774320d6..ca5fbc8c6 100644
--- a/tex/context/base/grph-inc.mkiv
+++ b/tex/context/base/grph-inc.mkiv
@@ -13,6 +13,9 @@
% \enabledirectives[graphics.conversion.eps.cleanup.ai]
+% \setupexternalfigures[directory=dirfile://./test/**]
+% \externalfigure[crappname(2).eps][frame=on]
+
% todo: messages
\writestatus{loading}{ConTeXt Graphic Macros / Figure Inclusion}
diff --git a/tex/context/base/status-files.pdf b/tex/context/base/status-files.pdf
index 2cdcb5a33..69f385a5b 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 c6b2b1a71..86c7ece91 100644
--- a/tex/context/base/status-lua.pdf
+++ b/tex/context/base/status-lua.pdf
Binary files differ
diff --git a/tex/generic/context/luatex/luatex-fonts-merged.lua b/tex/generic/context/luatex/luatex-fonts-merged.lua
index d947aa686..9d3fbbdc5 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 : 09/03/14 17:37:43
+-- merge date : 09/03/14 22:05:34
do -- begin closure to overcome local limits and interference