1local common = fonts.goodies.load("common-math-jmn.lfg")
2local helpers = common.mathematics.helpers
3
4local badones = {
5 summationtext = .25,
6 producttext = .25,
7 integraltext = .25,
8 uniontext = .25,
9 intersectiontext = .25,
10 unionmultitext = .25,
11 logicalandtext = .25,
12 logicalortext = .25,
13 summationdisplay = .25,
14 productdisplay = .25,
15 integraldisplay = .25,
16 uniondisplay = .25,
17 intersectiondisplay = .25,
18 unionmultidisplay = .25,
19 logicalanddisplay = .25,
20 logicalordisplay = .25,
21 coproducttext = .25,
22 coproductdisplay = .25,
23}
24
25local uglyones = {
26
27
28 vextendsingle = true,
29 vextenddouble = true,
30}
31
32local recipes = {
33 ["iwona-math"] = {
34 { name = "file:LatinModern-Math", features = "virtualmath-iwona", main = true, parameters = false },
35
36 { name = "rm-iwonar.tfm", vector = "tex-mr", skewchar=0x7F },
37 { name = "mi-iwonari.tfm", vector = "tex-mi", skewchar=0x7F },
38 { name = "mi-iwonari.tfm", vector = "tex-it", skewchar=0x7F },
39 { name = "mi-iwonami.tfm", vector = "tex-bi", skewchar=0x7F },
40 { name = "rm-iwonam.tfm", vector = "tex-bf", skewchar=0x7F },
41 { name = "sy-iwonarz.tfm", vector = "tex-sy", skewchar=0x30, parameters = true },
42 { name = "ex-iwonar.tfm", vector = "tex-ex", extension = true, badones = badones, ignore = uglyones },
43 },
44 ["iwona-light-math"] = {
45 { name = "file:LatinModern-Math", features = "virtualmath-iwona-light", main = true, parameters = false },
46
47 { name = "rm-iwonal.tfm", vector = "tex-mr", skewchar=0x7F },
48 { name = "mi-iwonali.tfm", vector = "tex-mi", skewchar=0x7F },
49 { name = "mi-iwonali.tfm", vector = "tex-it", skewchar=0x7F },
50 { name = "mi-iwonari.tfm", vector = "tex-bi", skewchar=0x7F },
51 { name = "rm-iwonar.tfm", vector = "tex-bf", skewchar=0x7F },
52 { name = "sy-iwonalz.tfm", vector = "tex-sy", skewchar=0x30, parameters = true },
53 { name = "ex-iwonal.tfm", vector = "tex-ex", extension = true, badones = badones, ignore = uglyones },
54 },
55 ["iwona-medium-math"] = {
56 { name = "file:LatinModern-Math", features = "virtualmath-iwona-medium", main = true, parameters = false },
57
58 { name = "rm-iwonam.tfm", vector = "tex-mr", skewchar=0x7F },
59 { name = "mi-iwonami.tfm", vector = "tex-mi", skewchar=0x7F },
60 { name = "mi-iwonami.tfm", vector = "tex-it", skewchar=0x7F },
61 { name = "mi-iwonabi.tfm", vector = "tex-bi", skewchar=0x7F },
62 { name = "rm-iwonab.tfm", vector = "tex-bf", skewchar=0x7F },
63 { name = "sy-iwonamz.tfm", vector = "tex-sy", skewchar=0x30, parameters = true },
64 { name = "ex-iwonam.tfm", vector = "tex-ex", extension = true, badones = badones, ignore = uglyones },
65 },
66 ["iwona-heavy-math"] = {
67 { name = "file:LatinModern-Math", features = "virtualmath-iwona-heavy", main = true, parameters = false },
68
69 { name = "rm-iwonah.tfm", vector = "tex-mr", skewchar=0x7F },
70 { name = "mi-iwonahi.tfm", vector = "tex-mi", skewchar=0x7F },
71 { name = "mi-iwonahi.tfm", vector = "tex-it", skewchar=0x7F },
72 { name = "mi-iwonahi.tfm", vector = "tex-bi", skewchar=0x7F },
73 { name = "rm-iwonah.tfm", vector = "tex-bf", skewchar=0x7F },
74 { name = "sy-iwonahz.tfm", vector = "tex-sy", skewchar=0x30, parameters = true },
75 { name = "ex-iwonah.tfm", vector = "tex-ex", extension = true, badones = badones, ignore = uglyones },
76 },
77}
78
79local tweaks = nil
80local common = fonts.goodies.load("common-math-jmn.lfg")
81
82if common then
83
84 tweaks = {
85 {
86 tweak = "addmissing",
87 action = common.mathematics.helpers.addmissing,
88 },
89 {
90 tweak = "setoptions",
91 set = { "ignorekerndimensions" }
92 },
93 {
94 tweak = "fixprimes",
95 factor = 1.0,
96 fake = 0.9,
97 },
98 {
99 tweak = "addfourier",
100 },
101 {
102 tweak = "addequals",
103 force = true,
104 },
105 }
106
107 common.mathematics.helpers.copyrecipes(recipes)
108
109end
110
111return {
112 name = "iwona-math",
113 version = "1.00",
114 comment = "Goodies that complement iwona math.",
115 author = "Hans Hagen",
116 copyright = "ConTeXt development team",
117 mathematics = {
118 mapfiles = {
119 "iwona-rm.map",
120 "iwona-mi.map",
121 "iwona-sy.map",
122 "iwona-ex.map",
123
124 },
125 virtuals = {
126 ["iwona-math"] = { recipe = recipes["iwona-math"], tweaks = tweaks },
127 ["iwona-light-math"] = { recipe = recipes["iwona-light-math"], tweaks = tweaks },
128 ["iwona-medium-math"] = { recipe = recipes["iwona-medium-math"], tweaks = tweaks },
129 ["iwona-heavy-math"] = { recipe = recipes["iwona-heavy-math"], tweaks = tweaks },
130
131 ["iwona-math-nt"] = { recipe = common and recipes["iwona-math-nt"] or nil },
132 ["iwona-light-math-nt"] = { recipe = common and recipes["iwona-light-math-nt"] or nil },
133 ["iwona-medium-math-nt"] = { recipe = common and recipes["iwona-medium-math-nt"] or nil },
134 ["iwona-heavy-math-nt"] = { recipe = common and recipes["iwona-heavy-math-nt"] or nil },
135 },
136 }
137}
138 |