Rev 16596 | Details | Compare with Previous | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
13310 | obado | 1 | /* wims_mathml 1.4.10 |
2 | * wims_mathml.l last modified 6/16/2012 |
||
5520 | bpr | 3 | */ |
4 | |||
5 | %{ |
||
6 | %} |
||
7 | %option noyywrap |
||
11589 | schaersvoo | 8 | %x MATH FINDARG ATTRIBUTELIST BBOLD FRAKTUR CALLIGRAPHIC ROMAN PLAINTEXT INT1 INT2 INT3 MATHENV SVGENV SVGEND HTMLENV HTMLEND OPTARG ARRAYOPTIONS COLOPTS TEXTOPTARG TEXTOPTARG1 RAISEBOX1 RAISEBOX2 |
5520 | bpr | 9 | %{ |
10 | #include <string.h> |
||
11 | |||
12 | #define YYSTYPE char * |
||
13 | |||
14 | #include "y.tab.h" |
||
15 | #include "wims_mathml.h" |
||
16 | |||
17 | #define YY_NEVER_INTERACTIVE 1 |
||
18 | #define YY_INPUT(buffer,result,max_size) result = s_wims_mathml_read (buffer, max_size) |
||
19 | |||
20 | static int s_wims_mathml_read (char * buffer, int max_size); |
||
21 | |||
22 | #define yylval wims_mathml_yylval |
||
23 | #define wims_mathml_optarg_depth 100 |
||
24 | |||
25 | extern char * yylval; |
||
14226 | schaersvoo | 26 | int wims_mathml_shortcut = 0; |
5520 | bpr | 27 | int wims_mathml_lineno = 1; |
28 | int wims_mathml_inoptarg[wims_mathml_optarg_depth]; |
||
29 | int wims_mathml_optarg_ind = 0; |
||
30 | int wims_mathml_env_start = 0; |
||
31 | |||
32 | int wims_mathml_rowposn = 0; |
||
33 | int wims_mathml_displaymode = 0; |
||
34 | |||
8456 | bpr | 35 | %} |
5520 | bpr | 36 | %% |
37 | %{ if (wims_mathml_rowposn==1) wims_mathml_rowposn=0; |
||
38 | if (wims_mathml_rowposn==2) wims_mathml_rowposn=1; |
||
39 | %} |
||
40 | |||
41 | <INITIAL>"$"{1,2} BEGIN(MATH); wims_mathml_inoptarg[0] = 0; wims_mathml_rowposn=2; if (yyleng==2) { wims_mathml_displaymode=1; return STARTDMATH;}; wims_mathml_displaymode=0; return STARTMATH; |
||
42 | <INITIAL>"\\[" BEGIN(MATH); wims_mathml_inoptarg[0] = 0; wims_mathml_rowposn=2; wims_mathml_displaymode=1; return STARTDMATH; |
||
43 | <INITIAL>EOF return 0; |
||
44 | <INITIAL>"\n" {wims_mathml_lineno++; yylval=wims_mathml_copy_string(yytext); return CHAR;} |
||
45 | <INITIAL>. {yylval=wims_mathml_copy_string(yytext); return CHAR;} |
||
46 | |||
47 | |||
48 | <MATH>{ |
||
49 | |||
50 | |||
51 | |||
52 | "$"{1,2} | |
||
53 | "\\]" {BEGIN(INITIAL); return ENDMATH;} |
||
54 | |||
55 | |||
56 | "^" return SUP; |
||
8456 | bpr | 57 | "_" return SUB; |
5520 | bpr | 58 | "{"[\t\r\n ]*"}" return EMPTYMROW; |
59 | "{" {wims_mathml_rowposn = 2; if(wims_mathml_inoptarg[wims_mathml_optarg_ind] != 0) wims_mathml_inoptarg[wims_mathml_optarg_ind]++; return MROWOPEN;} |
||
60 | "}" {if(wims_mathml_inoptarg[wims_mathml_optarg_ind] != 0) wims_mathml_inoptarg[wims_mathml_optarg_ind]--; return MROWCLOSE;} |
||
61 | |||
62 | "\\left" {wims_mathml_rowposn=2; return LEFT;} |
||
63 | "\\right" {return RIGHT;} |
||
64 | |||
65 | "\\big" | |
||
66 | "\\bigr" {return BIG;} |
||
67 | "\\Big" | |
||
68 | "\\Bigr" {return BBIG;} |
||
69 | "\\bigg" | |
||
70 | "\\biggr" {return BIGG;} |
||
71 | "\\Bigg" | |
||
72 | "\\Biggr" {return BBIGG;} |
||
73 | |||
74 | "\\bigl" {return BIGL;} |
||
75 | "\\Bigl" {return BBIGL;} |
||
76 | "\\biggl" {return BIGGL;} |
||
77 | "\\Biggl" {return BBIGGL;} |
||
78 | |||
79 | "\\mathrlap" {return RLAP;} |
||
80 | "\\mathllap" {return LLAP;} |
||
81 | "\\mathclap" {return CLAP;} |
||
82 | "\\rlap" | |
||
83 | "\\llap" | |
||
84 | "\\ulap" | |
||
85 | "\\dlap" {/* Ignore */ ;} |
||
86 | |||
87 | |||
88 | "&" | |
||
89 | "&" {wims_mathml_rowposn=2; return COLSEP;} |
||
90 | |||
91 | "\\&" {yylval=wims_mathml_copy_string("&"); return MI;} |
||
92 | |||
93 | "\\$" {yylval=wims_mathml_copy_string("$"); return MI;} |
||
94 | "\\%" {yylval=wims_mathml_copy_string("%"); return MI;} |
||
95 | |||
12073 | bpr | 96 | |
5520 | bpr | 97 | [a-zA-Z]+ {yylval=wims_mathml_copy_string(yytext); return MI;} |
98 | |||
99 | [0-9]{1,3}(,[0-9]{3,3})*(\.[0-9]+)? | |
||
100 | [0-9]*[\.][0-9]+ | |
||
101 | [0-9]+ {yylval=wims_mathml_copy_string(yytext); return MN;} |
||
102 | "\\infty" | |
||
103 | "\\infinity" {yylval=wims_mathml_copy_string("∞"); return MN;} |
||
104 | |||
105 | "(" | |
||
106 | "[" {yylval=wims_mathml_copy_string(yytext); return LEFTDELIM;} |
||
107 | |||
108 | ")" {yylval=wims_mathml_copy_string(yytext); return RIGHTDELIM;} |
||
109 | "]" {if(wims_mathml_inoptarg[wims_mathml_optarg_ind]==1 && wims_mathml_optarg_ind > 0) {wims_mathml_inoptarg[wims_mathml_optarg_ind]=0; wims_mathml_optarg_ind--; return OPTARGCLOSE;} else {yylval=wims_mathml_copy_string(yytext); return RIGHTDELIM;}} |
||
110 | |||
111 | "\\lgroup" | |
||
112 | "\\lpar" {yylval=wims_mathml_copy_string("("); return OTHERDELIM;} |
||
113 | |||
114 | "\\rgroup" | |
||
115 | "\\rpar" {yylval=wims_mathml_copy_string(")"); return OTHERDELIM;} |
||
116 | |||
117 | "\\lbracket" {yylval=wims_mathml_copy_string("["); return OTHERDELIM;} |
||
118 | "\\rbracket" {yylval=wims_mathml_copy_string("]"); return OTHERDELIM;} |
||
119 | |||
120 | "\\lbrace" | |
||
121 | "\\{" {yylval=wims_mathml_copy_string("{"); return OTHERDELIM;} |
||
122 | |||
123 | "\\rbrace" | |
||
124 | "\\}" {yylval=wims_mathml_copy_string("}"); return OTHERDELIM;} |
||
125 | |||
11589 | schaersvoo | 126 | |
5520 | bpr | 127 | "||" | |
128 | "\\||" | |
||
129 | "\\Arrowvert" | |
||
130 | "\\vert\\vert" | |
||
131 | "\\Vert" {yylval=wims_mathml_copy_string("∥"); return OTHERDELIM;} |
||
132 | |||
133 | |||
134 | "|" | |
||
135 | "\\|" | |
||
136 | "\\vert" | |
||
137 | "\\arrowvert" {yylval=wims_mathml_copy_string("∣"); return OTHERDELIM;} |
||
138 | |||
139 | "\\lvert" | |
||
140 | "\\bracevert" {yylval=wims_mathml_copy_string("∣"); return LEFTDELIM;} |
||
141 | "\\rvert" {yylval=wims_mathml_copy_string("∣"); return RIGHTDELIM;} |
||
142 | |||
143 | |||
144 | "\\setminus" {yylval=wims_mathml_copy_string("∖"); return MO;} |
||
145 | "\\backslash" {yylval=wims_mathml_copy_string("\"); return MO;} |
||
146 | "\\smallsetminus" {yylval=wims_mathml_copy_string("﹨"); return MOF;} |
||
147 | |||
148 | "\\sslash" {yylval=wims_mathml_copy_string("⫽"); return MO;} |
||
149 | |||
150 | "\\lfloor" | |
||
151 | "\\lceil" | |
||
152 | "\\lang" | |
||
153 | "\\langle" {yylval=wims_mathml_copy2(yytext, ";"); if (yylval != wims_mathml_empty_string) yylval[0]='&'; return LEFTDELIM;} |
||
154 | |||
155 | "\\rfloor" | |
||
156 | "\\rceil" | |
||
157 | "\\rang" | |
||
158 | "\\rangle" {yylval=wims_mathml_copy2(yytext, ";"); if (yylval != wims_mathml_empty_string) yylval[0]='&'; return RIGHTDELIM;} |
||
159 | |||
160 | "/" {yylval=wims_mathml_copy_string(yytext); return OTHERDELIM;} |
||
161 | |||
11708 | schaersvoo | 162 | |
5520 | bpr | 163 | "\\uparrow" | |
164 | "\\downarrow" | |
||
165 | "\\updownarrow" {yylval=wims_mathml_copy2(yytext, ";"); if (yylval != wims_mathml_empty_string) yylval[0]='&'; return OTHERDELIM;} |
||
166 | |||
167 | "." {yylval=wims_mathml_copy_string(yytext); return PERIODDELIM;} |
||
168 | |||
169 | "-" {if (wims_mathml_rowposn==1) return UNARYMINUS; else {yylval=wims_mathml_copy_string("−"); return MO;}} |
||
170 | |||
171 | "+" {if (wims_mathml_rowposn==1) return UNARYPLUS; else {yylval=wims_mathml_copy_string("+"); return MO;}} |
||
172 | |||
173 | "\\#" {yylval=wims_mathml_copy_string("#"); return MOL;} |
||
174 | |||
175 | |||
176 | "," | |
||
177 | ":" | |
||
178 | "!" | |
||
179 | "=" | |
||
180 | "~" | |
||
181 | ";" | |
||
182 | "?" | |
||
183 | "#" | |
||
184 | "`" | |
||
185 | "*" {yylval=wims_mathml_copy_string(yytext); return MOL;} |
||
186 | |||
187 | "\\prime" {yylval=wims_mathml_copy_string("′"); return MOLL;} |
||
188 | "'" {yylval=wims_mathml_copy_string("′"); return MOL;} |
||
189 | "''" {yylval=wims_mathml_copy_string("″"); return MOL;} |
||
190 | "'''" {yylval=wims_mathml_copy_string("‴"); return MOL;} |
||
191 | "''''" {yylval=wims_mathml_copy_string("⁗"); return MOL;} |
||
192 | |||
193 | "\\alpha" | |
||
194 | "\\beta" | |
||
195 | "\\gamma" | |
||
196 | "\\delta" | |
||
197 | "\\zeta" | |
||
198 | "\\eta" | |
||
199 | "\\theta" | |
||
200 | "\\iota" | |
||
201 | "\\kappa" | |
||
202 | "\\lambda" | |
||
203 | "\\mu" | |
||
204 | "\\nu" | |
||
205 | "\\xi" | |
||
206 | "\\pi" | |
||
207 | "\\rho" | |
||
208 | "\\sigma" | |
||
209 | "\\tau" | |
||
210 | "\\upsilon" | |
||
211 | "\\chi" | |
||
212 | "\\psi" | |
||
213 | "\\omega" | |
||
214 | "\\backepsilon" | |
||
215 | "\\varkappa" | |
||
216 | "\\varpi" | |
||
217 | "\\varrho" | |
||
218 | "\\varsigma" | |
||
219 | "\\vartheta" {yylval=wims_mathml_copy2(yytext, ";"); if (yylval != wims_mathml_empty_string) yylval[0]='&'; return MI;} |
||
220 | |||
221 | "\\varepsilon" {yylval=wims_mathml_copy_string("ε"); return MI;} |
||
222 | "\\phi" {yylval=wims_mathml_copy_string("ϕ"); return MI;} |
||
223 | "\\varphi" {yylval=wims_mathml_copy_string("φ"); return MI;} |
||
224 | |||
225 | "\\arccos" | |
||
226 | "\\arcsin" | |
||
227 | "\\arctan" | |
||
228 | "\\arg" | |
||
229 | "\\Arg" | |
||
230 | "\\cos" | |
||
231 | "\\cosh" | |
||
232 | "\\cot" | |
||
233 | "\\coth" | |
||
234 | "\\csc" | |
||
235 | "\\dim" | |
||
236 | "\\exp" | |
||
237 | "\\hom" | |
||
238 | "\\ker" | |
||
239 | "\\lg" | |
||
240 | "\\ln" | |
||
241 | "\\log" | |
||
242 | "\\sec" | |
||
243 | "\\sin" | |
||
244 | "\\sinh" | |
||
245 | "\\tan" | |
||
246 | "\\tanh" {yylval=wims_mathml_copy_string(yytext+1); return MI;} |
||
247 | |||
248 | "\\det" | |
||
249 | "\\gcd" | |
||
250 | "\\inf" | |
||
251 | "\\lim" | |
||
252 | "\\liminf" | |
||
253 | "\\limsup" | |
||
254 | "\\max" | |
||
255 | "\\min" | |
||
256 | "\\Pr" | |
||
257 | "\\sup" {yylval=wims_mathml_copy_string(yytext+1); return MIB;} |
||
258 | |||
259 | "\\omicron" {yylval=wims_mathml_copy_string("ℴ"); return MI;} |
||
260 | |||
261 | "\\epsilon" {yylval=wims_mathml_copy_string("ε"); return MI;} |
||
262 | |||
263 | "\\cdot" {yylval=wims_mathml_copy_string("⋅"); return MO;} |
||
264 | |||
265 | "\\Alpha" | |
||
266 | "\\Beta" | |
||
267 | "\\Delta" | |
||
268 | "\\Gamma" | |
||
269 | "\\digamma" | |
||
270 | "\\Lambda" | |
||
271 | "\\Pi" | |
||
272 | "\\Phi" | |
||
273 | "\\Psi" | |
||
274 | "\\Sigma" | |
||
275 | "\\Theta" | |
||
276 | "\\Xi" | |
||
277 | "\\Zeta" | |
||
278 | "\\Eta" | |
||
279 | "\\Iota" | |
||
280 | "\\Kappa" | |
||
281 | "\\Mu" | |
||
282 | "\\Nu" | |
||
283 | "\\Rho" | |
||
8456 | bpr | 284 | "\\Tau" | |
285 | "\\mho" | |
||
5520 | bpr | 286 | "\\Omega" {yylval=wims_mathml_copy2(yytext, ";"); if (yylval != wims_mathml_empty_string) yylval[0]='&'; return MI;} |
287 | |||
288 | "\\Upsilon" | |
||
289 | "\\Upsi" {yylval=wims_mathml_copy_string("ϒ"); return MI;} |
||
290 | |||
8457 | bpr | 291 | "\\iff" {yylval=wims_mathml_copy_string("⇔"); return MOL;} |
13153 | schaersvoo | 292 | "\\longleftarrow" {yylval = wims_mathml_copy_string("⟵"); return MOL;} |
293 | "\\Longleftarrow" {yylval = wims_mathml_copy_string("⟸"); return MOL;} |
||
8457 | bpr | 294 | "\\Longleftrightarrow" {yylval=wims_mathml_copy_string("⟺"); return MOL;} |
5520 | bpr | 295 | "\\Leftrightarrow" {yylval=wims_mathml_copy_string("⇔"); return MOL;} |
8457 | bpr | 296 | "\\longleftrightarrow" {yylval=wims_mathml_copy_string("⟷"); return MOL;} |
5520 | bpr | 297 | |
298 | "\\impliedby" | |
||
299 | "\\Leftarrow" {yylval=wims_mathml_copy_string("⇐"); return MOL;} |
||
300 | |||
301 | "\\implies" | |
||
302 | "\\Rightarrow" {yylval=wims_mathml_copy_string("⇒"); return MOL;} |
||
303 | |||
304 | "\\hookleftarrow" {yylval=wims_mathml_copy_string("↩"); return MOL;} |
||
305 | |||
306 | "\\embedsin" | |
||
307 | "\\hookrightarrow" {yylval=wims_mathml_copy_string("↪"); return MOL;} |
||
308 | |||
309 | "\\longrightarrow" {yylval=wims_mathml_copy_string("⟶"); return MOL;} |
||
310 | |||
8456 | bpr | 311 | "\\Longrightarrow" {yylval=wims_mathml_copy_string("⟹"); return MOL;} |
5520 | bpr | 312 | |
313 | "\\leftarrow" {yylval=wims_mathml_copy_string("←"); return MOL;} |
||
314 | |||
315 | "\\to" | |
||
316 | "\\rightarrow" {yylval=wims_mathml_copy_string("→"); return MOL;} |
||
317 | |||
318 | "\\leftrightarrow" {yylval=wims_mathml_copy_string("↔"); return MOL;} |
||
319 | |||
11589 | schaersvoo | 320 | "\\longmapsto" {yylval = wims_mathml_copy_string("⟼"); return MOL;} |
321 | "\\Longmapsfrom" {yylval = wims_mathml_copy_string("⟽"); return MOL;} |
||
322 | "\\Longmapsto" {yylval = wims_mathml_copy_string("⟾"); return MOL;} |
||
5520 | bpr | 323 | "\\mapsto" | |
324 | "\\map" {yylval=wims_mathml_copy_string("↦"); return MOL;} |
||
325 | |||
326 | "\\nearrow" | |
||
327 | "\\nearr" {yylval=wims_mathml_copy_string("↗"); return MOL;} |
||
328 | |||
329 | "\\nwarrow" | |
||
330 | "\\nwarr" {yylval=wims_mathml_copy_string("↖"); return MOL;} |
||
331 | |||
332 | "\\searrow" | |
||
333 | "\\searr" {yylval=wims_mathml_copy_string("↘"); return MOL;} |
||
334 | |||
335 | "\\swarrow" | |
||
336 | "\\swarr" {yylval=wims_mathml_copy_string("↙"); return MOL;} |
||
337 | |||
338 | "\\neArrow" | |
||
339 | "\\neArr" {yylval=wims_mathml_copy_string("⇗"); return MOL;} |
||
340 | |||
341 | "\\nwArrow" | |
||
342 | "\\nwArr" {yylval=wims_mathml_copy_string("⇖"); return MOL;} |
||
343 | |||
344 | "\\seArrow" | |
||
345 | "\\seArr" {yylval=wims_mathml_copy_string("⇘"); return MOL;} |
||
346 | |||
347 | "\\swArrow" | |
||
348 | "\\swArr" {yylval=wims_mathml_copy_string("⇙"); return MOL;} |
||
349 | |||
350 | "\\darr" {yylval=wims_mathml_copy_string("↓"); return MOL;} |
||
351 | |||
352 | "\\Downarrow" {yylval=wims_mathml_copy_string("⇓"); return MOL;} |
||
353 | |||
354 | "\\uparr" {yylval=wims_mathml_copy_string("↑"); return MOL;} |
||
355 | |||
356 | "\\Uparrow" {yylval=wims_mathml_copy_string("⇑"); return MOL;} |
||
357 | |||
358 | "\\downuparrow" | |
||
359 | "\\duparr" | |
||
360 | "\\updarr" {yylval=wims_mathml_copy_string("↕"); return MOL;} |
||
361 | |||
362 | "\\Updownarrow" {yylval=wims_mathml_copy_string("⇕"); return MOL;} |
||
363 | |||
364 | "\\leftsquigarrow" {yylval=wims_mathml_copy_string("⇜"); return MOL;} |
||
365 | "\\rightsquigarrow" {yylval=wims_mathml_copy_string("⇝"); return MOL;} |
||
366 | "\\dashleftarrow" {yylval=wims_mathml_copy_string("⤎"); return MOL;} |
||
367 | "\\dashrightarrow" {yylval=wims_mathml_copy_string("⤏"); return MOL;} |
||
368 | "\\curvearrowbotright" {yylval=wims_mathml_copy_string("⤻"); return MOL;} |
||
369 | "\\righttoleftarrow" {yylval=wims_mathml_copy_string("⟲"); return MOL;} |
||
370 | "\\lefttorightarrow" {yylval=wims_mathml_copy_string("⟳"); return MOL;} |
||
371 | "\\leftrightsquigarrow" | |
||
372 | "\\upuparrows" | |
||
373 | "\\rightleftarrows" | |
||
374 | "\\rightrightarrows" | |
||
375 | "\\curvearrowleft" | |
||
376 | "\\curvearrowright" | |
||
377 | "\\downdownarrows" | |
||
378 | "\\leftarrowtail" | |
||
379 | "\\rightarrowtail" | |
||
380 | "\\leftleftarrows" | |
||
381 | "\\leftrightarrows" | |
||
382 | "\\Lleftarrow" | |
||
383 | "\\Rrightarrow" | |
||
384 | "\\looparrowleft" | |
||
385 | "\\looparrowright" | |
||
386 | "\\Lsh" | |
||
387 | "\\Rsh" | |
||
388 | "\\circlearrowleft" | |
||
389 | "\\circlearrowright" | |
||
390 | "\\twoheadleftarrow" | |
||
391 | "\\twoheadrightarrow" | |
||
392 | "\\nLeftarrow" | |
||
393 | "\\nleftarrow" | |
||
394 | "\\nLeftrightarrow" | |
||
395 | "\\nleftrightarrow" | |
||
396 | "\\nRightarrow" | |
||
397 | "\\nrightarrow" | |
||
398 | "\\downharpoonleft" | |
||
399 | "\\downharpoonright" | |
||
400 | "\\leftrightharpoons" | |
||
401 | "\\rightleftharpoons" | |
||
402 | "\\upharpoonleft" | |
||
403 | "\\upharpoonright" {yylval=wims_mathml_copy2(yytext, ";"); if (yylval != wims_mathml_empty_string) yylval[0]='&'; return MOL;} |
||
404 | |||
405 | "\\xrightarrow" | |
||
406 | "\\xleftarrow" | |
||
407 | "\\xleftrightarrow" | |
||
408 | "\\xLeftarrow" | |
||
409 | "\\xRightarrow" | |
||
410 | "\\xLeftrightarrow" | |
||
411 | "\\xleftrightharpoons" | |
||
412 | "\\xrightleftharpoons" | |
||
413 | "\\xhookleftarrow" | |
||
414 | "\\xhookrightarrow" | |
||
415 | "\\xmapsto" {BEGIN(OPTARG); char * s1 = wims_mathml_copy_string(yytext+2); yylval = wims_mathml_copy3("&", s1, ";"); wims_mathml_free_string(s1); return XARROW;} |
||
416 | |||
417 | "\\dots" | |
||
418 | "\\ldots" {yylval=wims_mathml_copy_string("…"); return MI;} |
||
419 | "\\cdots" {yylval=wims_mathml_copy_string("⋯"); return MI;} |
||
420 | "\\ddots" {yylval=wims_mathml_copy_string("⋱"); return MI;} |
||
421 | "\\udots" {yylval=wims_mathml_copy_string("⋰"); return MI;} |
||
422 | "\\vdots" {yylval=wims_mathml_copy_string("⋮"); return MI;} |
||
423 | "\\colon" {yylval=wims_mathml_copy_string(":"); return MOR;} |
||
424 | |||
425 | "\\cup" | |
||
426 | "\&union;" | |
||
427 | "\\union" {yylval=wims_mathml_copy_string("∪"); return MOL;} |
||
428 | |||
429 | "\\bigcup" | |
||
430 | "\\Union" | |
||
431 | "\⋃" {yylval=wims_mathml_copy_string("⋃"); return MOB;} |
||
432 | |||
433 | "\\cap" | |
||
434 | "\\intersection" {yylval=wims_mathml_copy_string("∩"); return MOL;} |
||
435 | |||
436 | "\\bigcap" | |
||
437 | "\\Intersection" {yylval=wims_mathml_copy_string("⋂"); return MOB;} |
||
438 | |||
439 | "\\in" {yylval=wims_mathml_copy_string("∈"); return MOL;} |
||
440 | |||
441 | /* For some reason, Firefox does not put in the right spacing around some of these operators |
||
442 | * unless we ask for it, explicitly. |
||
443 | */ |
||
444 | "\\coloneqq" {yylval=wims_mathml_copy_string("≔"); return MOL;} |
||
445 | "\\Coloneqq" {yylval=wims_mathml_copy_string("⩴"); return MOS;} |
||
446 | "\\coloneq" {yylval=wims_mathml_copy_string("∶−"); return MOS;} |
||
447 | "\\Coloneq" {yylval=wims_mathml_copy_string("∷−"); return MOS;} |
||
448 | "\\eqqcolon" {yylval=wims_mathml_copy_string("≕"); return MOS;} |
||
449 | "\\Eqqcolon" {yylval=wims_mathml_copy_string("=∷"); return MOS;} |
||
450 | "\\eqcolon" {yylval=wims_mathml_copy_string("∹"); return MOS;} |
||
451 | "\\Eqcolon" {yylval=wims_mathml_copy_string("−∷"); return MOS;} |
||
452 | "\\colonapprox" {yylval=wims_mathml_copy_string("∶≈"); return MOS;} |
||
453 | "\\Colonapprox" {yylval=wims_mathml_copy_string("∷≈"); return MOS;} |
||
454 | "\\colonsim" {yylval=wims_mathml_copy_string("∶∼"); return MOS;} |
||
455 | "\\Colonsim" {yylval=wims_mathml_copy_string("∷∼"); return MOS;} |
||
456 | "\\dblcolon" {yylval=wims_mathml_copy_string("∷"); return MOL;} |
||
457 | |||
458 | "\\ast" | |
||
459 | "\\Cap" | |
||
460 | "\\Cup" | |
||
461 | "\\circledast" | |
||
462 | "\\circledcirc" | |
||
463 | "\\curlyvee" | |
||
464 | "\\curlywedge" | |
||
465 | "\\divideontimes" | |
||
466 | "\\dotplus" | |
||
467 | "\\leftthreetimes" | |
||
468 | "\\rightthreetimes" | |
||
469 | "\\veebar" | |
||
470 | "\\gt" | |
||
471 | "\\lt" | |
||
472 | "\\approxeq" | |
||
473 | "\\backsim" | |
||
474 | "\\backsimeq" | |
||
475 | "\\barwedge" | |
||
476 | "\\doublebarwedge" | |
||
477 | "\\subset" | |
||
478 | "\\subseteq" | |
||
479 | "\\subseteqq" | |
||
480 | "\\subsetneq" | |
||
481 | "\\subsetneqq" | |
||
482 | "\\varsubsetneq" | |
||
483 | "\\varsubsetneqq" | |
||
484 | "\\prec" | |
||
485 | "\\parallel" | |
||
486 | "\\nparallel" | |
||
487 | "\\shortparallel" | |
||
488 | "\\nshortparallel" | |
||
489 | "\\perp" | |
||
490 | "\\eqslantgtr" | |
||
491 | "\\eqslantless" | |
||
492 | "\\gg" | |
||
493 | "\\ggg" | |
||
494 | "\\geq" | |
||
495 | "\\geqq" | |
||
496 | "\\geqslant" | |
||
497 | "\\gneq" | |
||
498 | "\\gneqq" | |
||
499 | "\\gnapprox" | |
||
500 | "\\gnsim" | |
||
501 | "\\gtrapprox" | |
||
502 | "\\ge" | |
||
503 | "\\le" | |
||
504 | "\\leq" | |
||
505 | "\\leqq" | |
||
506 | "\\leqslant" | |
||
507 | "\\lessapprox" | |
||
508 | "\\lessdot" | |
||
509 | "\\lesseqgtr" | |
||
510 | "\\lesseqqgtr" | |
||
511 | "\\lessgtr" | |
||
512 | "\\lneq" | |
||
513 | "\\lneqq" | |
||
514 | "\\lnsim" | |
||
515 | "\\lvertneqq" | |
||
516 | "\\gtrsim" | |
||
517 | "\\gtrdot" | |
||
518 | "\\gtreqless" | |
||
519 | "\\gtreqqless" | |
||
520 | "\\gtrless" | |
||
521 | "\\gvertneqq" | |
||
522 | "\\lesssim" | |
||
523 | "\\lnapprox" | |
||
524 | "\\nsubset" | |
||
525 | "\\nsubseteq" | |
||
526 | "\\nsubseteqq" | |
||
527 | "\\notin" | |
||
528 | "\\ni" | |
||
529 | "\\notni" | |
||
530 | "\\nmid" | |
||
531 | "\\nshortmid" | |
||
532 | "\\preceq" | |
||
533 | "\\npreceq" | |
||
534 | "\\ll" | |
||
535 | "\\ngeq" | |
||
536 | "\\ngeqq" | |
||
537 | "\\ngeqslant" | |
||
538 | "\\nleq" | |
||
539 | "\\nleqq" | |
||
540 | "\\nleqslant" | |
||
541 | "\\nless" | |
||
542 | "\\supset" | |
||
543 | "\\supseteq" | |
||
544 | "\\supseteqq" | |
||
545 | "\\supsetneq" | |
||
546 | "\\supsetneqq" | |
||
547 | "\\varsupsetneq" | |
||
548 | "\\varsupsetneqq" | |
||
549 | "\\approx" | |
||
550 | "\\asymp" | |
||
551 | "\\bowtie" | |
||
552 | "\\dashv" | |
||
553 | "\\Vdash" | |
||
554 | "\\vDash" | |
||
555 | "\\VDash" | |
||
556 | "\\vdash" | |
||
557 | "\\Vvdash" | |
||
558 | "\\models" | |
||
559 | "\\sim" | |
||
560 | "\\simeq" | |
||
561 | "\\nsim" | |
||
562 | "\\smile" | |
||
563 | "\\triangle" | |
||
564 | "\\triangledown" | |
||
565 | "\\triangleleft" | |
||
566 | "\\cong" | |
||
567 | "\\succ" | |
||
568 | "\\nsucc" | |
||
569 | "\\ngtr" | |
||
570 | "\\nsupset" | |
||
571 | "\\nsupseteq" | |
||
572 | "\\propto" | |
||
573 | "\\equiv" | |
||
574 | "\\nequiv" | |
||
575 | "\\frown" | |
||
576 | "\\triangleright" | |
||
577 | "\\ncong" | |
||
578 | "\\succeq" | |
||
579 | "\\succapprox" | |
||
580 | "\\succnapprox" | |
||
581 | "\\succcurlyeq" | |
||
582 | "\\succsim" | |
||
583 | "\\succnsim" | |
||
584 | "\\nsucceq" | |
||
585 | "\\nvDash" | |
||
586 | "\\nvdash" | |
||
587 | "\\nVDash" | |
||
588 | "\\amalg" | |
||
589 | "\\pm" | |
||
590 | "\\mp" | |
||
591 | "\\bigcirc" | |
||
592 | "\\wr" | |
||
593 | "\\odot" | |
||
594 | "\\uplus" | |
||
595 | "\\clubsuit" | |
||
596 | "\\spadesuit" | |
||
597 | "\\Diamond" | |
||
598 | "\\diamond" | |
||
599 | "\\sqcup" | |
||
600 | "\\sqcap" | |
||
601 | "\\sqsubset" | |
||
602 | "\\sqsubseteq" | |
||
603 | "\\sqsupset" | |
||
604 | "\\sqsupseteq" | |
||
605 | "\\Subset" | |
||
606 | "\\Supset" | |
||
607 | "\\ltimes" | |
||
608 | "\\div" | |
||
609 | "\\rtimes" | |
||
610 | "\\bot" | |
||
611 | "\\therefore" | |
||
612 | "\\thickapprox" | |
||
613 | "\\thicksim" | |
||
614 | "\\varpropto" | |
||
615 | "\\varnothing" | |
||
616 | "\\flat" | |
||
617 | "\\vee" | |
||
618 | "\\because" | |
||
619 | "\\between" | |
||
620 | "\\Bumpeq" | |
||
621 | "\\bumpeq" | |
||
622 | "\\circeq" | |
||
623 | "\\curlyeqprec" | |
||
624 | "\\curlyeqsucc" | |
||
625 | "\\doteq" | |
||
626 | "\\doteqdot" | |
||
627 | "\\eqcirc" | |
||
628 | "\\fallingdotseq" | |
||
629 | "\\multimap" | |
||
630 | "\\pitchfork" | |
||
631 | "\\precapprox" | |
||
632 | "\\precnapprox" | |
||
633 | "\\preccurlyeq" | |
||
634 | "\\precsim" | |
||
635 | "\\precnsim" | |
||
636 | "\\risingdotseq" | |
||
637 | "\\sharp" | |
||
638 | "\\bullet" | |
||
639 | "\\nexists" | |
||
640 | "\\dagger" | |
||
641 | "\\ddagger" | |
||
642 | "\\not" | |
||
643 | "\\top" | |
||
644 | "\\natural" | |
||
645 | "\\angle" | |
||
646 | "\\measuredangle" | |
||
647 | "\\backprime" | |
||
648 | "\\bigstar" | |
||
649 | "\\blacklozenge" | |
||
650 | "\\lozenge" | |
||
651 | "\\blacksquare" | |
||
652 | "\\blacktriangle" | |
||
653 | "\\blacktriangleleft" | |
||
654 | "\\blacktriangleright" | |
||
655 | "\\blacktriangledown" | |
||
656 | "\\ntriangleleft" | |
||
657 | "\\ntriangleright" | |
||
658 | "\\ntrianglelefteq" | |
||
659 | "\\ntrianglerighteq" | |
||
660 | "\\trianglelefteq" | |
||
661 | "\\trianglerighteq" | |
||
662 | "\\triangleq" | |
||
663 | "\\vartriangleleft" | |
||
664 | "\\vartriangleright" | |
||
665 | "\\forall" | |
||
666 | "\\bigtriangleup" | |
||
667 | "\\bigtriangledown" | |
||
668 | "\\nprec" {yylval=wims_mathml_copy2(yytext, ";"); if (yylval != wims_mathml_empty_string) yylval[0]='&'; return MOL;} |
||
16597 | bpr | 669 | "\\hrectangle" {yylval = wims_mathml_copy_string("▭"); return MI;} |
670 | "\\vrectangle" {yylval = wims_mathml_copy_string("▯"); return MI;} |
||
5520 | bpr | 671 | "\\aleph" | |
672 | "\\beth" | |
||
673 | "\\eth" | |
||
674 | "\\ell" | |
||
675 | "\\hbar" | |
||
676 | "\\Im" | |
||
677 | "\\imath" | |
||
678 | "\\jmath" | |
||
679 | "\\wp" | |
||
680 | "\\Re" {yylval=wims_mathml_copy2(yytext, ";"); if (yylval != wims_mathml_empty_string) yylval[0]='&'; return MI;} |
||
681 | |||
682 | "\\Perp" | |
||
683 | "\\Vbar" {yylval=wims_mathml_copy_string("⫫"); return MOL;} |
||
684 | "\\boxdot" {yylval=wims_mathml_copy_string("⊡"); return MOL;} |
||
685 | "\\Box" | |
||
686 | "\\square" {yylval=wims_mathml_copy_string("□"); return MOL;} |
||
687 | "\\emptyset" | |
||
688 | "\\empty" {yylval=wims_mathml_copy_string("∅"); return MI;} |
||
689 | "\\exists" {yylval=wims_mathml_copy_string("∃"); return MOL;} |
||
690 | "\\circ" {yylval=wims_mathml_copy_string("∘"); return MOL;} |
||
691 | "\\rhd" {yylval=wims_mathml_copy_string("⊳"); return MOL;} |
||
692 | "\\lhd" {yylval=wims_mathml_copy_string("⊲"); return MOL;} |
||
693 | "\\lll" {yylval=wims_mathml_copy_string("⋘"); return MOL;} |
||
694 | "\\unrhd" {yylval=wims_mathml_copy_string("⊵"); return MOL;} |
||
695 | "\\unlhd" {yylval=wims_mathml_copy_string("⊴"); return MOL;} |
||
696 | "\\Del" | |
||
697 | "\\nabla" {yylval=wims_mathml_copy_string("∇"); return MOL;} |
||
698 | "\\sphericalangle" {yylval=wims_mathml_copy_string("∢"); return MOL;} |
||
699 | |||
700 | "\\heartsuit" {yylval=wims_mathml_copy_string("♡"); return MOL;} |
||
701 | "\\diamondsuit" {yylval=wims_mathml_copy_string("♢"); return MOL;} |
||
702 | |||
703 | "\\partial" {yylval=wims_mathml_copy_string("∂"); return MOL;} |
||
704 | |||
705 | "\\qed" {yylval=wims_mathml_copy_string("▪"); return MO;} |
||
706 | |||
707 | "\\mod" {yylval=wims_mathml_copy_string("mod"); return MOS;} |
||
708 | "\\bmod" {yylval=wims_mathml_copy_string("mod"); return MOS;} |
||
709 | "\\pmod" {return PMOD;} |
||
710 | |||
711 | "\\bottom" {yylval=wims_mathml_copy_string("⊥"); return MOL;} |
||
712 | |||
713 | "\\neg" {yylval=wims_mathml_copy_string("¬"); return MOL;} |
||
714 | |||
715 | "\\neq" | |
||
716 | "\\ne" | |
||
717 | "\\not =" | |
||
718 | "\\not=" {yylval=wims_mathml_copy_string("≠"); return MOL;} |
||
719 | |||
14658 | bpr | 720 | "\\not\\subset" {yylval=wims_mathml_copy_string("⊄"); return MOL;} |
721 | |||
5520 | bpr | 722 | "\\not\\in" | |
723 | "\\not \\in" {yylval=wims_mathml_copy_string("∉"); return MOL;} |
||
724 | |||
725 | "\\shortmid" | |
||
726 | "\\mid" {yylval=wims_mathml_copy_string("∣"); return MOS;} |
||
727 | |||
728 | "\\int" | |
||
729 | "\\integral" {return LARGERINT;} |
||
730 | |||
731 | "\\iint" | |
||
732 | "\\doubleintegral" {yylval=wims_mathml_copy_string("∬"); return MOL;} |
||
733 | |||
734 | "\\iiint" | |
||
735 | "\\tripleintegral" {yylval=wims_mathml_copy_string("∭"); return MOL;} |
||
736 | |||
737 | "\\iiiint" | |
||
738 | "\\quadrupleintegral" {yylval=wims_mathml_copy_string("⨌"); return MOL;} |
||
739 | |||
740 | "\\oint" | |
||
741 | "\\conint" | |
||
742 | "\\contourintegral" {yylval=wims_mathml_copy_string("∮"); return MOL;} |
||
743 | |||
744 | "\\times" {yylval=wims_mathml_copy_string("×"); return MOL;} |
||
745 | "\\star" {yylval=wims_mathml_copy_string("⋆"); return MOL;} |
||
746 | "\\circleddash" | |
||
747 | "\\odash" {yylval=wims_mathml_copy_string("⊝"); return MOL;} |
||
748 | |||
749 | "\\intercal" {yylval=wims_mathml_copy_string("⊺"); return MOL;} |
||
750 | "\\smallfrown" {yylval=wims_mathml_copy_string("⌢"); return MOL;} |
||
751 | "\\smallsmile" {yylval=wims_mathml_copy_string("⌣"); return MOL;} |
||
752 | |||
753 | "\\boxminus" | |
||
754 | "\\minusb" {yylval=wims_mathml_copy_string("⊟"); return MOL;} |
||
755 | "\\boxplus" | |
||
756 | "\\plusb" {yylval=wims_mathml_copy_string("⊞"); return MOL;} |
||
757 | "\\boxtimes" | |
||
758 | "\\timesb" {yylval=wims_mathml_copy_string("⊠"); return MOL;} |
||
759 | |||
760 | "\\sum" {yylval=wims_mathml_copy_string("∑"); return MOB;} |
||
761 | |||
762 | "\\prod" | |
||
763 | "\\product" {yylval=wims_mathml_copy_string("∏"); return MOB;} |
||
764 | |||
765 | "\\coprod" | |
||
766 | "\\coproduct" {yylval=wims_mathml_copy_string("∐"); return MOB;} |
||
767 | |||
768 | "\\otimes" {yylval=wims_mathml_copy_string("⊗"); return MOL;} |
||
769 | "\\Otimes" {yylval=wims_mathml_copy_string("⨷"); return MOL;} |
||
770 | "\\bigotimes" {yylval=wims_mathml_copy_string("⨂"); return MOL;} |
||
771 | |||
772 | "\\ominus" {yylval=wims_mathml_copy_string("⊖"); return MOL;} |
||
773 | "\\oslash" {yylval=wims_mathml_copy_string("⊘"); return MOL;} |
||
774 | |||
775 | "\\oplus" {yylval=wims_mathml_copy_string("⊕"); return MOL;} |
||
776 | "\\Oplus" | |
||
777 | "\\bigoplus" {yylval=wims_mathml_copy_string("⨁"); return MOB;} |
||
778 | |||
779 | "\\bigodot" {yylval=wims_mathml_copy_string("⨀"); return MOB;} |
||
780 | "\\bigsqcup" {yylval=wims_mathml_copy_string("⨆"); return MOB;} |
||
13310 | obado | 781 | "\\bigsqcap" {yylval=wims_mathml_copy_string("⨅"); return MOB;} |
782 | "\\biginterleave" {yylval=wims_mathml_copy_string("⫼"); return MOB;} |
||
5520 | bpr | 783 | "\\biguplus" {yylval=wims_mathml_copy_string("⨄"); return MOB;} |
784 | |||
785 | "\\wedge" {yylval=wims_mathml_copy_string("∧"); return MOL;} |
||
786 | "\\Wedge" | |
||
787 | "\\bigwedge" {yylval=wims_mathml_copy_string("⋀"); return MOB;} |
||
788 | |||
789 | "\\Vee" | |
||
790 | "\\bigvee" {yylval=wims_mathml_copy_string("⋁"); return MOB;} |
||
791 | |||
792 | "\\invamp" | |
||
793 | "\\parr" {yylval=wims_mathml_copy_string("⅋"); return MOL;} |
||
794 | |||
795 | "\\frac" {return FRAC;} |
||
796 | "\\tfrac" {return TFRAC;} |
||
797 | "\\dfrac" {return DFRAC;} |
||
798 | "\\sfrac" {return SFRAC;} |
||
799 | "\\binom" {return BINOM;} |
||
800 | "\\choose" {return BINOM2;} |
||
801 | "\\tbinom" {return TBINOM;} |
||
802 | |||
803 | "\\tensor" {return TENSOR;} |
||
804 | |||
805 | "\\multiscripts" {return MULTI;} |
||
806 | |||
807 | "\\overbrace" {return OVERBRACE;} |
||
808 | |||
809 | "\\underbrace" {return UNDERBRACE;} |
||
810 | |||
811 | "\\underline" {return UNDERLINE;} |
||
812 | |||
813 | "\\bar" {return BAR;} |
||
814 | "\\overline" | |
||
815 | "\\closure" | |
||
816 | "\\widebar" {return WIDEBAR;} |
||
817 | |||
7219 | schaersvoo | 818 | "\\vec" { return VEC;} |
5520 | bpr | 819 | "\\widevec" {return WIDEVEC;} |
7390 | schaersvoo | 820 | "\\limits" {/* Ignore */ ;} |
5520 | bpr | 821 | |
8456 | bpr | 822 | "\\overrightarrow" {yylval = wims_mathml_copy_string("→"); return OVERARROW;} |
823 | "\\overleftarrow" {yylval = wims_mathml_copy_string("←"); return OVERARROW;} |
||
7225 | schaersvoo | 824 | "\\overleftrightarrow" {yylval = wims_mathml_copy_string("↔"); return OVERARROW;} |
11589 | schaersvoo | 825 | "\\overrightharpoonup" {yylval = wims_mathml_copy_string("⇀"); return OVERARROW;} |
826 | "\\overrightharpoondown" {yylval = wims_mathml_copy_string("⇁"); return OVERARROW;} |
||
7219 | schaersvoo | 827 | |
7225 | schaersvoo | 828 | "\\underrightarrow" {yylval = wims_mathml_copy_string("→"); return UNDERARROW;} |
829 | "\\underleftarrow" {yylval = wims_mathml_copy_string("←"); return UNDERARROW;} |
||
830 | "\\underleftrightarrow" {yylval = wims_mathml_copy_string("↔"); return UNDERARROW;} |
||
11589 | schaersvoo | 831 | "\\underrightharpoonup" {yylval = wims_mathml_copy_string("⇀"); return UNDERARROW;} |
832 | "\\underrightharpoondown" {yylval = wims_mathml_copy_string("⇁"); return UNDERARROW;} |
||
7225 | schaersvoo | 833 | |
5520 | bpr | 834 | "\\dot" {return DOT;} |
835 | "\\ddot" {return DDOT;} |
||
836 | "\\dddot" {return DDDOT;} |
||
837 | "\\ddddot" {return DDDDOT;} |
||
11717 | schaersvoo | 838 | "\\P" {yylval=wims_mathml_copy_string("¶"); return MI;} |
839 | "\\copyright" {yylval=wims_mathml_copy_string("©"); return MI;}/* copyright*/ |
||
840 | "\\deg" {yylval=wims_mathml_copy_string("°"); return MI;}/* not in wims latex: high small round o */ |
||
841 | "\\Celcius" {yylval=wims_mathml_copy_string("℃"); return MI;} /* not in wims latex: degree Celcius */ |
||
842 | "\\Fahrenheit" {yylval=wims_mathml_copy_string("℉"); return MI;} /* not in wims latex: degree Fahrenheit */ |
||
843 | "\\i" {yylval=wims_mathml_copy_string("ı"); return MI;} /* dotless i*/ |
||
844 | "\\j" {yylval=wims_mathml_copy_string("ȷ"); return MI;} /* dotless j*/ |
||
845 | "\\"[~\^\"`'kl=bdruvtoOHct\.] { /* " accents , some are already in other syntax: \\ddot{i} etc */ |
||
11708 | schaersvoo | 846 | yylval = wims_mathml_copy_string(yytext+1); |
11711 | schaersvoo | 847 | if ((yyleng > 1) && (yylval != wims_mathml_empty_string)) yylval[yyleng+1]='\0'; |
11715 | schaersvoo | 848 | return ACCENTS; |
11708 | schaersvoo | 849 | } |
8456 | bpr | 850 | "\\tilde" {return TILDE;} |
5520 | bpr | 851 | "\\widetilde" {return WIDETILDE;} |
852 | |||
853 | |||
8456 | bpr | 854 | "\\check" {return CHECK;} |
5520 | bpr | 855 | "\\widecheck" {return WIDECHECK;} |
856 | |||
857 | |||
8456 | bpr | 858 | "\\hat" {return HAT;} |
5520 | bpr | 859 | "\\widehat" {return WIDEHAT;} |
860 | |||
861 | "\\underset" {return UNDER;} |
||
862 | |||
863 | "\\stackrel" | |
||
864 | "\\overset" {return OVER;} |
||
14226 | schaersvoo | 865 | "\\brack" { wims_mathml_shortcut = 0; return BRACK;} |
866 | "\\brace" { wims_mathml_shortcut = 1; return BRACK;} |
||
5520 | bpr | 867 | "\\over" {return TEXOVER;} |
868 | "\\atop" {return TEXATOP;} |
||
869 | |||
870 | "\\underoverset" {return UNDEROVER;} |
||
871 | |||
872 | "\\sqrt" {BEGIN(OPTARG); return SQRT;} |
||
873 | |||
874 | "\\root" {return ROOT;} |
||
5632 | schaersvoo | 875 | "\\of" |
5520 | bpr | 876 | "\\nonumber" {yylval=wims_mathml_copy_string(" "); return MI;} |
877 | |||
878 | "\\space" {BEGIN(INT1); return SPACE;} |
||
11335 | schaersvoo | 879 | "\\*" {yylval=wims_mathml_copy_string("⁢"); return MI;} |
5520 | bpr | 880 | |
881 | "\\text" | |
||
882 | "\\textrm" | |
||
883 | "\\mbox" {BEGIN(PLAINTEXT); return TEXTBOX;} |
||
884 | |||
885 | "\\statusline" {BEGIN(PLAINTEXT); return STATLINE;} |
||
886 | "\\tooltip" {BEGIN(PLAINTEXT); return TOOLTIP;} |
||
887 | |||
888 | "\\toggle" {return TOGGLE;} |
||
889 | |||
890 | "\\mathraisebox" {BEGIN(RAISEBOX1); return RAISEBOX;} |
||
891 | |||
892 | "\\fghilight" | |
||
893 | "\\fghighlight" {BEGIN(ATTRIBUTELIST); return FGHIGHLIGHT;} |
||
894 | |||
895 | "\\bghilight" | |
||
896 | "\\bghighlight" {BEGIN(ATTRIBUTELIST); return BGHIGHLIGHT;} |
||
897 | |||
898 | "\\special" {BEGIN(FINDARG); return SPECIAL;} |
||
899 | |||
8912 | bpr | 900 | "\\color" | |
901 | "\\textcolor" {BEGIN(ATTRIBUTELIST); return COLOR;} |
||
5520 | bpr | 902 | "\\bgcolor" {BEGIN(ATTRIBUTELIST); return BGCOLOR;} |
903 | |||
904 | "\\displaystyle" {wims_mathml_displaymode=1; wims_mathml_rowposn=2; return DISPLAY;} |
||
905 | |||
906 | "\\textstyle" {wims_mathml_displaymode=0; wims_mathml_rowposn=2; return TEXTSTY;} |
||
907 | |||
908 | "\\textsize" {return TEXTSIZE;} |
||
909 | |||
910 | "\\scriptsize" {return SCSIZE;} |
||
911 | |||
912 | "\\scriptscriptsize" {return SCSCSIZE;} |
||
913 | |||
914 | "\\mathit" | |
||
12108 | schaersvoo | 915 | "\\it" | |
5520 | bpr | 916 | "\\emph" {return ITALICS;} |
917 | |||
918 | "\\boldsymbol" | |
||
919 | "\\bf" | |
||
920 | "\\Bf" | |
||
921 | "\\mathbf" {return BOLD;} |
||
922 | "\\mathrm" | |
||
923 | "\\rm" {BEGIN(ROMAN); return RM;} |
||
5577 | schaersvoo | 924 | "\\rm " { return WIMSROMAN;} |
5520 | bpr | 925 | |
926 | "\\mathbb" {BEGIN(BBOLD); return BB;} |
||
927 | |||
928 | "\\mathfrak" | |
||
929 | "\\mathfr" {BEGIN(FRAKTUR); return FRAK;} |
||
930 | |||
13858 | schaersvoo | 931 | "\\slash" | |
932 | "\\cancel" {return SLASHED;} |
||
5520 | bpr | 933 | |
934 | "\\boxed" {return BOXED;} |
||
935 | |||
936 | "\\mathcal" {BEGIN(CALLIGRAPHIC); return CAL;} |
||
937 | |||
938 | "\\begin" {wims_mathml_env_start = 1; BEGIN(MATHENV); return BEGINENV;} |
||
939 | "\\end" {BEGIN(MATHENV); return ENDENV;} |
||
14226 | schaersvoo | 940 | "\\cases" {wims_mathml_shortcut = 0;return SHORTARRAY;} |
941 | "\\Bmatrix" {wims_mathml_shortcut = 1;return SHORTARRAY;} |
||
942 | "\\pmatrix" {wims_mathml_shortcut = 2;return SHORTARRAY;} |
||
943 | "\\vmatrix" {wims_mathml_shortcut = 3;return SHORTARRAY;} |
||
944 | "\\Vmatrix" {wims_mathml_shortcut = 4;return SHORTARRAY;} |
||
945 | "\\aligned" {wims_mathml_shortcut = 5;return SHORTARRAY;} |
||
5520 | bpr | 946 | |
14226 | schaersvoo | 947 | |
5520 | bpr | 948 | "\\substack" {return SUBSTACK;} |
949 | |||
950 | "\\array" {return ARRAY;} |
||
951 | |||
952 | "\\arrayopts" {return ARRAYOPTS;} |
||
953 | |||
954 | "\\colalign" {BEGIN(ATTRIBUTELIST); return COLALIGN;} |
||
955 | |||
956 | "\\collayout" {BEGIN(ATTRIBUTELIST); return COLLAYOUT;} |
||
957 | |||
958 | "\\rowalign" {BEGIN(ATTRIBUTELIST); return ROWALIGN;} |
||
959 | |||
960 | "\\align" {BEGIN(ATTRIBUTELIST); return ALIGN;} |
||
961 | |||
962 | "\\equalrows" {BEGIN(ATTRIBUTELIST); return EQROWS;} |
||
963 | |||
964 | "\\equalcols" {BEGIN(ATTRIBUTELIST); return EQCOLS;} |
||
965 | |||
966 | "\\rowlines" {BEGIN(ATTRIBUTELIST); return ROWLINES;} |
||
967 | |||
968 | "\\collines" {BEGIN(ATTRIBUTELIST); return COLLINES;} |
||
969 | |||
970 | "\\frame" {BEGIN(ATTRIBUTELIST); return FRAME;} |
||
971 | |||
972 | "\\padding" {BEGIN(ATTRIBUTELIST); return PADDING;} |
||
973 | |||
974 | "\\rowopts" {return ROWOPTS;} |
||
975 | |||
8456 | bpr | 976 | "\\cellopts" {return CELLOPTS;} |
5520 | bpr | 977 | |
978 | "\\rowspan" {BEGIN(ATTRIBUTELIST); return ROWSPAN;} |
||
979 | |||
980 | "\\colspan" {BEGIN(ATTRIBUTELIST); return COLSPAN;} |
||
981 | |||
982 | |||
983 | "\\," | |
||
984 | "\\thinspace" {return THINSPACE;} |
||
985 | |||
986 | "\\:" | |
||
987 | "\\medspace" {return MEDSPACE;} |
||
988 | |||
989 | "\\;" | |
||
990 | "\\thickspace" {return THICKSPACE;} |
||
991 | |||
992 | "\\quad" {return QUAD;} |
||
993 | "\\qquad" {return QQUAD;} |
||
994 | |||
995 | "\\!" | |
||
996 | "\\negspace" {return NEGSPACE;} |
||
997 | |||
998 | "\\phantom" | |
||
999 | "\\vphantom" {return PHANTOM;} |
||
1000 | |||
1001 | "\\href" {BEGIN(PLAINTEXT); return HREF;} |
||
1002 | |||
1003 | "\\operatorname" {BEGIN(PLAINTEXT); return OPERATORNAME;} |
||
1004 | "\\mathop" {BEGIN(PLAINTEXT); return MATHOP;} |
||
1005 | "\\mathbin" {BEGIN(PLAINTEXT); return MATHBIN;} |
||
1006 | "\\mathrel" {BEGIN(PLAINTEXT); return MATHREL;} |
||
1007 | "\\itexnum" {BEGIN(PLAINTEXT); return ITEXNUM;} |
||
1008 | |||
11589 | schaersvoo | 1009 | "\\char32" {yylval = wims_mathml_copy_string("␣"); return MI;} |
1010 | "\\char44" {yylval = wims_mathml_copy_string(","); return MI;} |
||
1011 | "\\exclam" {yylval = wims_mathml_copy_string("!"); return MI;} |
||
1012 | "\\octothorpe" {yylval = wims_mathml_copy_string("#"); return MI;} |
||
1013 | "\\mathdollar" {yylval = wims_mathml_copy_string("$"); return MI;} |
||
1014 | "\\percent" {yylval = wims_mathml_copy_string("%"); return MI;} |
||
1015 | "\\ampersand" {yylval = wims_mathml_copy_string("&"); return MI;} |
||
1016 | "\\lparen" {yylval = wims_mathml_copy_string("("); return LEFTDELIM;} |
||
1017 | "\\rparen" {yylval = wims_mathml_copy_string(")"); return RIGHTDELIM;} |
||
1018 | "\\plus" {yylval = wims_mathml_copy_string("+"); return MO;} |
||
1019 | "\\period" {yylval = wims_mathml_copy_string("."); return MOP;} |
||
1020 | "\\mathslash" {yylval = wims_mathml_copy_string("/"); return MO;} |
||
1021 | "\\mathcolon" {yylval = wims_mathml_copy_string(":"); return MOP;} |
||
1022 | "\\semicolon" {yylval = wims_mathml_copy_string(";"); return MOP;} |
||
1023 | "\\less" {yylval = wims_mathml_copy_string("<"); return MO;} |
||
1024 | "\\equal" {yylval = wims_mathml_copy_string("="); return MO;} |
||
1025 | "\\greater" {yylval = wims_mathml_copy_string(">"); return MO;} |
||
1026 | "\\question" {yylval = wims_mathml_copy_string("?"); return MOP;} |
||
1027 | "\\atsign" {yylval = wims_mathml_copy_string("@"); return MI;} |
||
1028 | "\\sterling" {yylval = wims_mathml_copy_string("£"); return MI;} |
||
1029 | "\\yen" {yylval = wims_mathml_copy_string("¥"); return MI;} |
||
1030 | "\\cdotp" {yylval = wims_mathml_copy_string("·"); return MO;} |
||
1031 | "\\matheth" {yylval = wims_mathml_copy_string("ð"); return MI;} |
||
1032 | "\\Zbar" {yylval = wims_mathml_copy_string("Ƶ"); return MI;} |
||
1033 | "\\grave" {yylval = wims_mathml_copy_string("̀"); return MI;} |
||
1034 | "\\acute" {yylval = wims_mathml_copy_string("́"); return MI;} |
||
1035 | "\\overbar" {yylval = wims_mathml_copy_string("̅"); return MI;} |
||
1036 | "\\breve" {yylval = wims_mathml_copy_string("̆"); return MI;} |
||
1037 | "\\ovhook" {yylval = wims_mathml_copy_string("̉"); return MI;} |
||
1038 | "\\ocirc" {yylval = wims_mathml_copy_string("̊"); return MI;} |
||
1039 | "\\candra" {yylval = wims_mathml_copy_string("̐"); return MI;} |
||
1040 | "\\oturnedcomma" {yylval = wims_mathml_copy_string("̒"); return MI;} |
||
1041 | "\\ocommatopright" {yylval = wims_mathml_copy_string("̕"); return MI;} |
||
1042 | "\\droang" {yylval = wims_mathml_copy_string("̚"); return MI;} |
||
1043 | "\\wideutilde" {yylval = wims_mathml_copy_string("̰"); return MI;} |
||
1044 | "\\underbar" {yylval = wims_mathml_copy_string("̱"); return MI;} |
||
1045 | "\\upAlpha" {yylval = wims_mathml_copy_string("Α"); return MI;} |
||
1046 | "\\upBeta" {yylval = wims_mathml_copy_string("Β"); return MI;} |
||
1047 | "\\upGamma" {yylval = wims_mathml_copy_string("Γ"); return MI;} |
||
1048 | "\\upDelta" {yylval = wims_mathml_copy_string("Δ"); return MI;} |
||
1049 | "\\upEpsilon" {yylval = wims_mathml_copy_string("Ε"); return MI;} |
||
1050 | "\\upZeta" {yylval = wims_mathml_copy_string("Ζ"); return MI;} |
||
1051 | "\\upEta" {yylval = wims_mathml_copy_string("Η"); return MI;} |
||
1052 | "\\upTheta" {yylval = wims_mathml_copy_string("Θ"); return MI;} |
||
1053 | "\\upIota" {yylval = wims_mathml_copy_string("Ι"); return MI;} |
||
1054 | "\\upKappa" {yylval = wims_mathml_copy_string("Κ"); return MI;} |
||
1055 | "\\upLambda" {yylval = wims_mathml_copy_string("Λ"); return MI;} |
||
1056 | "\\upMu" {yylval = wims_mathml_copy_string("Μ"); return MI;} |
||
1057 | "\\upNu" {yylval = wims_mathml_copy_string("Ν"); return MI;} |
||
1058 | "\\upXi" {yylval = wims_mathml_copy_string("Ξ"); return MI;} |
||
1059 | "\\upOmicron" {yylval = wims_mathml_copy_string("Ο"); return MI;} |
||
1060 | "\\upPi" {yylval = wims_mathml_copy_string("Π"); return MI;} |
||
1061 | "\\upRho" {yylval = wims_mathml_copy_string("Ρ"); return MI;} |
||
1062 | "\\upSigma" {yylval = wims_mathml_copy_string("Σ"); return MI;} |
||
1063 | "\\upTau" {yylval = wims_mathml_copy_string("Τ"); return MI;} |
||
1064 | "\\upUpsilon" {yylval = wims_mathml_copy_string("Υ"); return MI;} |
||
1065 | "\\upPhi" {yylval = wims_mathml_copy_string("Φ"); return MI;} |
||
1066 | "\\upChi" {yylval = wims_mathml_copy_string("Χ"); return MI;} |
||
1067 | "\\upPsi" {yylval = wims_mathml_copy_string("Ψ"); return MI;} |
||
1068 | "\\upOmega" {yylval = wims_mathml_copy_string("Ω"); return MI;} |
||
1069 | "\\upalpha" {yylval = wims_mathml_copy_string("α"); return MI;} |
||
1070 | "\\upbeta" {yylval = wims_mathml_copy_string("β"); return MI;} |
||
1071 | "\\upgamma" {yylval = wims_mathml_copy_string("γ"); return MI;} |
||
1072 | "\\updelta" {yylval = wims_mathml_copy_string("δ"); return MI;} |
||
1073 | "\\upepsilon" {yylval = wims_mathml_copy_string("ε"); return MI;} |
||
1074 | "\\upzeta" {yylval = wims_mathml_copy_string("ζ"); return MI;} |
||
1075 | "\\upeta" {yylval = wims_mathml_copy_string("η"); return MI;} |
||
1076 | "\\uptheta" {yylval = wims_mathml_copy_string("θ"); return MI;} |
||
1077 | "\\upiota" {yylval = wims_mathml_copy_string("ι"); return MI;} |
||
1078 | "\\upkappa" {yylval = wims_mathml_copy_string("κ"); return MI;} |
||
1079 | "\\uplambda" {yylval = wims_mathml_copy_string("λ"); return MI;} |
||
1080 | "\\upmu" {yylval = wims_mathml_copy_string("μ"); return MI;} |
||
1081 | "\\upnu" {yylval = wims_mathml_copy_string("ν"); return MI;} |
||
1082 | "\\upxi" {yylval = wims_mathml_copy_string("ξ"); return MI;} |
||
1083 | "\\upomicron" {yylval = wims_mathml_copy_string("ο"); return MI;} |
||
1084 | "\\uppi" {yylval = wims_mathml_copy_string("π"); return MI;} |
||
1085 | "\\uprho" {yylval = wims_mathml_copy_string("ρ"); return MI;} |
||
1086 | "\\upvarsigma" {yylval = wims_mathml_copy_string("ς"); return MI;} |
||
1087 | "\\upsigma" {yylval = wims_mathml_copy_string("σ"); return MI;} |
||
1088 | "\\uptau" {yylval = wims_mathml_copy_string("τ"); return MI;} |
||
1089 | "\\upupsilon" {yylval = wims_mathml_copy_string("υ"); return MI;} |
||
1090 | "\\upvarphi" {yylval = wims_mathml_copy_string("φ"); return MI;} |
||
1091 | "\\upchi" {yylval = wims_mathml_copy_string("χ"); return MI;} |
||
1092 | "\\uppsi" {yylval = wims_mathml_copy_string("ψ"); return MI;} |
||
1093 | "\\upomega" {yylval = wims_mathml_copy_string("ω"); return MI;} |
||
1094 | "\\upvarbeta" {yylval = wims_mathml_copy_string("ϐ"); return MI;} |
||
1095 | "\\upvartheta" {yylval = wims_mathml_copy_string("ϑ"); return MI;} |
||
1096 | "\\upphi" {yylval = wims_mathml_copy_string("ϕ"); return MI;} |
||
1097 | "\\upvarpi" {yylval = wims_mathml_copy_string("ϖ"); return MI;} |
||
1098 | "\\upoldKoppa" {yylval = wims_mathml_copy_string("Ϙ"); return MI;} |
||
1099 | "\\upoldkoppa" {yylval = wims_mathml_copy_string("ϙ"); return MI;} |
||
1100 | "\\upStigma" {yylval = wims_mathml_copy_string("Ϛ"); return MI;} |
||
1101 | "\\upstigma" {yylval = wims_mathml_copy_string("ϛ"); return MI;} |
||
1102 | "\\upDigamma" {yylval = wims_mathml_copy_string("Ϝ"); return MI;} |
||
1103 | "\\updigamma" {yylval = wims_mathml_copy_string("ϝ"); return MI;} |
||
1104 | "\\upKoppa" {yylval = wims_mathml_copy_string("Ϟ"); return MI;} |
||
1105 | "\\upkoppa" {yylval = wims_mathml_copy_string("ϟ"); return MI;} |
||
1106 | "\\upSampi" {yylval = wims_mathml_copy_string("Ϡ"); return MI;} |
||
1107 | "\\upsampi" {yylval = wims_mathml_copy_string("ϡ"); return MI;} |
||
1108 | "\\upvarkappa" {yylval = wims_mathml_copy_string("ϰ"); return MI;} |
||
1109 | "\\upvarrho" {yylval = wims_mathml_copy_string("ϱ"); return MI;} |
||
1110 | "\\upvarTheta" {yylval = wims_mathml_copy_string("ϴ"); return MI;} |
||
1111 | "\\upvarepsilon" {yylval = wims_mathml_copy_string("ϵ"); return MI;} |
||
1112 | "\\upbackepsilon" {yylval = wims_mathml_copy_string("϶"); return MI;} |
||
1113 | "\\horizbar" {yylval = wims_mathml_copy_string("―"); return MI;} |
||
1114 | "\\twolowline" {yylval = wims_mathml_copy_string("‗"); return MI;} |
||
1115 | "\\enleadertwodots" {yylval = wims_mathml_copy_string("‥"); return MI;} |
||
1116 | "\\unicodeellipsis" {yylval = wims_mathml_copy_string("…"); return MI;} |
||
1117 | "\\dprime" {yylval = wims_mathml_copy_string("″"); return MI;} |
||
1118 | "\\trprime" {yylval = wims_mathml_copy_string("‴"); return MI;} |
||
1119 | "\\backdprime" {yylval = wims_mathml_copy_string("‶"); return MI;} |
||
1120 | "\\backtrprime" {yylval = wims_mathml_copy_string("‷"); return MI;} |
||
1121 | "\\caretinsert" {yylval = wims_mathml_copy_string("‸"); return MI;} |
||
1122 | "\\Exclam" {yylval = wims_mathml_copy_string("‼"); return MI;} |
||
1123 | "\\tieconcat" {yylval = wims_mathml_copy_string("⁀"); return MO;} |
||
1124 | "\\hyphenbullet" {yylval = wims_mathml_copy_string("⁃"); return MI;} |
||
1125 | "\\fracslash" {yylval = wims_mathml_copy_string("⁄"); return MO;} |
||
1126 | "\\Question" {yylval = wims_mathml_copy_string("⁇"); return MI;} |
||
1127 | "\\qprime" {yylval = wims_mathml_copy_string("⁗"); return MI;} |
||
5520 | bpr | 1128 | "\\euro" | |
1129 | "\\Euro" | |
||
11589 | schaersvoo | 1130 | "\\EUR" {yylval = wims_mathml_copy_string("€"); return MI;} |
1131 | "\\leftharpoonaccent" {yylval = wims_mathml_copy_string("⃐"); return MI;} |
||
1132 | "\\rightharpoonaccent" {yylval = wims_mathml_copy_string("⃑"); return MI;} |
||
1133 | "\\vertoverlay" {yylval = wims_mathml_copy_string("⃒"); return MI;} |
||
1134 | "\\enclosecircle" {yylval = wims_mathml_copy_string("⃝"); return MI;} |
||
1135 | "\\enclosesquare" {yylval = wims_mathml_copy_string("⃞"); return MI;} |
||
1136 | "\\enclosediamond" {yylval = wims_mathml_copy_string("⃟"); return MI;} |
||
1137 | "\\enclosetriangle" {yylval = wims_mathml_copy_string("⃤"); return MI;} |
||
1138 | "\\annuity" {yylval = wims_mathml_copy_string("⃧"); return MI;} |
||
1139 | "\\threeunderdot" {yylval = wims_mathml_copy_string("⃨"); return MI;} |
||
1140 | "\\widebridgeabove" {yylval = wims_mathml_copy_string("⃩"); return MI;} |
||
1141 | "\\asteraccent" {yylval = wims_mathml_copy_string("⃰"); return MI;} |
||
1142 | "\\BbbC" {yylval = wims_mathml_copy_string("ℂ"); return MI;} |
||
1143 | "\\Eulerconst" {yylval = wims_mathml_copy_string("ℇ"); return MI;} |
||
1144 | "\\mscrg" {yylval = wims_mathml_copy_string("ℊ"); return MI;} |
||
1145 | "\\mscrH" {yylval = wims_mathml_copy_string("ℋ"); return MI;} |
||
1146 | "\\mfrakH" {yylval = wims_mathml_copy_string("ℌ"); return MI;} |
||
1147 | "\\BbbH" {yylval = wims_mathml_copy_string("ℍ"); return MI;} |
||
1148 | "\\Planckconst" {yylval = wims_mathml_copy_string("ℎ"); return MI;} |
||
1149 | "\\hslash" {yylval = wims_mathml_copy_string("ℏ"); return MI;} |
||
1150 | "\\mscrI" {yylval = wims_mathml_copy_string("ℐ"); return MI;} |
||
1151 | "\\mscrL" {yylval = wims_mathml_copy_string("ℒ"); return MI;} |
||
1152 | "\\BbbN" {yylval = wims_mathml_copy_string("ℕ"); return MI;} |
||
1153 | "\\BbbP" {yylval = wims_mathml_copy_string("ℙ"); return MI;} |
||
1154 | "\\BbbQ" {yylval = wims_mathml_copy_string("ℚ"); return MI;} |
||
1155 | "\\mscrR" {yylval = wims_mathml_copy_string("ℛ"); return MI;} |
||
1156 | "\\BbbR" {yylval = wims_mathml_copy_string("ℝ"); return MI;} |
||
1157 | "\\BbbZ" {yylval = wims_mathml_copy_string("ℤ"); return MI;} |
||
1158 | "\\mfrakZ" {yylval = wims_mathml_copy_string("ℨ"); return MI;} |
||
1159 | "\\turnediota" {yylval = wims_mathml_copy_string("℩"); return MI;} |
||
1160 | "\\Angstrom" {yylval = wims_mathml_copy_string("Å"); return MI;} |
||
1161 | "\\mscrB" {yylval = wims_mathml_copy_string("ℬ"); return MI;} |
||
1162 | "\\mfrakC" {yylval = wims_mathml_copy_string("ℭ"); return MI;} |
||
1163 | "\\mscre" {yylval = wims_mathml_copy_string("ℯ"); return MI;} |
||
1164 | "\\mscrE" {yylval = wims_mathml_copy_string("ℰ"); return MI;} |
||
1165 | "\\mscrF" {yylval = wims_mathml_copy_string("ℱ"); return MI;} |
||
1166 | "\\Finv" {yylval = wims_mathml_copy_string("Ⅎ"); return MI;} |
||
1167 | "\\mscrM" {yylval = wims_mathml_copy_string("ℳ"); return MI;} |
||
1168 | "\\mscro" {yylval = wims_mathml_copy_string("ℴ"); return MI;} |
||
1169 | "\\gimel" {yylval = wims_mathml_copy_string("ℷ"); return MI;} |
||
1170 | "\\daleth" {yylval = wims_mathml_copy_string("ℸ"); return MI;} |
||
1171 | "\\Bbbpi" {yylval = wims_mathml_copy_string("ℼ"); return MI;} |
||
1172 | "\\Bbbgamma" {yylval = wims_mathml_copy_string("ℽ"); return MI;} |
||
1173 | "\\BbbGamma" {yylval = wims_mathml_copy_string("ℾ"); return MI;} |
||
1174 | "\\BbbPi" {yylval = wims_mathml_copy_string("ℿ"); return MI;} |
||
1175 | "\\Bbbsum" {yylval = wims_mathml_copy_string("⅀"); return MI;} |
||
1176 | "\\Game" {yylval = wims_mathml_copy_string("⅁"); return MI;} |
||
1177 | "\\sansLturned" {yylval = wims_mathml_copy_string("⅂"); return MI;} |
||
1178 | "\\sansLmirrored" {yylval = wims_mathml_copy_string("⅃"); return MI;} |
||
1179 | "\\Yup" {yylval = wims_mathml_copy_string("⅄"); return MI;} |
||
1180 | "\\mitBbbD" {yylval = wims_mathml_copy_string("ⅅ"); return MI;} |
||
1181 | "\\mitBbbd" {yylval = wims_mathml_copy_string("ⅆ"); return MI;} |
||
1182 | "\\mitBbbe" {yylval = wims_mathml_copy_string("ⅇ"); return MI;} |
||
1183 | "\\mitBbbi" {yylval = wims_mathml_copy_string("ⅈ"); return MI;} |
||
1184 | "\\mitBbbj" {yylval = wims_mathml_copy_string("ⅉ"); return MI;} |
||
1185 | "\\PropertyLine" {yylval = wims_mathml_copy_string("⅊"); return MI;} |
||
1186 | "\\upand" {yylval = wims_mathml_copy_string("⅋"); return MI;} |
||
1187 | "\\leftwavearrow" {yylval = wims_mathml_copy_string("↜"); return MO;} |
||
1188 | "\\rightwavearrow" {yylval = wims_mathml_copy_string("↝"); return MO;} |
||
1189 | "\\twoheaduparrow" {yylval = wims_mathml_copy_string("↟"); return MO;} |
||
1190 | "\\twoheaddownarrow" {yylval = wims_mathml_copy_string("↡"); return MO;} |
||
1191 | "\\mapsfrom" {yylval = wims_mathml_copy_string("↤"); return MO;} |
||
1192 | "\\mapsup" {yylval = wims_mathml_copy_string("↥"); return MO;} |
||
1193 | "\\mapsdown" {yylval = wims_mathml_copy_string("↧"); return MO;} |
||
1194 | "\\updownarrowbar" {yylval = wims_mathml_copy_string("↨"); return MO;} |
||
1195 | "\\Ldsh" {yylval = wims_mathml_copy_string("↲"); return MO;} |
||
1196 | "\\Rdsh" {yylval = wims_mathml_copy_string("↳"); return MO;} |
||
1197 | "\\linefeed" {yylval = wims_mathml_copy_string("↴"); return MI;} |
||
1198 | "\\carriagereturn" {yylval = wims_mathml_copy_string("↵"); return MI;} |
||
1199 | "\\barovernorthwestarrow" {yylval = wims_mathml_copy_string("↸"); return MI;} |
||
1200 | "\\barleftarrowrightarrow" {yylval = wims_mathml_copy_string("↹"); return MI;} |
||
1201 | "\\acwopencirclearrow" {yylval = wims_mathml_copy_string("↺"); return MO;} |
||
1202 | "\\cwopencirclearrow" {yylval = wims_mathml_copy_string("↻"); return MO;} |
||
1203 | "\\leftharpoondown" {yylval = wims_mathml_copy_string("↽"); return MO;} |
||
1204 | "\\rightharpoonup" {yylval = wims_mathml_copy_string("⇀"); return MO;} |
||
1205 | "\\rightharpoondown" {yylval = wims_mathml_copy_string("⇁"); return MO;} |
||
1206 | "\\updownarrows" {yylval = wims_mathml_copy_string("⇅"); return MO;} |
||
1207 | "\\Nwarrow" {yylval = wims_mathml_copy_string("⇖"); return MO;} |
||
1208 | "\\Nearrow" {yylval = wims_mathml_copy_string("⇗"); return MO;} |
||
1209 | "\\Searrow" {yylval = wims_mathml_copy_string("⇘"); return MO;} |
||
1210 | "\\Swarrow" {yylval = wims_mathml_copy_string("⇙"); return MO;} |
||
1211 | "\\nHuparrow" {yylval = wims_mathml_copy_string("⇞"); return MO;} |
||
1212 | "\\nHdownarrow" {yylval = wims_mathml_copy_string("⇟"); return MO;} |
||
1213 | "\\leftdasharrow" {yylval = wims_mathml_copy_string("⇠"); return MO;} |
||
1214 | "\\updasharrow" {yylval = wims_mathml_copy_string("⇡"); return MO;} |
||
1215 | "\\rightdasharrow" {yylval = wims_mathml_copy_string("⇢"); return MO;} |
||
1216 | "\\downdasharrow" {yylval = wims_mathml_copy_string("⇣"); return MO;} |
||
1217 | "\\barleftarrow" {yylval = wims_mathml_copy_string("⇤"); return MO;} |
||
1218 | "\\rightarrowbar" {yylval = wims_mathml_copy_string("⇥"); return MO;} |
||
1219 | "\\leftwhitearrow" {yylval = wims_mathml_copy_string("⇦"); return MO;} |
||
1220 | "\\upwhitearrow" {yylval = wims_mathml_copy_string("⇧"); return MO;} |
||
1221 | "\\rightwhitearrow" {yylval = wims_mathml_copy_string("⇨"); return MO;} |
||
1222 | "\\downwhitearrow" {yylval = wims_mathml_copy_string("⇩"); return MO;} |
||
1223 | "\\whitearrowupfrombar" {yylval = wims_mathml_copy_string("⇪"); return MI;} |
||
1224 | "\\circleonrightarrow" {yylval = wims_mathml_copy_string("⇴"); return MO;} |
||
1225 | "\\downuparrows" {yylval = wims_mathml_copy_string("⇵"); return MO;} |
||
1226 | "\\rightthreearrows" {yylval = wims_mathml_copy_string("⇶"); return MO;} |
||
1227 | "\\nvleftarrow" {yylval = wims_mathml_copy_string("⇷"); return MO;} |
||
1228 | "\\nvrightarrow" {yylval = wims_mathml_copy_string("⇸"); return MO;} |
||
1229 | "\\nvleftrightarrow" {yylval = wims_mathml_copy_string("⇹"); return MO;} |
||
1230 | "\\nVleftarrow" {yylval = wims_mathml_copy_string("⇺"); return MO;} |
||
1231 | "\\nVrightarrow" {yylval = wims_mathml_copy_string("⇻"); return MO;} |
||
1232 | "\\nVleftrightarrow" {yylval = wims_mathml_copy_string("⇼"); return MO;} |
||
1233 | "\\leftarrowtriangle" {yylval = wims_mathml_copy_string("⇽"); return MO;} |
||
1234 | "\\rightarrowtriangle" {yylval = wims_mathml_copy_string("⇾"); return MO;} |
||
1235 | "\\leftrightarrowtriangle" {yylval = wims_mathml_copy_string("⇿"); return MO;} |
||
1236 | "\\complement" {yylval = wims_mathml_copy_string("∁"); return MO;} |
||
1237 | "\\increment" {yylval = wims_mathml_copy_string("∆"); return MO;} |
||
1238 | "\\smallin" {yylval = wims_mathml_copy_string("∊"); return MO;} |
||
1239 | "\\nni" {yylval = wims_mathml_copy_string("∌"); return MO;} |
||
1240 | "\\smallni" {yylval = wims_mathml_copy_string("∍"); return MO;} |
||
1241 | "\\QED" {yylval = wims_mathml_copy_string("∎"); return MI;} |
||
1242 | "\\minus" {yylval = wims_mathml_copy_string("−"); return MO;} |
||
1243 | "\\divslash" {yylval = wims_mathml_copy_string("∕"); return MO;} |
||
1244 | "\\vysmwhtcircle" {yylval = wims_mathml_copy_string("∘"); return MO;} |
||
1245 | "\\vysmblkcircle" {yylval = wims_mathml_copy_string("∙"); return MO;} |
||
1246 | "\\cuberoot" {yylval = wims_mathml_copy_string("∛"); return MI;} |
||
1247 | "\\rightangle" {yylval = wims_mathml_copy_string("∟"); return MI;} |
||
1248 | "\\intclockwise" {yylval = wims_mathml_copy_string("∱"); return MI;} |
||
1249 | "\\mathratio" {yylval = wims_mathml_copy_string("∶"); return MO;} |
||
1250 | "\\Colon" {yylval = wims_mathml_copy_string("∷"); return MO;} |
||
1251 | "\\dotminus" {yylval = wims_mathml_copy_string("∸"); return MO;} |
||
1252 | "\\dashcolon" {yylval = wims_mathml_copy_string("∹"); return MO;} |
||
1253 | "\\dotsminusdots" {yylval = wims_mathml_copy_string("∺"); return MO;} |
||
1254 | "\\kernelcontraction" {yylval = wims_mathml_copy_string("∻"); return MO;} |
||
1255 | "\\invlazys" {yylval = wims_mathml_copy_string("∾"); return MO;} |
||
1256 | "\\sinewave" {yylval = wims_mathml_copy_string("∿"); return MI;} |
||
1257 | "\\eqsim" {yylval = wims_mathml_copy_string("≂"); return MO;} |
||
1258 | "\\nsime" {yylval = wims_mathml_copy_string("≄"); return MO;} |
||
1259 | "\\simneqq" {yylval = wims_mathml_copy_string("≆"); return MO;} |
||
1260 | "\\napprox" {yylval = wims_mathml_copy_string("≉"); return MO;} |
||
1261 | "\\approxident" {yylval = wims_mathml_copy_string("≋"); return MO;} |
||
1262 | "\\backcong" {yylval = wims_mathml_copy_string("≌"); return MO;} |
||
1263 | "\\Doteq" {yylval = wims_mathml_copy_string("≑"); return MO;} |
||
1264 | "\\arceq" {yylval = wims_mathml_copy_string("≘"); return MO;} |
||
1265 | "\\wedgeq" {yylval = wims_mathml_copy_string("≙"); return MO;} |
||
1266 | "\\veeeq" {yylval = wims_mathml_copy_string("≚"); return MO;} |
||
1267 | "\\stareq" {yylval = wims_mathml_copy_string("≛"); return MO;} |
||
1268 | "\\eqdef" {yylval = wims_mathml_copy_string("≝"); return MO;} |
||
1269 | "\\measeq" {yylval = wims_mathml_copy_string("≞"); return MO;} |
||
1270 | "\\questeq" {yylval = wims_mathml_copy_string("≟"); return MO;} |
||
1271 | "\\Equiv" {yylval = wims_mathml_copy_string("≣"); return MO;} |
||
1272 | "\\nlessgtr" {yylval = wims_mathml_copy_string("≸"); return MO;} |
||
1273 | "\\ngtrless" {yylval = wims_mathml_copy_string("≹"); return MO;} |
||
1274 | "\\cupleftarrow" {yylval = wims_mathml_copy_string("⊌"); return MO;} |
||
1275 | "\\cupdot" {yylval = wims_mathml_copy_string("⊍"); return MO;} |
||
1276 | "\\circledequal" {yylval = wims_mathml_copy_string("⊜"); return MO;} |
||
1277 | "\\assert" {yylval = wims_mathml_copy_string("⊦"); return MO;} |
||
1278 | "\\nVdash" {yylval = wims_mathml_copy_string("⊮"); return MO;} |
||
1279 | "\\prurel" {yylval = wims_mathml_copy_string("⊰"); return MO;} |
||
1280 | "\\scurel" {yylval = wims_mathml_copy_string("⊱"); return MO;} |
||
1281 | "\\origof" {yylval = wims_mathml_copy_string("⊶"); return MO;} |
||
1282 | "\\imageof" {yylval = wims_mathml_copy_string("⊷"); return MO;} |
||
1283 | "\\hermitmatrix" {yylval = wims_mathml_copy_string("⊹"); return MO;} |
||
1284 | "\\barvee" {yylval = wims_mathml_copy_string("⊽"); return MO;} |
||
1285 | "\\measuredrightangle" {yylval = wims_mathml_copy_string("⊾"); return MI;} |
||
1286 | "\\varlrtriangle" {yylval = wims_mathml_copy_string("⊿"); return MI;} |
||
1287 | "\\smwhtdiamond" {yylval = wims_mathml_copy_string("⋄"); return MO;} |
||
1288 | "\\eqless" {yylval = wims_mathml_copy_string("⋜"); return MO;} |
||
1289 | "\\eqgtr" {yylval = wims_mathml_copy_string("⋝"); return MO;} |
||
1290 | "\\npreccurlyeq" {yylval = wims_mathml_copy_string("⋠"); return MO;} |
||
1291 | "\\nsucccurlyeq" {yylval = wims_mathml_copy_string("⋡"); return MO;} |
||
1292 | "\\nsqsubseteq" {yylval = wims_mathml_copy_string("⋢"); return MO;} |
||
1293 | "\\nsqsupseteq" {yylval = wims_mathml_copy_string("⋣"); return MO;} |
||
1294 | "\\sqsubsetneq" {yylval = wims_mathml_copy_string("⋤"); return MO;} |
||
1295 | "\\sqsupsetneq" {yylval = wims_mathml_copy_string("⋥"); return MO;} |
||
1296 | "\\unicodecdots" {yylval = wims_mathml_copy_string("⋯"); return MO;} |
||
1297 | "\\adots" {yylval = wims_mathml_copy_string("⋰"); return MO;} |
||
1298 | "\\disin" {yylval = wims_mathml_copy_string("⋲"); return MO;} |
||
1299 | "\\longdivision" {yylval = wims_mathml_copy_string("⟌"); return MI;} |
||
1300 | "\\leftouterjoin" {yylval = wims_mathml_copy_string("⟕"); return MI;} |
||
1301 | "\\rightouterjoin" {yylval = wims_mathml_copy_string("⟖"); return MI;} |
||
1302 | "\\fullouterjoin" {yylval = wims_mathml_copy_string("⟗"); return MI;} |
||
1303 | "\\lBrack" {yylval = wims_mathml_copy_string("⟦"); return LEFTDELIM;} |
||
1304 | "\\rBrack" {yylval = wims_mathml_copy_string("⟧"); return RIGHTDELIM;} |
||
1305 | "\\lAngle" {yylval = wims_mathml_copy_string("⟪"); return LEFTDELIM;} |
||
1306 | "\\rAngle" {yylval = wims_mathml_copy_string("⟫"); return RIGHTDELIM;} |
||
1307 | "\\longrightsquigarrow" {yylval = wims_mathml_copy_string("⟿");return MOL;} |
||
1308 | "\\nvtwoheadrightarrow" {yylval = wims_mathml_copy_string("⤀");return MOL;} |
||
1309 | "\\nVtwoheadrightarrow" {yylval = wims_mathml_copy_string("⤁");return MOL;} |
||
1310 | "\\nvLeftarrow" {yylval = wims_mathml_copy_string("⤂");return MOL;} |
||
1311 | "\\nvRightarrow" {yylval = wims_mathml_copy_string("⤃");return MOL;} |
||
1312 | "\\nvLeftrightarrow" {yylval = wims_mathml_copy_string("⤄");return MOL;} |
||
1313 | "\\twoheadmapsto" {yylval = wims_mathml_copy_string("⤅");return MOL;} |
||
1314 | "\\Mapsfrom" {yylval = wims_mathml_copy_string("⤆");return MOL;} |
||
1315 | "\\rightdotarrow" {yylval = wims_mathml_copy_string("⤑");return MOL;} |
||
1316 | "\\baruparrow" {yylval = wims_mathml_copy_string("⤒");return MOL;} |
||
1317 | "\\downarrowbar" {yylval = wims_mathml_copy_string("⤓");return MOL;} |
||
1318 | "\\nvrightarrowtail" {yylval = wims_mathml_copy_string("⤔");return MOL;} |
||
1319 | "\\nVrightarrowtail" {yylval = wims_mathml_copy_string("⤕");return MOL;} |
||
1320 | "\\twoheadrightarrowtail" {yylval = wims_mathml_copy_string("⤖");return MOL;} |
||
1321 | "\\nvtwoheadrightarrowtail" {yylval = wims_mathml_copy_string("⤗");return MOL;} |
||
1322 | "\\nVtwoheadrightarrowtail" {yylval = wims_mathml_copy_string("⤘");return MOL;} |
||
1323 | "\\lefttail" {yylval = wims_mathml_copy_string("⤙");return MOL;} |
||
1324 | "\\righttail" {yylval = wims_mathml_copy_string("⤚");return MOL;} |
||
1325 | "\\leftdbltail" {yylval = wims_mathml_copy_string("⤛");return MOL;} |
||
1326 | "\\rightdbltail" {yylval = wims_mathml_copy_string("⤜");return MOL;} |
||
1327 | "\\diamondleftarrow" {yylval = wims_mathml_copy_string("⤝");return MOL;} |
||
1328 | "\\rightarrowdiamond" {yylval = wims_mathml_copy_string("⤞");return MOL;} |
||
1329 | "\\diamondleftarrowbar" {yylval = wims_mathml_copy_string("⤟");return MOL;} |
||
1330 | "\\barrightarrowdiamond" {yylval = wims_mathml_copy_string("⤠");return MOL;} |
||
1331 | "\\nwsearrow" {yylval = wims_mathml_copy_string("⤡");return MOL;} |
||
1332 | "\\neswarrow" {yylval = wims_mathml_copy_string("⤢");return MOL;} |
||
1333 | "\\hknwarrow" {yylval = wims_mathml_copy_string("⤣");return MOL;} |
||
1334 | "\\hknearrow" {yylval = wims_mathml_copy_string("⤤");return MOL;} |
||
1335 | "\\hksearow" {yylval = wims_mathml_copy_string("⤥");return MOL;} |
||
1336 | "\\hkswarow" {yylval = wims_mathml_copy_string("⤦");return MOL;} |
||
1337 | "\\tona" {yylval = wims_mathml_copy_string("⤧");return MOL;} |
||
1338 | "\\toea" {yylval = wims_mathml_copy_string("⤨");return MOL;} |
||
1339 | "\\tosa" {yylval = wims_mathml_copy_string("⤩");return MOL;} |
||
1340 | "\\towa" {yylval = wims_mathml_copy_string("⤪");return MOL;} |
||
1341 | "\\rdiagovfdiag" {yylval = wims_mathml_copy_string("⤫");return MOL;} |
||
1342 | "\\fdiagovrdiag" {yylval = wims_mathml_copy_string("⤬");return MOL;} |
||
1343 | "\\seovnearrow" {yylval = wims_mathml_copy_string("⤭");return MOL;} |
||
1344 | "\\neovsearrow" {yylval = wims_mathml_copy_string("⤮");return MOL;} |
||
1345 | "\\fdiagovnearrow" {yylval = wims_mathml_copy_string("⤯");return MOL;} |
||
1346 | "\\rdiagovsearrow" {yylval = wims_mathml_copy_string("⤰");return MOL;} |
||
1347 | "\\neovnwarrow" {yylval = wims_mathml_copy_string("⤱");return MOL;} |
||
1348 | "\\nwovnearrow" {yylval = wims_mathml_copy_string("⤲");return MOL;} |
||
1349 | "\\rightcurvedarrow" {yylval = wims_mathml_copy_string("⤳");return MOL;} |
||
1350 | "\\uprightcurvearrow" {yylval = wims_mathml_copy_string("⤴");return MOL;} |
||
1351 | "\\downrightcurvedarrow" {yylval = wims_mathml_copy_string("⤵");return MOL;} |
||
1352 | "\\leftdowncurvedarrow" {yylval = wims_mathml_copy_string("⤶");return MOL;} |
||
1353 | "\\rightdowncurvedarrow" {yylval = wims_mathml_copy_string("⤷");return MOL;} |
||
1354 | "\\cwrightarcarrow" {yylval = wims_mathml_copy_string("⤸");return MOL;} |
||
1355 | "\\acwleftarcarrow" {yylval = wims_mathml_copy_string("⤹");return MOL;} |
||
1356 | "\\acwoverarcarrow" {yylval = wims_mathml_copy_string("⤺");return MOL;} |
||
1357 | "\\acwunderarcarrow" {yylval = wims_mathml_copy_string("⤻");return MOL;} |
||
1358 | "\\curvearrowrightminus" {yylval = wims_mathml_copy_string("⤼");return MOL;} |
||
1359 | "\\curvearrowleftplus" {yylval = wims_mathml_copy_string("⤽");return MOL;} |
||
1360 | "\\cwundercurvearrow" {yylval = wims_mathml_copy_string("⤾");return MOL;} |
||
1361 | "\\ccwundercurvearrow" {yylval = wims_mathml_copy_string("⤿");return MOL;} |
||
1362 | "\\acwcirclearrow" {yylval = wims_mathml_copy_string("⥀");return MOL;} |
||
1363 | "\\cwcirclearrow" {yylval = wims_mathml_copy_string("⥁");return MOL;} |
||
1364 | "\\rightarrowshortleftarrow" {yylval = wims_mathml_copy_string("⥂");return MOL;} |
||
1365 | "\\leftarrowshortrightarrow" {yylval = wims_mathml_copy_string("⥃");return MOL;} |
||
1366 | "\\shortrightarrowleftarrow" {yylval = wims_mathml_copy_string("⥄");return MOL;} |
||
1367 | "\\rightarrowplus" {yylval = wims_mathml_copy_string("⥅");return MOL;} |
||
1368 | "\\leftarrowplus" {yylval = wims_mathml_copy_string("⥆");return MOL;} |
||
1369 | "\\rightarrowx" {yylval = wims_mathml_copy_string("⥇");return MOL;} |
||
1370 | "\\leftrightarrowcircle" {yylval = wims_mathml_copy_string("⥈");return MOL;} |
||
1371 | "\\twoheaduparrowcircle" {yylval = wims_mathml_copy_string("⥉");return MOL;} |
||
1372 | "\\leftrightharpoonupdown" {yylval = wims_mathml_copy_string("⥊");return MOL;} |
||
1373 | "\\leftrightharpoondownup" {yylval = wims_mathml_copy_string("⥋");return MOL;} |
||
1374 | "\\updownharpoonrightleft" {yylval = wims_mathml_copy_string("⥌");return MOL;} |
||
1375 | "\\updownharpoonleftright" {yylval = wims_mathml_copy_string("⥍");return MOL;} |
||
1376 | "\\leftrightharpoonupup" {yylval = wims_mathml_copy_string("⥎");return MOL;} |
||
1377 | "\\updownharpoonrightright" {yylval = wims_mathml_copy_string("⥏");return MOL;} |
||
1378 | "\\leftrightharpoondowndown" {yylval = wims_mathml_copy_string("⥐");return MOL;} |
||
1379 | "\\updownharpoonleftleft" {yylval = wims_mathml_copy_string("⥑");return MOL;} |
||
1380 | "\\barleftharpoonup" {yylval = wims_mathml_copy_string("⥒");return MOL;} |
||
1381 | "\\rightharpoonupbar" {yylval = wims_mathml_copy_string("⥓");return MOL;} |
||
1382 | "\\barupharpoonright" {yylval = wims_mathml_copy_string("⥔");return MOL;} |
||
1383 | "\\lParen" {yylval = wims_mathml_copy_string("⦅"); return LEFTDELIM;} |
||
1384 | "\\rParen" {yylval = wims_mathml_copy_string("⦆"); return RIGHTDELIM;} |
||
1385 | "\\llparenthesis" {yylval = wims_mathml_copy_string("⦇"); return LEFTDELIM;} |
||
1386 | "\\rrparenthesis" {yylval = wims_mathml_copy_string("⦈"); return RIGHTDELIM;} |
||
1387 | "\\llangle" {yylval = wims_mathml_copy_string("⦉"); return LEFTDELIM;} |
||
1388 | "\\rrangle" {yylval = wims_mathml_copy_string("⦊"); return RIGHTDELIM;} |
||
1389 | "\\lbrackubar" {yylval = wims_mathml_copy_string("⦋"); return LEFTDELIM;} |
||
1390 | "\\rbrackubar" {yylval = wims_mathml_copy_string("⦌"); return RIGHTDELIM;} |
||
1391 | "\\lbrackultick" {yylval = wims_mathml_copy_string("⦍"); return LEFTDELIM;} |
||
1392 | "\\rbracklrtick" {yylval = wims_mathml_copy_string("⦎"); return RIGHTDELIM;} |
||
1393 | "\\lbracklltick" {yylval = wims_mathml_copy_string("⦏"); return LEFTDELIM;} |
||
1394 | "\\rbrackurtick" {yylval = wims_mathml_copy_string("⦐"); return RIGHTDELIM;} |
||
1395 | "\\langledot" {yylval = wims_mathml_copy_string("⦑"); return LEFTDELIM;} |
||
1396 | "\\rangledot" {yylval = wims_mathml_copy_string("⦒"); return RIGHTDELIM;} |
||
1397 | "\\lparenless" {yylval = wims_mathml_copy_string("⦓"); return LEFTDELIM;} |
||
1398 | "\\rparengtr" {yylval = wims_mathml_copy_string("⦔"); return RIGHTDELIM;} |
||
1399 | "\\Lparengtr" {yylval = wims_mathml_copy_string("⦕"); return LEFTDELIM;} |
||
1400 | "\\Rparenless" {yylval = wims_mathml_copy_string("⦖"); return RIGHTDELIM;} |
||
1401 | "\\lblkbrbrak" {yylval = wims_mathml_copy_string("⦗"); return LEFTDELIM;} |
||
1402 | "\\rblkbrbrak" {yylval = wims_mathml_copy_string("⦘"); return RIGHTDELIM;} |
||
1403 | "\\fourvdots" {yylval = wims_mathml_copy_string("⦙"); return OTHERDELIM;} |
||
1404 | "\\vzigzag" {yylval = wims_mathml_copy_string("⦚"); return OTHERDELIM;} |
||
1405 | "\\measuredangleleft" {yylval = wims_mathml_copy_string("⦛"); return MI;} |
||
1406 | "\\rightanglesqr" {yylval = wims_mathml_copy_string("⦜"); return MI;} |
||
1407 | "\\rightanglemdot" {yylval = wims_mathml_copy_string("⦝"); return MI;} |
||
1408 | "\\angles" {yylval = wims_mathml_copy_string("⦞"); return MI;} |
||
1409 | "\\angdnr" {yylval = wims_mathml_copy_string("⦟"); return MI;} |
||
1410 | "\\gtlpar" {yylval = wims_mathml_copy_string("⦠"); return MI;} |
||
1411 | "\\sphericalangleup" {yylval = wims_mathml_copy_string("⦡"); return MI;} |
||
1412 | "\\turnangle" {yylval = wims_mathml_copy_string("⦢"); return MI;} |
||
1413 | "\\revangle" {yylval = wims_mathml_copy_string("⦣"); return MI;} |
||
1414 | "\\angleubar" {yylval = wims_mathml_copy_string("⦤"); return MI;} |
||
1415 | "\\revangleubar" {yylval = wims_mathml_copy_string("⦥"); return MI;} |
||
1416 | "\\wideangledown" {yylval = wims_mathml_copy_string("⦦"); return MI;} |
||
1417 | "\\wideangleup" {yylval = wims_mathml_copy_string("⦧"); return MI;} |
||
1418 | "\\measanglerutone" {yylval = wims_mathml_copy_string("⦨"); return MI;} |
||
1419 | "\\measanglelutonw" {yylval = wims_mathml_copy_string("⦩"); return MI;} |
||
1420 | "\\measanglerdtose" {yylval = wims_mathml_copy_string("⦪"); return MI;} |
||
1421 | "\\measangleldtosw" {yylval = wims_mathml_copy_string("⦫"); return MI;} |
||
1422 | "\\measangleurtone" {yylval = wims_mathml_copy_string("⦬"); return MI;} |
||
1423 | "\\measangleultonw" {yylval = wims_mathml_copy_string("⦭"); return MI;} |
||
1424 | "\\measangledrtose" {yylval = wims_mathml_copy_string("⦮"); return MI;} |
||
1425 | "\\measangledltosw" {yylval = wims_mathml_copy_string("⦯"); return MI;} |
||
1426 | "\\revemptyset" {yylval = wims_mathml_copy_string("⦰"); return MI;} |
||
1427 | "\\emptysetobar" {yylval = wims_mathml_copy_string("⦱"); return MI;} |
||
1428 | "\\emptysetocirc" {yylval = wims_mathml_copy_string("⦲"); return MI;} |
||
1429 | "\\emptysetoarr" {yylval = wims_mathml_copy_string("⦳"); return MI;} |
||
1430 | "\\emptysetoarrl" {yylval = wims_mathml_copy_string("⦴"); return MI;} |
||
1431 | "\\circlehbar" {yylval = wims_mathml_copy_string("⦵"); return MI;} |
||
1432 | "\\circledvert" {yylval = wims_mathml_copy_string("⦶"); return MO;} |
||
1433 | "\\circledparallel" {yylval = wims_mathml_copy_string("⦷"); return MO;} |
||
1434 | "\\obslash" {yylval = wims_mathml_copy_string("⦸"); return MO;} |
||
1435 | "\\operp" {yylval = wims_mathml_copy_string("⦹"); return MO;} |
||
1436 | "\\obot" {yylval = wims_mathml_copy_string("⦺"); return MI;} |
||
1437 | "\\olcross" {yylval = wims_mathml_copy_string("⦻"); return MI;} |
||
1438 | "\\odotslashdot" {yylval = wims_mathml_copy_string("⦼"); return MI;} |
||
1439 | "\\uparrowoncircle" {yylval = wims_mathml_copy_string("⦽"); return MI;} |
||
1440 | "\\circledwhitebullet" {yylval = wims_mathml_copy_string("⦾"); return MI;} |
||
1441 | "\\circledbullet" {yylval = wims_mathml_copy_string("⦿"); return MI;} |
||
1442 | "\\olessthan" {yylval = wims_mathml_copy_string("⧀"); return MO;} |
||
1443 | "\\ogreaterthan" {yylval = wims_mathml_copy_string("⧁"); return MO;} |
||
1444 | "\\cirscir" {yylval = wims_mathml_copy_string("⧂"); return MI;} |
||
1445 | "\\cirE" {yylval = wims_mathml_copy_string("⧃"); return MI;} |
||
1446 | "\\boxdiag" {yylval = wims_mathml_copy_string("⧄"); return MO;} |
||
1447 | "\\boxbslash" {yylval = wims_mathml_copy_string("⧅"); return MO;} |
||
1448 | "\\boxast" {yylval = wims_mathml_copy_string("⧆"); return MO;} |
||
1449 | "\\boxcircle" {yylval = wims_mathml_copy_string("⧇"); return MO;} |
||
1450 | "\\boxbox" {yylval = wims_mathml_copy_string("⧈"); return MO;} |
||
1451 | "\\boxonbox" {yylval = wims_mathml_copy_string("⧉"); return MI;} |
||
1452 | "\\triangleodot" {yylval = wims_mathml_copy_string("⧊"); return MI;} |
||
1453 | "\\triangleubar" {yylval = wims_mathml_copy_string("⧋"); return MI;} |
||
1454 | "\\triangles" {yylval = wims_mathml_copy_string("⧌"); return MI;} |
||
1455 | "\\triangleserifs" {yylval = wims_mathml_copy_string("⧍"); return MI;} |
||
1456 | "\\rtriltri" {yylval = wims_mathml_copy_string("⧎"); return MOL;} |
||
1457 | "\\ltrivb" {yylval = wims_mathml_copy_string("⧏"); return MOL;} |
||
1458 | "\\vbrtri" {yylval = wims_mathml_copy_string("⧐"); return MOL;} |
||
1459 | "\\lfbowtie" {yylval = wims_mathml_copy_string("⧑"); return MOL;} |
||
1460 | "\\rfbowtie" {yylval = wims_mathml_copy_string("⧒"); return MOL;} |
||
1461 | "\\fbowtie" {yylval = wims_mathml_copy_string("⧓"); return MOL;} |
||
1462 | "\\lftimes" {yylval = wims_mathml_copy_string("⧔"); return MOL;} |
||
1463 | "\\rftimes" {yylval = wims_mathml_copy_string("⧕"); return MOL;} |
||
1464 | "\\hourglass" {yylval = wims_mathml_copy_string("⧖"); return MO;} |
||
1465 | "\\blackhourglass" {yylval = wims_mathml_copy_string("⧗"); return MO;} |
||
1466 | "\\lvzigzag" {yylval = wims_mathml_copy_string("⧘"); return LEFTDELIM;} |
||
1467 | "\\rvzigzag" {yylval = wims_mathml_copy_string("⧙"); return RIGHTDELIM;} |
||
1468 | "\\Lvzigzag" {yylval = wims_mathml_copy_string("⧚"); return LEFTDELIM;} |
||
1469 | "\\Rvzigzag" {yylval = wims_mathml_copy_string("⧛"); return RIGHTDELIM;} |
||
1470 | "\\iinfin" {yylval = wims_mathml_copy_string("⧜"); return MI;} |
||
1471 | "\\tieinfty" {yylval = wims_mathml_copy_string("⧝"); return MI;} |
||
1472 | "\\nvinfty" {yylval = wims_mathml_copy_string("⧞"); return MI;} |
||
1473 | "\\dualmap" {yylval = wims_mathml_copy_string("⧟"); return MOL;} |
||
1474 | "\\laplac" {yylval = wims_mathml_copy_string("⧠"); return MI;} |
||
1475 | "\\lrtriangleeq" {yylval = wims_mathml_copy_string("⧡"); return MOL;} |
||
1476 | "\\shuffle" {yylval = wims_mathml_copy_string("⧢"); return MO;} |
||
1477 | "\\eparsl" {yylval = wims_mathml_copy_string("⧣"); return MOL;} |
||
1478 | "\\smeparsl" {yylval = wims_mathml_copy_string("⧤"); return MOL;} |
||
1479 | "\\eqvparsl" {yylval = wims_mathml_copy_string("⧥"); return MOL;} |
||
1480 | "\\gleichstark" {yylval = wims_mathml_copy_string("⧦"); return MOL;} |
||
1481 | "\\thermod" {yylval = wims_mathml_copy_string("⧧"); return MI;} |
||
1482 | "\\downtriangleleftblack" {yylval = wims_mathml_copy_string("⧨"); return MI;} |
||
1483 | "\\downtrianglerightblack" {yylval = wims_mathml_copy_string("⧩"); return MI;} |
||
1484 | "\\blackdiamonddownarrow" {yylval = wims_mathml_copy_string("⧪"); return MI;} |
||
1485 | "\\mdlgblklozenge" {yylval = wims_mathml_copy_string("⧫"); return MO;} |
||
1486 | "\\circledownarrow" {yylval = wims_mathml_copy_string("⧬"); return MI;} |
||
1487 | "\\blackcircledownarrow" {yylval = wims_mathml_copy_string("⧭"); return MI;} |
||
1488 | "\\errbarsquare" {yylval = wims_mathml_copy_string("⧮"); return MI;} |
||
1489 | "\\errbarblacksquare" {yylval = wims_mathml_copy_string("⧯"); return MI;} |
||
1490 | "\\errbardiamond" {yylval = wims_mathml_copy_string("⧰"); return MI;} |
||
1491 | "\\errbarblackdiamond" {yylval = wims_mathml_copy_string("⧱"); return MI;} |
||
1492 | "\\errbarcircle" {yylval = wims_mathml_copy_string("⧲"); return MI;} |
||
1493 | "\\errbarblackcircle" {yylval = wims_mathml_copy_string("⧳"); return MI;} |
||
1494 | "\\ruledelayed" {yylval = wims_mathml_copy_string("⧴"); return MOL;} |
||
1495 | "\\dsol" {yylval = wims_mathml_copy_string("⧶"); return MO;} |
||
1496 | "\\rsolbar" {yylval = wims_mathml_copy_string("⧷"); return MO;} |
||
1497 | "\\xsol" {yylval = wims_mathml_copy_string("⧸"); return MI;} |
||
1498 | "\\xbsol" {yylval = wims_mathml_copy_string("⧹"); return MI;} |
||
1499 | "\\handleft" {yylval=wims_mathml_copy_string("☜"); return MI;} |
||
1500 | "\\handright" {yylval=wims_mathml_copy_string("☞"); return MI;} |
||
1501 | "\\handup" {yylval=wims_mathml_copy_string("☝"); return MI;} |
||
1502 | "\\handdown" {yylval=wims_mathml_copy_string("☟"); return MI;} |
||
1503 | "\\OK" {yylval=wims_mathml_copy_string("☑"); return MI;} |
||
1504 | "\\NOK" {yylval=wims_mathml_copy_string("☒"); return MI;} |
||
1505 | "\\poison" {yylval=wims_mathml_copy_string("☠"); return MI;} |
||
1506 | "\\blitz" {yylval=wims_mathml_copy_string("⚡"); return MI;} |
||
1507 | "\\attention" {yylval=wims_mathml_copy_string("⚠"); return MI;} |
||
1508 | "\\nsmile" {yylval=wims_mathml_copy_string("☹"); return MI;} |
||
1509 | "\\vvvert" {yylval=wims_mathml_copy_string("⫼"); return OTHERDELIM;} |
||
5520 | bpr | 1510 | "\\ointclockwise" | |
11589 | schaersvoo | 1511 | "\\varointclockwise" {yylval=wims_mathml_copy_string("⨐"); return MO;} |
5520 | bpr | 1512 | "\\ointctrclockwise" | |
11589 | schaersvoo | 1513 | "\\varointctrclockwise" {yylval=wims_mathml_copy_string("⨑"); return MO;} |
1514 | "\\sqint" {yylval=wims_mathml_copy_string("⨖"); return MO;} |
||
1515 | "\\fint" {yylval=wims_mathml_copy_string("*OF;"); return MO;} |
||
5520 | bpr | 1516 | "\\diagup" {yylval=wims_mathml_copy_string("╱"); return OTHERDELIM;} |
1517 | "\\diagdown" {yylval=wims_mathml_copy_string("╲"); return OTHERDELIM;} |
||
11589 | schaersvoo | 1518 | "\\lmoustache" {yylval = wims_mathml_copy_string("⎰"); return OTHERDELIM;} |
1519 | "\\rmoustache" {yylval = wims_mathml_copy_string("⎱"); return OTHERDELIM;} |
||
5520 | bpr | 1520 | "\\bigint" | |
1521 | "\\bigintegral" {return BIGINT;} |
||
1522 | "\\biggint" | |
||
1523 | "\\biggintegral" {return BIGGINT;} |
||
1524 | "\\bigggint" | |
||
1525 | "\\bigggintegral" {return BIGGGINT;} |
||
8657 | schaersvoo | 1526 | "\\input{"\ {0,5}[0-9]{1,3}\ {0,5}"}{"[0-9]{1,3}\ {0,5}"}{"\ {0,5}[a-z0-9#\ :\-;.*?]{0,250}\ {0,5}"}{"\ {0,5}[a-zA-Z0-9#\ :\-\_\+\=\(\)\[\]\@\~\!\#\$\%\^\&\|\/\,;.*\^\?]{0,250}\ {0,5}"}{"\ {0,3}[0-1]\ {0,3}"}" {yylval=wims_mathml_copy_string(yytext); return INPUT;} |
16596 | bpr | 1527 | "\\lewis" {yylval=wims_mathml_copy_string(yytext); return LEWIS;} |
5520 | bpr | 1528 | "\\\\ \\\\" {wims_mathml_rowposn=2; yylval="\\\\ \\: \\\\";return ROWSEP;} |
1529 | "\\\\" {wims_mathml_rowposn=2;return ROWSEP;} |
||
1530 | "\\tabularnewline" {wims_mathml_rowposn=2; return ROWSEP;} |
||
11589 | schaersvoo | 1531 | "\\hline" {yylval=wims_mathml_copy_string(" ");; return MOP; } |
5520 | bpr | 1532 | "\\cr" {wims_mathml_rowposn=2; return ROWSEP;} |
1533 | "\\ " {return THICKSPACE;} |
||
1534 | "\\lbrack" {yylval=wims_mathml_copy_string("["); return OTHERDELIM;} |
||
1535 | "\\rbrack" {yylval=wims_mathml_copy_string("]"); return OTHERDELIM;} |
||
1536 | "\\RR" {yylval=wims_mathml_copy_string("ℝ"); return MI;} |
||
1537 | "\\QQ" {yylval=wims_mathml_copy_string("ℚ"); return MI;} |
||
1538 | "\\CC" {yylval=wims_mathml_copy_string("ℂ"); return MI;} |
||
1539 | "\\ZZ" {yylval=wims_mathml_copy_string("ℤ"); return MI;} |
||
1540 | "\\NN" {yylval=wims_mathml_copy_string("ℕ"); return MI;} |
||
1541 | "\\size["[0-9]{1,4}"]" {yylval=wims_mathml_copy_string(yytext+6);int len=strlen(yylval);if (yylval != wims_mathml_empty_string) { yylval[len-1]='%'; wims_mathml_env_start = 1; return TMP_FONTSIZE;}} |
||
5676 | bpr | 1542 | "\\large" { yylval=wims_mathml_copy_string("120%");wims_mathml_env_start = 1; return TMP_FONTSIZE;} |
1543 | "\\Large" { yylval=wims_mathml_copy_string("140%");wims_mathml_env_start = 1; return TMP_FONTSIZE;} |
||
1544 | "\\huge" { yylval=wims_mathml_copy_string("200%");wims_mathml_env_start = 1; return TMP_FONTSIZE;} |
||
1545 | "\\Huge" { yylval=wims_mathml_copy_string("250%");wims_mathml_env_start = 1; return TMP_FONTSIZE;} |
||
5916 | schaersvoo | 1546 | "\\cline{"\ {0,5}[0-9]{1,3}\ {0,5}-\ {0,5}[0-9]{1,3}\ {0,5}"}" |
11708 | schaersvoo | 1547 | "\\'(" {yylval=wims_mathml_copy_string("`("); return MI;} |
5676 | bpr | 1548 | "\\includegraphics"(\[[^\]]*\])?\{[^}]*\}; |
5520 | bpr | 1549 | |
1550 | "\\"[a-zA-Z]+ {yylval=wims_mathml_copy_string(yytext+1); return MOP;} |
||
1551 | |||
1552 | "\&"[a-zA-Z_][a-zA-Z0-9_]*";" | |
||
1553 | "\&#"[0-9]+";" | |
||
1554 | "\&#x"[a-fA-F0-9]+";" {yylval=wims_mathml_copy_string(yytext); return MI;} |
||
1555 | |||
1556 | "\n" wims_mathml_lineno++; |
||
1557 | [\r\t ]+ ; |
||
1558 | |||
1559 | |||
1560 | . {return UNKNOWNCHAR;} |
||
1561 | } |
||
1562 | |||
1563 | <ATTRIBUTELIST>"{"[ \t\n\r #a-zA-Z0-9.\-]*"}" {BEGIN(MATH); yylval=wims_mathml_copy_string(yytext); if (yylval != wims_mathml_empty_string) { yylval[0]='"'; yylval[yyleng-1]='"'; } return ATTRLIST;} |
||
1564 | |||
1565 | |||
1566 | <FINDARG>"{color="*[a-zA-Z]*"}" {BEGIN(MATH); yylval=wims_mathml_copy_string(yytext+6);int len=strlen(yylval);if (yylval != wims_mathml_empty_string) { yylval[0]='"'; yylval[len-1]='"'; } return ATTRLIST;} |
||
1567 | |||
1568 | |||
1569 | <OPTARG>{ |
||
1570 | "[" {if(wims_mathml_optarg_ind < wims_mathml_optarg_depth - 1 && wims_mathml_inoptarg[wims_mathml_optarg_ind] !=1 ){wims_mathml_optarg_ind++; wims_mathml_inoptarg[wims_mathml_optarg_ind]=1;}; BEGIN(MATH); return OPTARGOPEN;} |
||
1571 | [\n\r\t ]+ ; |
||
1572 | . {BEGIN(MATH); unput(yytext[0]);} |
||
1573 | } |
||
1574 | |||
1575 | <RAISEBOX1>{ |
||
1576 | \{[\n\r\t ]*- {BEGIN(RAISEBOX2); return NEG;} |
||
1577 | \{[\n\r\t ]* {BEGIN(RAISEBOX2);} |
||
1578 | } |
||
1579 | |||
1580 | <RAISEBOX2>{ |
||
1581 | [^\}]*?\} {yylval=wims_mathml_copy_string(yytext); if ((yyleng > 1) && (yylval != wims_mathml_empty_string)) yylval[yyleng-1]='\0'; BEGIN(TEXTOPTARG1); return TEXTSTRING;} |
||
1582 | } |
||
1583 | |||
1584 | |||
1585 | <TEXTOPTARG1>{ |
||
1586 | \[[^\]]*?\] {yylval=wims_mathml_copy_string(yytext+1); if ((yyleng > 1) && (yylval != wims_mathml_empty_string)) yylval[yyleng-2]='\0'; BEGIN(TEXTOPTARG); return TEXTSTRING;} |
||
1587 | . {BEGIN(MATH); unput(yytext[0]);} |
||
1588 | } |
||
1589 | |||
1590 | <TEXTOPTARG>{ |
||
1591 | \[[^\]]*?\] {yylval=wims_mathml_copy_string(yytext+1); if ((yyleng > 1) && (yylval != wims_mathml_empty_string)) yylval[yyleng-2]='\0'; BEGIN(MATH); return TEXTSTRING;} |
||
1592 | . {BEGIN(MATH); unput(yytext[0]);} |
||
1593 | } |
||
1594 | |||
1595 | <MATHENV>{ |
||
1596 | "\{matrix\}" {wims_mathml_env_start = 0; BEGIN(MATH); return MATRIX;} |
||
1597 | "\{pmatrix\}" {wims_mathml_env_start = 0; BEGIN(MATH); return PMATRIX;} |
||
1598 | "\{bmatrix\}" {wims_mathml_env_start = 0; BEGIN(MATH); return BMATRIX;} |
||
1599 | "\{Bmatrix\}" {wims_mathml_env_start = 0; BEGIN(MATH); return BBMATRIX;} |
||
1600 | "\{vmatrix\}" {wims_mathml_env_start = 0; BEGIN(MATH); return VMATRIX;} |
||
1601 | "\{Vmatrix\}" {wims_mathml_env_start = 0; BEGIN(MATH); return VVMATRIX;} |
||
1602 | "\{smallmatrix\}" {wims_mathml_env_start = 0; BEGIN(MATH); return SMALLMATRIX;} |
||
1603 | "\{cases\}" | |
||
1604 | "\{dcases\}" {wims_mathml_env_start = 0; BEGIN(MATH); return CASES;} |
||
1605 | "\{align*\}" | |
||
1606 | "\{align\}" | |
||
1607 | "\{aligned\}" {wims_mathml_env_start = 0; BEGIN(MATH); return ALIGNED;} |
||
1608 | "\{gathered\}" {wims_mathml_env_start = 0; BEGIN(MATH); return GATHERED;} |
||
1609 | "\{split\}" {wims_mathml_env_start = 0; BEGIN(MATH); return ALIGNED;} |
||
1610 | "\{array\}" | |
||
1611 | "\{alignat\}" {if (wims_mathml_env_start == 1) BEGIN(ARRAYOPTIONS); else BEGIN(MATH); return ARRAY;} |
||
1612 | "\{svg\}" {wims_mathml_env_start = 0; BEGIN(SVGENV); return SVG;} |
||
7332 | schaersvoo | 1613 | "\{html\}" {wims_mathml_env_start = 0; BEGIN(HTMLENV); return HTML;} |
5520 | bpr | 1614 | "\{equation\}" {wims_mathml_env_start = 0; BEGIN(MATH); return EQUATION;} |
1615 | "\{eqnarray\}" {wims_mathml_env_start = 0; BEGIN(MATH); return MATRIX;} |
||
1616 | |||
1617 | } |
||
1618 | |||
1619 | <ARRAYOPTIONS>{ |
||
1620 | "[t]" {yylval=wims_mathml_copy_string("axis 1"); return ARRAYALIGN;} |
||
1621 | "[c]" {yylval=wims_mathml_copy_string("center"); return ARRAYALIGN;} |
||
1622 | "[b]" {yylval=wims_mathml_copy_string("axis -1"); return ARRAYALIGN;} |
||
1623 | "\{" {BEGIN(COLOPTS); return ST;} |
||
1624 | [\t\n\r ]+ ; |
||
1625 | } |
||
1626 | |||
1627 | <COLOPTS>{ |
||
1628 | "\}" {wims_mathml_env_start = 0; BEGIN(MATH); return END;} |
||
11589 | schaersvoo | 1629 | [0-99rlc|.:_\-\ ]{0,99} { |
5520 | bpr | 1630 | wims_mathml_env_start=0; |
1631 | int p; |
||
1632 | // yyleng is length of last matched token eg "{ c |ccc|c } |
||
1633 | // 8 is max length of tag " center " ; 14 is length " columnalign=\"" 14+1 '\0' |
||
1634 | // {----c|c|c} |
||
1635 | int len = yyleng*8+15; |
||
1636 | char C[len]; |
||
1637 | char M[len]; |
||
1638 | char H[len]; |
||
1639 | memset(C,'\0',len);// fill memory with null |
||
1640 | memset(M,'\0',len); |
||
1641 | memset(H,'\0',len); |
||
1642 | strncat(C," columnalign=\"",14); |
||
1643 | strncat(M," columnlines=\"",14); |
||
1644 | strncat(H," rowlines=\"",11); |
||
11589 | schaersvoo | 1645 | /* {c|c|c|c---}*/ |
5520 | bpr | 1646 | for( p = 0; p < yyleng ; p++){ |
8456 | bpr | 1647 | if( strlen(C) < (len - 8) && strlen(M) < (len - 8)){ |
5520 | bpr | 1648 | /* in case of trouble...array M[len] or C[len] will be too small */ |
1649 | switch( yytext[p] ){ |
||
1650 | case 'c' : strncat(C," center ",8);break; |
||
1651 | case 'r' : strncat(C," right ",7);break; |
||
1652 | case 'l' : strncat(C," left ",6); break; |
||
11589 | schaersvoo | 1653 | case '|' : strncat(M," solid ",7);break; |
1654 | case ':' : strncat(M," dashed ",8);break; |
||
1655 | case '-' : strncat(H," solid ",7);break; |
||
1656 | case '_' : strncat(H," dashed ",8);break; |
||
1657 | case '.' : strncat(H," none ",6);break; |
||
1658 | case ' ' : break; |
||
1659 | default : strncat(M," none ",6);strncat(H," none ",6);break; |
||
5520 | bpr | 1660 | } |
1661 | } |
||
1662 | } |
||
11590 | schaersvoo | 1663 | /* 31/5/2017 bug in MathJax : rowlines="" will show rowlines */ |
1664 | if( strlen(M) < 16 ){ strncat(M," none ",6); } |
||
1665 | if( strlen(H) < 16 ){ strncat(H," none ",6); } |
||
5520 | bpr | 1666 | strncat(C,"\" ",2); |
1667 | strncat(M,"\" ",2); |
||
1668 | strncat(H,"\" ",2); |
||
8456 | bpr | 1669 | |
5520 | bpr | 1670 | yylval=wims_mathml_copy3(C,M,H); |
1671 | return TEX_OPTIONS; |
||
1672 | } |
||
1673 | } |
||
1674 | |||
1675 | <SVGENV>{ |
||
7332 | schaersvoo | 1676 | "\\end\{svg" { |
1677 | yylval = wims_mathml_copy_string(yytext); |
||
1678 | replace_str(yylval,"\\lt ","<"); |
||
1679 | replace_str(yylval,"\\gt ",">"); |
||
1680 | yyleng = strlen(yylval); |
||
1681 | yylval[yyleng-8]=0; BEGIN(SVGEND); return XMLSTRING;} |
||
5520 | bpr | 1682 | (.|\n) {yymore();} |
1683 | } |
||
1684 | |||
1685 | <SVGEND>{ |
||
1686 | "\}" {BEGIN(MATH); return ENDSVG;} |
||
1687 | } |
||
1688 | |||
7332 | schaersvoo | 1689 | <HTMLENV>{ |
1690 | "\\end\{html" { |
||
1691 | yylval = wims_mathml_copy_string(yytext); |
||
1692 | replace_str(yylval,"\\lt ","<"); |
||
1693 | replace_str(yylval,"\\gt ",">"); |
||
1694 | yyleng = strlen(yylval); |
||
1695 | yylval[yyleng-9]=0; BEGIN(HTMLEND); return XMLSTRING;} |
||
1696 | (.|\n) {yymore();} |
||
1697 | } |
||
1698 | |||
1699 | <HTMLEND>{ |
||
1700 | "\}" {BEGIN(MATH); return ENDHTML;} |
||
1701 | } |
||
1702 | |||
5520 | bpr | 1703 | <ROMAN>{ |
1704 | "\{" {return ST;} |
||
1705 | "\}" {BEGIN(MATH); return END;} |
||
1706 | [a-zA-Z] {yylval=wims_mathml_copy_string(yytext); return RMCHAR;} |
||
1707 | [\t\n\r ]+ ; |
||
1708 | . {return yytext[0];} |
||
1709 | } |
||
1710 | |||
1711 | <BBOLD>{ |
||
1712 | "\{" {return ST;} |
||
1713 | "\}" {BEGIN(MATH); return END;} |
||
1714 | [a-z] {yylval=wims_mathml_copy_string(yytext); return BBLOWERCHAR;} |
||
1715 | [A-Z] {yylval=wims_mathml_copy_string(yytext); return BBUPPERCHAR;} |
||
1716 | [0-9] {yylval=wims_mathml_copy_string(yytext); return BBDIGIT;} |
||
1717 | [\t\n\r ]+ ; |
||
1718 | . {return yytext[0];} |
||
1719 | } |
||
1720 | |||
1721 | <CALLIGRAPHIC>{ |
||
1722 | "\{" {return ST;} |
||
1723 | "\}" {BEGIN(MATH); return END;} |
||
1724 | [a-zA-Z] {yylval=wims_mathml_copy_string(yytext); return CALCHAR;} |
||
1725 | [\t\n\r ]+ ; |
||
1726 | . {return yytext[0];} |
||
1727 | } |
||
1728 | |||
1729 | <FRAKTUR>{ |
||
1730 | "\{" {return ST;} |
||
1731 | "\}" {BEGIN(MATH); return END;} |
||
1732 | [a-zA-Z] {yylval=wims_mathml_copy_string(yytext); return FRAKCHAR;} |
||
1733 | [\t\n\r ]+ ; |
||
1734 | . {return yytext[0];} |
||
1735 | } |
||
1736 | |||
1737 | <PLAINTEXT>{ |
||
1738 | \{[^\}]*?\} {yylval=wims_mathml_copy_string(yytext+1); if ((yyleng > 1) && (yylval != wims_mathml_empty_string)) yylval[yyleng-2]='\0'; BEGIN(MATH); return TEXTSTRING;} |
||
1739 | } |
||
1740 | |||
8456 | bpr | 1741 | <INT1>{ |
5520 | bpr | 1742 | "\{" {return ST;} |
1743 | "\}" {BEGIN(INT2); return END;} |
||
1744 | [0-9]+ {yylval=wims_mathml_copy_string_extra(yytext, 1); if (yyleng && (yylval != wims_mathml_empty_string)) { yylval[yyleng]=yylval[yyleng-1]; yylval[yyleng-1]='.'; yylval[yyleng+1]='\0'; } return INTONE;} |
||
1745 | [\t\n\r ]+ ; |
||
1746 | . {return yytext[0];} |
||
1747 | } |
||
1748 | |||
1749 | <INT2>{ |
||
1750 | "\{" {return ST;} |
||
1751 | "\}" {BEGIN(INT3); return END;} |
||
1752 | [0-9]+ {yylval=wims_mathml_copy_string_extra(yytext, 1); if (yyleng && (yylval != wims_mathml_empty_string)) { yylval[yyleng]=yylval[yyleng-1]; yylval[yyleng-1]='.'; yylval[yyleng+1]='\0'; } return INTTWO;} |
||
1753 | [\t\n\r ]+ ; |
||
1754 | . {return yytext[0];} |
||
1755 | } |
||
1756 | |||
1757 | <INT3>{ |
||
1758 | "\{" {return ST;} |
||
1759 | "\}" {BEGIN(MATH); return END;} |
||
1760 | [0-9]+ {yylval=wims_mathml_copy_string_extra(yytext, 1); if (yyleng && (yylval != wims_mathml_empty_string)) { yylval[yyleng]=yylval[yyleng-1]; yylval[yyleng-1]='.'; yylval[yyleng+1]='\0'; } return INTTHREE;} |
||
1761 | [\t\n\r ]+ ; |
||
1762 | . {return yytext[0];} |
||
1763 | } |
||
1764 | |||
1765 | |||
1766 | |||
1767 | %% |
||
1768 | |||
1769 | void wims_mathml_restart () |
||
1770 | { |
||
1771 | BEGIN(INITIAL); |
||
1772 | } |
||
1773 | |||
1774 | static const char * s_wims_mathml_buffer = 0; |
||
1775 | static unsigned long s_wims_mathml_length = 0; |
||
1776 | |||
1777 | void wims_mathml_setup (const char * buffer, unsigned long length) |
||
1778 | { |
||
1779 | yy_flush_buffer( YY_CURRENT_BUFFER ); |
||
1780 | |||
1781 | s_wims_mathml_buffer = buffer; |
||
1782 | s_wims_mathml_length = length; |
||
1783 | } |
||
1784 | |||
1785 | static int s_wims_mathml_read (char * buffer, int max_size) |
||
1786 | { |
||
1787 | int result = 0; |
||
1788 | |||
1789 | if (max_size < s_wims_mathml_length) |
||
1790 | { |
||
1791 | result = max_size; |
||
1792 | |||
1793 | memcpy (buffer, s_wims_mathml_buffer, max_size); |
||
1794 | |||
1795 | s_wims_mathml_buffer += max_size; |
||
1796 | s_wims_mathml_length -= max_size; |
||
1797 | } |
||
1798 | else |
||
1799 | { |
||
1800 | result = s_wims_mathml_length; |
||
1801 | |||
1802 | memcpy (buffer, s_wims_mathml_buffer, s_wims_mathml_length); |
||
1803 | |||
1804 | s_wims_mathml_buffer = 0; |
||
1805 | s_wims_mathml_length = 0; |
||
1806 | } |
||
1807 | return result; |
||
1808 | } |
||
1809 |