Skip to content

Commit 6dcd66f

Browse files
committed
Uses correct insert method.
1 parent 8db04ea commit 6dcd66f

3 files changed

Lines changed: 134 additions & 138 deletions

File tree

ts/input/tex/Configuration.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -318,7 +318,7 @@ export class ParserConfiguration {
318318
}
319319

320320
/**
321-
* Retrieves and adds configuration for a pacakge with priority.
321+
* Retrieves and adds configuration for a package with priority.
322322
* @param {(string | [string, number]} pkg Package with priority.
323323
*/
324324
public addPackage(pkg: (string | [string, number])) {

ts/input/tex/textcomp/TextcompConfiguration.ts

Lines changed: 1 addition & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -25,21 +25,8 @@
2525
import {Configuration} from '../Configuration.js';
2626
import './TextcompMappings.js';
2727

28-
// import {TeX} from '../../tex.js';
29-
// import {TextParser} from '../textmacros/TextParser.js';
30-
// import {TextMacrosConfiguration} from '../textmacros/TextMacrosConfiguration.js';
31-
3228

3329
export const TextcompConfiguration = Configuration.create(
34-
'textcomp', {
35-
// config(config: ParserConfiguration, jax: TeX<any, any, any>) {
36-
// try {
37-
// TextMacrosConfiguration.config(config, jax);
38-
// } catch (e) {
39-
// console.log(e);
40-
// }
41-
// },
42-
handler: {macro: ['textcomp']},
43-
}
30+
'textcomp', {handler: {macro: ['textcomp-macros', 'textcomp-oldstyle']}}
4431
);
4532

ts/input/tex/textcomp/TextcompMappings.ts

Lines changed: 132 additions & 123 deletions
Original file line numberDiff line numberDiff line change
@@ -24,152 +24,161 @@
2424

2525

2626
import ParseMethods from '../ParseMethods.js';
27-
import {CharacterMap} from '../SymbolMap.js';
27+
import {CharacterMap, CommandMap} from '../SymbolMap.js';
2828
import {TexConstant} from '../TexConstants.js';
29+
import {TextMacrosMethods} from '../textmacros/TextMacrosMethods.js';
2930

3031

3132
/**
3233
* Identifiers from the Textcomp package.
3334
*/
34-
new CharacterMap('textcomp', ParseMethods.mathchar0mi, {
35+
new CommandMap('textcomp-macros', {
3536

3637
// Table 3: Predefined LATEX 2ε Text-Mode Commands
37-
'textasciicircum': ['\u005E', {mathvariant: TexConstant.Variant.NORMAL}],
38-
'textasciitilde': ['\u007E', {mathvariant: TexConstant.Variant.NORMAL}],
39-
// 'textasteriskcentered'
40-
'textbackslash': ['\u005C', {mathvariant: TexConstant.Variant.NORMAL}],
41-
'textbar': ['\u007C', {mathvariant: TexConstant.Variant.NORMAL}],
42-
'textbraceleft': ['\u007B', {mathvariant: TexConstant.Variant.NORMAL}],
43-
'textbraceright': ['\u007D', {mathvariant: TexConstant.Variant.NORMAL}],
44-
'textbullet': ['\u2022', {mathvariant: TexConstant.Variant.NORMAL}],
45-
'textdagger': ['\u2020', {mathvariant: TexConstant.Variant.NORMAL}],
46-
'textdaggerdbl': ['\u2021', {mathvariant: TexConstant.Variant.NORMAL}],
47-
'textellipsis': ['\u2026', {mathvariant: TexConstant.Variant.NORMAL}],
48-
'textemdash': ['\u2014', {mathvariant: TexConstant.Variant.NORMAL}],
49-
'textendash': ['\u2013', {mathvariant: TexConstant.Variant.NORMAL}],
50-
'textexclamdown': ['\u00A1', {mathvariant: TexConstant.Variant.NORMAL}],
51-
'textgreater': ['\u003E', {mathvariant: TexConstant.Variant.NORMAL}],
52-
'textless': ['\u003C', {mathvariant: TexConstant.Variant.NORMAL}],
53-
'textordfeminine': ['\u00AA', {mathvariant: TexConstant.Variant.NORMAL}],
54-
'textordmasculine': ['\u00BA', {mathvariant: TexConstant.Variant.NORMAL}],
55-
'textparagraph': ['\u00B6', {mathvariant: TexConstant.Variant.NORMAL}],
56-
'textperiodcentered': ['\u00B7', {mathvariant: TexConstant.Variant.NORMAL}],
57-
'textquestiondown': ['\u00BF', {mathvariant: TexConstant.Variant.NORMAL}],
58-
'textquotedblleft': ['\u201C', {mathvariant: TexConstant.Variant.NORMAL}],
59-
'textquotedblright': ['\u201D', {mathvariant: TexConstant.Variant.NORMAL}],
60-
'textquoteleft': ['\u2018', {mathvariant: TexConstant.Variant.NORMAL}],
61-
'textquoteright': ['\u2019', {mathvariant: TexConstant.Variant.NORMAL}],
62-
'textsection': ['\u00A7', {mathvariant: TexConstant.Variant.NORMAL}],
63-
'textunderscore': ['\u005F', {mathvariant: TexConstant.Variant.NORMAL}],
64-
'textvisiblespace': ['\u2423', {mathvariant: TexConstant.Variant.NORMAL}],
38+
'textasciicircum': ['Insert', '\u005E'],
39+
'textasciitilde': ['Insert', '\u007E'],
40+
'textasteriskcentered': ['Insert', '\u002A'],
41+
'textbackslash': ['Insert', '\u005C'],
42+
'textbar': ['Insert', '\u007C'],
43+
'textbraceleft': ['Insert', '\u007B'],
44+
'textbraceright': ['Insert', '\u007D'],
45+
'textbullet': ['Insert', '\u2022'],
46+
'textdagger': ['Insert', '\u2020'],
47+
'textdaggerdbl': ['Insert', '\u2021'],
48+
'textellipsis': ['Insert', '\u2026'],
49+
'textemdash': ['Insert', '\u2014'],
50+
'textendash': ['Insert', '\u2013'],
51+
'textexclamdown': ['Insert', '\u00A1'],
52+
'textgreater': ['Insert', '\u003E'],
53+
'textless': ['Insert', '\u003C'],
54+
'textordfeminine': ['Insert', '\u00AA'],
55+
'textordmasculine': ['Insert', '\u00BA'],
56+
'textparagraph': ['Insert', '\u00B6'],
57+
'textperiodcentered': ['Insert', '\u00B7'],
58+
'textquestiondown': ['Insert', '\u00BF'],
59+
'textquotedblleft': ['Insert', '\u201C'],
60+
'textquotedblright': ['Insert', '\u201D'],
61+
'textquoteleft': ['Insert', '\u2018'],
62+
'textquoteright': ['Insert', '\u2019'],
63+
'textsection': ['Insert', '\u00A7'],
64+
'textunderscore': ['Insert', '\u005F'],
65+
'textvisiblespace': ['Insert', '\u2423'],
6566

6667
// Table 12: textcomp Diacritics
67-
'textacutedbl': ['\u02DD', {mathvariant: TexConstant.Variant.NORMAL}],
68-
'textasciiacute': ['\u00B4', {mathvariant: TexConstant.Variant.NORMAL}],
69-
'textasciibreve': ['\u02D8', {mathvariant: TexConstant.Variant.NORMAL}],
70-
'textasciicaron': ['\u02C7', {mathvariant: TexConstant.Variant.NORMAL}],
71-
'textasciidieresis': ['\u00A8', {mathvariant: TexConstant.Variant.NORMAL}],
72-
'textasciimacron': ['\u00AF', {mathvariant: TexConstant.Variant.NORMAL}],
73-
'textgravedbl': ['\u02F5', {mathvariant: TexConstant.Variant.NORMAL}],
74-
'texttildelow': ['\u02F7', {mathvariant: TexConstant.Variant.NORMAL}],
68+
'textacutedbl': ['Insert', '\u02DD'],
69+
'textasciiacute': ['Insert', '\u00B4'],
70+
'textasciibreve': ['Insert', '\u02D8'],
71+
'textasciicaron': ['Insert', '\u02C7'],
72+
'textasciidieresis': ['Insert', '\u00A8'],
73+
'textasciimacron': ['Insert', '\u00AF'],
74+
'textgravedbl': ['Insert', '\u02F5'],
75+
'texttildelow': ['Insert', '\u02F7'],
7576

7677
// Table 13: textcomp Currency Symbols
77-
'textbaht': ['\u0E3F', {mathvariant: TexConstant.Variant.NORMAL}],
78-
'textcent': ['\u00A2', {mathvariant: TexConstant.Variant.NORMAL}],
79-
// This is not the correct glyph
80-
'textcentoldstyle': ['$', {mathvariant: TexConstant.Variant.OLDSTYLE}],
81-
'textcolonmonetary': ['\u20A1', {mathvariant: TexConstant.Variant.NORMAL}],
82-
'textcurrency': ['\u00A4', {mathvariant: TexConstant.Variant.NORMAL}],
83-
'textdollar': ['\u0024', {mathvariant: TexConstant.Variant.NORMAL}],
84-
// This is not the correct glyph
85-
'textdollaroldstyle': ['$', {mathvariant: TexConstant.Variant.OLDSTYLE}],
86-
'textdong': ['\u20AB', {mathvariant: TexConstant.Variant.NORMAL}],
87-
'texteuro': ['\u20AC', {mathvariant: TexConstant.Variant.NORMAL}],
88-
'textflorin': ['\u0192', {mathvariant: TexConstant.Variant.NORMAL}],
89-
'textguarani': ['\u20B2', {mathvariant: TexConstant.Variant.NORMAL}],
90-
'textlira': ['\u20A4', {mathvariant: TexConstant.Variant.NORMAL}],
91-
'textnaira': ['\u20A6', {mathvariant: TexConstant.Variant.NORMAL}],
92-
'textpeso': ['\u20B1', {mathvariant: TexConstant.Variant.NORMAL}],
93-
'textsterling': ['\u00A3', {mathvariant: TexConstant.Variant.NORMAL}],
94-
'textwon': ['\u20A9', {mathvariant: TexConstant.Variant.NORMAL}],
95-
'textyen': ['\u00A5', {mathvariant: TexConstant.Variant.NORMAL}],
78+
'textbaht': ['Insert', '\u0E3F'],
79+
'textcent': ['Insert', '\u00A2'],
80+
'textcolonmonetary': ['Insert', '\u20A1'],
81+
'textcurrency': ['Insert', '\u00A4'],
82+
'textdollar': ['Insert', '\u0024'],
83+
'textdong': ['Insert', '\u20AB'],
84+
'texteuro': ['Insert', '\u20AC'],
85+
'textflorin': ['Insert', '\u0192'],
86+
'textguarani': ['Insert', '\u20B2'],
87+
'textlira': ['Insert', '\u20A4'],
88+
'textnaira': ['Insert', '\u20A6'],
89+
'textpeso': ['Insert', '\u20B1'],
90+
'textsterling': ['Insert', '\u00A3'],
91+
'textwon': ['Insert', '\u20A9'],
92+
'textyen': ['Insert', '\u00A5'],
9693

9794
// Table 15: textcomp Legal Symbols
98-
'textcircledP': ['\u2117', {mathvariant: TexConstant.Variant.NORMAL}],
99-
'textcompwordmark': ['\u200C', {mathvariant: TexConstant.Variant.NORMAL}],
100-
'textcopyleft': ['\u1F12F', {mathvariant: TexConstant.Variant.NORMAL}],
101-
'textcopyright': ['\u00A9', {mathvariant: TexConstant.Variant.NORMAL}],
102-
'textregistered': ['\u00AE', {mathvariant: TexConstant.Variant.NORMAL}],
103-
'textservicemark': ['\u2120', {mathvariant: TexConstant.Variant.NORMAL}],
104-
'texttrademark': ['\u2122', {mathvariant: TexConstant.Variant.NORMAL}],
105-
106-
// Table 16: textcomp Old-Style Numerals
107-
'textzerooldstyle': ['0', {mathvariant: TexConstant.Variant.OLDSTYLE}],
108-
'textoneoldstyle': ['1', {mathvariant: TexConstant.Variant.OLDSTYLE}],
109-
'texttwooldstyle': ['2', {mathvariant: TexConstant.Variant.OLDSTYLE}],
110-
'textthreeoldstyle': ['3', {mathvariant: TexConstant.Variant.OLDSTYLE}],
111-
'textfouroldstyle': ['4', {mathvariant: TexConstant.Variant.OLDSTYLE}],
112-
'textfiveoldstyle': ['5', {mathvariant: TexConstant.Variant.OLDSTYLE}],
113-
'textsixoldstyle': ['6', {mathvariant: TexConstant.Variant.OLDSTYLE}],
114-
'textsevenoldstyle': ['7', {mathvariant: TexConstant.Variant.OLDSTYLE}],
115-
'texteightoldstyle': ['8', {mathvariant: TexConstant.Variant.OLDSTYLE}],
116-
'textnineoldstyle': ['9', {mathvariant: TexConstant.Variant.OLDSTYLE}],
95+
'textcircledP': ['Insert', '\u2117'],
96+
'textcompwordmark': ['Insert', '\u200C'],
97+
'textcopyleft': ['Insert', '\u1F12F'],
98+
'textcopyright': ['Insert', '\u00A9'],
99+
'textregistered': ['Insert', '\u00AE'],
100+
'textservicemark': ['Insert', '\u2120'],
101+
'texttrademark': ['Insert', '\u2122'],
117102

118103
// Table 20: Miscellaneous textcomp Symbol
119-
'textbardbl': ['\u2016', {mathvariant: TexConstant.Variant.NORMAL}],
120-
'textbigcircle': ['\u25EF', {mathvariant: TexConstant.Variant.NORMAL}],
121-
'textblank': ['\u2422', {mathvariant: TexConstant.Variant.NORMAL}],
122-
'textbrokenbar': ['\u00A6', {mathvariant: TexConstant.Variant.NORMAL}],
123-
'textdiscount': ['\u2052', {mathvariant: TexConstant.Variant.NORMAL}],
124-
'textestimated': ['\u212E', {mathvariant: TexConstant.Variant.NORMAL}],
125-
'textinterrobang': ['\u203D', {mathvariant: TexConstant.Variant.NORMAL}],
126-
'textinterrobangdown': ['\u2E18', {mathvariant: TexConstant.Variant.NORMAL}],
127-
'textmusicalnote': ['\u266A', {mathvariant: TexConstant.Variant.NORMAL}],
128-
'textnumero': ['\u2116', {mathvariant: TexConstant.Variant.NORMAL}],
129-
'textopenbullet': ['\u25E6', {mathvariant: TexConstant.Variant.NORMAL}],
130-
'textpertenthousand': ['\u2031', {mathvariant: TexConstant.Variant.NORMAL}],
131-
'textperthousand': ['\u2030', {mathvariant: TexConstant.Variant.NORMAL}],
132-
'textrecipe': ['\u211E', {mathvariant: TexConstant.Variant.NORMAL}],
133-
'textreferencemark': ['\u203B', {mathvariant: TexConstant.Variant.NORMAL}],
104+
'textbardbl': ['Insert', '\u2016'],
105+
'textbigcircle': ['Insert', '\u25EF'],
106+
'textblank': ['Insert', '\u2422'],
107+
'textbrokenbar': ['Insert', '\u00A6'],
108+
'textdiscount': ['Insert', '\u2052'],
109+
'textestimated': ['Insert', '\u212E'],
110+
'textinterrobang': ['Insert', '\u203D'],
111+
'textinterrobangdown': ['Insert', '\u2E18'],
112+
'textmusicalnote': ['Insert', '\u266A'],
113+
'textnumero': ['Insert', '\u2116'],
114+
'textopenbullet': ['Insert', '\u25E6'],
115+
'textpertenthousand': ['Insert', '\u2031'],
116+
'textperthousand': ['Insert', '\u2030'],
117+
'textrecipe': ['Insert', '\u211E'],
118+
'textreferencemark': ['Insert', '\u203B'],
134119
// 'textthreequartersemdash'
135120
// 'texttwelveudash'
136121

137122
// Table 51: textcomp Text-Mode Delimiters
138-
'textlangle': ['\u2329', {mathvariant: TexConstant.Variant.NORMAL}],
139-
'textrangle': ['\u232A', {mathvariant: TexConstant.Variant.NORMAL}],
140-
'textlbrackdbl': ['\u27E6', {mathvariant: TexConstant.Variant.NORMAL}],
141-
'textrbrackdbl': ['\u27E7', {mathvariant: TexConstant.Variant.NORMAL}],
142-
'textlquill': ['\u2045', {mathvariant: TexConstant.Variant.NORMAL}],
143-
'textrquill': ['\u2046', {mathvariant: TexConstant.Variant.NORMAL}],
123+
'textlangle': ['Insert', '\u2329'],
124+
'textrangle': ['Insert', '\u232A'],
125+
'textlbrackdbl': ['Insert', '\u27E6'],
126+
'textrbrackdbl': ['Insert', '\u27E7'],
127+
'textlquill': ['Insert', '\u2045'],
128+
'textrquill': ['Insert', '\u2046'],
144129

145130
// Table 62: textcomp Text-Mode Math and Science Symbols
146-
'textcelsius': ['\u2103', {mathvariant: TexConstant.Variant.NORMAL}],
147-
'textdegree': ['\u00B0', {mathvariant: TexConstant.Variant.NORMAL}],
148-
'textdiv': ['\u00F7', {mathvariant: TexConstant.Variant.NORMAL}],
149-
'textdownarrow': ['\u2193', {mathvariant: TexConstant.Variant.NORMAL}],
150-
'textfractionsolidus': ['\u2044', {mathvariant: TexConstant.Variant.NORMAL}],
151-
'textleftarrow': ['\u2190', {mathvariant: TexConstant.Variant.NORMAL}],
152-
'textlnot': ['\u00AC', {mathvariant: TexConstant.Variant.NORMAL}],
153-
'textmho': ['\u2127', {mathvariant: TexConstant.Variant.NORMAL}],
154-
'textminus': ['\u2212', {mathvariant: TexConstant.Variant.NORMAL}],
155-
'textmu': ['\u00B5', {mathvariant: TexConstant.Variant.NORMAL}],
156-
'textohm': ['\u2126', {mathvariant: TexConstant.Variant.NORMAL}],
157-
'textonehalf': ['\u00BD', {mathvariant: TexConstant.Variant.NORMAL}],
158-
'textonequarter': ['\u00BC', {mathvariant: TexConstant.Variant.NORMAL}],
159-
'textonesuperior': ['\u00B9', {mathvariant: TexConstant.Variant.NORMAL}],
160-
'textpm': ['\u00B1', {mathvariant: TexConstant.Variant.NORMAL}],
161-
'textrightarrow': ['\u2192', {mathvariant: TexConstant.Variant.NORMAL}],
162-
'textsurd': ['\u221A', {mathvariant: TexConstant.Variant.NORMAL}],
163-
'textthreequarters': ['\u00BE', {mathvariant: TexConstant.Variant.NORMAL}],
164-
'textthreesuperior': ['\u00B3', {mathvariant: TexConstant.Variant.NORMAL}],
165-
'texttimes': ['\u00D7', {mathvariant: TexConstant.Variant.NORMAL}],
166-
'texttwosuperior': ['\u00B2', {mathvariant: TexConstant.Variant.NORMAL}],
167-
'textuparrow': ['\u2191', {mathvariant: TexConstant.Variant.NORMAL}],
131+
'textcelsius': ['Insert', '\u2103'],
132+
'textdegree': ['Insert', '\u00B0'],
133+
'textdiv': ['Insert', '\u00F7'],
134+
'textdownarrow': ['Insert', '\u2193'],
135+
'textfractionsolidus': ['Insert', '\u2044'],
136+
'textleftarrow': ['Insert', '\u2190'],
137+
'textlnot': ['Insert', '\u00AC'],
138+
'textmho': ['Insert', '\u2127'],
139+
'textminus': ['Insert', '\u2212'],
140+
'textmu': ['Insert', '\u00B5'],
141+
'textohm': ['Insert', '\u2126'],
142+
'textonehalf': ['Insert', '\u00BD'],
143+
'textonequarter': ['Insert', '\u00BC'],
144+
'textonesuperior': ['Insert', '\u00B9'],
145+
'textpm': ['Insert', '\u00B1'],
146+
'textrightarrow': ['Insert', '\u2192'],
147+
'textsurd': ['Insert', '\u221A'],
148+
'textthreequarters': ['Insert', '\u00BE'],
149+
'textthreesuperior': ['Insert', '\u00B3'],
150+
'texttimes': ['Insert', '\u00D7'],
151+
'texttwosuperior': ['Insert', '\u00B2'],
152+
'textuparrow': ['Insert', '\u2191'],
168153

169154
// Table 110: textcomp Genealogical Symbols
170-
'textborn': ['\u002A', {mathvariant: TexConstant.Variant.NORMAL}],
171-
'textdied': ['\u2020', {mathvariant: TexConstant.Variant.NORMAL}],
172-
'textdivorced': ['\u26AE', {mathvariant: TexConstant.Variant.NORMAL}],
155+
'textborn': ['Insert', '\u002A'],
156+
'textdied': ['Insert', '\u2020'],
157+
'textdivorced': ['Insert', '\u26AE'],
173158
// 'textleaf'
174-
'textmarried': ['\u26AD', {mathvariant: TexConstant.Variant.NORMAL}]
159+
'textmarried': ['Insert', '\u26AD']
160+
}, TextMacrosMethods);
161+
162+
163+
/**
164+
* Identifiers from the Textcomp package.
165+
*/
166+
new CharacterMap('textcomp-oldstyle', ParseMethods.mathchar0mi, {
167+
168+
// This is not the correct glyph
169+
'textcentoldstyle': ['\u00A2', {mathvariant: TexConstant.Variant.OLDSTYLE}],
170+
// This is not the correct glyph
171+
'textdollaroldstyle': ['\u0024', {mathvariant: TexConstant.Variant.OLDSTYLE}],
172+
173+
// Table 16: textcomp Old-Style Numerals
174+
'textzerooldstyle': ['0', {mathvariant: TexConstant.Variant.OLDSTYLE}],
175+
'textoneoldstyle': ['1', {mathvariant: TexConstant.Variant.OLDSTYLE}],
176+
'texttwooldstyle': ['2', {mathvariant: TexConstant.Variant.OLDSTYLE}],
177+
'textthreeoldstyle': ['3', {mathvariant: TexConstant.Variant.OLDSTYLE}],
178+
'textfouroldstyle': ['4', {mathvariant: TexConstant.Variant.OLDSTYLE}],
179+
'textfiveoldstyle': ['5', {mathvariant: TexConstant.Variant.OLDSTYLE}],
180+
'textsixoldstyle': ['6', {mathvariant: TexConstant.Variant.OLDSTYLE}],
181+
'textsevenoldstyle': ['7', {mathvariant: TexConstant.Variant.OLDSTYLE}],
182+
'texteightoldstyle': ['8', {mathvariant: TexConstant.Variant.OLDSTYLE}],
183+
'textnineoldstyle': ['9', {mathvariant: TexConstant.Variant.OLDSTYLE}]
175184
});

0 commit comments

Comments
 (0)