summaryrefslogtreecommitdiff
path: root/scripts/context
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/context')
-rw-r--r--scripts/context/lua/mtx-fonts.lua13
-rw-r--r--scripts/context/lua/mtx-plain.lua45
-rw-r--r--scripts/context/lua/mtxrun.lua8
-rw-r--r--scripts/context/stubs/mswin/mtxrun.lua8
-rw-r--r--scripts/context/stubs/unix/mtxrun8
5 files changed, 63 insertions, 19 deletions
diff --git a/scripts/context/lua/mtx-fonts.lua b/scripts/context/lua/mtx-fonts.lua
index 506556483..d2ce5087a 100644
--- a/scripts/context/lua/mtx-fonts.lua
+++ b/scripts/context/lua/mtx-fonts.lua
@@ -378,6 +378,17 @@ function scripts.fonts.list()
end
+function scripts.fonts.justload()
+ local fullname = environment.files[1]
+ if fullname then
+ local result = fontloader.open(fullname)
+ if type(result) == "table" then
+ report("loading %s: %s","succeeded",fullname)
+ end
+ end
+ report("loading %s: %s","failed",fullname)
+end
+
function scripts.fonts.unpack()
local name = file.removesuffix(file.basename(givenfiles[1] or ""))
if name and name ~= "" then
@@ -447,6 +458,8 @@ elseif getargument("reload") then
scripts.fonts.reload()
elseif getargument("save") then
scripts.fonts.save()
+elseif getargument("justload") then
+ scripts.fonts.justload()
elseif getargument("unpack") then
scripts.fonts.unpack()
elseif getargument("statistics") then
diff --git a/scripts/context/lua/mtx-plain.lua b/scripts/context/lua/mtx-plain.lua
index 918e9de8c..663664bae 100644
--- a/scripts/context/lua/mtx-plain.lua
+++ b/scripts/context/lua/mtx-plain.lua
@@ -17,8 +17,6 @@ if not modules then modules = { } end modules ['mtx-plain'] = {
-- "c:/data/develop/tex-context/tex/texmf/web2c",
-- }
-local format = string.format
-
local helpinfo = [[
<?xml version="1.0"?>
<application>
@@ -52,9 +50,40 @@ local report = application.report
scripts = scripts or { }
scripts.plain = scripts.plain or { }
+local function execute(...)
+ local command = string.format(...)
+ report("running command %a",command)
+ report()
+ os.execute(command)
+ report()
+end
+
+local function resultof(...)
+ local command = string.format(...)
+ report("running command %a",command)
+ return string.strip(os.resultof(command) or "")
+end
+
function scripts.plain.make(texengine,texformat)
- os.execute("mktexlsr") -- better play safe and use this one
- local fmtpathspec = os.resultof(format("kpsewhich --expand-path=$TEXFORMATS --engine=%s",texengine))
+ report("generating kpse file database")
+ execute("mktexlsr") -- better play safe and use this one
+ local fmtpathspec = resultof("kpsewhich --var-value=TEXFORMATS --engine=%s",texengine)
+ if fmtpathspec ~= "" then
+ report("using path specification %a",fmtpathspec)
+ fmtpathspec = resultof('kpsewhich -expand-path="%s"',fmtpathspec)
+ end
+ if fmtpathspec ~= "" then
+ report("using path expansion %a",fmtpathspec)
+ else
+ report("no valid path reported, trying alternative")
+ fmtpathspec = resultof("kpsewhich --show-path=fmt --engine=%s",texengine)
+ if fmtpathspec ~= "" then
+ report("using path expansion %a",fmtpathspec)
+ else
+ report("no valid path reported, falling back to current path")
+ fmtpathspec = "."
+ end
+ end
fmtpathspec = string.splitlines(fmtpathspec)[1] or fmtpathspec
fmtpathspec = file.splitpath(fmtpathspec)
local fmtpath = nil
@@ -69,13 +98,15 @@ function scripts.plain.make(texengine,texformat)
-- message
else
lfs.chdir(fmtpath)
- os.execute(format('%s --ini %s',texengine,file.addsuffix(texformat,"tex")))
- os.execute("mktexlsr")
+ execute('%s --ini %s',texengine,file.addsuffix(texformat,"tex"))
+ report("generating kpse file database")
+ execute("mktexlsr")
end
+ report("format saved on path %a",fmtpath)
end
function scripts.plain.run(texengine,texformat,filename)
- os.execute(format('%s --fmt=%s "%s"',texengine,file.removesuffix(texformat),filename))
+ execute('%s --fmt=%s "%s"',texengine,file.removesuffix(texformat),filename)
end
local texformat = environment.arguments.texformat or environment.arguments.format
diff --git a/scripts/context/lua/mtxrun.lua b/scripts/context/lua/mtxrun.lua
index 80489902b..2700b6b9f 100644
--- a/scripts/context/lua/mtxrun.lua
+++ b/scripts/context/lua/mtxrun.lua
@@ -14575,7 +14575,7 @@ do -- create closure to overcome 200 locals limit
package.loaded["data-con"] = package.loaded["data-con"] or true
--- original size: 4940, stripped down to: 3580
+-- original size: 5012, stripped down to: 3588
if not modules then modules={} end modules ['data-con']={
version=1.100,
@@ -14684,7 +14684,7 @@ function containers.content(container,name)
return container.storage[name]
end
function containers.cleanname(name)
- return (gsub(lower(name),"[^%w%d]+","-"))
+ return (gsub(lower(name),"[^%w\128-\255]+","-"))
end
@@ -15991,8 +15991,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-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 : 667202
--- stripped bytes : 244308
+-- original bytes : 667274
+-- stripped bytes : 244372
-- end library merge
diff --git a/scripts/context/stubs/mswin/mtxrun.lua b/scripts/context/stubs/mswin/mtxrun.lua
index 80489902b..2700b6b9f 100644
--- a/scripts/context/stubs/mswin/mtxrun.lua
+++ b/scripts/context/stubs/mswin/mtxrun.lua
@@ -14575,7 +14575,7 @@ do -- create closure to overcome 200 locals limit
package.loaded["data-con"] = package.loaded["data-con"] or true
--- original size: 4940, stripped down to: 3580
+-- original size: 5012, stripped down to: 3588
if not modules then modules={} end modules ['data-con']={
version=1.100,
@@ -14684,7 +14684,7 @@ function containers.content(container,name)
return container.storage[name]
end
function containers.cleanname(name)
- return (gsub(lower(name),"[^%w%d]+","-"))
+ return (gsub(lower(name),"[^%w\128-\255]+","-"))
end
@@ -15991,8 +15991,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-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 : 667202
--- stripped bytes : 244308
+-- original bytes : 667274
+-- stripped bytes : 244372
-- end library merge
diff --git a/scripts/context/stubs/unix/mtxrun b/scripts/context/stubs/unix/mtxrun
index 80489902b..2700b6b9f 100644
--- a/scripts/context/stubs/unix/mtxrun
+++ b/scripts/context/stubs/unix/mtxrun
@@ -14575,7 +14575,7 @@ do -- create closure to overcome 200 locals limit
package.loaded["data-con"] = package.loaded["data-con"] or true
--- original size: 4940, stripped down to: 3580
+-- original size: 5012, stripped down to: 3588
if not modules then modules={} end modules ['data-con']={
version=1.100,
@@ -14684,7 +14684,7 @@ function containers.content(container,name)
return container.storage[name]
end
function containers.cleanname(name)
- return (gsub(lower(name),"[^%w%d]+","-"))
+ return (gsub(lower(name),"[^%w\128-\255]+","-"))
end
@@ -15991,8 +15991,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-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 : 667202
--- stripped bytes : 244308
+-- original bytes : 667274
+-- stripped bytes : 244372
-- end library merge