katex 0.10.1 → 0.12.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +141 -0
- package/LICENSE +1 -1
- package/README.md +6 -6
- package/cli.js +0 -0
- package/contrib/auto-render/auto-render.js +12 -3
- package/contrib/copy-tex/README.md +3 -5
- package/contrib/mathtex-script-type/README.md +12 -14
- package/contrib/mhchem/README.md +3 -1
- package/contrib/render-a11y-string/render-a11y-string.js +712 -0
- package/contrib/render-a11y-string/test/render-a11y-string-spec.js +526 -0
- package/dist/README.md +6 -6
- package/dist/contrib/auto-render.js +14 -3
- package/dist/contrib/auto-render.min.js +1 -1
- package/dist/contrib/auto-render.mjs +14 -3
- package/dist/contrib/mhchem.min.js +1 -1
- package/dist/contrib/render-a11y-string.js +870 -0
- package/dist/contrib/render-a11y-string.min.js +1 -0
- package/dist/contrib/render-a11y-string.mjs +753 -0
- package/dist/fonts/KaTeX_AMS-Regular.ttf +0 -0
- package/dist/fonts/KaTeX_AMS-Regular.woff +0 -0
- package/dist/fonts/KaTeX_AMS-Regular.woff2 +0 -0
- package/dist/fonts/KaTeX_Caligraphic-Bold.ttf +0 -0
- package/dist/fonts/KaTeX_Caligraphic-Bold.woff +0 -0
- package/dist/fonts/KaTeX_Caligraphic-Bold.woff2 +0 -0
- package/dist/fonts/KaTeX_Caligraphic-Regular.ttf +0 -0
- package/dist/fonts/KaTeX_Caligraphic-Regular.woff +0 -0
- package/dist/fonts/KaTeX_Caligraphic-Regular.woff2 +0 -0
- package/dist/fonts/KaTeX_Fraktur-Bold.ttf +0 -0
- package/dist/fonts/KaTeX_Fraktur-Bold.woff +0 -0
- package/dist/fonts/KaTeX_Fraktur-Bold.woff2 +0 -0
- package/dist/fonts/KaTeX_Fraktur-Regular.ttf +0 -0
- package/dist/fonts/KaTeX_Fraktur-Regular.woff +0 -0
- package/dist/fonts/KaTeX_Fraktur-Regular.woff2 +0 -0
- package/dist/fonts/KaTeX_Main-Bold.ttf +0 -0
- package/dist/fonts/KaTeX_Main-Bold.woff +0 -0
- package/dist/fonts/KaTeX_Main-Bold.woff2 +0 -0
- package/dist/fonts/KaTeX_Main-BoldItalic.ttf +0 -0
- package/dist/fonts/KaTeX_Main-BoldItalic.woff +0 -0
- package/dist/fonts/KaTeX_Main-BoldItalic.woff2 +0 -0
- package/dist/fonts/KaTeX_Main-Italic.ttf +0 -0
- package/dist/fonts/KaTeX_Main-Italic.woff +0 -0
- package/dist/fonts/KaTeX_Main-Italic.woff2 +0 -0
- package/dist/fonts/KaTeX_Main-Regular.ttf +0 -0
- package/dist/fonts/KaTeX_Main-Regular.woff +0 -0
- package/dist/fonts/KaTeX_Main-Regular.woff2 +0 -0
- package/dist/fonts/KaTeX_Math-BoldItalic.ttf +0 -0
- package/dist/fonts/KaTeX_Math-BoldItalic.woff +0 -0
- package/dist/fonts/KaTeX_Math-BoldItalic.woff2 +0 -0
- package/dist/fonts/KaTeX_Math-Italic.ttf +0 -0
- package/dist/fonts/KaTeX_Math-Italic.woff +0 -0
- package/dist/fonts/KaTeX_Math-Italic.woff2 +0 -0
- package/dist/fonts/KaTeX_SansSerif-Bold.ttf +0 -0
- package/dist/fonts/KaTeX_SansSerif-Bold.woff +0 -0
- package/dist/fonts/KaTeX_SansSerif-Bold.woff2 +0 -0
- package/dist/fonts/KaTeX_SansSerif-Italic.ttf +0 -0
- package/dist/fonts/KaTeX_SansSerif-Italic.woff +0 -0
- package/dist/fonts/KaTeX_SansSerif-Italic.woff2 +0 -0
- package/dist/fonts/KaTeX_SansSerif-Regular.ttf +0 -0
- package/dist/fonts/KaTeX_SansSerif-Regular.woff +0 -0
- package/dist/fonts/KaTeX_SansSerif-Regular.woff2 +0 -0
- package/dist/fonts/KaTeX_Script-Regular.ttf +0 -0
- package/dist/fonts/KaTeX_Script-Regular.woff +0 -0
- package/dist/fonts/KaTeX_Script-Regular.woff2 +0 -0
- package/dist/fonts/KaTeX_Size1-Regular.ttf +0 -0
- package/dist/fonts/KaTeX_Size1-Regular.woff +0 -0
- package/dist/fonts/KaTeX_Size1-Regular.woff2 +0 -0
- package/dist/fonts/KaTeX_Size2-Regular.ttf +0 -0
- package/dist/fonts/KaTeX_Size2-Regular.woff +0 -0
- package/dist/fonts/KaTeX_Size2-Regular.woff2 +0 -0
- package/dist/fonts/KaTeX_Size3-Regular.ttf +0 -0
- package/dist/fonts/KaTeX_Size3-Regular.woff +0 -0
- package/dist/fonts/KaTeX_Size3-Regular.woff2 +0 -0
- package/dist/fonts/KaTeX_Size4-Regular.ttf +0 -0
- package/dist/fonts/KaTeX_Size4-Regular.woff +0 -0
- package/dist/fonts/KaTeX_Size4-Regular.woff2 +0 -0
- package/dist/fonts/KaTeX_Typewriter-Regular.ttf +0 -0
- package/dist/fonts/KaTeX_Typewriter-Regular.woff +0 -0
- package/dist/fonts/KaTeX_Typewriter-Regular.woff2 +0 -0
- package/dist/katex.css +34 -10
- package/dist/katex.js +2906 -2115
- package/dist/katex.min.css +1 -1
- package/dist/katex.min.js +1 -1
- package/dist/katex.mjs +2809 -2020
- package/package.json +12 -11
- package/src/Lexer.js +1 -0
- package/src/MacroExpander.js +39 -10
- package/src/Options.js +15 -75
- package/src/Parser.js +152 -115
- package/src/Settings.js +70 -7
- package/src/Token.js +2 -0
- package/src/buildCommon.js +24 -90
- package/src/buildHTML.js +31 -31
- package/src/buildMathML.js +52 -9
- package/src/buildTree.js +13 -6
- package/src/defineFunction.js +7 -22
- package/src/delimiter.js +66 -27
- package/src/domTree.js +71 -4
- package/src/environments/array.js +235 -25
- package/src/fontMetrics.js +11 -2
- package/src/functions/accent.js +9 -9
- package/src/functions/accentunder.js +2 -2
- package/src/functions/arrow.js +15 -5
- package/src/functions/color.js +9 -38
- package/src/functions/def.js +184 -0
- package/src/functions/delimsizing.js +32 -8
- package/src/functions/enclose.js +33 -6
- package/src/functions/font.js +4 -1
- package/src/functions/genfrac.js +39 -27
- package/src/functions/horizBrace.js +6 -7
- package/src/functions/href.js +16 -0
- package/src/functions/html.js +102 -0
- package/src/functions/includegraphics.js +153 -0
- package/src/functions/lap.js +4 -7
- package/src/functions/math.js +1 -5
- package/src/functions/mclass.js +41 -2
- package/src/functions/op.js +27 -111
- package/src/functions/operatorname.js +136 -92
- package/src/functions/ordgroup.js +1 -1
- package/src/functions/overline.js +3 -2
- package/src/functions/phantom.js +5 -2
- package/src/functions/raisebox.js +4 -16
- package/src/functions/rule.js +20 -9
- package/src/functions/styling.js +0 -9
- package/src/functions/supsub.js +27 -7
- package/src/functions/symbolsOp.js +4 -0
- package/src/functions/tag.js +20 -4
- package/src/functions/text.js +4 -3
- package/src/functions/underline.js +3 -2
- package/src/functions/utils/assembleSupSub.js +110 -0
- package/src/functions.js +3 -0
- package/src/katex.less +45 -9
- package/src/macros.js +259 -98
- package/src/mathMLTree.js +6 -4
- package/src/parseNode.js +37 -57
- package/src/stretchy.js +3 -1
- package/src/svgGeometry.js +136 -44
- package/src/symbols.js +52 -69
- package/src/tree.js +2 -2
- package/src/types.js +2 -1
- package/src/unicodeAccents.js +3 -1
- package/src/unicodeSymbols.js +30 -321
- package/src/utils.js +10 -0
- package/src/wide-character.js +2 -2
- package/src/unicodeMake.js +0 -70
package/src/unicodeSymbols.js
CHANGED
|
@@ -1,323 +1,32 @@
|
|
|
1
1
|
// @flow
|
|
2
|
-
// This
|
|
2
|
+
// This is an internal module, not part of the KaTeX distribution,
|
|
3
|
+
// whose purpose is to generate `unicodeSymbols` in Parser.js
|
|
4
|
+
// In this way, only this module, and not the distribution/browser,
|
|
5
|
+
// needs String's normalize function. As this file is not transpiled,
|
|
6
|
+
// Flow comment types syntax is used.
|
|
7
|
+
const accents = require('./unicodeAccents');
|
|
3
8
|
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
"
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
"\u010b": "\u0063\u0307", // ċ = \.{c}
|
|
29
|
-
"\u010f": "\u0064\u030c", // ď = \v{d}
|
|
30
|
-
"\u1e0b": "\u0064\u0307", // ḋ = \.{d}
|
|
31
|
-
"\u00e9": "\u0065\u0301", // é = \'{e}
|
|
32
|
-
"\u00e8": "\u0065\u0300", // è = \`{e}
|
|
33
|
-
"\u00eb": "\u0065\u0308", // ë = \"{e}
|
|
34
|
-
"\u1ebd": "\u0065\u0303", // ẽ = \~{e}
|
|
35
|
-
"\u0113": "\u0065\u0304", // ē = \={e}
|
|
36
|
-
"\u1e17": "\u0065\u0304\u0301", // ḗ = \=\'{e}
|
|
37
|
-
"\u1e15": "\u0065\u0304\u0300", // ḕ = \=\`{e}
|
|
38
|
-
"\u0115": "\u0065\u0306", // ĕ = \u{e}
|
|
39
|
-
"\u011b": "\u0065\u030c", // ě = \v{e}
|
|
40
|
-
"\u00ea": "\u0065\u0302", // ê = \^{e}
|
|
41
|
-
"\u1ebf": "\u0065\u0302\u0301", // ế = \^\'{e}
|
|
42
|
-
"\u1ec1": "\u0065\u0302\u0300", // ề = \^\`{e}
|
|
43
|
-
"\u1ec5": "\u0065\u0302\u0303", // ễ = \^\~{e}
|
|
44
|
-
"\u0117": "\u0065\u0307", // ė = \.{e}
|
|
45
|
-
"\u1e1f": "\u0066\u0307", // ḟ = \.{f}
|
|
46
|
-
"\u01f5": "\u0067\u0301", // ǵ = \'{g}
|
|
47
|
-
"\u1e21": "\u0067\u0304", // ḡ = \={g}
|
|
48
|
-
"\u011f": "\u0067\u0306", // ğ = \u{g}
|
|
49
|
-
"\u01e7": "\u0067\u030c", // ǧ = \v{g}
|
|
50
|
-
"\u011d": "\u0067\u0302", // ĝ = \^{g}
|
|
51
|
-
"\u0121": "\u0067\u0307", // ġ = \.{g}
|
|
52
|
-
"\u1e27": "\u0068\u0308", // ḧ = \"{h}
|
|
53
|
-
"\u021f": "\u0068\u030c", // ȟ = \v{h}
|
|
54
|
-
"\u0125": "\u0068\u0302", // ĥ = \^{h}
|
|
55
|
-
"\u1e23": "\u0068\u0307", // ḣ = \.{h}
|
|
56
|
-
"\u00ed": "\u0069\u0301", // í = \'{i}
|
|
57
|
-
"\u00ec": "\u0069\u0300", // ì = \`{i}
|
|
58
|
-
"\u00ef": "\u0069\u0308", // ï = \"{i}
|
|
59
|
-
"\u1e2f": "\u0069\u0308\u0301", // ḯ = \"\'{i}
|
|
60
|
-
"\u0129": "\u0069\u0303", // ĩ = \~{i}
|
|
61
|
-
"\u012b": "\u0069\u0304", // ī = \={i}
|
|
62
|
-
"\u012d": "\u0069\u0306", // ĭ = \u{i}
|
|
63
|
-
"\u01d0": "\u0069\u030c", // ǐ = \v{i}
|
|
64
|
-
"\u00ee": "\u0069\u0302", // î = \^{i}
|
|
65
|
-
"\u01f0": "\u006a\u030c", // ǰ = \v{j}
|
|
66
|
-
"\u0135": "\u006a\u0302", // ĵ = \^{j}
|
|
67
|
-
"\u1e31": "\u006b\u0301", // ḱ = \'{k}
|
|
68
|
-
"\u01e9": "\u006b\u030c", // ǩ = \v{k}
|
|
69
|
-
"\u013a": "\u006c\u0301", // ĺ = \'{l}
|
|
70
|
-
"\u013e": "\u006c\u030c", // ľ = \v{l}
|
|
71
|
-
"\u1e3f": "\u006d\u0301", // ḿ = \'{m}
|
|
72
|
-
"\u1e41": "\u006d\u0307", // ṁ = \.{m}
|
|
73
|
-
"\u0144": "\u006e\u0301", // ń = \'{n}
|
|
74
|
-
"\u01f9": "\u006e\u0300", // ǹ = \`{n}
|
|
75
|
-
"\u00f1": "\u006e\u0303", // ñ = \~{n}
|
|
76
|
-
"\u0148": "\u006e\u030c", // ň = \v{n}
|
|
77
|
-
"\u1e45": "\u006e\u0307", // ṅ = \.{n}
|
|
78
|
-
"\u00f3": "\u006f\u0301", // ó = \'{o}
|
|
79
|
-
"\u00f2": "\u006f\u0300", // ò = \`{o}
|
|
80
|
-
"\u00f6": "\u006f\u0308", // ö = \"{o}
|
|
81
|
-
"\u022b": "\u006f\u0308\u0304", // ȫ = \"\={o}
|
|
82
|
-
"\u00f5": "\u006f\u0303", // õ = \~{o}
|
|
83
|
-
"\u1e4d": "\u006f\u0303\u0301", // ṍ = \~\'{o}
|
|
84
|
-
"\u1e4f": "\u006f\u0303\u0308", // ṏ = \~\"{o}
|
|
85
|
-
"\u022d": "\u006f\u0303\u0304", // ȭ = \~\={o}
|
|
86
|
-
"\u014d": "\u006f\u0304", // ō = \={o}
|
|
87
|
-
"\u1e53": "\u006f\u0304\u0301", // ṓ = \=\'{o}
|
|
88
|
-
"\u1e51": "\u006f\u0304\u0300", // ṑ = \=\`{o}
|
|
89
|
-
"\u014f": "\u006f\u0306", // ŏ = \u{o}
|
|
90
|
-
"\u01d2": "\u006f\u030c", // ǒ = \v{o}
|
|
91
|
-
"\u00f4": "\u006f\u0302", // ô = \^{o}
|
|
92
|
-
"\u1ed1": "\u006f\u0302\u0301", // ố = \^\'{o}
|
|
93
|
-
"\u1ed3": "\u006f\u0302\u0300", // ồ = \^\`{o}
|
|
94
|
-
"\u1ed7": "\u006f\u0302\u0303", // ỗ = \^\~{o}
|
|
95
|
-
"\u022f": "\u006f\u0307", // ȯ = \.{o}
|
|
96
|
-
"\u0231": "\u006f\u0307\u0304", // ȱ = \.\={o}
|
|
97
|
-
"\u0151": "\u006f\u030b", // ő = \H{o}
|
|
98
|
-
"\u1e55": "\u0070\u0301", // ṕ = \'{p}
|
|
99
|
-
"\u1e57": "\u0070\u0307", // ṗ = \.{p}
|
|
100
|
-
"\u0155": "\u0072\u0301", // ŕ = \'{r}
|
|
101
|
-
"\u0159": "\u0072\u030c", // ř = \v{r}
|
|
102
|
-
"\u1e59": "\u0072\u0307", // ṙ = \.{r}
|
|
103
|
-
"\u015b": "\u0073\u0301", // ś = \'{s}
|
|
104
|
-
"\u1e65": "\u0073\u0301\u0307", // ṥ = \'\.{s}
|
|
105
|
-
"\u0161": "\u0073\u030c", // š = \v{s}
|
|
106
|
-
"\u1e67": "\u0073\u030c\u0307", // ṧ = \v\.{s}
|
|
107
|
-
"\u015d": "\u0073\u0302", // ŝ = \^{s}
|
|
108
|
-
"\u1e61": "\u0073\u0307", // ṡ = \.{s}
|
|
109
|
-
"\u1e97": "\u0074\u0308", // ẗ = \"{t}
|
|
110
|
-
"\u0165": "\u0074\u030c", // ť = \v{t}
|
|
111
|
-
"\u1e6b": "\u0074\u0307", // ṫ = \.{t}
|
|
112
|
-
"\u00fa": "\u0075\u0301", // ú = \'{u}
|
|
113
|
-
"\u00f9": "\u0075\u0300", // ù = \`{u}
|
|
114
|
-
"\u00fc": "\u0075\u0308", // ü = \"{u}
|
|
115
|
-
"\u01d8": "\u0075\u0308\u0301", // ǘ = \"\'{u}
|
|
116
|
-
"\u01dc": "\u0075\u0308\u0300", // ǜ = \"\`{u}
|
|
117
|
-
"\u01d6": "\u0075\u0308\u0304", // ǖ = \"\={u}
|
|
118
|
-
"\u01da": "\u0075\u0308\u030c", // ǚ = \"\v{u}
|
|
119
|
-
"\u0169": "\u0075\u0303", // ũ = \~{u}
|
|
120
|
-
"\u1e79": "\u0075\u0303\u0301", // ṹ = \~\'{u}
|
|
121
|
-
"\u016b": "\u0075\u0304", // ū = \={u}
|
|
122
|
-
"\u1e7b": "\u0075\u0304\u0308", // ṻ = \=\"{u}
|
|
123
|
-
"\u016d": "\u0075\u0306", // ŭ = \u{u}
|
|
124
|
-
"\u01d4": "\u0075\u030c", // ǔ = \v{u}
|
|
125
|
-
"\u00fb": "\u0075\u0302", // û = \^{u}
|
|
126
|
-
"\u016f": "\u0075\u030a", // ů = \r{u}
|
|
127
|
-
"\u0171": "\u0075\u030b", // ű = \H{u}
|
|
128
|
-
"\u1e7d": "\u0076\u0303", // ṽ = \~{v}
|
|
129
|
-
"\u1e83": "\u0077\u0301", // ẃ = \'{w}
|
|
130
|
-
"\u1e81": "\u0077\u0300", // ẁ = \`{w}
|
|
131
|
-
"\u1e85": "\u0077\u0308", // ẅ = \"{w}
|
|
132
|
-
"\u0175": "\u0077\u0302", // ŵ = \^{w}
|
|
133
|
-
"\u1e87": "\u0077\u0307", // ẇ = \.{w}
|
|
134
|
-
"\u1e98": "\u0077\u030a", // ẘ = \r{w}
|
|
135
|
-
"\u1e8d": "\u0078\u0308", // ẍ = \"{x}
|
|
136
|
-
"\u1e8b": "\u0078\u0307", // ẋ = \.{x}
|
|
137
|
-
"\u00fd": "\u0079\u0301", // ý = \'{y}
|
|
138
|
-
"\u1ef3": "\u0079\u0300", // ỳ = \`{y}
|
|
139
|
-
"\u00ff": "\u0079\u0308", // ÿ = \"{y}
|
|
140
|
-
"\u1ef9": "\u0079\u0303", // ỹ = \~{y}
|
|
141
|
-
"\u0233": "\u0079\u0304", // ȳ = \={y}
|
|
142
|
-
"\u0177": "\u0079\u0302", // ŷ = \^{y}
|
|
143
|
-
"\u1e8f": "\u0079\u0307", // ẏ = \.{y}
|
|
144
|
-
"\u1e99": "\u0079\u030a", // ẙ = \r{y}
|
|
145
|
-
"\u017a": "\u007a\u0301", // ź = \'{z}
|
|
146
|
-
"\u017e": "\u007a\u030c", // ž = \v{z}
|
|
147
|
-
"\u1e91": "\u007a\u0302", // ẑ = \^{z}
|
|
148
|
-
"\u017c": "\u007a\u0307", // ż = \.{z}
|
|
149
|
-
"\u00c1": "\u0041\u0301", // Á = \'{A}
|
|
150
|
-
"\u00c0": "\u0041\u0300", // À = \`{A}
|
|
151
|
-
"\u00c4": "\u0041\u0308", // Ä = \"{A}
|
|
152
|
-
"\u01de": "\u0041\u0308\u0304", // Ǟ = \"\={A}
|
|
153
|
-
"\u00c3": "\u0041\u0303", // Ã = \~{A}
|
|
154
|
-
"\u0100": "\u0041\u0304", // Ā = \={A}
|
|
155
|
-
"\u0102": "\u0041\u0306", // Ă = \u{A}
|
|
156
|
-
"\u1eae": "\u0041\u0306\u0301", // Ắ = \u\'{A}
|
|
157
|
-
"\u1eb0": "\u0041\u0306\u0300", // Ằ = \u\`{A}
|
|
158
|
-
"\u1eb4": "\u0041\u0306\u0303", // Ẵ = \u\~{A}
|
|
159
|
-
"\u01cd": "\u0041\u030c", // Ǎ = \v{A}
|
|
160
|
-
"\u00c2": "\u0041\u0302", // Â = \^{A}
|
|
161
|
-
"\u1ea4": "\u0041\u0302\u0301", // Ấ = \^\'{A}
|
|
162
|
-
"\u1ea6": "\u0041\u0302\u0300", // Ầ = \^\`{A}
|
|
163
|
-
"\u1eaa": "\u0041\u0302\u0303", // Ẫ = \^\~{A}
|
|
164
|
-
"\u0226": "\u0041\u0307", // Ȧ = \.{A}
|
|
165
|
-
"\u01e0": "\u0041\u0307\u0304", // Ǡ = \.\={A}
|
|
166
|
-
"\u00c5": "\u0041\u030a", // Å = \r{A}
|
|
167
|
-
"\u01fa": "\u0041\u030a\u0301", // Ǻ = \r\'{A}
|
|
168
|
-
"\u1e02": "\u0042\u0307", // Ḃ = \.{B}
|
|
169
|
-
"\u0106": "\u0043\u0301", // Ć = \'{C}
|
|
170
|
-
"\u010c": "\u0043\u030c", // Č = \v{C}
|
|
171
|
-
"\u0108": "\u0043\u0302", // Ĉ = \^{C}
|
|
172
|
-
"\u010a": "\u0043\u0307", // Ċ = \.{C}
|
|
173
|
-
"\u010e": "\u0044\u030c", // Ď = \v{D}
|
|
174
|
-
"\u1e0a": "\u0044\u0307", // Ḋ = \.{D}
|
|
175
|
-
"\u00c9": "\u0045\u0301", // É = \'{E}
|
|
176
|
-
"\u00c8": "\u0045\u0300", // È = \`{E}
|
|
177
|
-
"\u00cb": "\u0045\u0308", // Ë = \"{E}
|
|
178
|
-
"\u1ebc": "\u0045\u0303", // Ẽ = \~{E}
|
|
179
|
-
"\u0112": "\u0045\u0304", // Ē = \={E}
|
|
180
|
-
"\u1e16": "\u0045\u0304\u0301", // Ḗ = \=\'{E}
|
|
181
|
-
"\u1e14": "\u0045\u0304\u0300", // Ḕ = \=\`{E}
|
|
182
|
-
"\u0114": "\u0045\u0306", // Ĕ = \u{E}
|
|
183
|
-
"\u011a": "\u0045\u030c", // Ě = \v{E}
|
|
184
|
-
"\u00ca": "\u0045\u0302", // Ê = \^{E}
|
|
185
|
-
"\u1ebe": "\u0045\u0302\u0301", // Ế = \^\'{E}
|
|
186
|
-
"\u1ec0": "\u0045\u0302\u0300", // Ề = \^\`{E}
|
|
187
|
-
"\u1ec4": "\u0045\u0302\u0303", // Ễ = \^\~{E}
|
|
188
|
-
"\u0116": "\u0045\u0307", // Ė = \.{E}
|
|
189
|
-
"\u1e1e": "\u0046\u0307", // Ḟ = \.{F}
|
|
190
|
-
"\u01f4": "\u0047\u0301", // Ǵ = \'{G}
|
|
191
|
-
"\u1e20": "\u0047\u0304", // Ḡ = \={G}
|
|
192
|
-
"\u011e": "\u0047\u0306", // Ğ = \u{G}
|
|
193
|
-
"\u01e6": "\u0047\u030c", // Ǧ = \v{G}
|
|
194
|
-
"\u011c": "\u0047\u0302", // Ĝ = \^{G}
|
|
195
|
-
"\u0120": "\u0047\u0307", // Ġ = \.{G}
|
|
196
|
-
"\u1e26": "\u0048\u0308", // Ḧ = \"{H}
|
|
197
|
-
"\u021e": "\u0048\u030c", // Ȟ = \v{H}
|
|
198
|
-
"\u0124": "\u0048\u0302", // Ĥ = \^{H}
|
|
199
|
-
"\u1e22": "\u0048\u0307", // Ḣ = \.{H}
|
|
200
|
-
"\u00cd": "\u0049\u0301", // Í = \'{I}
|
|
201
|
-
"\u00cc": "\u0049\u0300", // Ì = \`{I}
|
|
202
|
-
"\u00cf": "\u0049\u0308", // Ï = \"{I}
|
|
203
|
-
"\u1e2e": "\u0049\u0308\u0301", // Ḯ = \"\'{I}
|
|
204
|
-
"\u0128": "\u0049\u0303", // Ĩ = \~{I}
|
|
205
|
-
"\u012a": "\u0049\u0304", // Ī = \={I}
|
|
206
|
-
"\u012c": "\u0049\u0306", // Ĭ = \u{I}
|
|
207
|
-
"\u01cf": "\u0049\u030c", // Ǐ = \v{I}
|
|
208
|
-
"\u00ce": "\u0049\u0302", // Î = \^{I}
|
|
209
|
-
"\u0130": "\u0049\u0307", // İ = \.{I}
|
|
210
|
-
"\u0134": "\u004a\u0302", // Ĵ = \^{J}
|
|
211
|
-
"\u1e30": "\u004b\u0301", // Ḱ = \'{K}
|
|
212
|
-
"\u01e8": "\u004b\u030c", // Ǩ = \v{K}
|
|
213
|
-
"\u0139": "\u004c\u0301", // Ĺ = \'{L}
|
|
214
|
-
"\u013d": "\u004c\u030c", // Ľ = \v{L}
|
|
215
|
-
"\u1e3e": "\u004d\u0301", // Ḿ = \'{M}
|
|
216
|
-
"\u1e40": "\u004d\u0307", // Ṁ = \.{M}
|
|
217
|
-
"\u0143": "\u004e\u0301", // Ń = \'{N}
|
|
218
|
-
"\u01f8": "\u004e\u0300", // Ǹ = \`{N}
|
|
219
|
-
"\u00d1": "\u004e\u0303", // Ñ = \~{N}
|
|
220
|
-
"\u0147": "\u004e\u030c", // Ň = \v{N}
|
|
221
|
-
"\u1e44": "\u004e\u0307", // Ṅ = \.{N}
|
|
222
|
-
"\u00d3": "\u004f\u0301", // Ó = \'{O}
|
|
223
|
-
"\u00d2": "\u004f\u0300", // Ò = \`{O}
|
|
224
|
-
"\u00d6": "\u004f\u0308", // Ö = \"{O}
|
|
225
|
-
"\u022a": "\u004f\u0308\u0304", // Ȫ = \"\={O}
|
|
226
|
-
"\u00d5": "\u004f\u0303", // Õ = \~{O}
|
|
227
|
-
"\u1e4c": "\u004f\u0303\u0301", // Ṍ = \~\'{O}
|
|
228
|
-
"\u1e4e": "\u004f\u0303\u0308", // Ṏ = \~\"{O}
|
|
229
|
-
"\u022c": "\u004f\u0303\u0304", // Ȭ = \~\={O}
|
|
230
|
-
"\u014c": "\u004f\u0304", // Ō = \={O}
|
|
231
|
-
"\u1e52": "\u004f\u0304\u0301", // Ṓ = \=\'{O}
|
|
232
|
-
"\u1e50": "\u004f\u0304\u0300", // Ṑ = \=\`{O}
|
|
233
|
-
"\u014e": "\u004f\u0306", // Ŏ = \u{O}
|
|
234
|
-
"\u01d1": "\u004f\u030c", // Ǒ = \v{O}
|
|
235
|
-
"\u00d4": "\u004f\u0302", // Ô = \^{O}
|
|
236
|
-
"\u1ed0": "\u004f\u0302\u0301", // Ố = \^\'{O}
|
|
237
|
-
"\u1ed2": "\u004f\u0302\u0300", // Ồ = \^\`{O}
|
|
238
|
-
"\u1ed6": "\u004f\u0302\u0303", // Ỗ = \^\~{O}
|
|
239
|
-
"\u022e": "\u004f\u0307", // Ȯ = \.{O}
|
|
240
|
-
"\u0230": "\u004f\u0307\u0304", // Ȱ = \.\={O}
|
|
241
|
-
"\u0150": "\u004f\u030b", // Ő = \H{O}
|
|
242
|
-
"\u1e54": "\u0050\u0301", // Ṕ = \'{P}
|
|
243
|
-
"\u1e56": "\u0050\u0307", // Ṗ = \.{P}
|
|
244
|
-
"\u0154": "\u0052\u0301", // Ŕ = \'{R}
|
|
245
|
-
"\u0158": "\u0052\u030c", // Ř = \v{R}
|
|
246
|
-
"\u1e58": "\u0052\u0307", // Ṙ = \.{R}
|
|
247
|
-
"\u015a": "\u0053\u0301", // Ś = \'{S}
|
|
248
|
-
"\u1e64": "\u0053\u0301\u0307", // Ṥ = \'\.{S}
|
|
249
|
-
"\u0160": "\u0053\u030c", // Š = \v{S}
|
|
250
|
-
"\u1e66": "\u0053\u030c\u0307", // Ṧ = \v\.{S}
|
|
251
|
-
"\u015c": "\u0053\u0302", // Ŝ = \^{S}
|
|
252
|
-
"\u1e60": "\u0053\u0307", // Ṡ = \.{S}
|
|
253
|
-
"\u0164": "\u0054\u030c", // Ť = \v{T}
|
|
254
|
-
"\u1e6a": "\u0054\u0307", // Ṫ = \.{T}
|
|
255
|
-
"\u00da": "\u0055\u0301", // Ú = \'{U}
|
|
256
|
-
"\u00d9": "\u0055\u0300", // Ù = \`{U}
|
|
257
|
-
"\u00dc": "\u0055\u0308", // Ü = \"{U}
|
|
258
|
-
"\u01d7": "\u0055\u0308\u0301", // Ǘ = \"\'{U}
|
|
259
|
-
"\u01db": "\u0055\u0308\u0300", // Ǜ = \"\`{U}
|
|
260
|
-
"\u01d5": "\u0055\u0308\u0304", // Ǖ = \"\={U}
|
|
261
|
-
"\u01d9": "\u0055\u0308\u030c", // Ǚ = \"\v{U}
|
|
262
|
-
"\u0168": "\u0055\u0303", // Ũ = \~{U}
|
|
263
|
-
"\u1e78": "\u0055\u0303\u0301", // Ṹ = \~\'{U}
|
|
264
|
-
"\u016a": "\u0055\u0304", // Ū = \={U}
|
|
265
|
-
"\u1e7a": "\u0055\u0304\u0308", // Ṻ = \=\"{U}
|
|
266
|
-
"\u016c": "\u0055\u0306", // Ŭ = \u{U}
|
|
267
|
-
"\u01d3": "\u0055\u030c", // Ǔ = \v{U}
|
|
268
|
-
"\u00db": "\u0055\u0302", // Û = \^{U}
|
|
269
|
-
"\u016e": "\u0055\u030a", // Ů = \r{U}
|
|
270
|
-
"\u0170": "\u0055\u030b", // Ű = \H{U}
|
|
271
|
-
"\u1e7c": "\u0056\u0303", // Ṽ = \~{V}
|
|
272
|
-
"\u1e82": "\u0057\u0301", // Ẃ = \'{W}
|
|
273
|
-
"\u1e80": "\u0057\u0300", // Ẁ = \`{W}
|
|
274
|
-
"\u1e84": "\u0057\u0308", // Ẅ = \"{W}
|
|
275
|
-
"\u0174": "\u0057\u0302", // Ŵ = \^{W}
|
|
276
|
-
"\u1e86": "\u0057\u0307", // Ẇ = \.{W}
|
|
277
|
-
"\u1e8c": "\u0058\u0308", // Ẍ = \"{X}
|
|
278
|
-
"\u1e8a": "\u0058\u0307", // Ẋ = \.{X}
|
|
279
|
-
"\u00dd": "\u0059\u0301", // Ý = \'{Y}
|
|
280
|
-
"\u1ef2": "\u0059\u0300", // Ỳ = \`{Y}
|
|
281
|
-
"\u0178": "\u0059\u0308", // Ÿ = \"{Y}
|
|
282
|
-
"\u1ef8": "\u0059\u0303", // Ỹ = \~{Y}
|
|
283
|
-
"\u0232": "\u0059\u0304", // Ȳ = \={Y}
|
|
284
|
-
"\u0176": "\u0059\u0302", // Ŷ = \^{Y}
|
|
285
|
-
"\u1e8e": "\u0059\u0307", // Ẏ = \.{Y}
|
|
286
|
-
"\u0179": "\u005a\u0301", // Ź = \'{Z}
|
|
287
|
-
"\u017d": "\u005a\u030c", // Ž = \v{Z}
|
|
288
|
-
"\u1e90": "\u005a\u0302", // Ẑ = \^{Z}
|
|
289
|
-
"\u017b": "\u005a\u0307", // Ż = \.{Z}
|
|
290
|
-
"\u03ac": "\u03b1\u0301", // ά = \'{α}
|
|
291
|
-
"\u1f70": "\u03b1\u0300", // ὰ = \`{α}
|
|
292
|
-
"\u1fb1": "\u03b1\u0304", // ᾱ = \={α}
|
|
293
|
-
"\u1fb0": "\u03b1\u0306", // ᾰ = \u{α}
|
|
294
|
-
"\u03ad": "\u03b5\u0301", // έ = \'{ε}
|
|
295
|
-
"\u1f72": "\u03b5\u0300", // ὲ = \`{ε}
|
|
296
|
-
"\u03ae": "\u03b7\u0301", // ή = \'{η}
|
|
297
|
-
"\u1f74": "\u03b7\u0300", // ὴ = \`{η}
|
|
298
|
-
"\u03af": "\u03b9\u0301", // ί = \'{ι}
|
|
299
|
-
"\u1f76": "\u03b9\u0300", // ὶ = \`{ι}
|
|
300
|
-
"\u03ca": "\u03b9\u0308", // ϊ = \"{ι}
|
|
301
|
-
"\u0390": "\u03b9\u0308\u0301", // ΐ = \"\'{ι}
|
|
302
|
-
"\u1fd2": "\u03b9\u0308\u0300", // ῒ = \"\`{ι}
|
|
303
|
-
"\u1fd1": "\u03b9\u0304", // ῑ = \={ι}
|
|
304
|
-
"\u1fd0": "\u03b9\u0306", // ῐ = \u{ι}
|
|
305
|
-
"\u03cc": "\u03bf\u0301", // ό = \'{ο}
|
|
306
|
-
"\u1f78": "\u03bf\u0300", // ὸ = \`{ο}
|
|
307
|
-
"\u03cd": "\u03c5\u0301", // ύ = \'{υ}
|
|
308
|
-
"\u1f7a": "\u03c5\u0300", // ὺ = \`{υ}
|
|
309
|
-
"\u03cb": "\u03c5\u0308", // ϋ = \"{υ}
|
|
310
|
-
"\u03b0": "\u03c5\u0308\u0301", // ΰ = \"\'{υ}
|
|
311
|
-
"\u1fe2": "\u03c5\u0308\u0300", // ῢ = \"\`{υ}
|
|
312
|
-
"\u1fe1": "\u03c5\u0304", // ῡ = \={υ}
|
|
313
|
-
"\u1fe0": "\u03c5\u0306", // ῠ = \u{υ}
|
|
314
|
-
"\u03ce": "\u03c9\u0301", // ώ = \'{ω}
|
|
315
|
-
"\u1f7c": "\u03c9\u0300", // ὼ = \`{ω}
|
|
316
|
-
"\u038e": "\u03a5\u0301", // Ύ = \'{Υ}
|
|
317
|
-
"\u1fea": "\u03a5\u0300", // Ὺ = \`{Υ}
|
|
318
|
-
"\u03ab": "\u03a5\u0308", // Ϋ = \"{Υ}
|
|
319
|
-
"\u1fe9": "\u03a5\u0304", // Ῡ = \={Υ}
|
|
320
|
-
"\u1fe8": "\u03a5\u0306", // Ῠ = \u{Υ}
|
|
321
|
-
"\u038f": "\u03a9\u0301", // Ώ = \'{Ω}
|
|
322
|
-
"\u1ffa": "\u03a9\u0300", // Ὼ = \`{Ω}
|
|
323
|
-
};
|
|
9
|
+
const result /*: {[string]: string}*/ = {};
|
|
10
|
+
const letters = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ" +
|
|
11
|
+
"αβγδεϵζηθϑικλμνξοπϖρϱςστυφϕχψωΓΔΘΛΞΠΣΥΦΨΩ";
|
|
12
|
+
for (const letter of letters) {
|
|
13
|
+
for (const accent of Object.getOwnPropertyNames(accents)) {
|
|
14
|
+
const combined = letter + accent;
|
|
15
|
+
const normalized = combined.normalize('NFC');
|
|
16
|
+
if (normalized.length === 1) {
|
|
17
|
+
result[normalized] = combined;
|
|
18
|
+
}
|
|
19
|
+
for (const accent2 of Object.getOwnPropertyNames(accents)) {
|
|
20
|
+
if (accent === accent2) {
|
|
21
|
+
continue;
|
|
22
|
+
}
|
|
23
|
+
const combined2 = combined + accent2;
|
|
24
|
+
const normalized2 = combined2.normalize('NFC');
|
|
25
|
+
if (normalized2.length === 1) {
|
|
26
|
+
result[normalized2] = combined2;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
module.exports = result;
|
package/src/utils.js
CHANGED
|
@@ -91,6 +91,15 @@ export const assert = function<T>(value: ?T): T {
|
|
|
91
91
|
return value;
|
|
92
92
|
};
|
|
93
93
|
|
|
94
|
+
/**
|
|
95
|
+
* Return the protocol of a URL, or "_relative" if the URL does not specify a
|
|
96
|
+
* protocol (and thus is relative).
|
|
97
|
+
*/
|
|
98
|
+
export const protocolFromUrl = function(url: string): string {
|
|
99
|
+
const protocol = /^\s*([^\\/#]*?)(?::|�*58|�*3a)/i.exec(url);
|
|
100
|
+
return (protocol != null ? protocol[1] : "_relative");
|
|
101
|
+
};
|
|
102
|
+
|
|
94
103
|
export default {
|
|
95
104
|
contains,
|
|
96
105
|
deflt,
|
|
@@ -98,4 +107,5 @@ export default {
|
|
|
98
107
|
hyphenate,
|
|
99
108
|
getBaseElem,
|
|
100
109
|
isCharacterBox,
|
|
110
|
+
protocolFromUrl,
|
|
101
111
|
};
|
package/src/wide-character.js
CHANGED
|
@@ -25,8 +25,8 @@ const wideLatinLetterData: Array<[string, string, string]> = [
|
|
|
25
25
|
["mathbf", "textbf", "Main-Bold"], // A-Z bold upright
|
|
26
26
|
["mathbf", "textbf", "Main-Bold"], // a-z bold upright
|
|
27
27
|
|
|
28
|
-
["
|
|
29
|
-
["
|
|
28
|
+
["mathnormal", "textit", "Math-Italic"], // A-Z italic
|
|
29
|
+
["mathnormal", "textit", "Math-Italic"], // a-z italic
|
|
30
30
|
|
|
31
31
|
["boldsymbol", "boldsymbol", "Main-BoldItalic"], // A-Z bold italic
|
|
32
32
|
["boldsymbol", "boldsymbol", "Main-BoldItalic"], // a-z bold italic
|
package/src/unicodeMake.js
DELETED
|
@@ -1,70 +0,0 @@
|
|
|
1
|
-
/* eslint no-console:0 */
|
|
2
|
-
|
|
3
|
-
// This is an internal Node tool, not part of the KaTeX distribution,
|
|
4
|
-
// whose purpose is to generate unicodeSymbols.js in this directory.
|
|
5
|
-
// In this way, only this tool, and not the distribution/browser,
|
|
6
|
-
// needs String's normalize function.
|
|
7
|
-
const path = require('path');
|
|
8
|
-
const fs = require('fs');
|
|
9
|
-
|
|
10
|
-
const target = path.join(__dirname, 'unicodeSymbols.js');
|
|
11
|
-
const targetMtime = fs.statSync(target).mtime;
|
|
12
|
-
if (fs.statSync(__filename).mtime <= targetMtime && fs.statSync(
|
|
13
|
-
path.join(__dirname, 'unicodeAccents.js')).mtime <= targetMtime) {
|
|
14
|
-
return;
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
require('@babel/register');
|
|
18
|
-
const accents = require('./unicodeAccents').default;
|
|
19
|
-
|
|
20
|
-
const encode = function(string) {
|
|
21
|
-
let output = '"';
|
|
22
|
-
for (let i = 0; i < string.length; i++) {
|
|
23
|
-
let hex = string.charCodeAt(i).toString(16);
|
|
24
|
-
while (hex.length < 4) {
|
|
25
|
-
hex = `0${hex}`;
|
|
26
|
-
}
|
|
27
|
-
output += `\\u${hex}`;
|
|
28
|
-
}
|
|
29
|
-
output = `${output}"`;
|
|
30
|
-
return output;
|
|
31
|
-
};
|
|
32
|
-
|
|
33
|
-
let unicodeSymbols =
|
|
34
|
-
`// @flow
|
|
35
|
-
// This file is GENERATED by unicodeMake.js. DO NOT MODIFY.
|
|
36
|
-
|
|
37
|
-
export default {
|
|
38
|
-
`;
|
|
39
|
-
|
|
40
|
-
const letters = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ" +
|
|
41
|
-
"αβγδεϵζηθϑικλμνξοπϖρϱςστυφϕχψωΓΔΘΛΞΠΣΥΦΨΩ";
|
|
42
|
-
for (const letter of letters) {
|
|
43
|
-
for (const accent of Object.getOwnPropertyNames(accents)) {
|
|
44
|
-
const combined = letter + accent;
|
|
45
|
-
const normalized = combined.normalize('NFC');
|
|
46
|
-
if (normalized.length === 1) {
|
|
47
|
-
unicodeSymbols +=
|
|
48
|
-
` ${encode(normalized)}: ${encode(combined)},`
|
|
49
|
-
+ ` // ${normalized} = ${accents[accent].text}{${letter}}\n`;
|
|
50
|
-
}
|
|
51
|
-
for (const accent2 of Object.getOwnPropertyNames(accents)) {
|
|
52
|
-
if (accent === accent2) {
|
|
53
|
-
continue;
|
|
54
|
-
}
|
|
55
|
-
const combined2 = combined + accent2;
|
|
56
|
-
const normalized2 = combined2.normalize('NFC');
|
|
57
|
-
if (normalized2.length === 1) {
|
|
58
|
-
unicodeSymbols +=
|
|
59
|
-
` ${encode(normalized2)}: ${encode(combined2)},`
|
|
60
|
-
+ ` // ${normalized2} = ${accents[accent].text}`
|
|
61
|
-
+ `${accents[accent2].text}{${letter}}\n`;
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
unicodeSymbols += `};
|
|
68
|
-
`;
|
|
69
|
-
|
|
70
|
-
fs.writeFileSync(target, unicodeSymbols);
|