summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHans Hagen <pragma@wxs.nl>2022-04-20 20:17:28 +0200
committerContext Git Mirror Bot <phg@phi-gamma.net>2022-04-20 20:17:28 +0200
commitf740345a433f2b9736b14f61a98173763e093b6f (patch)
treeb216dd9b5188da8049416d85280a715cbb5523f6
parentb9a7e870cf47674c90331b41f9267768992b49cb (diff)
downloadcontext-f740345a433f2b9736b14f61a98173763e093b6f.tar.gz
2022-04-20 19:17:00
-rw-r--r--tex/context/base/mkii/cont-new.mkii2
-rw-r--r--tex/context/base/mkii/context.mkii2
-rw-r--r--tex/context/base/mkiv/cont-new.mkiv2
-rw-r--r--tex/context/base/mkiv/context.mkiv2
-rw-r--r--tex/context/base/mkiv/publ-ini.lua26
-rw-r--r--tex/context/base/mkiv/status-files.pdfbin24624 -> 24636 bytes
-rw-r--r--tex/context/base/mkiv/status-lua.pdfbin257224 -> 257224 bytes
-rw-r--r--tex/context/base/mkiv/util-tbs.lua114
-rw-r--r--tex/context/base/mkxl/cont-new.mkxl2
-rw-r--r--tex/context/base/mkxl/context.mkxl2
-rw-r--r--tex/context/fonts/mkiv/bonum-math.lfg6
-rw-r--r--tex/context/fonts/mkiv/cambria-math.lfg40
-rw-r--r--tex/context/fonts/mkiv/garamond-math.lfg36
-rw-r--r--tex/context/fonts/mkiv/lm.lfg50
-rw-r--r--tex/context/fonts/mkiv/lucida-opentype-math.lfg10
-rw-r--r--tex/context/fonts/mkiv/pagella-math.lfg24
-rw-r--r--tex/context/fonts/mkiv/schola-math.lfg6
-rw-r--r--tex/context/fonts/mkiv/stix-two-math.lfg40
-rw-r--r--tex/context/fonts/mkiv/termes-math.lfg4
-rw-r--r--tex/context/modules/mkxl/m-json.mkxl86
-rw-r--r--tex/generic/context/luatex/luatex-fonts-merged.lua2
21 files changed, 254 insertions, 202 deletions
diff --git a/tex/context/base/mkii/cont-new.mkii b/tex/context/base/mkii/cont-new.mkii
index 7f4ff92d9..527dc57d5 100644
--- a/tex/context/base/mkii/cont-new.mkii
+++ b/tex/context/base/mkii/cont-new.mkii
@@ -11,7 +11,7 @@
%C therefore copyrighted by \PRAGMA. See mreadme.pdf for
%C details.
-\newcontextversion{2022.04.19 19:50}
+\newcontextversion{2022.04.20 19:15}
%D This file is loaded at runtime, thereby providing an
%D excellent place for hacks, patches, extensions and new
diff --git a/tex/context/base/mkii/context.mkii b/tex/context/base/mkii/context.mkii
index f149ddb8e..9a9b43ee8 100644
--- a/tex/context/base/mkii/context.mkii
+++ b/tex/context/base/mkii/context.mkii
@@ -20,7 +20,7 @@
%D your styles an modules.
\edef\contextformat {\jobname}
-\edef\contextversion{2022.04.19 19:50}
+\edef\contextversion{2022.04.20 19:15}
%D For those who want to use this:
diff --git a/tex/context/base/mkiv/cont-new.mkiv b/tex/context/base/mkiv/cont-new.mkiv
index d34252711..094648239 100644
--- a/tex/context/base/mkiv/cont-new.mkiv
+++ b/tex/context/base/mkiv/cont-new.mkiv
@@ -13,7 +13,7 @@
% \normalend % uncomment this to get the real base runtime
-\newcontextversion{2022.04.19 19:50}
+\newcontextversion{2022.04.20 19:15}
%D This file is loaded at runtime, thereby providing an excellent place for hacks,
%D patches, extensions and new features. There can be local overloads in cont-loc
diff --git a/tex/context/base/mkiv/context.mkiv b/tex/context/base/mkiv/context.mkiv
index a6ef280ad..1165bfced 100644
--- a/tex/context/base/mkiv/context.mkiv
+++ b/tex/context/base/mkiv/context.mkiv
@@ -49,7 +49,7 @@
%D {YYYY.MM.DD HH:MM} format.
\edef\contextformat {\jobname}
-\edef\contextversion{2022.04.19 19:50}
+\edef\contextversion{2022.04.20 19:15}
%D Kind of special:
diff --git a/tex/context/base/mkiv/publ-ini.lua b/tex/context/base/mkiv/publ-ini.lua
index d6a7bf3de..210a14deb 100644
--- a/tex/context/base/mkiv/publ-ini.lua
+++ b/tex/context/base/mkiv/publ-ini.lua
@@ -1428,8 +1428,8 @@ do
local function get(dataset,tag,field,what,check,catspec) -- somewhat more extensive
local current = rawget(datasets,dataset)
if current then
- tag = lowered.tag
- field = lowered.field
+ tag = lowered[tag]
+ field = lowered[field]
local data = current.luadata[tag]
if data then
local category = data.category
@@ -1479,8 +1479,8 @@ do
local function btxflush(name,tag,field)
local dataset = rawget(datasets,name)
if dataset then
- tag = lowered.tag
- field = lowered.field
+ tag = lowered[tag]
+ field = lowered[field]
local fields = dataset.luadata[tag]
if fields then
local manipulator, field = splitmanipulation(field)
@@ -1507,8 +1507,8 @@ do
local function btxfield(name,tag,field)
local dataset = rawget(datasets,name)
if dataset then
- tag = lowered.tag
- field = lowered.field
+ tag = lowered[tag]
+ field = lowered[field]
local fields = dataset.luadata[tag]
if fields then
local category = fields.category
@@ -1534,8 +1534,8 @@ do
local function btxdetail(name,tag,field)
local dataset = rawget(datasets,name)
if dataset then
- tag = lowered.tag
- field = lowered.field
+ tag = lowered[tag]
+ field = lowered[field]
local fields = dataset.luadata[tag]
if fields then
local details = dataset.details[tag]
@@ -1566,11 +1566,11 @@ do
local function btxdirect(name,tag,field)
local dataset = rawget(datasets,name)
if dataset then
- tag = lowered.tag
- field = lowered.field
+ tag = lowered[tag]
+ field = lowered[field]
local fields = dataset.luadata[tag]
if fields then
- field = lowered.field
+ field = lowered[field]
local manipulator, field = splitmanipulation(field)
local value = fields[field]
if value then
@@ -1589,8 +1589,8 @@ do
local function okay(name,tag,field)
local dataset = rawget(datasets,name)
if dataset then
- tag = lowered.tag
- field = lowered.field
+ tag = lowered[tag]
+ field = lowered[field]
local fields = dataset.luadata[tag]
if fields then
local category = fields.category
diff --git a/tex/context/base/mkiv/status-files.pdf b/tex/context/base/mkiv/status-files.pdf
index d464c29ca..f6ca25caa 100644
--- a/tex/context/base/mkiv/status-files.pdf
+++ b/tex/context/base/mkiv/status-files.pdf
Binary files differ
diff --git a/tex/context/base/mkiv/status-lua.pdf b/tex/context/base/mkiv/status-lua.pdf
index 9c4d2c54e..bdb717f7d 100644
--- a/tex/context/base/mkiv/status-lua.pdf
+++ b/tex/context/base/mkiv/status-lua.pdf
Binary files differ
diff --git a/tex/context/base/mkiv/util-tbs.lua b/tex/context/base/mkiv/util-tbs.lua
new file mode 100644
index 000000000..140e43a03
--- /dev/null
+++ b/tex/context/base/mkiv/util-tbs.lua
@@ -0,0 +1,114 @@
+if not modules then modules = { } end modules ['util-tbs'] = {
+ version = 1.001,
+ comment = "companion to luat-lib.mkiv",
+ author = "Hans Hagen, PRAGMA-ADE, Hasselt NL",
+ copyright = "PRAGMA ADE / ConTeXt Development Team",
+ license = "see context related readme files"
+}
+
+local tonumber, type, rawget = tonumber, type, rawget
+
+utilities = utilities or {}
+local tablestore = { }
+utilities.tablestore = tablestore
+
+local loaded = { }
+local current = nil
+
+function tablestore.load(namespace,filename)
+ local data = loaded[namespace]
+ if not data then
+ if type(filename) == "table" then
+ data = filename
+ else
+ local fullname = resolvers.findfile(filename)
+ if fullname and fullname ~= "" then
+ if file.suffix(fullname,"json") and utilities.json then
+ data = io.loaddata(fullname)
+ if data then
+ data = utilities.json.tolua(data)
+ else
+ -- error
+ end
+ else
+ data = table.load(fullname)
+ end
+ end
+ end
+ if not data then
+ data = { }
+ end
+ loaded[namespace] = data
+ if metapost then
+ metapost.setparameterset(namespace,data)
+ end
+ end
+ current = data
+ return data
+end
+
+function tablestore.loaded(namespace)
+ return (namespace and loaded[namespace]) or current or { }
+end
+
+function tablestore.known(namespace)
+ return namespace and rawget(loaded,namespace) or false
+end
+
+do
+
+ local find, gmatch = string.find, string.gmatch
+
+ local P, C, Ct, Cc, R = lpeg.P, lpeg.C, lpeg.Ct, lpeg.Cc, lpeg.R
+
+ local separator = P(".")
+ local equal = P("=")
+ local digit = R("09")
+ local lbracket = P("[")
+ local rbracket = P("]")
+ local index = Ct(Cc("index") * lbracket * (digit^1 / tonumber) * rbracket)
+ local test = Ct(Cc("test") * lbracket * C((1-equal)^1) * equal * C((1-rbracket)^1) * rbracket)
+ local entry = Ct(Cc("entry") * C((1-lbracket-separator)^1))
+
+ local specifier = Ct ((entry + (separator + index + test))^1)
+
+ function tablestore.field(namespace,name,default)
+ local data = loaded[namespace] or current
+ if data then
+ -- if find(name,"%[") then
+ local t = lpeg.match(specifier,name)
+ for i=1,#t do
+ local ti = t[i]
+ local t1 = ti[1]
+ local k = ti[2]
+ if t1 == "test" then
+ local v = ti[3]
+ for j=1,#data do
+ local dj = data[j]
+ if dj[k] == v then
+ data = dj
+ goto OKAY
+ end
+ end
+ return
+ else
+ data = data[k]
+ if not data then
+ return
+ end
+ end
+ ::OKAY::
+ end
+ -- else
+ -- for s in gmatch(name,"[^%.]+") do
+ -- data = data[s] or data[tonumber(s) or 0]
+ -- if not data then
+ -- return
+ -- end
+ -- end
+ -- end
+ return data
+ end
+ end
+
+end
diff --git a/tex/context/base/mkxl/cont-new.mkxl b/tex/context/base/mkxl/cont-new.mkxl
index 6dbbe3ccb..0f17e11a6 100644
--- a/tex/context/base/mkxl/cont-new.mkxl
+++ b/tex/context/base/mkxl/cont-new.mkxl
@@ -13,7 +13,7 @@
% \normalend % uncomment this to get the real base runtime
-\newcontextversion{2022.04.19 19:50}
+\newcontextversion{2022.04.20 19:15}
%D This file is loaded at runtime, thereby providing an excellent place for hacks,
%D patches, extensions and new features. There can be local overloads in cont-loc
diff --git a/tex/context/base/mkxl/context.mkxl b/tex/context/base/mkxl/context.mkxl
index a34772bbb..114ec31ba 100644
--- a/tex/context/base/mkxl/context.mkxl
+++ b/tex/context/base/mkxl/context.mkxl
@@ -29,7 +29,7 @@
%D {YYYY.MM.DD HH:MM} format.
\immutable\edef\contextformat {\jobname}
-\immutable\edef\contextversion{2022.04.19 19:50}
+\immutable\edef\contextversion{2022.04.20 19:15}
%overloadmode 1 % check frozen / warning
%overloadmode 2 % check frozen / error
diff --git a/tex/context/fonts/mkiv/bonum-math.lfg b/tex/context/fonts/mkiv/bonum-math.lfg
index 766baa610..f946e2a80 100644
--- a/tex/context/fonts/mkiv/bonum-math.lfg
+++ b/tex/context/fonts/mkiv/bonum-math.lfg
@@ -135,7 +135,7 @@ return {
[0x1D484] = { 0, 1, 0, 0.95 }, -- bold lowercase italic c
[0x1D485] = { 0, 1, 0, 0.75 }, -- bold lowercase italic d
[0x1D486] = { 0, 1, 0, 0.95 }, -- bold lowercase italic e
- -- [0x1D487] = { 0, 1, 0, 0.95 }, -- bold lowercase italic f
+ -- [0x1D487] = { 0, 1, 0, 0.95 }, -- bold lowercase italic f
[0x1D488] = { 0, 1, 0, 0.9 }, -- bold lowercase italic g
[0x1D489] = { 0, 1, 0, 1.2 }, -- bold lowercase italic h
-- [0x1D48A] = { 0, 1, 0, 0.6 }, -- bold lowercase italic i
@@ -164,8 +164,8 @@ return {
},
{
tweak = "fixprimes",
- -- scale = 0.8,
- -- smaller = true,
+ -- scale = 0.8,
+ -- smaller = true,
factor = 1.1,
},
{
diff --git a/tex/context/fonts/mkiv/cambria-math.lfg b/tex/context/fonts/mkiv/cambria-math.lfg
index f73bc3ab7..a97a3f709 100644
--- a/tex/context/fonts/mkiv/cambria-math.lfg
+++ b/tex/context/fonts/mkiv/cambria-math.lfg
@@ -66,31 +66,31 @@ return {
{
tweak = "dimensions",
list = {
- -- [0x00060] = { yoffset = -0.1 }, -- grave
- -- [0x000B4] = { yoffset = -0.1 }, -- acute
- -- [0x002C6] = { yoffset = -0.1 }, -- hat
- -- [0x002DC] = { yoffset = -0.1 }, -- tilde
- -- [0x000AF] = { yoffset = -0.1 }, -- bar
- -- [0x002D8] = { yoffset = -0.15 }, -- breve
- -- [0x002D9] = { yoffset = -0.15 }, -- dot
- -- [0x000A8] = { yoffset = -0.1 }, -- ddot
+ -- [0x00060] = { yoffset = -0.1 }, -- grave
+ -- [0x000B4] = { yoffset = -0.1 }, -- acute
+ -- [0x002C6] = { yoffset = -0.1 }, -- hat
+ -- [0x002DC] = { yoffset = -0.1 }, -- tilde
+ -- [0x000AF] = { yoffset = -0.1 }, -- bar
+ -- [0x002D8] = { yoffset = -0.15 }, -- breve
+ -- [0x002D9] = { yoffset = -0.15 }, -- dot
+ -- [0x000A8] = { yoffset = -0.1 }, -- ddot
[0x020DB] = { yoffset = -0.05 }, -- dddot
- -- [0x002C7] = { yoffset = -0.1 }, -- check
+ -- [0x002C7] = { yoffset = -0.1 }, -- check
[0x020D7] = { yoffset = -0.05 }, -- vec
- -- [0x00300] = { yoffset = -0.12 , all=true }, -- widegrave
- -- [0x00301] = { yoffset = -0.12 , all=true }, -- wideacute
- -- [0x00302] = { yoffset = -0.12 , all=true }, -- widehat
- -- [0x00303] = { yoffset = -0.12 , all=true }, -- widetilde
- -- [0x00304] = { yoffset = -0.12 , all=true }, -- widebar
- -- [0x00306] = { yoffset = -0.12 , all=true }, -- widebreve
+ -- [0x00300] = { yoffset = -0.12 , all=true }, -- widegrave
+ -- [0x00301] = { yoffset = -0.12 , all=true }, -- wideacute
+ -- [0x00302] = { yoffset = -0.12 , all=true }, -- widehat
+ -- [0x00303] = { yoffset = -0.12 , all=true }, -- widetilde
+ -- [0x00304] = { yoffset = -0.12 , all=true }, -- widebar
+ -- [0x00306] = { yoffset = -0.12 , all=true }, -- widebreve
[0x00307] = { yoffset = -0.025 , all=true }, -- widedot
[0x00308] = { yoffset = -0.025 , all=true }, -- wideddot
- -- [0x020DB] = { yoffset = -0.1 , all=true }, -- widedddot
- -- [0x0030A] = { yoffset = -0.12 , all=true }, -- widering
- -- [0x0030C] = { yoffset = -0.12 , all=true }, -- widecheck
- [0x1D43D] = { 0.25, 1.15, 0.2 }, -- J
+ -- [0x020DB] = { yoffset = -0.1 , all=true }, -- widedddot
+ -- [0x0030A] = { yoffset = -0.12 , all=true }, -- widering
+ -- [0x0030C] = { yoffset = -0.12 , all=true }, -- widecheck
+ [0x1D43D] = { 0.25, 1.15, 0.2 }, -- J
[0x1D487] = { anchor = 0.8 }, -- bold lower case italic f
- -- [0x1D487] = { 0, 1, 0, 1.3}, -- bold lower case italic f
+ -- [0x1D487] = { 0, 1, 0, 1.3}, -- bold lower case italic f
},
},
{
diff --git a/tex/context/fonts/mkiv/garamond-math.lfg b/tex/context/fonts/mkiv/garamond-math.lfg
index 4c5eb5ba6..e6778d4b7 100644
--- a/tex/context/fonts/mkiv/garamond-math.lfg
+++ b/tex/context/fonts/mkiv/garamond-math.lfg
@@ -6,16 +6,16 @@ return {
copyright = "ConTeXt development team",
mathematics = {
parameters = {
- NoLimitSupFactor = 0,
- NoLimitSubFactor = 1200,
- FractionRuleThickness = 60,
- OverbarRuleThickness = 60,
- -- RadicalRuleThickness = 60,
- UnderbarRuleThickness = 60,
- -- AccentBaseHeight = 0,
- AccentBaseDepth = 75,
- -- AccentTopShiftUp = -75,
- -- FlattenedAccentTopShiftUp = -100,
+ NoLimitSupFactor = 0,
+ NoLimitSubFactor = 1200,
+ FractionRuleThickness = 60,
+ OverbarRuleThickness = 60,
+ -- RadicalRuleThickness = 60,
+ UnderbarRuleThickness = 60,
+ -- AccentBaseHeight = 0,
+ AccentBaseDepth = 75,
+ -- AccentTopShiftUp = -75,
+ -- FlattenedAccentTopShiftUp = -100,
},
tweaks = {
aftercopying = {
@@ -27,14 +27,14 @@ return {
tweak = "dimensions",
list = {
-- offset width italic
- -- [0x00060] = { yoffset = -0.1 }, -- grave
- -- [0x000B4] = { yoffset = -0.1 }, -- acute
+ -- [0x00060] = { yoffset = -0.1 }, -- grave
+ -- [0x000B4] = { yoffset = -0.1 }, -- acute
[0x002C6] = { yoffset = -0.1 }, -- hat
[0x002DC] = { yoffset = -0.1 }, -- tilde
- -- [0x000AF] = { yoffset = -0.1 }, -- bar
+ -- [0x000AF] = { yoffset = -0.1 }, -- bar
[0x002D8] = { yoffset = -0.15 }, -- breve
[0x002D9] = { yoffset = -0.15 }, -- dot
- -- [0x000A8] = { yoffset = -0.1 }, -- ddot
+ -- [0x000A8] = { yoffset = -0.1 }, -- ddot
[0x020DB] = { yoffset = -0.115 }, -- dddot
[0x002C7] = { yoffset = -0.1 }, -- check
[0x020D7] = { yoffset = -0.1 }, -- vec
@@ -46,10 +46,10 @@ return {
[0x00306] = { yoffset = -0.12 , all=true }, -- widebreve
[0x00307] = { yoffset = -0.12 , all=true }, -- widedot
[0x00308] = { yoffset = -0.12 , all=true }, -- wideddot
- -- [0x020DB] = { yoffset = -0.1 , all=true }, -- widedddot
+ -- [0x020DB] = { yoffset = -0.1 , all=true }, -- widedddot
[0x0030A] = { yoffset = -0.12 , all=true }, -- widering
[0x0030C] = { yoffset = -0.12 , all=true }, -- widecheck
- -- [0x002C6] = { scale=.85, yoffset = .1, width = .85, height = .935 }, -- hat
+ -- [0x002C6] = { scale=.85, yoffset = .1, width = .85, height = .935 }, -- hat
[0x00393] = { 0.05, 1.05, 0.075 }, -- \Gamma
-- [0x003A6] = { 0.05, 1.05, 0 }, -- \Phi difficult!
[0x003A8] = { 0.05, 1.05, 0.075 }, -- \Psi
@@ -107,9 +107,9 @@ return {
{
tweak = "fixprimes",
scale = 0.9,
- -- smaller = true,
+ -- smaller = true,
factor = 0.9,
- -- fake = 0.75,
+ -- fake = 0.75,
},
{
tweak = "checkspacing",
diff --git a/tex/context/fonts/mkiv/lm.lfg b/tex/context/fonts/mkiv/lm.lfg
index 44ea14571..5ea043b55 100644
--- a/tex/context/fonts/mkiv/lm.lfg
+++ b/tex/context/fonts/mkiv/lm.lfg
@@ -76,17 +76,17 @@ return {
[0x002DA] = { yoffset = -0.05 }, -- ring
[0x002C7] = { yoffset = -0.05 }, -- check
[0x020D7] = { yoffset = -0.05 }, -- vec
- [0x00300] = { yoffset = -0.07 , all=true }, -- widegrave
- [0x00301] = { yoffset = -0.07 , all=true }, -- wideacute
- [0x00302] = { yoffset = -0.1 , all=true }, -- widehat
- [0x00303] = { yoffset = -0.09 , all=true }, -- widetilde
- [0x00304] = { yoffset = -0.1 , all=true }, -- widebar
- [0x00306] = { yoffset = -0.07 , all=true }, -- widebreve
- [0x00307] = { yoffset = -0.05 , all=true }, -- widedot
- [0x00308] = { yoffset = -0.05 , all=true }, -- wideddot
- [0x020DB] = { yoffset = -0.075 , all=true }, -- widedddot
- [0x0030A] = { yoffset = -0.05 , all=true }, -- widering
- [0x0030C] = { yoffset = -0.075 , all=true }, -- widecheck
+ [0x00300] = { yoffset = -0.07, all = true }, -- widegrave
+ [0x00301] = { yoffset = -0.07, all = true }, -- wideacute
+ [0x00302] = { yoffset = -0.1, all = true }, -- widehat
+ [0x00303] = { yoffset = -0.09, all = true }, -- widetilde
+ [0x00304] = { yoffset = -0.1, all = true }, -- widebar
+ [0x00306] = { yoffset = -0.07, all = true }, -- widebreve
+ [0x00307] = { yoffset = -0.05, all = true }, -- widedot
+ [0x00308] = { yoffset = -0.05, all = true }, -- wideddot
+ [0x020DB] = { yoffset = -0.075, all = true }, -- widedddot
+ [0x0030A] = { yoffset = -0.05, all = true }, -- widering
+ [0x0030C] = { yoffset = -0.075, all = true }, -- widecheck
},
},
{
@@ -103,9 +103,9 @@ return {
{
tweak = "fixprimes",
factor = 1.05,
- -- smaller = true,
+ -- smaller = true,
scale = 0.9,
- -- fake = 0.6,
+ -- fake = 0.6,
},
{
tweak = "checkspacing",
@@ -125,21 +125,15 @@ return {
},
},
parameters = {
- FractionNumeratorDisplayStyleShiftUp = function(value,target,original)
- local o = original.mathparameters.FractionNumeratorDisplayStyleShiftUp
- if o > 675 then
- o = 600
- else
- -- probably tuned
- end
- return o * target.parameters.factor
- end,
- NoLimitSupFactor = 0,
- NoLimitSubFactor = 900,
- -- AccentBaseHeight = 0,
- AccentBaseDepth = 50,
- },
- bigs = {1, 3, 5, 7},
+ FractionNumeratorDisplayStyleShiftUp = 600, -- used to be a function
+ NoLimitSupFactor = 0,
+ NoLimitSubFactor = 900,
+ -- AccentBaseHeight = 0,
+ AccentBaseDepth = 50,
+ },
+ bigslots = {
+ 1, 3, 5, 7
+ },
--
-- experimental fixes for mkiv:
--
diff --git a/tex/context/fonts/mkiv/lucida-opentype-math.lfg b/tex/context/fonts/mkiv/lucida-opentype-math.lfg
index 72f4ca9e6..44d470650 100644
--- a/tex/context/fonts/mkiv/lucida-opentype-math.lfg
+++ b/tex/context/fonts/mkiv/lucida-opentype-math.lfg
@@ -37,7 +37,7 @@ return {
NoLimitSupFactor = 0,
NoLimitSubFactor = 900,
FractionRuleThickness = 55,
- -- AccentBaseHeight = 650,
+ -- AccentBaseHeight = 650,
AccentBaseDepth = 150,
},
tweaks = {
@@ -102,10 +102,10 @@ return {
},
{
tweak = "fixprimes",
- factor = 0.8, -- accent base height
- -- smaller = true, -- replace multiples
- scale = 1.1, -- glyph scale
- -- fake = 0.65, -- replace multiples with this width proportion
+ factor = 0.8, -- accent base height
+ -- smaller = true, -- replace multiples
+ scale = 1.1, -- glyph scale
+ -- fake = 0.65, -- replace multiples with this width proportion
-- keep = true, -- keep the text size prime (aka minute)
},
{
diff --git a/tex/context/fonts/mkiv/pagella-math.lfg b/tex/context/fonts/mkiv/pagella-math.lfg
index d1e77e9bf..17f59d952 100644
--- a/tex/context/fonts/mkiv/pagella-math.lfg
+++ b/tex/context/fonts/mkiv/pagella-math.lfg
@@ -38,8 +38,8 @@ return {
NoLimitSupFactor = 0,
NoLimitSubFactor = 900,
AccentTopShiftUp = 30,
- -- AccentBaseHeight = 0,
- AccentBaseDepth = 80,
+ -- AccentBaseHeight = 0,
+ AccentBaseDepth = 80,
},
tweaks = {
aftercopying = {
@@ -62,8 +62,8 @@ return {
{
tweak = "dimensions",
list = { -- offset width italic
- -- [0x002C6] = { scale=.85, yoffset = .1, width = .85, height = .935 }, -- hat
- -- [0x00302] = { scale=.85, yoffset = .1, width = .85, height = .935 }, -- hat
+ -- [0x002C6] = { scale=.85, yoffset = .1, width = .85, height = .935 }, -- hat
+ -- [0x00302] = { scale=.85, yoffset = .1, width = .85, height = .935 }, -- hat
-- [0x002C6] = { scale=.75, yoffset = .2, advance = .75, width = .75, height = .90 }, -- hat
-- [0x00302] = { scale=.75, yoffset = .2, advance = .75, width = .75, height = .90 }, -- hat
[0x00060] = { yoffset = -0.035 }, -- grave
@@ -75,19 +75,19 @@ return {
[0x002D9] = { yoffset = -0.035 }, -- dot
[0x000A8] = { yoffset = -0.05 }, -- ddot
[0x020DB] = { yoffset = -0.06 }, -- dddot
- -- [0x002DA] = { yoffset = -0.05 }, -- ring
- -- [0x002C7] = { yoffset = -0.05 }, -- check
+ -- [0x002DA] = { yoffset = -0.05 }, -- ring
+ -- [0x002C7] = { yoffset = -0.05 }, -- check
[0x020D7] = { yoffset = -0.05 }, -- vec
- -- [0x00300] = { yoffset = -0.07 , all=true }, -- widegrave
- -- [0x00301] = { yoffset = -0.07 , all=true }, -- wideacute
+ -- [0x00300] = { yoffset = -0.07 , all=true }, -- widegrave
+ -- [0x00301] = { yoffset = -0.07 , all=true }, -- wideacute
[0x00302] = { yoffset = -0.02 , all=true }, -- widehat
[0x00303] = { yoffset = -0.02 , all=true }, -- widetilde
[0x00304] = { yoffset = -0.05 , all=true }, -- widebar
[0x00306] = { yoffset = -0.03 , all=true }, -- widebreve
[0x00307] = { yoffset = -0.03 , all=true }, -- widedot
[0x00308] = { yoffset = -0.03 , all=true }, -- wideddot
- -- [0x020DB] = { yoffset = 0.0 , all=true }, -- widedddot
- -- [0x0030A] = { yoffset = -0.05 , all=true }, -- widering
+ -- [0x020DB] = { yoffset = 0.0 , all=true }, -- widedddot
+ -- [0x0030A] = { yoffset = -0.05 , all=true }, -- widering
[0x0030C] = { yoffset = -0.03 , all=true }, -- widecheck
[0x1D44E] = { 0, 1, 0, 0.9 }, -- a
[0x1D44F] = { 0, 1, 0, 1.3 }, -- b
@@ -128,9 +128,9 @@ return {
{
tweak = "fixprimes",
factor = 0.9,
- -- smaller = true,
+ -- smaller = true,
scale = 0.9,
- -- fake = 0.65,
+ -- fake = 0.65,
},
{
tweak = "checkspacing",
diff --git a/tex/context/fonts/mkiv/schola-math.lfg b/tex/context/fonts/mkiv/schola-math.lfg
index cea6b501c..02bfa8925 100644
--- a/tex/context/fonts/mkiv/schola-math.lfg
+++ b/tex/context/fonts/mkiv/schola-math.lfg
@@ -20,8 +20,8 @@ return {
parameters = {
NoLimitSupFactor = 0,
NoLimitSubFactor = 900,
- -- AccentBaseHeight = 0,
- AccentBaseDepth = 30,
+ -- AccentBaseHeight = 0,
+ AccentBaseDepth = 30,
},
tweaks = {
aftercopying = {
@@ -49,7 +49,7 @@ return {
{
tweak = "fixprimes",
scale = 0.85,
- -- smaller = true,
+ -- smaller = true,
factor = 1,
},
{
diff --git a/tex/context/fonts/mkiv/stix-two-math.lfg b/tex/context/fonts/mkiv/stix-two-math.lfg
index 351c6a8ee..5761e53a2 100644
--- a/tex/context/fonts/mkiv/stix-two-math.lfg
+++ b/tex/context/fonts/mkiv/stix-two-math.lfg
@@ -50,7 +50,7 @@ return {
-- feature = false, -- use the saved ones (see typescript)
selector = 0xFE00,
},
- -- 0xFEO1 should be roundhand style, if present
+ -- 0xFEO1 should be roundhand style, if present
{
tweak = "variants",
kind = "script",
@@ -60,34 +60,34 @@ return {
{
tweak = "dimensions",
list = {
- -- [0x00060] = { yoffset = -0.035 }, -- grave
- -- [0x000B4] = { yoffset = -0.035 }, -- acute
- -- [0x002C6] = { yoffset = -0.035 }, -- hat
- -- [0x002DC] = { yoffset = -0.035 }, -- tilde
- -- [0x000AF] = { yoffset = -0.05 }, -- bar
- -- [0x002D8] = { yoffset = -0.035 }, -- breve
+ -- [0x00060] = { yoffset = -0.035 }, -- grave
+ -- [0x000B4] = { yoffset = -0.035 }, -- acute
+ -- [0x002C6] = { yoffset = -0.035 }, -- hat
+ -- [0x002DC] = { yoffset = -0.035 }, -- tilde
+ -- [0x000AF] = { yoffset = -0.05 }, -- bar
+ -- [0x002D8] = { yoffset = -0.035 }, -- breve
[0x002D9] = { yoffset = -0.02 }, -- dot
[0x000A8] = { yoffset = -0.02 }, -- ddot
[0x020DB] = { yoffset = 0.04 }, -- dddot
- -- [0x002DA] = { yoffset = -0.05 }, -- ring
- -- [0x002C7] = { yoffset = -0.05 }, -- check
+ -- [0x002DA] = { yoffset = -0.05 }, -- ring
+ -- [0x002C7] = { yoffset = -0.05 }, -- check
[0x020D7] = { yoffset = -0.07 }, -- vec
- -- [0x00300] = { yoffset = -0.07 , all=true }, -- widegrave
- -- [0x00301] = { yoffset = -0.07 , all=true }, -- wideacute
- -- [0x00302] = { yoffset = -0.02 , all=true }, -- widehat
- -- [0x00303] = { yoffset = -0.02 , all=true }, -- widetilde
- -- [0x00304] = { yoffset = -0.05 , all=true }, -- widebar
- -- [0x00306] = { yoffset = -0.03 , all=true }, -- widebreve
- -- [0x00307] = { yoffset = -0.03 , all=true }, -- widedot
- -- [0x00308] = { yoffset = -0.03 , all=true }, -- wideddot
- -- [0x020DB] = { yoffset = 0.0 , all=true }, -- widedddot
- -- [0x0030A] = { yoffset = -0.05 , all=true }, -- widering
+ -- [0x00300] = { yoffset = -0.07 , all=true }, -- widegrave
+ -- [0x00301] = { yoffset = -0.07 , all=true }, -- wideacute
+ -- [0x00302] = { yoffset = -0.02 , all=true }, -- widehat
+ -- [0x00303] = { yoffset = -0.02 , all=true }, -- widetilde
+ -- [0x00304] = { yoffset = -0.05 , all=true }, -- widebar
+ -- [0x00306] = { yoffset = -0.03 , all=true }, -- widebreve
+ -- [0x00307] = { yoffset = -0.03 , all=true }, -- widedot
+ -- [0x00308] = { yoffset = -0.03 , all=true }, -- wideddot
+ -- [0x020DB] = { yoffset = 0.0 , all=true }, -- widedddot
+ -- [0x0030A] = { yoffset = -0.05 , all=true }, -- widering
},
},
{
tweak = "fixprimes",
scale = 1,
- -- smaller = true,
+ -- smaller = true,
factor = 1,
},
{
diff --git a/tex/context/fonts/mkiv/termes-math.lfg b/tex/context/fonts/mkiv/termes-math.lfg
index 45eaa0505..e9796dc31 100644
--- a/tex/context/fonts/mkiv/termes-math.lfg
+++ b/tex/context/fonts/mkiv/termes-math.lfg
@@ -28,7 +28,7 @@ return {
parameters = {
NoLimitSupFactor = 0,
NoLimitSubFactor = 900,
- -- AccentBaseHeight = 0,
+ -- AccentBaseHeight = 0,
AccentBaseDepth = 50,
},
tweaks = {
@@ -70,7 +70,7 @@ return {
{
tweak = "fixprimes",
scale = 0.85,
- -- smaller = true,
+ -- smaller = true,
factor = 0.95,
},
{
diff --git a/tex/context/modules/mkxl/m-json.mkxl b/tex/context/modules/mkxl/m-json.mkxl
index 061a15ba0..b08286b08 100644
--- a/tex/context/modules/mkxl/m-json.mkxl
+++ b/tex/context/modules/mkxl/m-json.mkxl
@@ -11,102 +11,46 @@
%C therefore copyrighted by \PRAGMA. See mreadme.pdf for
%C details.
-%D This module is a side effect of looking into json. Currently there are
-%D only a few helpers:
-%D
-%D \starttyping
-%D moduledata.json.tolua (str)
-%D moduledata.json.tostring(val)
-%D \stoptyping
-%D
-%D Nothing spectacular but maybe handy to have around.
-
\startmodule [json]
-% check for: utilities.json
-
\registerctxluafile{util-jsn}{}
+\registerctxluafile{util-tbs}{}
% \def\u#1#2#3#4{\cldcontext{utf.char(0x#1#2#3#4)}}
\startluacode
- -- when we are at the lua end we can just use the table directly but
- -- otherwise we can use accessors at the tex end and if needed some
- -- special formatters
- --
- -- we can actually map the json to xml and then use xml accessors
- -- which has some benefits
-
- local tonumber = tonumber
- local context = context
- local gmatch = string.gmatch
-
- local loaded = { }
- local current = nil
- local json = utilities.json
-
- local function loadjsonfile(namespace,filename)
- local data = loaded[namespace]
- if not data then
- local fullname = resolvers.findfile(filename)
- if fullname and fullname ~= "" then
- data = io.loaddata(fullname)
- if data then
- data = utilities.json.tolua(data)
- end
- end
- if not data then
- data = { }
- end
- loaded[namespace] = data
- metapost.setparameterset(namespace,data)
- end
- current = data
- return data
- end
-
- local function jsonfield(namespace,name,default)
- local data = loaded[namespace] or current
- if current then
- for s in gmatch(name,"[^%.]+") do
- data = data[s] or data[tonumber(s) or 0]
- if not data then
- return
- end
- end
- return data
- end
- end
-
- json.field = jsonfield
-
- function json.loaded(namespace)
- return (namespace and loaded[namespace]) or current or { }
- end
+ local tablestore = utilities.tablestore
interfaces.implement {
- name = "loadjsonfile",
- actions = loadjsonfile,
+ name = "loadtable",
+ actions = tablestore.load,
arguments = { "optional", "optional" },
public = true,
protected = true,
}
interfaces.implement {
- name = "jsonfield",
- actions = { jsonfield, context },
+ name = "tablefield",
+ actions = { tablestore.field, context },
arguments = "2 arguments",
public = true,
}
interfaces.implement {
- name = "jsonfielddefault",
- actions = { jsonfield, context },
+ name = "tablefielddefault",
+ actions = { tablestore.field, context },
arguments = "3 arguments",
public = true,
}
+ utilities.json.field = tablestore.field
+ utilities.json.loaded = tablestore.loaded
+
\stopluacode
+\let\loadjsonfile \loadtable
+\let\jsonfield \tablefield
+\let\jsonfielddefault \tablefielddefault
+
\stopmodule
diff --git a/tex/generic/context/luatex/luatex-fonts-merged.lua b/tex/generic/context/luatex/luatex-fonts-merged.lua
index 4f01e92df..3c0b95c6d 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 : c:/data/develop/context/sources/luatex-fonts-merged.lua
-- parent file : c:/data/develop/context/sources/luatex-fonts.lua
--- merge date : 2022-04-19 19:50
+-- merge date : 2022-04-20 19:15
do -- begin closure to overcome local limits and interference