diff options
Diffstat (limited to 'tex/context/fonts/mkiv/antykwa-math.lfg')
-rw-r--r-- | tex/context/fonts/mkiv/antykwa-math.lfg | 173 |
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, } } |