temml 0.9.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (117) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +44 -0
  3. package/contrib/auto-render/README.md +89 -0
  4. package/contrib/auto-render/auto-render.js +128 -0
  5. package/contrib/auto-render/dist/auto-render.js +217 -0
  6. package/contrib/auto-render/dist/auto-render.min.js +1 -0
  7. package/contrib/auto-render/splitAtDelimiters.js +84 -0
  8. package/contrib/auto-render/test/auto-render-spec.js +234 -0
  9. package/contrib/auto-render/test/auto-render.js +217 -0
  10. package/contrib/auto-render/test/test_page.html +59 -0
  11. package/contrib/mhchem/README.md +26 -0
  12. package/contrib/mhchem/mhchem.js +1705 -0
  13. package/contrib/mhchem/mhchem.min.js +1 -0
  14. package/contrib/physics/README.md +20 -0
  15. package/contrib/physics/physics.js +131 -0
  16. package/contrib/texvc/README.md +23 -0
  17. package/contrib/texvc/texvc.js +61 -0
  18. package/dist/Temml-Asana.css +201 -0
  19. package/dist/Temml-Latin-Modern.css +216 -0
  20. package/dist/Temml-Libertinus.css +214 -0
  21. package/dist/Temml-Local.css +194 -0
  22. package/dist/Temml-STIX2.css +203 -0
  23. package/dist/Temml.woff2 +0 -0
  24. package/dist/temml.cjs +13122 -0
  25. package/dist/temml.js +11225 -0
  26. package/dist/temml.min.js +1 -0
  27. package/dist/temml.mjs +13120 -0
  28. package/dist/temmlPostProcess.js +70 -0
  29. package/package.json +34 -0
  30. package/src/Lexer.js +121 -0
  31. package/src/MacroExpander.js +437 -0
  32. package/src/Namespace.js +107 -0
  33. package/src/ParseError.js +64 -0
  34. package/src/Parser.js +977 -0
  35. package/src/Settings.js +49 -0
  36. package/src/SourceLocation.js +29 -0
  37. package/src/Style.js +144 -0
  38. package/src/Token.js +40 -0
  39. package/src/buildMathML.js +235 -0
  40. package/src/constants.js +25 -0
  41. package/src/defineEnvironment.js +25 -0
  42. package/src/defineFunction.js +69 -0
  43. package/src/defineMacro.js +11 -0
  44. package/src/domTree.js +185 -0
  45. package/src/environments/array.js +791 -0
  46. package/src/environments/cd.js +252 -0
  47. package/src/environments.js +8 -0
  48. package/src/functions/accent.js +127 -0
  49. package/src/functions/accentunder.js +38 -0
  50. package/src/functions/arrow.js +204 -0
  51. package/src/functions/cancelto.js +36 -0
  52. package/src/functions/char.js +33 -0
  53. package/src/functions/color.js +253 -0
  54. package/src/functions/cr.js +46 -0
  55. package/src/functions/def.js +259 -0
  56. package/src/functions/delimsizing.js +304 -0
  57. package/src/functions/enclose.js +193 -0
  58. package/src/functions/envTag.js +38 -0
  59. package/src/functions/environment.js +59 -0
  60. package/src/functions/font.js +123 -0
  61. package/src/functions/genfrac.js +333 -0
  62. package/src/functions/hbox.js +29 -0
  63. package/src/functions/horizBrace.js +32 -0
  64. package/src/functions/href.js +90 -0
  65. package/src/functions/html.js +95 -0
  66. package/src/functions/includegraphics.js +131 -0
  67. package/src/functions/kern.js +75 -0
  68. package/src/functions/label.js +29 -0
  69. package/src/functions/lap.js +75 -0
  70. package/src/functions/math.js +40 -0
  71. package/src/functions/mathchoice.js +41 -0
  72. package/src/functions/mclass.js +201 -0
  73. package/src/functions/multiscript.js +91 -0
  74. package/src/functions/not.js +46 -0
  75. package/src/functions/op.js +338 -0
  76. package/src/functions/operatorname.js +139 -0
  77. package/src/functions/ordgroup.js +9 -0
  78. package/src/functions/phantom.js +73 -0
  79. package/src/functions/pmb.js +31 -0
  80. package/src/functions/raise.js +68 -0
  81. package/src/functions/ref.js +28 -0
  82. package/src/functions/relax.js +16 -0
  83. package/src/functions/rule.js +52 -0
  84. package/src/functions/sizing.js +64 -0
  85. package/src/functions/smash.js +66 -0
  86. package/src/functions/sqrt.js +31 -0
  87. package/src/functions/styling.js +58 -0
  88. package/src/functions/supsub.js +135 -0
  89. package/src/functions/symbolsOp.js +53 -0
  90. package/src/functions/symbolsOrd.js +102 -0
  91. package/src/functions/symbolsSpacing.js +53 -0
  92. package/src/functions/tag.js +8 -0
  93. package/src/functions/text.js +75 -0
  94. package/src/functions/tip.js +63 -0
  95. package/src/functions/toggle.js +13 -0
  96. package/src/functions/verb.js +33 -0
  97. package/src/functions.js +57 -0
  98. package/src/linebreaking.js +159 -0
  99. package/src/macros.js +708 -0
  100. package/src/mathMLTree.js +175 -0
  101. package/src/parseNode.js +42 -0
  102. package/src/parseTree.js +40 -0
  103. package/src/postProcess.js +57 -0
  104. package/src/replace.js +225 -0
  105. package/src/stretchy.js +66 -0
  106. package/src/svg.js +110 -0
  107. package/src/symbols.js +972 -0
  108. package/src/tree.js +50 -0
  109. package/src/unicodeAccents.js +16 -0
  110. package/src/unicodeScripts.js +119 -0
  111. package/src/unicodeSupOrSub.js +108 -0
  112. package/src/unicodeSymbolBuilder.js +31 -0
  113. package/src/unicodeSymbols.js +320 -0
  114. package/src/units.js +109 -0
  115. package/src/utils.js +109 -0
  116. package/src/variant.js +103 -0
  117. package/temml.js +181 -0
@@ -0,0 +1,216 @@
1
+ /*
2
+ The Latin Modern fonts are released under the GUST font license, which is
3
+ legally equivalent to the LaTeX Project Public License. See the files in this
4
+ directory for details. The fonts can be obtained from several TeX distributions
5
+ or package managers.
6
+
7
+ The Latin Modern WOFF font has been obtained from
8
+ http://www.gust.org.pl/projects/e-foundry/
9
+
10
+ The Temml.woff2 is a clone of KaTeX_Script-Regular, except that the code points
11
+ have been changed from ASCII to Unicode Mathematical Alphanumeric Symbols Script capitals,
12
+ Unicode range 1D49C to 1D4B5.
13
+ */
14
+
15
+ @font-face {
16
+ font-family: 'Temml';
17
+ src: url('Temml.woff2') format('woff2');
18
+ font-weight: normal;
19
+ font-style: normal;
20
+ }
21
+
22
+ @font-face {
23
+ font-family: Latin Modern Math;
24
+ src: url('./latinmodernmath.woff2');
25
+ }
26
+
27
+ math {
28
+ font-style: normal;
29
+ font-weight: normal;
30
+ line-height: normal;
31
+ font-size-adjust: none;
32
+ text-indent: 0;
33
+ text-transform: none;
34
+ letter-spacing: normal;
35
+ word-wrap: normal;
36
+ direction: ltr;
37
+ }
38
+
39
+ math * {
40
+ border-color: currentColor;
41
+ }
42
+
43
+ .latin-modern math {
44
+ font-family: "Latin Modern Math", "Times New Roman", math;
45
+ }
46
+
47
+ math {
48
+ font-family: Latin Modern Math;
49
+ }
50
+
51
+ *.mathscr {
52
+ font-family: "Temml";
53
+ }
54
+
55
+ .oldstylenums {
56
+ font-family: "Cambria Math", math;
57
+ font-feature-settings: 'onum';
58
+ }
59
+
60
+ mo.tml-prime {
61
+ font-family: Temml;
62
+ }
63
+
64
+ /* AMS environment auto-numbering via CSS counter. */
65
+ .tml-eqn::before {
66
+ counter-increment: tmlEqnNo;
67
+ content: "(" counter(tmlEqnNo) ")";
68
+ }
69
+
70
+ body {
71
+ counter-reset: tmlEqnNo;
72
+ }
73
+
74
+ /* Environment arrays */
75
+
76
+ /* Environments that addjot to row spacing */
77
+ mtable.tml-jot > mtr > mtd {
78
+ padding-top: calc(0.5ex + 0.09em);
79
+ padding-bottom: calc(0.5ex + 0.09em);
80
+ }
81
+
82
+ /* Zero column gap for {alignat}, {split}, etc */
83
+ mtable.tml-abut > mtr > mtd,
84
+ mtable.tml-align > mtr > mtd:nth-child(odd),
85
+ mtable.tml-align-star > mtr > mtd:nth-child(even) {
86
+ padding-left: 0em;
87
+ padding-right: 0em;
88
+ }
89
+
90
+ mtable.tml-align > mtr > mtd:nth-child(even),
91
+ mtable.tml-align-star > mtr > mtd:nth-child(odd) {
92
+ padding-left: 1em;
93
+ padding-right: 0em;
94
+ }
95
+
96
+ mtable.tml-align > mtr > mtd:nth-child(1) {
97
+ padding-left: 0em;
98
+ }
99
+
100
+ mtable.tml-align > mtr > mtd:nth-child(odd),
101
+ mtable.tml-alignat > mtr > mtd:nth-child(odd),
102
+ mtable.tml-aligned > mtr > mtd:nth-child(even) {
103
+ text-align: -webkit-left;
104
+ }
105
+
106
+ mtable.tml-align > mtr > mtd:nth-child(even),
107
+ mtable.tml-alignat > mtr > mtd:nth-child(even),
108
+ mtable.tml-aligned > mtr > mtd:nth-child(odd),
109
+ mtable.tml-align-star > mtr > mtd:nth-child(odd) {
110
+ text-align: -webkit-right;
111
+ }
112
+
113
+ mtable.tml-cases > mtr > mtd {
114
+ padding-left: 0em;
115
+ padding-right: 0em;
116
+ text-align: -webkit-left;
117
+ }
118
+
119
+ mtable.tml-cases > mtr > mtd:nth-child(2) {
120
+ padding-left: 1em;
121
+ }
122
+
123
+ mtable.tml-small > mtr > mtd {
124
+ padding-top: 0.35ex;
125
+ padding-bottom: 0.35ex;
126
+ padding-left: 0.1389em;
127
+ padding-right: 0.1389em;
128
+ }
129
+
130
+ mtable.tml-subarray > mtr > mtd {
131
+ padding-top: 0em;
132
+ padding-left: 0em;
133
+ }
134
+
135
+ mtable.tml-cd > mtr > mtd {
136
+ padding-left: 0.25em;
137
+ padding-right: 0.25em;
138
+ }
139
+
140
+ mtable > mtr:first-child > mtr > mtd {
141
+ padding-top: 0em;
142
+ }
143
+
144
+ mtable > mtr:last-child > mtr > mtd {
145
+ padding-bottom: 0em;
146
+ }
147
+
148
+ mtable:not(.tml-array) > mtr > mtd:first-child {
149
+ padding-left: 0em;
150
+ }
151
+
152
+ mtable:not(.tml-array) > mtr > mtd:last-child {
153
+ padding-right: 0em;
154
+ }
155
+
156
+ mtr.tml-top-solid > mtd {
157
+ border-top: 0.06em solid;
158
+ }
159
+
160
+ mtr.tml-top-double > mtd {
161
+ border-top: 0.15em double;
162
+ }
163
+
164
+ mtr.tml-top-dashed > mtd {
165
+ border-top: 0.06em dashed;
166
+ }
167
+
168
+ mtr.tml-hline-solid > mtd {
169
+ border-bottom: 0.06em solid;
170
+ }
171
+
172
+ mtr.tml-hline-double > mtd {
173
+ border-bottom: 0.15em double;
174
+ }
175
+
176
+ mtr.tml-hline-dashed > mtd {
177
+ border-bottom: 0.06em dashed;
178
+ }
179
+
180
+ /* MathML-Core does not support <menclose> attributes.
181
+ * So Use background images for \cancel */
182
+ menclose.cancel {
183
+ background:
184
+ linear-gradient(to top left,
185
+ rgba(0,0,0,0) 0%,
186
+ rgba(0,0,0,0) calc(50% - 0.06em),
187
+ rgba(0,0,0,1) 50%,
188
+ rgba(0,0,0,0) calc(50% + 0.06em),
189
+ rgba(0,0,0,0) 100%);
190
+ }
191
+
192
+ menclose.bcancel {
193
+ background:
194
+ linear-gradient(to top right,
195
+ rgba(0,0,0,0) 0%,
196
+ rgba(0,0,0,0) calc(50% - 0.06em),
197
+ rgba(0,0,0,1) 50%,
198
+ rgba(0,0,0,0) calc(50% + 0.06em),
199
+ rgba(0,0,0,0) 100%);
200
+ }
201
+
202
+ menclose.xcancel {
203
+ background:
204
+ linear-gradient(to top left,
205
+ rgba(0,0,0,0) 0%,
206
+ rgba(0,0,0,0) calc(50% - 0.06em),
207
+ rgba(0,0,0,1) 50%,
208
+ rgba(0,0,0,0) calc(50% + 0.06em),
209
+ rgba(0,0,0,0) 100%),
210
+ linear-gradient(to top right,
211
+ rgba(0,0,0,0) 0%,
212
+ rgba(0,0,0,0) calc(50% - 0.06em),
213
+ rgba(0,0,0,1) 50%,
214
+ rgba(0,0,0,0) calc(50% + 0.06em),
215
+ rgba(0,0,0,0) 100%);
216
+ }
@@ -0,0 +1,214 @@
1
+ /*
2
+ The Latin Modern fonts are released under the Open Font License, version 1.1.
3
+ See https://github.com/alerque/libertinus/blob/master/OFL.txt.
4
+
5
+ The Libertinus WOFF font has been obtained from
6
+ https://github.com/alerque/libertinus
7
+
8
+ The Temml.woff2 is a clone of KaTeX_Script-Regular, except that the code points
9
+ have been changed from ASCII to Unicode Mathematical Alphanumeric Symbols Script capitals,
10
+ Unicode range 1D49C to 1D4B5.
11
+ */
12
+
13
+ @font-face {
14
+ font-family: 'Temml';
15
+ src: url('Temml.woff2') format('woff2');
16
+ font-weight: normal;
17
+ font-style: normal;
18
+ }
19
+
20
+ @font-face {
21
+ font-family: Libertinus Math;
22
+ src: url('./LibertinusMath-Regular.woff2');
23
+ }
24
+
25
+ math {
26
+ font-style: normal;
27
+ font-weight: normal;
28
+ line-height: normal;
29
+ font-size-adjust: none;
30
+ text-indent: 0;
31
+ text-transform: none;
32
+ letter-spacing: normal;
33
+ word-wrap: normal;
34
+ direction: ltr;
35
+ }
36
+
37
+ math * {
38
+ border-color: currentColor;
39
+ }
40
+
41
+ .libertinus math {
42
+ font-family: "Libertinus Math", "Times New Roman", math;
43
+ }
44
+
45
+ math {
46
+ font-family: Libertinus Math;
47
+ }
48
+
49
+ *.mathcal {
50
+ font-family: "Cambria Math", 'STIXTwoMath-Regular', "Times New Roman", math;
51
+ }
52
+
53
+ .oldstylenums {
54
+ font-family: "Cambria Math", math;
55
+ font-feature-settings: 'onum';
56
+ }
57
+
58
+ mo.tml-prime {
59
+ font-feature-settings: 'ssty';
60
+ }
61
+
62
+ /* AMS environment auto-numbering via CSS counter. */
63
+ .tml-eqn::before {
64
+ counter-increment: tmlEqnNo;
65
+ content: "(" counter(tmlEqnNo) ")";
66
+ }
67
+
68
+ body {
69
+ counter-reset: tmlEqnNo;
70
+ }
71
+
72
+ /* Environment arrays */
73
+
74
+ /* Environments that addjot to row spacing */
75
+ mtable.tml-jot > mtr > mtd {
76
+ padding-top: calc(0.5ex + 0.09em);
77
+ padding-bottom: calc(0.5ex + 0.09em);
78
+ }
79
+
80
+ /* Zero column gap for {alignat}, {split}, etc */
81
+ mtable.tml-abut > mtr > mtd,
82
+ mtable.tml-align > mtr > mtd:nth-child(odd),
83
+ mtable.tml-align-star > mtr > mtd:nth-child(even) {
84
+ padding-left: 0em;
85
+ padding-right: 0em;
86
+ }
87
+
88
+ mtable.tml-align > mtr > mtd:nth-child(even),
89
+ mtable.tml-align-star > mtr > mtd:nth-child(odd) {
90
+ padding-left: 1em;
91
+ padding-right: 0em;
92
+ }
93
+
94
+ mtable.tml-align > mtr > mtd:nth-child(1) {
95
+ padding-left: 0em;
96
+ }
97
+
98
+ mtable.tml-align > mtr > mtd:nth-child(odd),
99
+ mtable.tml-alignat > mtr > mtd:nth-child(odd),
100
+ mtable.tml-aligned > mtr > mtd:nth-child(even) {
101
+ text-align: -webkit-left;
102
+ }
103
+
104
+ mtable.tml-align > mtr > mtd:nth-child(even),
105
+ mtable.tml-alignat > mtr > mtd:nth-child(even),
106
+ mtable.tml-aligned > mtr > mtd:nth-child(odd),
107
+ mtable.tml-align-star > mtr > mtd:nth-child(odd) {
108
+ text-align: -webkit-right;
109
+ }
110
+
111
+ mtable.tml-cases > mtr > mtd {
112
+ padding-left: 0em;
113
+ padding-right: 0em;
114
+ text-align: -webkit-left;
115
+ }
116
+
117
+ mtable.tml-cases > mtr > mtd:nth-child(2) {
118
+ padding-left: 1em;
119
+ }
120
+
121
+ mtable.tml-small > mtr > mtd {
122
+ padding-top: 0.35ex;
123
+ padding-bottom: 0.35ex;
124
+ padding-left: 0.1389em;
125
+ padding-right: 0.1389em;
126
+ }
127
+
128
+ mtable.tml-subarray > mtr > mtd {
129
+ padding-top: 0em;
130
+ padding-left: 0em;
131
+ }
132
+
133
+ mtable.tml-cd > mtr > mtd {
134
+ padding-left: 0.25em;
135
+ padding-right: 0.25em;
136
+ }
137
+
138
+ mtable > mtr:first-child > mtr > mtd {
139
+ padding-top: 0em;
140
+ }
141
+
142
+ mtable > mtr:last-child > mtr > mtd {
143
+ padding-bottom: 0em;
144
+ }
145
+
146
+ mtable:not(.tml-array) > mtr > mtd:first-child {
147
+ padding-left: 0em;
148
+ }
149
+
150
+ mtable:not(.tml-array) > mtr > mtd:last-child {
151
+ padding-right: 0em;
152
+ }
153
+
154
+ mtr.tml-top-solid > mtd {
155
+ border-top: 0.06em solid;
156
+ }
157
+
158
+ mtr.tml-top-double > mtd {
159
+ border-top: 0.15em double;
160
+ }
161
+
162
+ mtr.tml-top-dashed > mtd {
163
+ border-top: 0.06em dashed;
164
+ }
165
+
166
+ mtr.tml-hline-solid > mtd {
167
+ border-bottom: 0.06em solid;
168
+ }
169
+
170
+ mtr.tml-hline-double > mtd {
171
+ border-bottom: 0.15em double;
172
+ }
173
+
174
+ mtr.tml-hline-dashed > mtd {
175
+ border-bottom: 0.06em dashed;
176
+ }
177
+
178
+ /* MathML-Core does not support <menclose> attributes.
179
+ * So Use background images for \cancel */
180
+ menclose.cancel {
181
+ background:
182
+ linear-gradient(to top left,
183
+ rgba(0,0,0,0) 0%,
184
+ rgba(0,0,0,0) calc(50% - 0.06em),
185
+ rgba(0,0,0,1) 50%,
186
+ rgba(0,0,0,0) calc(50% + 0.06em),
187
+ rgba(0,0,0,0) 100%);
188
+ }
189
+
190
+ menclose.bcancel {
191
+ background:
192
+ linear-gradient(to top right,
193
+ rgba(0,0,0,0) 0%,
194
+ rgba(0,0,0,0) calc(50% - 0.06em),
195
+ rgba(0,0,0,1) 50%,
196
+ rgba(0,0,0,0) calc(50% + 0.06em),
197
+ rgba(0,0,0,0) 100%);
198
+ }
199
+
200
+ menclose.xcancel {
201
+ background:
202
+ linear-gradient(to top left,
203
+ rgba(0,0,0,0) 0%,
204
+ rgba(0,0,0,0) calc(50% - 0.06em),
205
+ rgba(0,0,0,1) 50%,
206
+ rgba(0,0,0,0) calc(50% + 0.06em),
207
+ rgba(0,0,0,0) 100%),
208
+ linear-gradient(to top right,
209
+ rgba(0,0,0,0) 0%,
210
+ rgba(0,0,0,0) calc(50% - 0.06em),
211
+ rgba(0,0,0,1) 50%,
212
+ rgba(0,0,0,0) calc(50% + 0.06em),
213
+ rgba(0,0,0,0) 100%);
214
+ }
@@ -0,0 +1,194 @@
1
+ /*
2
+ Temml.woff2 is a clone of KaTeX_Script-Regular, except that the code points
3
+ have been changed from ASCII to Unicode Mathematical Alphanumeric Symbols Script capitals,
4
+ Unicode range 1D49C to 1D4B5.
5
+ */
6
+
7
+ @font-face {
8
+ font-family: 'Temml';
9
+ src: url('Temml.woff2') format('woff2');
10
+ font-weight: normal;
11
+ font-style: normal;
12
+ }
13
+
14
+ math {
15
+ font-family: "Cambria Math", 'STIXTwoMath-Regular', "Times New Roman", math;
16
+ font-style: normal;
17
+ font-weight: normal;
18
+ line-height: normal;
19
+ font-size-adjust: none;
20
+ text-indent: 0;
21
+ text-transform: none;
22
+ letter-spacing: normal;
23
+ word-wrap: normal;
24
+ direction: ltr;
25
+ }
26
+
27
+ math * {
28
+ border-color: currentColor;
29
+ }
30
+
31
+ math .mathscr {
32
+ font-family: "Temml";
33
+ }
34
+
35
+ math .oldstylenums {
36
+ font-feature-settings: 'onum';
37
+ }
38
+
39
+ mo.tml-prime {
40
+ font-family: Temml;
41
+ }
42
+
43
+ /* AMS environment auto-numbering via CSS counter. */
44
+ .tml-eqn::before {
45
+ counter-increment: tmlEqnNo;
46
+ content: "(" counter(tmlEqnNo) ")";
47
+ }
48
+
49
+ body {
50
+ counter-reset: tmlEqnNo;
51
+ }
52
+
53
+ /* Environment arrays */
54
+
55
+ /* Environments that addjot to row spacing */
56
+ mtable.tml-jot > mtr > mtd {
57
+ padding-top: calc(0.5ex + 0.09em);
58
+ padding-bottom: calc(0.5ex + 0.09em);
59
+ }
60
+
61
+ /* Zero column gap for {alignat}, {split}, etc */
62
+ mtable.tml-abut > mtr > mtd,
63
+ mtable.tml-align > mtr > mtd:nth-child(odd),
64
+ mtable.tml-align-star > mtr > mtd:nth-child(even) {
65
+ padding-left: 0em;
66
+ padding-right: 0em;
67
+ }
68
+
69
+ mtable.tml-align > mtr > mtd:nth-child(even),
70
+ mtable.tml-align-star > mtr > mtd:nth-child(odd) {
71
+ padding-left: 1em;
72
+ padding-right: 0em;
73
+ }
74
+
75
+ mtable.tml-align > mtr > mtd:nth-child(1) {
76
+ padding-left: 0em;
77
+ }
78
+
79
+ mtable.tml-align > mtr > mtd:nth-child(odd),
80
+ mtable.tml-alignat > mtr > mtd:nth-child(odd),
81
+ mtable.tml-aligned > mtr > mtd:nth-child(even) {
82
+ text-align: -webkit-left;
83
+ }
84
+
85
+ mtable.tml-align > mtr > mtd:nth-child(even),
86
+ mtable.tml-alignat > mtr > mtd:nth-child(even),
87
+ mtable.tml-aligned > mtr > mtd:nth-child(odd) {
88
+ text-align: -webkit-right;
89
+ }
90
+
91
+ mtable.tml-cases > mtr > mtd {
92
+ padding-left: 0em;
93
+ padding-right: 0em;
94
+ text-align: -webkit-left;
95
+ }
96
+
97
+ mtable.tml-cases > mtr > mtd:nth-child(2) {
98
+ padding-left: 1em;
99
+ }
100
+
101
+ mtable.tml-small > mtr > mtd {
102
+ padding-top: 0.35ex;
103
+ padding-bottom: 0.35ex;
104
+ padding-left: 0.1389em;
105
+ padding-right: 0.1389em;
106
+ }
107
+
108
+ mtable.tml-subarray > mtr > mtd {
109
+ padding-top: 0em;
110
+ padding-left: 0em;
111
+ }
112
+
113
+ mtable.tml-cd > mtr > mtd {
114
+ padding-left: 0.25em;
115
+ padding-right: 0.25em;
116
+ }
117
+
118
+ mtable > mtr:first-child > mtr > mtd {
119
+ padding-top: 0em;
120
+ }
121
+
122
+ mtable > mtr:last-child > mtr > mtd {
123
+ padding-bottom: 0em;
124
+ }
125
+
126
+ mtable:not(.tml-array) > mtr > mtd:first-child {
127
+ padding-left: 0em;
128
+ }
129
+
130
+ mtable:not(.tml-array) > mtr > mtd:last-child {
131
+ padding-right: 0em;
132
+ }
133
+
134
+ mtr.tml-top-solid > mtd {
135
+ border-top: 0.06em solid;
136
+ }
137
+
138
+ mtr.tml-top-double > mtd {
139
+ border-top: 0.15em double;
140
+ }
141
+
142
+ mtr.tml-top-dashed > mtd {
143
+ border-top: 0.06em dashed;
144
+ }
145
+
146
+ mtr.tml-hline-solid > mtd {
147
+ border-bottom: 0.06em solid;
148
+ }
149
+
150
+ mtr.tml-hline-double > mtd {
151
+ border-bottom: 0.15em double;
152
+ }
153
+
154
+ mtr.tml-hline-dashed > mtd {
155
+ border-bottom: 0.06em dashed;
156
+ }
157
+
158
+ /* MathML-Core does not support <menclose> attributes.
159
+ * So Use background images for \cancel */
160
+ menclose.cancel {
161
+ background:
162
+ linear-gradient(to top left,
163
+ rgba(0,0,0,0) 0%,
164
+ rgba(0,0,0,0) calc(50% - 0.06em),
165
+ rgba(0,0,0,1) 50%,
166
+ rgba(0,0,0,0) calc(50% + 0.06em),
167
+ rgba(0,0,0,0) 100%);
168
+ }
169
+
170
+ menclose.bcancel {
171
+ background:
172
+ linear-gradient(to top right,
173
+ rgba(0,0,0,0) 0%,
174
+ rgba(0,0,0,0) calc(50% - 0.06em),
175
+ rgba(0,0,0,1) 50%,
176
+ rgba(0,0,0,0) calc(50% + 0.06em),
177
+ rgba(0,0,0,0) 100%);
178
+ }
179
+
180
+ menclose.xcancel {
181
+ background:
182
+ linear-gradient(to top left,
183
+ rgba(0,0,0,0) 0%,
184
+ rgba(0,0,0,0) calc(50% - 0.06em),
185
+ rgba(0,0,0,1) 50%,
186
+ rgba(0,0,0,0) calc(50% + 0.06em),
187
+ rgba(0,0,0,0) 100%),
188
+ linear-gradient(to top right,
189
+ rgba(0,0,0,0) 0%,
190
+ rgba(0,0,0,0) calc(50% - 0.06em),
191
+ rgba(0,0,0,1) 50%,
192
+ rgba(0,0,0,0) calc(50% + 0.06em),
193
+ rgba(0,0,0,0) 100%);
194
+ }