summaryrefslogtreecommitdiff
path: root/tex/context/fonts/mkiv/antykwa-math.lfg
diff options
context:
space:
mode:
Diffstat (limited to 'tex/context/fonts/mkiv/antykwa-math.lfg')
-rw-r--r--tex/context/fonts/mkiv/antykwa-math.lfg173
1 files changed, 99 insertions, 74 deletions
diff --git a/tex/context/fonts/mkiv/antykwa-math.lfg b/tex/context/fonts/mkiv/antykwa-math.lfg
index debf5d1ed..975ada70e 100644
--- a/tex/context/fonts/mkiv/antykwa-math.lfg
+++ b/tex/context/fonts/mkiv/antykwa-math.lfg
@@ -1,24 +1,4 @@
-local common = fonts.goodies.load("common-math-jmn.lfg")
-local helpers = common.mathematics.helpers
-
-if not fonts.encodings.math["extensible-jmn-private"] then
-
- local ps = fonts.helpers.privateslot
-
- fonts.encodings.math["extensible-jmn-private"] = {
- [ps("rule middle piece")] = 200, -- minusjmn
- [ps("rule right piece")] = 201, -- minusrightjmn
- [ps("rule left piece")] = 202, -- minusleftjmn
- [ps("double rule middle piece")] = 203, -- equaljmn
- [ps("double rule right piece")] = 204, -- equalrightjmn
- [ps("double rule left piece")] = 205, -- equalleftjmn
- [ps("arrow left piece")] = 206, -- arrowleftjmn
- [ps("arrow right piece")] = 207, -- arrowrightjmn
- [ps("double arrow left piece")] = 208, -- arrowdblleftjmn
- [ps("double arrow right piece")] = 209, -- arrowdblrightjmn
- }
-
-end
+-- no longer ok for mkiv: digits are not antykwa
local fraction = .25
@@ -105,6 +85,95 @@ local uglyones = {
vextenddouble = true,
}
+local recipes = {
+ ["antykwa-math"] = {
+ { name = "file:LatinModern-Math", features = "virtualmath-antykwa", main = true, parameters = false },
+ --
+ { name = "rm-anttr.tfm", vector = "tex-mr", skewchar=0x7F },
+ { name = "mi-anttri.tfm", vector = "tex-mi", skewchar=0x7F },
+ { name = "mi-anttri.tfm", vector = "tex-it", skewchar=0x7F },
+ { name = "mi-anttbi.tfm", vector = "tex-bi", skewchar=0x7F },
+ { name = "rm-anttb.tfm", vector = "tex-bf", skewchar=0x7F },
+ { name = "sy-anttrz.tfm", vector = "tex-sy", skewchar=0x30, parameters = true, ignore = uglyones }, -- jmn = true
+ { name = "sy-anttrz.tfm", vector = "extensible-jmn-private", skewchar=0x30 },
+ { name = "file:AntykwaTorunska-Regular", vector = "tex-ex-braces", backmap = false },
+ { name = "ex-anttr.tfm", vector = "tex-ex", extension = true, badones = badones, ignore = uglyones },
+ },
+ ["antykwa-light-math"] = {
+ { name = "file:LatinModern-Math", features = "virtualmath-antykwa-light", main = true, parameters = false },
+ --
+ { name = "rm-anttl.tfm", vector = "tex-mr", skewchar=0x7F },
+ { name = "mi-anttli.tfm", vector = "tex-mi", skewchar=0x7F },
+ { name = "mi-anttli.tfm", vector = "tex-it", skewchar=0x7F },
+ { name = "mi-anttri.tfm", vector = "tex-bi", skewchar=0x7F },
+ { name = "rm-anttr.tfm", vector = "tex-bf", skewchar=0x7F },
+ { name = "sy-anttlz.tfm", vector = "tex-sy", skewchar=0x30, parameters = true, ignore = uglyones }, -- jmn = true
+ { name = "sy-anttlz.tfm", vector = "extensible-jmn-private", skewchar=0x30 },
+ { name = "file:AntykwaTorunskaLight-Regular", vector = "tex-ex-braces", backmap = false },
+ { name = "ex-anttl.tfm", vector = "tex-ex", extension = true, badones = badones, ignore = uglyones },
+ },
+ ["antykwa-cond-math"] = {
+ { name = "file:LatinModern-Math", features = "virtualmath-antykwa-cond", main = true, parameters = false },
+ --
+ { name = "rm-anttcr.tfm", vector = "tex-mr", skewchar=0x7F },
+ { name = "mi-anttcri.tfm", vector = "tex-mi", skewchar=0x7F },
+ { name = "mi-anttcri.tfm", vector = "tex-it", skewchar=0x7F },
+ { name = "mi-anttcbi.tfm", vector = "tex-bi", skewchar=0x7F },
+ { name = "rm-anttcb.tfm", vector = "tex-bf", skewchar=0x7F },
+ { name = "sy-anttcrz.tfm", vector = "tex-sy", skewchar=0x30, parameters = true, ignore = uglyones }, -- jmn = true
+ { name = "sy-anttcrz.tfm", vector = "extensible-jmn-private", skewchar=0x30 },
+ { name = "file:AntykwaTorunskaCond-Regular", vector = "tex-ex-braces", backmap = false },
+ { name = "ex-anttcr.tfm", vector = "tex-ex", extension = true, badones = badones, ignore = uglyones },
+ },
+ ["antykwa-light-cond-math"] = {
+ { name = "file:LatinModern-Math", features = "virtualmath-antykwa-lightcond", main = true, parameters = false },
+ --
+ { name = "rm-anttcl.tfm", vector = "tex-mr", skewchar=0x7F },
+ { name = "mi-anttcli.tfm", vector = "tex-mi", skewchar=0x7F },
+ { name = "mi-anttcli.tfm", vector = "tex-it", skewchar=0x7F },
+ { name = "mi-anttcri.tfm", vector = "tex-bi", skewchar=0x7F },
+ { name = "rm-anttcr.tfm", vector = "tex-bf", skewchar=0x7F },
+ { name = "sy-anttclz.tfm", vector = "tex-sy", skewchar=0x30, parameters = true, ignore = uglyones }, -- jmn = true
+ { name = "sy-anttclz.tfm", vector = "extensible-jmn-private", skewchar=0x30 },
+ { name = "file:AntykwaTorunskaCondLight-Regular", vector = "tex-ex-braces", backmap = false },
+ { name = "ex-anttcl.tfm", vector = "tex-ex", extension = true, badones = badones, ignore = uglyones },
+ },
+}
+
+local tweaks = nil
+local common = fonts.goodies.load("common-math-jmn.lfg")
+
+if common then
+
+ tweaks = {
+ {
+ tweak = "addmissing",
+ action = common.mathematics.helpers.addmissing,
+ },
+ {
+ tweak = "setoptions",
+ set = { "ignorekerndimensions" }
+ }, -- we have dp > ht fences
+ {
+ tweak = "fixprimes",
+ factor = 1.0, -- accent base height
+ fake = 0.9, -- replace multiples with this width proportion
+ },
+ {
+ tweak = "addequals",
+ force = true,
+ },
+ {
+ tweak = "keepbases",
+-- list = { 0x302 }
+ list = "default"
+ },
+}
+
+ common.mathematics.helpers.copyrecipes(recipes)
+
+end
+
return {
name = "antykwa-math",
version = "1.00",
@@ -123,59 +192,15 @@ return {
notshiftfactor = 0.075,
},
virtuals = {
- ["antykwa-math"] = {
- { name = "file:LatinModern-Math", features = "virtualmath-antykwa", main = true, parameters = false },
- --
- { name = "rm-anttr.tfm", vector = "tex-mr", skewchar=0x7F },
- { name = "mi-anttri.tfm", vector = "tex-mi", skewchar=0x7F },
- { name = "mi-anttri.tfm", vector = "tex-it", skewchar=0x7F },
- { name = "mi-anttbi.tfm", vector = "tex-bi", skewchar=0x7F },
- { name = "rm-anttb.tfm", vector = "tex-bf", skewchar=0x7F },
- { name = "sy-anttrz.tfm", vector = "tex-sy", skewchar=0x30, parameters = true, ignore = uglyones }, -- jmn = true
- { name = "sy-anttrz.tfm", vector = "extensible-jmn-private", skewchar=0x30 },
- { name = "file:AntykwaTorunska-Regular", vector = "tex-ex-braces", backmap = false },
- { name = "ex-anttr.tfm", vector = "tex-ex", extension = true, badones = badones, ignore = uglyones },
- },
- ["antykwa-light-math"] = {
- { name = "file:LatinModern-Math", features = "virtualmath-antykwa-light", main = true, parameters = false },
- --
- { name = "rm-anttl.tfm", vector = "tex-mr", skewchar=0x7F },
- { name = "mi-anttli.tfm", vector = "tex-mi", skewchar=0x7F },
- { name = "mi-anttli.tfm", vector = "tex-it", skewchar=0x7F },
- { name = "mi-anttri.tfm", vector = "tex-bi", skewchar=0x7F },
- { name = "rm-anttr.tfm", vector = "tex-bf", skewchar=0x7F },
- { name = "sy-anttlz.tfm", vector = "tex-sy", skewchar=0x30, parameters = true, ignore = uglyones }, -- jmn = true
- { name = "sy-anttlz.tfm", vector = "extensible-jmn-private", skewchar=0x30 },
- { name = "file:AntykwaTorunskaLight-Regular", vector = "tex-ex-braces", backmap = false },
- { name = "ex-anttl.tfm", vector = "tex-ex", extension = true, badones = badones, ignore = uglyones },
- },
- ["antykwa-cond-math"] = {
- { name = "file:LatinModern-Math", features = "virtualmath-antykwa-cond", main = true, parameters = false },
- --
- { name = "rm-anttcr.tfm", vector = "tex-mr", skewchar=0x7F },
- { name = "mi-anttcri.tfm", vector = "tex-mi", skewchar=0x7F },
- { name = "mi-anttcri.tfm", vector = "tex-it", skewchar=0x7F },
- { name = "mi-anttcbi.tfm", vector = "tex-bi", skewchar=0x7F },
- { name = "rm-anttcb.tfm", vector = "tex-bf", skewchar=0x7F },
- { name = "sy-anttcrz.tfm", vector = "tex-sy", skewchar=0x30, parameters = true, ignore = uglyones }, -- jmn = true
- { name = "sy-anttcrz.tfm", vector = "extensible-jmn-private", skewchar=0x30 },
- { name = "file:AntykwaTorunskaCond-Regular", vector = "tex-ex-braces", backmap = false },
- { name = "ex-anttcr.tfm", vector = "tex-ex", extension = true, badones = badones, ignore = uglyones },
- },
- ["antykwa-light-cond-math"] = {
- { name = "file:LatinModern-Math", features = "virtualmath-antykwa-lightcond", main = true, parameters = false },
- --
- { name = "rm-anttcl.tfm", vector = "tex-mr", skewchar=0x7F },
- { name = "mi-anttcli.tfm", vector = "tex-mi", skewchar=0x7F },
- { name = "mi-anttcli.tfm", vector = "tex-it", skewchar=0x7F },
- { name = "mi-anttcri.tfm", vector = "tex-bi", skewchar=0x7F },
- { name = "rm-anttcr.tfm", vector = "tex-bf", skewchar=0x7F },
- { name = "sy-anttclz.tfm", vector = "tex-sy", skewchar=0x30, parameters = true, ignore = uglyones }, -- jmn = true
- { name = "sy-anttclz.tfm", vector = "extensible-jmn-private", skewchar=0x30 },
- { name = "file:AntykwaTorunskaCondLight-Regular", vector = "tex-ex-braces", backmap = false },
- { name = "ex-anttcl.tfm", vector = "tex-ex", extension = true, badones = badones, ignore = uglyones },
- }
+ ["antykwa-math"] = { recipe = recipes["antykwa-math"], tweaks = tweaks },
+ ["antykwa-light-math"] = { recipe = recipes["antykwa-light-math"], tweaks = tweaks },
+ ["antykwa-cond-math"] = { recipe = recipes["antykwa-cond-math"], tweaks = tweaks },
+ ["antykwa-light-cond-math"] = { recipe = recipes["antykwa-light-cond-math"], tweaks = tweaks },
+
+ ["antykwa-math-nt"] = common and { recipe = recipes["antykwa-math-nt"] } or nil,
+ ["antykwa-light-math-nt"] = common and { recipe = recipes["antykwa-light-math-nt"] } or nil,
+ ["antykwa-cond-math-nt"] = common and { recipe = recipes["antykwa-cond-math-nt"] } or nil,
+ ["antykwa-light-cond-math-nt"] = common and { recipe = recipes["antykwa-light-cond-math-nt"] } or nil,
},
- addmissing = helpers.addmissing,
}
}