Attachment #8411784: Part 3: Remove old glyph tables and merge the legacy tables for the STIXGeneral set. for bug #947654

View | Details | Raw Unified | Return to bug 947654
Collapse All | Expand All

(-)a/layout/mathml/mathfontSTIXGeneral.properties (+128 lines)
Line     Link Here 
Line 0    Link Here 
1
# This Source Code Form is subject to the terms of the Mozilla Public
2
# License, v. 2.0. If a copy of the MPL was not distributed with this
3
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
4
5
#  LOCALIZATION NOTE: FILE
6
#  Do not translate anything in this file
7
8
# This file contains the list of some stretchy MathML chars that can be
9
# rendered with the STIXGeneral set.
10
11
external.1 = STIXSizeOneSym
12
external.2 = STIXSizeTwoSym
13
external.3 = STIXSizeThreeSym
14
external.4 = STIXSizeFourSym
15
external.5 = STIXSizeFiveSym
16
external.6 = STIXIntegralsD
17
external.7 = STIXNonUnicode
18
19
############
20
# 1) Constructions from mathfontSTIXSizeOneSym.properties (bug 947654) #
21
22
#        [ T/L |  M  | B/R |  G  | size0 ... size{N-1} ]
23
\u0028 = \u239B@1\uFFFD\u239D@1\u239C@1\uFFFD(@1(@2(@3(@4 # (
24
\u0029 = \u239E@1\uFFFD\u23A0@1\u239F@1\uFFFD)@1)@2)@3)@4 # )
25
\u005B = \u23A1@1\uFFFD\u23A3@1\u23A2@1\u005B@1[@1[@2[@3[@4 # [
26
\u005D = \u23A4@1\uFFFD\u23A6@1\u23A5@1\u005D@1]@1]@2]@3]@4 # ]
27
\u007B = \u23A7@1\u23A8@1\u23A9@1\u23AA@1\u007B@1{@1{@2{@3{@4 # {
28
\u007D = \u23AB@1\u23AC@1\u23AD@1\u23AA@1\u007D@1}@1}@2}@3}@4 # }
29
30
# N-ARY operators
31
\u2140 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2140@1 # DOUBLE-STRUCK N-ARY SUMMATION
32
\u220F = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u220F@1 # N-ARY PRODUCT
33
\u2210 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2210@1 # N-ARY COPRODUCT
34
\u2211 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2211@1 # N-ARY SUMMATION
35
\u22C0 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u22C0@1 # N-ARY LOGICAL AND
36
\u22C1 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u22C1@1 # N-ARY LOGICAL OR
37
\u22C2 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u22C2@1 # N-ARY INTERSECTION
38
\u22C3 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u22C3@1 # N-ARY UNION
39
\u2A00 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A00@1 # N-ARY CIRCLED DOT OPERATOR
40
\u2A01 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A01@1 # N-ARY CIRCLED PLUS OPERATOR
41
\u2A02 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A02@1 # N-ARY CIRCLED TIMES OPERATOR
42
\u2A03 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A03@1 # N-ARY UNION OPERATOR WITH DOT
43
\u2A04 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A04@1 # N-ARY UNION OPERATOR WITH PLUS
44
\u2A05 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A05@1 # N-ARY SQUARE INTERSECTION OPERATOR
45
\u2A06 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A06@1 # N-ARY SQUARE UNION OPERATOR
46
\u2A09 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A09@1 # N-ARY TIMES OPERATOR
47
\u2AFF = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2AFF@1 # N-ARY WHITE VERTICAL BAR
48
49
# E000 stix-radical symbol vertical extender
50
# E001 stix-radical symbol top corner
51
\u221A = \uE001@7\uFFFD\u221A@4\uE000@7\uFFFD\u221A@1\u221A@2\u221A@3 # Sqrt, radic
52
53
# Integrals
54
\u222B = \u2320@1\uFFFD\u2321@1\u23AE@1\uFFFD@1\u222B@6
55
\u222C = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u222C@6
56
\u222D = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u222D@6
57
\u222E = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u222E@6
58
\u222F = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u222F@6
59
\u2230 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2230@6
60
\u2231 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2231@6
61
\u2232 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2232@6
62
\u2233 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2233@6
63
\u2A0B = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A0B@6
64
\u2A0C = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A0C@6
65
\u2A0D = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A0D@6
66
\u2A0E = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A0E@6
67
\u2A0F = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A0F@6
68
\u2A10 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A10@6
69
\u2A11 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A11@6
70
\u2A12 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A12@6
71
\u2A13 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A13@6
72
\u2A14 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A14@6
73
\u2A15 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A15@6
74
\u2A16 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A16@6
75
\u2A17 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A17@6
76
\u2A18 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A18@6
77
\u2A19 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A19@6
78
\u2A1A = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A1A@6
79
\u2A1B = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A1B@6
80
\u2A1C = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A1C@6
81
82
\u27E8 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u27E8@1\u27E8@2\u27E8@3\u27E8@4 # LeftAngleBracket
83
\u27E9 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u27E9@1\u27E9@2\u27E9@3\u27E9@4 # RightAngleBracket
84
85
\u23DE = \uE13B@7\uE140@7\uE13C@7\uE14A@7\uFFFD\u23DE@1\u23DE@2\u23DE@3\u23DE@4\u23DE@5 # ⏞ (Unicode)
86
\uFE37 = \uE13B@7\uE140@7\uE13C@7\uE14A@7\uFFFD\u23DE@1\u23DE@2\u23DE@3\u23DE@4\u23DE@5 # ⏞ (MathML 2.0)
87
\u23B4 = \uE146@7\uFFFD\uE147@7\uE14A@7\uFFFD\u23B4@1\u23B4@2\u23B4@3\u23B4@4\u23B4@5 # ⎴
88
\u23DC = \uE142@7\uFFFD\uE143@7\uE14A@7\uFFFD\u23DC@1\u23DC@2\u23DC@3\u23DC@4\u23DC@5 # ⏜ (Unicode)
89
\uFE35 = \uE142@7\uFFFD\uE143@7\uE14A@7\uFFFD\u23DC@1\u23DC@2\u23DC@3\u23DC@4\u23DC@5 # ⏜ (MathML 2.0)
90
\u23DF = \uE13D@7\uE141@7\uE13E@7\uE13F@7\uFFFD\u23DF@1\u23DF@2\u23DF@3\u23DF@4\u23DF@5 # ⏟ (Unicode)
91
\uFE38 = \uE13D@7\uE141@7\uE13E@7\uE13F@7\uFFFD\u23DF@1\u23DF@2\u23DF@3\u23DF@4\u23DF@5 # ⏟ (MathML 2.0)
92
\u23B5 = \uE148@7\uFFFD\uE149@7\uE14B@7\uFFFD\u23B5@1\u23B5@2\u23B5@3\u23B5@4\u23B5@5 # ⎵
93
\u23DD = \uE144@7\uFFFD\uE145@7\uE14B@7\uFFFD\u23DD@1\u23DD@2\u23DD@3\u23DD@4\u23DD@5 # ⏝ (Unicode)
94
\uFE36 = \uE144@7\uFFFD\uE145@7\uE14B@7\uFFFD\u23DD@1\u23DD@2\u23DD@3\u23DD@4\u23DD@5 # ⏝ (MathML 2.0)
95
96
\u005E = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0302@1\u0302@2\u0302@3\u0302@4\u0302@5 # circumflex accent, COMBINING CIRCUMFLEX ACCENT
97
\u02C6 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0302@1\u0302@2\u0302@3\u0302@4\u0302@5 # modifier letter circumflex accent, COMBINING CIRCUMFLEX ACCENT
98
\u007E = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0303@1\u0303@2\u0303@3\u0303@4\u0303@5 # ~ tilde, COMBINING TILDE
99
\u02DC = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0303@1\u0303@2\u0303@3\u0303@4\u0303@5 # small tilde, COMBINING TILDE
100
\u02C7 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u030C@1\u030C@2\u030C@3\u030C@4\u030C@5 # caron, COMBINING CARON
101
102
############
103
# 2) Constructions from mathfontSTIXNonUnicode.properties (bug 947654) #
104
105
#        [ T/L |  M  | B/R |  G  | size0 ... size{N-1} ]
106
# E0B4 stix-arrow hookleft
107
# E0B5 stix-arrow hookright
108
\u21A9 = \u2190\uFFFD\uE0B5@7\u23AF # hookleftarrow, larrhk
109
\u21AA = \uE0B4@7\uFFFD\u2192\u23AF # hookrightarrow, rarrhk
110
111
# 0E10E stix-stix-extender for vertical double arrow
112
# 0E10F stix-extender for horizontal double arrow
113
\u21D0 = \u21D0\uFFFD\uFFFD\uE10F@7\uFFFD\u27F8 # DoubleLeftArrow, Leftarrow, lArr
114
\u21D1 = \u21D1\uFFFD\uFFFD\uE10E@7 # DoubleUpArrow, Uparrow, uArr
115
\u21D2 = \uFFFD\uFFFD\u21D2\uE10F@7\uFFFD\u27F9 # DoubleRightArrow, Implies, Rightarrow, rArr
116
\u21D3 = \uFFFD\uFFFD\u21D3\uE10E@7 # DoubleDownArrow, Downarrow, dArr
117
\u21D4 = \u21D0\uFFFD\u21D2\uE10F@7\uFFFD\u27FA # DoubleLeftRightArrow, Leftrightarrow, hArr, iff
118
\u21D5 = \u21D1\uFFFD\u21D3\uE10E@7 # DoubleUpDownArrow, Updownarrow, vArr
119
120
# STIXGeneral U+22A2/U+22A3 RIGHT/LEFT TACK are different heights to U+23AF.
121
# Could use LONG RIGHT/LEFT TACK instead, but STIXNonUnicode provides
122
# E0B6 stix-maps-to-relation tail
123
\u21A4 = \u2190\uFFFD\uE0B6@7\u23AF\uFFFD\u27FB # LeftTeeArrow, mapstoleft
124
\u21A6 = \uE0B6@7\uFFFD\u2192\u23AF\uFFFD\u27FC # RightTeeArrow, map, mapsto
125
\u295A = \u21BC\uFFFD\uE0B6@7\u23AF # LeftTeeVector
126
\u295B = \uE0B6@7\uFFFD\u21C0\u23AF # RIGHTWARDS HARPOON WITH BARB UP FROM BAR, RightTeeVector
127
\u295E = \u21BD\uFFFD\uE0B6@7\u23AF # DownLeftTeeVector
128
\u295F = \uE0B6@7\uFFFD\u21C1\u23AF # RIGHTWARDS HARPOON WITH BARB DOWN FROM BAR, DownRightTeeVector
(-)a/layout/mathml/mathfontSTIXNonUnicode.properties (-75 lines)
Line     Link Here 
 Lines 1-75    Link Here 
1
# This Source Code Form is subject to the terms of the Mozilla Public
2
# License, v. 2.0. If a copy of the MPL was not distributed with this
3
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
4
5
#  LOCALIZATION NOTE: FILE
6
#  Do not translate anything in this file
7
8
# This file contains the list of some stretchy MathML chars that
9
# can be rendered with STIXNonUnicode.
10
11
external.1 = STIXGeneral
12
13
#        [ T/L |  M  | B/R |  G  | size0 ... size{N-1} ]
14
# E0B4 stix-arrow hookleft
15
# E0B5 stix-arrow hookright
16
\u21A9 = \u2190@1\uFFFD\uE0B5\u23AF@1 # hookleftarrow, larrhk
17
\u21AA = \uE0B4\uFFFD\u2192@1\u23AF@1 # hookrightarrow, rarrhk
18
19
# 0E10E stix-stix-extender for vertical double arrow
20
# 0E10F stix-extender for horizontal double arrow
21
\u21D0 = \u21D0@1\uFFFD\uFFFD\uE10F\uFFFD\u27F8@1 # DoubleLeftArrow, Leftarrow, lArr
22
\u21D1 = \u21D1@1\uFFFD\uFFFD\uE10E # DoubleUpArrow, Uparrow, uArr
23
\u21D2 = \uFFFD\uFFFD\u21D2@1\uE10F\uFFFD\u27F9@1 # DoubleRightArrow, Implies, Rightarrow, rArr
24
\u21D3 = \uFFFD\uFFFD\u21D3@1\uE10E # DoubleDownArrow, Downarrow, dArr
25
\u21D4 = \u21D0@1\uFFFD\u21D2@1\uE10F\uFFFD\u27FA@1 # DoubleLeftRightArrow, Leftrightarrow, hArr, iff
26
\u21D5 = \u21D1@1\uFFFD\u21D3@1\uE10E # DoubleUpDownArrow, Updownarrow, vArr
27
28
# STIXGeneral U+22A2/U+22A3 RIGHT/LEFT TACK are different heights to U+23AF.
29
# Could use LONG RIGHT/LEFT TACK instead, but STIXNonUnicode provides
30
# E0B6 stix-maps-to-relation tail
31
\u21A4 = \u2190@1\uFFFD\uE0B6\u23AF@1\uFFFD\u27FB@1 # LeftTeeArrow, mapstoleft
32
\u21A6 = \uE0B6\uFFFD\u2192@1\u23AF@1\uFFFD\u27FC@1 # RightTeeArrow, map, mapsto
33
\u295A = \u21BC@1\uFFFD\uE0B6\u23AF@1 # LeftTeeVector
34
\u295B = \uE0B6\uFFFD\u21C0@1\u23AF@1 # RIGHTWARDS HARPOON WITH BARB UP FROM BAR, RightTeeVector
35
\u295E = \u21BD@1\uFFFD\uE0B6\u23AF@1 # DownLeftTeeVector
36
\u295F = \uE0B6\uFFFD\u21C1@1\u23AF@1 # RIGHTWARDS HARPOON WITH BARB DOWN FROM BAR, DownRightTeeVector
37
38
# E13B stix-left end of extensible overbrace
39
# E13C stix-right end of extensible overbrace
40
# E13D stix-left end of extensible underbrace
41
# E13E stix-right end of extensible underbrace
42
# E13F stix-extensible horizontal for curly over and under braces
43
# E140 stix-center of extensible overbrace
44
# E141 stix-center of extensible underbrace
45
# E13F is the wrong height for overbrace:
46
# use E14A stix-extensible horizontal for over paren or square bracket
47
# U+FE37 and U+FE38 are from the MathML 2.0 spec.
48
\uFE37 = \uE13B\uE140\uE13C\uE14A # OverBrace
49
\uFE38 = \uE13D\uE141\uE13E\uE13F # UnderBrace
50
# Unicode added U+23DE and U+23DF:
51
# http://www.unicode.org/reports/tr25/#_TocDelimiters
52
\u23DE = \uE13B\uE140\uE13C\uE14A # OverBrace
53
\u23DF = \uE13D\uE141\uE13E\uE13F # UnderBrace
54
55
# E146 stix-left end of extensible over square bracket (CMEX10 x34 rotated 90deg)
56
# E147 stix-right end of extensible over square bracket (CMEX10 x32 rotated 90deg)
57
# E148 stix-left end of extensible under square bracket (CMEX10 x35 rotated 90deg)
58
# E149 stix-right end of extensible under square bracket (CMEX10 x33 rotated 90deg)
59
# E14A stix-extensible horizontal for over paren or square bracket (CMEX10 x42 rotated 90deg)
60
# E14B stix-extensible horizontal for under paren or square bracket
61
\u23B4 = \uE146\uFFFD\uE147\uE14A # ⎴
62
\u23B5 = \uE148\uFFFD\uE149\uE14B # ⎵
63
64
# E142 stix-left end of extensible overparen (CMEX10 x40 rotated 90deg)
65
# E143 stix-right end of extensible overparen (CMEX10 x30 rotated 90deg)
66
# E144 stix-left end of extensible underparen (CMEX10 x41 rotated 90deg)
67
# E145 stix-right end of extensible underparen (CMEX10 x31 rotated 90deg)
68
# E14A stix-extensible horizontal for over paren or square bracket (CMEX10 x42 rotated 90deg)
69
# E14B stix-extensible horizontal for under paren or square bracket
70
# U+FE35 and U+FE36 are from the MathML 2.0 spec.
71
\uFE35 = \uE142\uFFFD\uE143\uE14A # OverParenthesis
72
\uFE36 = \uE144\uFFFD\uE145\uE14B # UnderParenthesis
73
# Unicode added U+23DC and U+23DD:
74
\u23DC = \uE142\uFFFD\uE143\uE14A # OverParenthesis
75
\u23DD = \uE144\uFFFD\uE145\uE14B # UnderParenthesis
(-)a/layout/mathml/mathfontSTIXSizeOneSym.properties (-97 lines)
Line     Link Here 
 Lines 1-97    Link Here 
1
# This Source Code Form is subject to the terms of the Mozilla Public
2
# License, v. 2.0. If a copy of the MPL was not distributed with this
3
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
4
5
#  LOCALIZATION NOTE: FILE
6
#  Do not translate anything in this file
7
8
# This file contains the list of some stretchy MathML chars that
9
# can be rendered with STIXSize* set of fonts,
10
# with some help from STIXNonUnicode, STIXGeneral and STIXIntegralsD.
11
12
external.1 = STIXNonUnicode
13
external.2 = STIXSizeTwoSym
14
external.3 = STIXSizeThreeSym
15
external.4 = STIXSizeFourSym
16
external.5 = STIXSizeFiveSym
17
external.6 = STIXIntegralsD
18
19
#        [ T/L |  M  | B/R |  G  | size0 ... size{N-1} ]
20
\u0028 = \u239B\uFFFD\u239D\u239C\uFFFD((@2(@3(@4 # (
21
\u0029 = \u239E\uFFFD\u23A0\u239F\uFFFD))@2)@3)@4 # )
22
\u005B = \u23A1\uFFFD\u23A3\u23A2\u005B[[@2[@3[@4 # [
23
\u005D = \u23A4\uFFFD\u23A6\u23A5\u005D]]@2]@3]@4 # ]
24
\u007B = \u23A7\u23A8\u23A9\u23AA\u007B{{@2{@3{@4 # {
25
\u007D = \u23AB\u23AC\u23AD\u23AA\u007D}}@2}@3}@4 # }
26
27
# N-ARY operators
28
\u2140 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2140 # DOUBLE-STRUCK N-ARY SUMMATION
29
\u220F = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u220F # N-ARY PRODUCT
30
\u2210 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2210 # N-ARY COPRODUCT
31
\u2211 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2211 # N-ARY SUMMATION
32
\u22C0 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u22C0 # N-ARY LOGICAL AND
33
\u22C1 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u22C1 # N-ARY LOGICAL OR
34
\u22C2 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u22C2 # N-ARY INTERSECTION
35
\u22C3 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u22C3 # N-ARY UNION
36
\u2A00 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A00 # N-ARY CIRCLED DOT OPERATOR
37
\u2A01 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A01 # N-ARY CIRCLED PLUS OPERATOR
38
\u2A02 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A02 # N-ARY CIRCLED TIMES OPERATOR
39
\u2A03 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A03 # N-ARY UNION OPERATOR WITH DOT
40
\u2A04 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A04 # N-ARY UNION OPERATOR WITH PLUS
41
\u2A05 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A05 # N-ARY SQUARE INTERSECTION OPERATOR
42
\u2A06 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A06 # N-ARY SQUARE UNION OPERATOR
43
\u2A09 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A09 # N-ARY TIMES OPERATOR
44
\u2AFF = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2AFF # N-ARY WHITE VERTICAL BAR
45
46
# E000 stix-radical symbol vertical extender
47
# E001 stix-radical symbol top corner
48
\u221A = \uE001@1\uFFFD\u221A@4\uE000@1\uFFFD\u221A\u221A@2\u221A@3 # Sqrt, radic
49
50
# Integrals
51
\u222B = \u2320\uFFFD\u2321\u23AE\uFFFD\u222B@6
52
\u222C = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u222C@6
53
\u222D = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u222D@6
54
\u222E = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u222E@6
55
\u222F = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u222F@6
56
\u2230 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2230@6
57
\u2231 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2231@6
58
\u2232 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2232@6
59
\u2233 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2233@6
60
\u2A0B = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A0B@6
61
\u2A0C = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A0C@6
62
\u2A0D = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A0D@6
63
\u2A0E = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A0E@6
64
\u2A0F = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A0F@6
65
\u2A10 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A10@6
66
\u2A11 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A11@6
67
\u2A12 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A12@6
68
\u2A13 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A13@6
69
\u2A14 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A14@6
70
\u2A15 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A15@6
71
\u2A16 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A16@6
72
\u2A17 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A17@6
73
\u2A18 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A18@6
74
\u2A19 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A19@6
75
\u2A1A = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A1A@6
76
\u2A1B = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A1B@6
77
\u2A1C = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A1C@6
78
79
\u27E8 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u27E8\u27E8@2\u27E8@3\u27E8@4 # LeftAngleBracket
80
\u27E9 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u27E9\u27E9@2\u27E9@3\u27E9@4 # RightAngleBracket
81
82
\u23DE = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u23DE\u23DE@2\u23DE@3\u23DE@4\u23DE@5 # ⏞ (Unicode)
83
\uFE37 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u23DE\u23DE@2\u23DE@3\u23DE@4\u23DE@5 # ⏞ (MathML 2.0)
84
\u23B4 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u23B4\u23B4@2\u23B4@3\u23B4@4\u23B4@5 # ⎴
85
\u23DC = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u23DC\u23DC@2\u23DC@3\u23DC@4\u23DC@5 # ⏜ (Unicode)
86
\uFE35 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u23DC\u23DC@2\u23DC@3\u23DC@4\u23DC@5 # ⏜ (MathML 2.0)
87
\u23DF = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u23DF\u23DF@2\u23DF@3\u23DF@4\u23DF@5 # ⏟ (Unicode)
88
\uFE38 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u23DF\u23DF@2\u23DF@3\u23DF@4\u23DF@5 # ⏟ (MathML 2.0)
89
\u23B5 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u23B5\u23B5@2\u23B5@3\u23B5@4\u23B5@5 # ⎵
90
\u23DD = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u23DD\u23DD@2\u23DD@3\u23DD@4\u23DD@5 # ⏝ (Unicode)
91
\uFE36 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u23DD\u23DD@2\u23DD@3\u23DD@4\u23DD@5 # ⏝ (MathML 2.0)
92
93
\u005E = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0302\u0302@2\u0302@3\u0302@4\u0302@5 # circumflex accent, COMBINING CIRCUMFLEX ACCENT
94
\u02C6 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0302\u0302@2\u0302@3\u0302@4\u0302@5 # modifier letter circumflex accent, COMBINING CIRCUMFLEX ACCENT
95
\u007E = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0303\u0303@2\u0303@3\u0303@4\u0303@5 # ~ tilde, COMBINING TILDE
96
\u02DC = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0303\u0303@2\u0303@3\u0303@4\u0303@5 # small tilde, COMBINING TILDE
97
\u02C7 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u030C\u030C@2\u030C@3\u030C@4\u030C@5 # caron, COMBINING CARON
(-)a/layout/mathml/mathfontStandardSymbolsL.properties (-43 lines)
Line     Link Here 
 Lines 1-43    Link Here 
1
# This Source Code Form is subject to the terms of the Mozilla Public
2
# License, v. 2.0. If a copy of the MPL was not distributed with this
3
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
4
5
#  LOCALIZATION NOTE: FILE
6
#  Do not translate anything in this file
7
8
# This file contains the list of all stretchy MathML chars that
9
# can be rendered with Standard Symbols L.
10
11
#        [ T/L |  M  | B/R |  G  | size0 ... size{N-1} ]
12
\u0028 = \uF8EB\uFFFD\uF8ED\uF8EC\u0028 # (
13
\u0029 = \uF8F6\uFFFD\uF8F8\uF8F7\u0029 # )
14
\u005B = \uF8EE\uFFFD\uF8F0\uF8EF\u005B # [
15
\u005D = \uF8F9\uFFFD\uF8FB\uF8FA\u005D # ]
16
\u007B = \uF8F1\uF8F2\uF8F3\uF8F4\u007B # {
17
\u007C = \uFFFD\uFFFD\uFFFD\u007C\u007C # |
18
\u007D = \uF8FC\uF8FD\uF8FE\uF8F4\u007D # }
19
20
\u00AF = \uFFFD\uFFFD\uFFFD\uF8E5\u00AF # ad-hoc: overbar is stretched with the radical extender 
21
\u0332 = \uFFFD\uFFFD\uFFFD\u005F\u0332 # ad-hock: UnderBar (0x0332) is stretched with underscore
22
23
\u2190 = \u2190\uFFFD\uFFFD\uF8E7\u2190 # LeftArrow, larr, leftarrow
24
\u2191 = \u2191\uFFFD\uFFFD\uF8E6\u2191 # UpArrow, uarr, uparrow
25
\u2192 = \uFFFD\uFFFD\u2192\uF8E7\u2192 # RightArrow, rarr, rightarrow
26
\u2193 = \uFFFD\uFFFD\u2193\uF8E6\u2193 # DownArrow, darr, downarrow
27
\u2194 = \u2190\uFFFD\u2192\uF8E7\u2194 # LeftRightArrow, harr, leftrightarrow
28
\u2195 = \u2191\uFFFD\u2193\uF8E6\u2195 # UpDownArrow, updownarrow, varr
29
30
\u222B = \u2320\uFFFD\u2321\uF8F5\u222B # Integral, int
31
# If there are problems with the font-supplied glue use a rule:
32
# \u222B = \u2320\uFFFD\u2321\uFFFD\u222B # Integral, int
33
34
# Using parts of [ and ]
35
\u2308 = \uF8EE\uFFFD\uFFFD\uF8EF\u2308 # LeftCeiling, lceil
36
\u2309 = \uF8F9\uFFFD\uFFFD\uF8FA\u2309 # RightCeiling, rceil
37
\u230A = \uFFFD\uFFFD\uF8F0\uF8EF\u230A # LeftFloor, lfloor
38
\u230B = \uFFFD\uFFFD\uF8FB\uF8FA\u230B # RightFloor, rfloor
39
40
# same as normal arrows
41
\u27F5 = \u2190\uFFFD\uFFFD\uF8E7\u27F5 # LongLeftArrow
42
\u27F6 = \uFFFD\uFFFD\u2192\uF8E7\u27F6 # LongRightArrow
43
\u27F7 = \u2190\uFFFD\u2192\uF8E7\u27F7 # LongLeftRightArrow
(-)a/layout/mathml/mathfontSymbol.properties (-46 lines)
Line     Link Here 
 Lines 1-46    Link Here 
1
# This Source Code Form is subject to the terms of the Mozilla Public
2
# License, v. 2.0. If a copy of the MPL was not distributed with this
3
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
4
5
#  LOCALIZATION NOTE: FILE
6
#  Do not translate anything in this file
7
8
# This file contains the list of all stretchy MathML chars that can be
9
# rendered with Monotype's Symbol font.
10
#
11
# This file should normally only be installed on MS Windows systems as other
12
# platforms have different fonts with the same family name but different
13
# character codes.
14
mathfont = Symbol
15
16
#        [ T/L |  M  | B/R |  G  | size0 ... size{N-1} ]
17
\u0028 = \uF0E6\uFFFD\uF0E8\uF0E7\uF028 # (
18
\u0029 = \uF0F6\uFFFD\uF0F8\uF0F7\uF029 # )
19
\u005B = \uF0E9\uFFFD\uF0EB\uF0EA\uF05B # [
20
\u005D = \uF0F9\uFFFD\uF0FB\uF0FA\uF05D # ]
21
\u007B = \uF0EC\uF0ED\uF0EE\uF0EF\uF07B # {
22
\u007C = \uFFFD\uFFFD\uFFFD\uF07C\uF07C # |
23
\u007D = \uF0FC\uF0FD\uF0FE\uF0EF\uF07D # }
24
25
\u00AF = \uFFFD\uFFFD\uFFFD\uF060\uF060 # ad-hoc: overbar is stretched with the radical extender 
26
\u0332 = \uFFFD\uFFFD\uFFFD\uF05F\uF05F # ad-hoc: UnderBar (0x0332) is stretched with underscore
27
28
\u2190 = \uF0AC\uFFFD\uFFFD\uF0BE\uF0AC # LeftArrow, larr, leftarrow
29
\u2191 = \uF0AD\uFFFD\uFFFD\uF0BD\uF0AD # UpArrow, uarr, uparrow
30
\u2192 = \uFFFD\uFFFD\uF0AE\uF0BE\uF0AE # RightArrow, rarr, rightarrow
31
\u2193 = \uFFFD\uFFFD\uF0AF\uF0BD\uF0AF # DownArrow, darr, downarrow
32
\u2194 = \uF0AC\uFFFD\uF0AE\uF0BE\uF0B4 # LeftRightArrow, harr, leftrightarrow
33
\u2195 = \uF0AD\uFFFD\uF0AF\uF0BD       # UpDownArrow, updownarrow, varr
34
35
\u222B = \uF0F3\uFFFD\uF0F5\uF0F4\uF0F2 # Integral, int
36
37
# Using parts of [ and ]
38
\u2308 = \uF0E9\uFFFD\uFFFD\uF0EA\uF0E9 # LeftCeiling, lceil
39
\u2309 = \uF0F9\uFFFD\uFFFD\uF0FA\uF0F9 # RightCeiling, rceil
40
\u230A = \uFFFD\uFFFD\uF0EB\uF0EA\uF0EB # LeftFloor, lfloor
41
\u230B = \uFFFD\uFFFD\uF0FB\uF0FA\uF0FB # RightFloor, rfloor
42
43
# same as normal arrows
44
\u27F5 = \uF0AC\uFFFD\uFFFD\uF0BE # LongLeftArrow
45
\u27F6 = \uFFFD\uFFFD\uF0AE\uF0BE # LongRightArrow
46
\u27F7 = \uF0AC\uFFFD\uF0AE\uF0BE # LongLeftRightArrow
(-)a/layout/mathml/moz.build (-8 / +1 lines)
Line     Link Here 
 Lines 51-70   if CONFIG['ENABLE_TESTS']: Link Here 
51
        'tests',
51
        'tests',
52
    ]
52
    ]
53
53
54
JAR_MANIFESTS += ['jar.mn']
54
JAR_MANIFESTS += ['jar.mn']
55
55
56
RESOURCE_FILES.fonts += [
56
RESOURCE_FILES.fonts += [
57
    'mathfont.properties',
57
    'mathfont.properties',
58
    'mathfontMathJax_Main.properties',
58
    'mathfontMathJax_Main.properties',
59
    'mathfontStandardSymbolsL.properties',
59
    'mathfontSTIXGeneral.properties',
60
    'mathfontSTIXNonUnicode.properties',
61
    'mathfontSTIXSizeOneSym.properties',
62
    'mathfontUnicode.properties',
60
    'mathfontUnicode.properties',
63
]
61
]
64
62
65
RESOURCE_FILES.fonts['mathfont.properties'].preprocess = True
63
RESOURCE_FILES.fonts['mathfont.properties'].preprocess = True
66
67
if CONFIG['TARGET_MD_ARCH'] == 'win32':
68
    RESOURCE_FILES.fonts += [
69
        'mathfontSymbol.properties',
70
    ]
(-)a/layout/mathml/nsMathMLChar.cpp (-7 / +1 lines)
Line     Link Here 
 Lines 695-717   InitGlobals(nsPresContext* aPresContext) Link Here 
695
    gGlyphTableList = nullptr;
695
    gGlyphTableList = nullptr;
696
    return rv;
696
    return rv;
697
  }
697
  }
698
  // The gGlyphTableList has been successfully registered as a shutdown
698
  // The gGlyphTableList has been successfully registered as a shutdown
699
  // observer and will be deleted at shutdown. We now add some private
699
  // observer and will be deleted at shutdown. We now add some private
700
  // per font-family tables for stretchy operators, in order of preference.
700
  // per font-family tables for stretchy operators, in order of preference.
701
  // Do not include the Unicode table in this list.
701
  // Do not include the Unicode table in this list.
702
  if (!gGlyphTableList->AddGlyphTable(NS_LITERAL_STRING("MathJax_Main")) ||
702
  if (!gGlyphTableList->AddGlyphTable(NS_LITERAL_STRING("MathJax_Main")) ||
703
      !gGlyphTableList->AddGlyphTable(NS_LITERAL_STRING("STIXNonUnicode")) ||
703
      !gGlyphTableList->AddGlyphTable(NS_LITERAL_STRING("STIX General"))) {
704
      !gGlyphTableList->AddGlyphTable(NS_LITERAL_STRING("STIXSizeOneSym")) ||
705
      !gGlyphTableList->AddGlyphTable(NS_LITERAL_STRING("Standard Symbols L"))
706
#ifdef XP_WIN
707
      || !gGlyphTableList->AddGlyphTable(NS_LITERAL_STRING("Symbol"))
708
#endif
709
      ) {
710
    rv = NS_ERROR_OUT_OF_MEMORY;
704
    rv = NS_ERROR_OUT_OF_MEMORY;
711
  }
705
  }
712
706
713
  return rv;
707
  return rv;
714
}
708
}
715
709
716
// -----------------------------------------------------------------------------
710
// -----------------------------------------------------------------------------
717
// And now the implementation of nsMathMLChar
711
// And now the implementation of nsMathMLChar

Return to bug 947654