Rev 16596 | Blame | Compare with Previous | Last modification | View Log | RSS feed
/* wims_mathml 1.4.10
* wims_mathml.l last modified 6/16/2012
*/
%{
%}
%option noyywrap
%x MATH FINDARG ATTRIBUTELIST BBOLD FRAKTUR CALLIGRAPHIC ROMAN PLAINTEXT INT1 INT2 INT3 MATHENV SVGENV SVGEND HTMLENV HTMLEND OPTARG ARRAYOPTIONS COLOPTS TEXTOPTARG TEXTOPTARG1 RAISEBOX1 RAISEBOX2
%{
#include <string.h>
#define YYSTYPE char *
#include "y.tab.h"
#include "wims_mathml.h"
#define YY_NEVER_INTERACTIVE 1
#define YY_INPUT(buffer,result,max_size) result = s_wims_mathml_read (buffer, max_size)
static int s_wims_mathml_read (char * buffer, int max_size);
#define yylval wims_mathml_yylval
#define wims_mathml_optarg_depth 100
extern char * yylval;
int wims_mathml_shortcut = 0;
int wims_mathml_lineno = 1;
int wims_mathml_inoptarg[wims_mathml_optarg_depth];
int wims_mathml_optarg_ind = 0;
int wims_mathml_env_start = 0;
int wims_mathml_rowposn = 0;
int wims_mathml_displaymode = 0;
%}
%%
%{ if (wims_mathml_rowposn==1) wims_mathml_rowposn=0;
if (wims_mathml_rowposn==2) wims_mathml_rowposn=1;
%}
<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;
<INITIAL>"\\[" BEGIN(MATH); wims_mathml_inoptarg[0] = 0; wims_mathml_rowposn=2; wims_mathml_displaymode=1; return STARTDMATH;
<INITIAL>EOF return 0;
<INITIAL>"\n" {wims_mathml_lineno++; yylval=wims_mathml_copy_string(yytext); return CHAR;}
<INITIAL>. {yylval=wims_mathml_copy_string(yytext); return CHAR;}
<MATH>{
"$"{1,2} |
"\\]" {BEGIN(INITIAL); return ENDMATH;}
"^" return SUP;
"_" return SUB;
"{"[\t\r\n ]*"}" return EMPTYMROW;
"{" {wims_mathml_rowposn = 2; if(wims_mathml_inoptarg[wims_mathml_optarg_ind] != 0) wims_mathml_inoptarg[wims_mathml_optarg_ind]++; return MROWOPEN;}
"}" {if(wims_mathml_inoptarg[wims_mathml_optarg_ind] != 0) wims_mathml_inoptarg[wims_mathml_optarg_ind]--; return MROWCLOSE;}
"\\left" {wims_mathml_rowposn=2; return LEFT;}
"\\right" {return RIGHT;}
"\\big" |
"\\bigr" {return BIG;}
"\\Big" |
"\\Bigr" {return BBIG;}
"\\bigg" |
"\\biggr" {return BIGG;}
"\\Bigg" |
"\\Biggr" {return BBIGG;}
"\\bigl" {return BIGL;}
"\\Bigl" {return BBIGL;}
"\\biggl" {return BIGGL;}
"\\Biggl" {return BBIGGL;}
"\\mathrlap" {return RLAP;}
"\\mathllap" {return LLAP;}
"\\mathclap" {return CLAP;}
"\\rlap" |
"\\llap" |
"\\ulap" |
"\\dlap" {/* Ignore */ ;}
"&" |
"&" {wims_mathml_rowposn=2; return COLSEP;}
"\\&" {yylval=wims_mathml_copy_string("&"); return MI;}
"\\$" {yylval=wims_mathml_copy_string("$"); return MI;}
"\\%" {yylval=wims_mathml_copy_string("%"); return MI;}
[a-zA-Z]+ {yylval=wims_mathml_copy_string(yytext); return MI;}
[0-9]{1,3}(,[0-9]{3,3})*(\.[0-9]+)? |
[0-9]*[\.][0-9]+ |
[0-9]+ {yylval=wims_mathml_copy_string(yytext); return MN;}
"\\infty" |
"\\infinity" {yylval=wims_mathml_copy_string("∞"); return MN;}
"(" |
"[" {yylval=wims_mathml_copy_string(yytext); return LEFTDELIM;}
")" {yylval=wims_mathml_copy_string(yytext); return RIGHTDELIM;}
"]" {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;}}
"\\lgroup" |
"\\lpar" {yylval=wims_mathml_copy_string("("); return OTHERDELIM;}
"\\rgroup" |
"\\rpar" {yylval=wims_mathml_copy_string(")"); return OTHERDELIM;}
"\\lbracket" {yylval=wims_mathml_copy_string("["); return OTHERDELIM;}
"\\rbracket" {yylval=wims_mathml_copy_string("]"); return OTHERDELIM;}
"\\lbrace" |
"\\{" {yylval=wims_mathml_copy_string("{"); return OTHERDELIM;}
"\\rbrace" |
"\\}" {yylval=wims_mathml_copy_string("}"); return OTHERDELIM;}
"||" |
"\\||" |
"\\Arrowvert" |
"\\vert\\vert" |
"\\Vert" {yylval=wims_mathml_copy_string("∥"); return OTHERDELIM;}
"|" |
"\\|" |
"\\vert" |
"\\arrowvert" {yylval=wims_mathml_copy_string("∣"); return OTHERDELIM;}
"\\lvert" |
"\\bracevert" {yylval=wims_mathml_copy_string("∣"); return LEFTDELIM;}
"\\rvert" {yylval=wims_mathml_copy_string("∣"); return RIGHTDELIM;}
"\\setminus" {yylval=wims_mathml_copy_string("∖"); return MO;}
"\\backslash" {yylval=wims_mathml_copy_string("\"); return MO;}
"\\smallsetminus" {yylval=wims_mathml_copy_string("﹨"); return MOF;}
"\\sslash" {yylval=wims_mathml_copy_string("⫽"); return MO;}
"\\lfloor" |
"\\lceil" |
"\\lang" |
"\\langle" {yylval=wims_mathml_copy2(yytext, ";"); if (yylval != wims_mathml_empty_string) yylval[0]='&'; return LEFTDELIM;}
"\\rfloor" |
"\\rceil" |
"\\rang" |
"\\rangle" {yylval=wims_mathml_copy2(yytext, ";"); if (yylval != wims_mathml_empty_string) yylval[0]='&'; return RIGHTDELIM;}
"/" {yylval=wims_mathml_copy_string(yytext); return OTHERDELIM;}
"\\uparrow" |
"\\downarrow" |
"\\updownarrow" {yylval=wims_mathml_copy2(yytext, ";"); if (yylval != wims_mathml_empty_string) yylval[0]='&'; return OTHERDELIM;}
"." {yylval=wims_mathml_copy_string(yytext); return PERIODDELIM;}
"-" {if (wims_mathml_rowposn==1) return UNARYMINUS; else {yylval=wims_mathml_copy_string("−"); return MO;}}
"+" {if (wims_mathml_rowposn==1) return UNARYPLUS; else {yylval=wims_mathml_copy_string("+"); return MO;}}
"\\#" {yylval=wims_mathml_copy_string("#"); return MOL;}
"," |
":" |
"!" |
"=" |
"~" |
";" |
"?" |
"#" |
"`" |
"*" {yylval=wims_mathml_copy_string(yytext); return MOL;}
"\\prime" {yylval=wims_mathml_copy_string("′"); return MOLL;}
"'" {yylval=wims_mathml_copy_string("′"); return MOL;}
"''" {yylval=wims_mathml_copy_string("″"); return MOL;}
"'''" {yylval=wims_mathml_copy_string("‴"); return MOL;}
"''''" {yylval=wims_mathml_copy_string("⁗"); return MOL;}
"\\alpha" |
"\\beta" |
"\\gamma" |
"\\delta" |
"\\zeta" |
"\\eta" |
"\\theta" |
"\\iota" |
"\\kappa" |
"\\lambda" |
"\\mu" |
"\\nu" |
"\\xi" |
"\\pi" |
"\\rho" |
"\\sigma" |
"\\tau" |
"\\upsilon" |
"\\chi" |
"\\psi" |
"\\omega" |
"\\backepsilon" |
"\\varkappa" |
"\\varpi" |
"\\varrho" |
"\\varsigma" |
"\\vartheta" {yylval=wims_mathml_copy2(yytext, ";"); if (yylval != wims_mathml_empty_string) yylval[0]='&'; return MI;}
"\\varepsilon" {yylval=wims_mathml_copy_string("ε"); return MI;}
"\\phi" {yylval=wims_mathml_copy_string("ϕ"); return MI;}
"\\varphi" {yylval=wims_mathml_copy_string("φ"); return MI;}
"\\arccos" |
"\\arcsin" |
"\\arctan" |
"\\arg" |
"\\Arg" |
"\\cos" |
"\\cosh" |
"\\cot" |
"\\coth" |
"\\csc" |
"\\dim" |
"\\exp" |
"\\hom" |
"\\ker" |
"\\lg" |
"\\ln" |
"\\log" |
"\\sec" |
"\\sin" |
"\\sinh" |
"\\tan" |
"\\tanh" {yylval=wims_mathml_copy_string(yytext+1); return MI;}
"\\det" |
"\\gcd" |
"\\inf" |
"\\lim" |
"\\liminf" |
"\\limsup" |
"\\max" |
"\\min" |
"\\Pr" |
"\\sup" {yylval=wims_mathml_copy_string(yytext+1); return MIB;}
"\\omicron" {yylval=wims_mathml_copy_string("ℴ"); return MI;}
"\\epsilon" {yylval=wims_mathml_copy_string("ε"); return MI;}
"\\cdot" {yylval=wims_mathml_copy_string("⋅"); return MO;}
"\\Alpha" |
"\\Beta" |
"\\Delta" |
"\\Gamma" |
"\\digamma" |
"\\Lambda" |
"\\Pi" |
"\\Phi" |
"\\Psi" |
"\\Sigma" |
"\\Theta" |
"\\Xi" |
"\\Zeta" |
"\\Eta" |
"\\Iota" |
"\\Kappa" |
"\\Mu" |
"\\Nu" |
"\\Rho" |
"\\Tau" |
"\\mho" |
"\\Omega" {yylval=wims_mathml_copy2(yytext, ";"); if (yylval != wims_mathml_empty_string) yylval[0]='&'; return MI;}
"\\Upsilon" |
"\\Upsi" {yylval=wims_mathml_copy_string("ϒ"); return MI;}
"\\iff" {yylval=wims_mathml_copy_string("⇔"); return MOL;}
"\\longleftarrow" {yylval = wims_mathml_copy_string("⟵"); return MOL;}
"\\Longleftarrow" {yylval = wims_mathml_copy_string("⟸"); return MOL;}
"\\Longleftrightarrow" {yylval=wims_mathml_copy_string("⟺"); return MOL;}
"\\Leftrightarrow" {yylval=wims_mathml_copy_string("⇔"); return MOL;}
"\\longleftrightarrow" {yylval=wims_mathml_copy_string("⟷"); return MOL;}
"\\impliedby" |
"\\Leftarrow" {yylval=wims_mathml_copy_string("⇐"); return MOL;}
"\\implies" |
"\\Rightarrow" {yylval=wims_mathml_copy_string("⇒"); return MOL;}
"\\hookleftarrow" {yylval=wims_mathml_copy_string("↩"); return MOL;}
"\\embedsin" |
"\\hookrightarrow" {yylval=wims_mathml_copy_string("↪"); return MOL;}
"\\longrightarrow" {yylval=wims_mathml_copy_string("⟶"); return MOL;}
"\\Longrightarrow" {yylval=wims_mathml_copy_string("⟹"); return MOL;}
"\\leftarrow" {yylval=wims_mathml_copy_string("←"); return MOL;}
"\\to" |
"\\rightarrow" {yylval=wims_mathml_copy_string("→"); return MOL;}
"\\leftrightarrow" {yylval=wims_mathml_copy_string("↔"); return MOL;}
"\\longmapsto" {yylval = wims_mathml_copy_string("⟼"); return MOL;}
"\\Longmapsfrom" {yylval = wims_mathml_copy_string("⟽"); return MOL;}
"\\Longmapsto" {yylval = wims_mathml_copy_string("⟾"); return MOL;}
"\\mapsto" |
"\\map" {yylval=wims_mathml_copy_string("↦"); return MOL;}
"\\nearrow" |
"\\nearr" {yylval=wims_mathml_copy_string("↗"); return MOL;}
"\\nwarrow" |
"\\nwarr" {yylval=wims_mathml_copy_string("↖"); return MOL;}
"\\searrow" |
"\\searr" {yylval=wims_mathml_copy_string("↘"); return MOL;}
"\\swarrow" |
"\\swarr" {yylval=wims_mathml_copy_string("↙"); return MOL;}
"\\neArrow" |
"\\neArr" {yylval=wims_mathml_copy_string("⇗"); return MOL;}
"\\nwArrow" |
"\\nwArr" {yylval=wims_mathml_copy_string("⇖"); return MOL;}
"\\seArrow" |
"\\seArr" {yylval=wims_mathml_copy_string("⇘"); return MOL;}
"\\swArrow" |
"\\swArr" {yylval=wims_mathml_copy_string("⇙"); return MOL;}
"\\darr" {yylval=wims_mathml_copy_string("↓"); return MOL;}
"\\Downarrow" {yylval=wims_mathml_copy_string("⇓"); return MOL;}
"\\uparr" {yylval=wims_mathml_copy_string("↑"); return MOL;}
"\\Uparrow" {yylval=wims_mathml_copy_string("⇑"); return MOL;}
"\\downuparrow" |
"\\duparr" |
"\\updarr" {yylval=wims_mathml_copy_string("↕"); return MOL;}
"\\Updownarrow" {yylval=wims_mathml_copy_string("⇕"); return MOL;}
"\\leftsquigarrow" {yylval=wims_mathml_copy_string("⇜"); return MOL;}
"\\rightsquigarrow" {yylval=wims_mathml_copy_string("⇝"); return MOL;}
"\\dashleftarrow" {yylval=wims_mathml_copy_string("⤎"); return MOL;}
"\\dashrightarrow" {yylval=wims_mathml_copy_string("⤏"); return MOL;}
"\\curvearrowbotright" {yylval=wims_mathml_copy_string("⤻"); return MOL;}
"\\righttoleftarrow" {yylval=wims_mathml_copy_string("⟲"); return MOL;}
"\\lefttorightarrow" {yylval=wims_mathml_copy_string("⟳"); return MOL;}
"\\leftrightsquigarrow" |
"\\upuparrows" |
"\\rightleftarrows" |
"\\rightrightarrows" |
"\\curvearrowleft" |
"\\curvearrowright" |
"\\downdownarrows" |
"\\leftarrowtail" |
"\\rightarrowtail" |
"\\leftleftarrows" |
"\\leftrightarrows" |
"\\Lleftarrow" |
"\\Rrightarrow" |
"\\looparrowleft" |
"\\looparrowright" |
"\\Lsh" |
"\\Rsh" |
"\\circlearrowleft" |
"\\circlearrowright" |
"\\twoheadleftarrow" |
"\\twoheadrightarrow" |
"\\nLeftarrow" |
"\\nleftarrow" |
"\\nLeftrightarrow" |
"\\nleftrightarrow" |
"\\nRightarrow" |
"\\nrightarrow" |
"\\downharpoonleft" |
"\\downharpoonright" |
"\\leftrightharpoons" |
"\\rightleftharpoons" |
"\\upharpoonleft" |
"\\upharpoonright" {yylval=wims_mathml_copy2(yytext, ";"); if (yylval != wims_mathml_empty_string) yylval[0]='&'; return MOL;}
"\\xrightarrow" |
"\\xleftarrow" |
"\\xleftrightarrow" |
"\\xLeftarrow" |
"\\xRightarrow" |
"\\xLeftrightarrow" |
"\\xleftrightharpoons" |
"\\xrightleftharpoons" |
"\\xhookleftarrow" |
"\\xhookrightarrow" |
"\\xmapsto" {BEGIN(OPTARG); char * s1 = wims_mathml_copy_string(yytext+2); yylval = wims_mathml_copy3("&", s1, ";"); wims_mathml_free_string(s1); return XARROW;}
"\\dots" |
"\\ldots" {yylval=wims_mathml_copy_string("…"); return MI;}
"\\cdots" {yylval=wims_mathml_copy_string("⋯"); return MI;}
"\\ddots" {yylval=wims_mathml_copy_string("⋱"); return MI;}
"\\udots" {yylval=wims_mathml_copy_string("⋰"); return MI;}
"\\vdots" {yylval=wims_mathml_copy_string("⋮"); return MI;}
"\\colon" {yylval=wims_mathml_copy_string(":"); return MOR;}
"\\cup" |
"\&union;" |
"\\union" {yylval=wims_mathml_copy_string("∪"); return MOL;}
"\\bigcup" |
"\\Union" |
"\⋃" {yylval=wims_mathml_copy_string("⋃"); return MOB;}
"\\cap" |
"\\intersection" {yylval=wims_mathml_copy_string("∩"); return MOL;}
"\\bigcap" |
"\\Intersection" {yylval=wims_mathml_copy_string("⋂"); return MOB;}
"\\in" {yylval=wims_mathml_copy_string("∈"); return MOL;}
/* For some reason, Firefox does not put in the right spacing around some of these operators
* unless we ask for it, explicitly.
*/
"\\coloneqq" {yylval=wims_mathml_copy_string("≔"); return MOL;}
"\\Coloneqq" {yylval=wims_mathml_copy_string("⩴"); return MOS;}
"\\coloneq" {yylval=wims_mathml_copy_string("∶−"); return MOS;}
"\\Coloneq" {yylval=wims_mathml_copy_string("∷−"); return MOS;}
"\\eqqcolon" {yylval=wims_mathml_copy_string("≕"); return MOS;}
"\\Eqqcolon" {yylval=wims_mathml_copy_string("=∷"); return MOS;}
"\\eqcolon" {yylval=wims_mathml_copy_string("∹"); return MOS;}
"\\Eqcolon" {yylval=wims_mathml_copy_string("−∷"); return MOS;}
"\\colonapprox" {yylval=wims_mathml_copy_string("∶≈"); return MOS;}
"\\Colonapprox" {yylval=wims_mathml_copy_string("∷≈"); return MOS;}
"\\colonsim" {yylval=wims_mathml_copy_string("∶∼"); return MOS;}
"\\Colonsim" {yylval=wims_mathml_copy_string("∷∼"); return MOS;}
"\\dblcolon" {yylval=wims_mathml_copy_string("∷"); return MOL;}
"\\ast" |
"\\Cap" |
"\\Cup" |
"\\circledast" |
"\\circledcirc" |
"\\curlyvee" |
"\\curlywedge" |
"\\divideontimes" |
"\\dotplus" |
"\\leftthreetimes" |
"\\rightthreetimes" |
"\\veebar" |
"\\gt" |
"\\lt" |
"\\approxeq" |
"\\backsim" |
"\\backsimeq" |
"\\barwedge" |
"\\doublebarwedge" |
"\\subset" |
"\\subseteq" |
"\\subseteqq" |
"\\subsetneq" |
"\\subsetneqq" |
"\\varsubsetneq" |
"\\varsubsetneqq" |
"\\prec" |
"\\parallel" |
"\\nparallel" |
"\\shortparallel" |
"\\nshortparallel" |
"\\perp" |
"\\eqslantgtr" |
"\\eqslantless" |
"\\gg" |
"\\ggg" |
"\\geq" |
"\\geqq" |
"\\geqslant" |
"\\gneq" |
"\\gneqq" |
"\\gnapprox" |
"\\gnsim" |
"\\gtrapprox" |
"\\ge" |
"\\le" |
"\\leq" |
"\\leqq" |
"\\leqslant" |
"\\lessapprox" |
"\\lessdot" |
"\\lesseqgtr" |
"\\lesseqqgtr" |
"\\lessgtr" |
"\\lneq" |
"\\lneqq" |
"\\lnsim" |
"\\lvertneqq" |
"\\gtrsim" |
"\\gtrdot" |
"\\gtreqless" |
"\\gtreqqless" |
"\\gtrless" |
"\\gvertneqq" |
"\\lesssim" |
"\\lnapprox" |
"\\nsubset" |
"\\nsubseteq" |
"\\nsubseteqq" |
"\\notin" |
"\\ni" |
"\\notni" |
"\\nmid" |
"\\nshortmid" |
"\\preceq" |
"\\npreceq" |
"\\ll" |
"\\ngeq" |
"\\ngeqq" |
"\\ngeqslant" |
"\\nleq" |
"\\nleqq" |
"\\nleqslant" |
"\\nless" |
"\\supset" |
"\\supseteq" |
"\\supseteqq" |
"\\supsetneq" |
"\\supsetneqq" |
"\\varsupsetneq" |
"\\varsupsetneqq" |
"\\approx" |
"\\asymp" |
"\\bowtie" |
"\\dashv" |
"\\Vdash" |
"\\vDash" |
"\\VDash" |
"\\vdash" |
"\\Vvdash" |
"\\models" |
"\\sim" |
"\\simeq" |
"\\nsim" |
"\\smile" |
"\\triangle" |
"\\triangledown" |
"\\triangleleft" |
"\\cong" |
"\\succ" |
"\\nsucc" |
"\\ngtr" |
"\\nsupset" |
"\\nsupseteq" |
"\\propto" |
"\\equiv" |
"\\nequiv" |
"\\frown" |
"\\triangleright" |
"\\ncong" |
"\\succeq" |
"\\succapprox" |
"\\succnapprox" |
"\\succcurlyeq" |
"\\succsim" |
"\\succnsim" |
"\\nsucceq" |
"\\nvDash" |
"\\nvdash" |
"\\nVDash" |
"\\amalg" |
"\\pm" |
"\\mp" |
"\\bigcirc" |
"\\wr" |
"\\odot" |
"\\uplus" |
"\\clubsuit" |
"\\spadesuit" |
"\\Diamond" |
"\\diamond" |
"\\sqcup" |
"\\sqcap" |
"\\sqsubset" |
"\\sqsubseteq" |
"\\sqsupset" |
"\\sqsupseteq" |
"\\Subset" |
"\\Supset" |
"\\ltimes" |
"\\div" |
"\\rtimes" |
"\\bot" |
"\\therefore" |
"\\thickapprox" |
"\\thicksim" |
"\\varpropto" |
"\\varnothing" |
"\\flat" |
"\\vee" |
"\\because" |
"\\between" |
"\\Bumpeq" |
"\\bumpeq" |
"\\circeq" |
"\\curlyeqprec" |
"\\curlyeqsucc" |
"\\doteq" |
"\\doteqdot" |
"\\eqcirc" |
"\\fallingdotseq" |
"\\multimap" |
"\\pitchfork" |
"\\precapprox" |
"\\precnapprox" |
"\\preccurlyeq" |
"\\precsim" |
"\\precnsim" |
"\\risingdotseq" |
"\\sharp" |
"\\bullet" |
"\\nexists" |
"\\dagger" |
"\\ddagger" |
"\\not" |
"\\top" |
"\\natural" |
"\\angle" |
"\\measuredangle" |
"\\backprime" |
"\\bigstar" |
"\\blacklozenge" |
"\\lozenge" |
"\\blacksquare" |
"\\blacktriangle" |
"\\blacktriangleleft" |
"\\blacktriangleright" |
"\\blacktriangledown" |
"\\ntriangleleft" |
"\\ntriangleright" |
"\\ntrianglelefteq" |
"\\ntrianglerighteq" |
"\\trianglelefteq" |
"\\trianglerighteq" |
"\\triangleq" |
"\\vartriangleleft" |
"\\vartriangleright" |
"\\forall" |
"\\bigtriangleup" |
"\\bigtriangledown" |
"\\nprec" {yylval=wims_mathml_copy2(yytext, ";"); if (yylval != wims_mathml_empty_string) yylval[0]='&'; return MOL;}
"\\hrectangle" {yylval = wims_mathml_copy_string("▭"); return MI;}
"\\vrectangle" {yylval = wims_mathml_copy_string("▯"); return MI;}
"\\aleph" |
"\\beth" |
"\\eth" |
"\\ell" |
"\\hbar" |
"\\Im" |
"\\imath" |
"\\jmath" |
"\\wp" |
"\\Re" {yylval=wims_mathml_copy2(yytext, ";"); if (yylval != wims_mathml_empty_string) yylval[0]='&'; return MI;}
"\\Perp" |
"\\Vbar" {yylval=wims_mathml_copy_string("⫫"); return MOL;}
"\\boxdot" {yylval=wims_mathml_copy_string("⊡"); return MOL;}
"\\Box" |
"\\square" {yylval=wims_mathml_copy_string("□"); return MOL;}
"\\emptyset" |
"\\empty" {yylval=wims_mathml_copy_string("∅"); return MI;}
"\\exists" {yylval=wims_mathml_copy_string("∃"); return MOL;}
"\\circ" {yylval=wims_mathml_copy_string("∘"); return MOL;}
"\\rhd" {yylval=wims_mathml_copy_string("⊳"); return MOL;}
"\\lhd" {yylval=wims_mathml_copy_string("⊲"); return MOL;}
"\\lll" {yylval=wims_mathml_copy_string("⋘"); return MOL;}
"\\unrhd" {yylval=wims_mathml_copy_string("⊵"); return MOL;}
"\\unlhd" {yylval=wims_mathml_copy_string("⊴"); return MOL;}
"\\Del" |
"\\nabla" {yylval=wims_mathml_copy_string("∇"); return MOL;}
"\\sphericalangle" {yylval=wims_mathml_copy_string("∢"); return MOL;}
"\\heartsuit" {yylval=wims_mathml_copy_string("♡"); return MOL;}
"\\diamondsuit" {yylval=wims_mathml_copy_string("♢"); return MOL;}
"\\partial" {yylval=wims_mathml_copy_string("∂"); return MOL;}
"\\qed" {yylval=wims_mathml_copy_string("▪"); return MO;}
"\\mod" {yylval=wims_mathml_copy_string("mod"); return MOS;}
"\\bmod" {yylval=wims_mathml_copy_string("mod"); return MOS;}
"\\pmod" {return PMOD;}
"\\bottom" {yylval=wims_mathml_copy_string("⊥"); return MOL;}
"\\neg" {yylval=wims_mathml_copy_string("¬"); return MOL;}
"\\neq" |
"\\ne" |
"\\not =" |
"\\not=" {yylval=wims_mathml_copy_string("≠"); return MOL;}
"\\not\\subset" {yylval=wims_mathml_copy_string("⊄"); return MOL;}
"\\not\\in" |
"\\not \\in" {yylval=wims_mathml_copy_string("∉"); return MOL;}
"\\shortmid" |
"\\mid" {yylval=wims_mathml_copy_string("∣"); return MOS;}
"\\int" |
"\\integral" {return LARGERINT;}
"\\iint" |
"\\doubleintegral" {yylval=wims_mathml_copy_string("∬"); return MOL;}
"\\iiint" |
"\\tripleintegral" {yylval=wims_mathml_copy_string("∭"); return MOL;}
"\\iiiint" |
"\\quadrupleintegral" {yylval=wims_mathml_copy_string("⨌"); return MOL;}
"\\oint" |
"\\conint" |
"\\contourintegral" {yylval=wims_mathml_copy_string("∮"); return MOL;}
"\\times" {yylval=wims_mathml_copy_string("×"); return MOL;}
"\\star" {yylval=wims_mathml_copy_string("⋆"); return MOL;}
"\\circleddash" |
"\\odash" {yylval=wims_mathml_copy_string("⊝"); return MOL;}
"\\intercal" {yylval=wims_mathml_copy_string("⊺"); return MOL;}
"\\smallfrown" {yylval=wims_mathml_copy_string("⌢"); return MOL;}
"\\smallsmile" {yylval=wims_mathml_copy_string("⌣"); return MOL;}
"\\boxminus" |
"\\minusb" {yylval=wims_mathml_copy_string("⊟"); return MOL;}
"\\boxplus" |
"\\plusb" {yylval=wims_mathml_copy_string("⊞"); return MOL;}
"\\boxtimes" |
"\\timesb" {yylval=wims_mathml_copy_string("⊠"); return MOL;}
"\\sum" {yylval=wims_mathml_copy_string("∑"); return MOB;}
"\\prod" |
"\\product" {yylval=wims_mathml_copy_string("∏"); return MOB;}
"\\coprod" |
"\\coproduct" {yylval=wims_mathml_copy_string("∐"); return MOB;}
"\\otimes" {yylval=wims_mathml_copy_string("⊗"); return MOL;}
"\\Otimes" {yylval=wims_mathml_copy_string("⨷"); return MOL;}
"\\bigotimes" {yylval=wims_mathml_copy_string("⨂"); return MOL;}
"\\ominus" {yylval=wims_mathml_copy_string("⊖"); return MOL;}
"\\oslash" {yylval=wims_mathml_copy_string("⊘"); return MOL;}
"\\oplus" {yylval=wims_mathml_copy_string("⊕"); return MOL;}
"\\Oplus" |
"\\bigoplus" {yylval=wims_mathml_copy_string("⨁"); return MOB;}
"\\bigodot" {yylval=wims_mathml_copy_string("⨀"); return MOB;}
"\\bigsqcup" {yylval=wims_mathml_copy_string("⨆"); return MOB;}
"\\bigsqcap" {yylval=wims_mathml_copy_string("⨅"); return MOB;}
"\\biginterleave" {yylval=wims_mathml_copy_string("⫼"); return MOB;}
"\\biguplus" {yylval=wims_mathml_copy_string("⨄"); return MOB;}
"\\wedge" {yylval=wims_mathml_copy_string("∧"); return MOL;}
"\\Wedge" |
"\\bigwedge" {yylval=wims_mathml_copy_string("⋀"); return MOB;}
"\\Vee" |
"\\bigvee" {yylval=wims_mathml_copy_string("⋁"); return MOB;}
"\\invamp" |
"\\parr" {yylval=wims_mathml_copy_string("⅋"); return MOL;}
"\\frac" {return FRAC;}
"\\tfrac" {return TFRAC;}
"\\dfrac" {return DFRAC;}
"\\sfrac" {return SFRAC;}
"\\binom" {return BINOM;}
"\\choose" {return BINOM2;}
"\\tbinom" {return TBINOM;}
"\\tensor" {return TENSOR;}
"\\multiscripts" {return MULTI;}
"\\overbrace" {return OVERBRACE;}
"\\underbrace" {return UNDERBRACE;}
"\\underline" {return UNDERLINE;}
"\\bar" {return BAR;}
"\\overline" |
"\\closure" |
"\\widebar" {return WIDEBAR;}
"\\vec" { return VEC;}
"\\widevec" {return WIDEVEC;}
"\\limits" {/* Ignore */ ;}
"\\overrightarrow" {yylval = wims_mathml_copy_string("→"); return OVERARROW;}
"\\overleftarrow" {yylval = wims_mathml_copy_string("←"); return OVERARROW;}
"\\overleftrightarrow" {yylval = wims_mathml_copy_string("↔"); return OVERARROW;}
"\\overrightharpoonup" {yylval = wims_mathml_copy_string("⇀"); return OVERARROW;}
"\\overrightharpoondown" {yylval = wims_mathml_copy_string("⇁"); return OVERARROW;}
"\\underrightarrow" {yylval = wims_mathml_copy_string("→"); return UNDERARROW;}
"\\underleftarrow" {yylval = wims_mathml_copy_string("←"); return UNDERARROW;}
"\\underleftrightarrow" {yylval = wims_mathml_copy_string("↔"); return UNDERARROW;}
"\\underrightharpoonup" {yylval = wims_mathml_copy_string("⇀"); return UNDERARROW;}
"\\underrightharpoondown" {yylval = wims_mathml_copy_string("⇁"); return UNDERARROW;}
"\\dot" {return DOT;}
"\\ddot" {return DDOT;}
"\\dddot" {return DDDOT;}
"\\ddddot" {return DDDDOT;}
"\\P" {yylval=wims_mathml_copy_string("¶"); return MI;}
"\\copyright" {yylval=wims_mathml_copy_string("©"); return MI;}/* copyright*/
"\\deg" {yylval=wims_mathml_copy_string("°"); return MI;}/* not in wims latex: high small round o */
"\\Celcius" {yylval=wims_mathml_copy_string("℃"); return MI;} /* not in wims latex: degree Celcius */
"\\Fahrenheit" {yylval=wims_mathml_copy_string("℉"); return MI;} /* not in wims latex: degree Fahrenheit */
"\\i" {yylval=wims_mathml_copy_string("ı"); return MI;} /* dotless i*/
"\\j" {yylval=wims_mathml_copy_string("ȷ"); return MI;} /* dotless j*/
"\\"[~\^\"`'kl=bdruvtoOHct\.] { /* " accents , some are already in other syntax: \\ddot{i} etc */
yylval = wims_mathml_copy_string(yytext+1);
if ((yyleng > 1) && (yylval != wims_mathml_empty_string)) yylval[yyleng+1]='\0';
return ACCENTS;
}
"\\tilde" {return TILDE;}
"\\widetilde" {return WIDETILDE;}
"\\check" {return CHECK;}
"\\widecheck" {return WIDECHECK;}
"\\hat" {return HAT;}
"\\widehat" {return WIDEHAT;}
"\\underset" {return UNDER;}
"\\stackrel" |
"\\overset" {return OVER;}
"\\brack" { wims_mathml_shortcut = 0; return BRACK;}
"\\brace" { wims_mathml_shortcut = 1; return BRACK;}
"\\over" {return TEXOVER;}
"\\atop" {return TEXATOP;}
"\\underoverset" {return UNDEROVER;}
"\\sqrt" {BEGIN(OPTARG); return SQRT;}
"\\root" {return ROOT;}
"\\of"
"\\nonumber" {yylval=wims_mathml_copy_string(" "); return MI;}
"\\space" {BEGIN(INT1); return SPACE;}
"\\*" {yylval=wims_mathml_copy_string("⁢"); return MI;}
"\\text" |
"\\textrm" |
"\\mbox" {BEGIN(PLAINTEXT); return TEXTBOX;}
"\\statusline" {BEGIN(PLAINTEXT); return STATLINE;}
"\\tooltip" {BEGIN(PLAINTEXT); return TOOLTIP;}
"\\toggle" {return TOGGLE;}
"\\mathraisebox" {BEGIN(RAISEBOX1); return RAISEBOX;}
"\\fghilight" |
"\\fghighlight" {BEGIN(ATTRIBUTELIST); return FGHIGHLIGHT;}
"\\bghilight" |
"\\bghighlight" {BEGIN(ATTRIBUTELIST); return BGHIGHLIGHT;}
"\\special" {BEGIN(FINDARG); return SPECIAL;}
"\\color" |
"\\textcolor" {BEGIN(ATTRIBUTELIST); return COLOR;}
"\\bgcolor" {BEGIN(ATTRIBUTELIST); return BGCOLOR;}
"\\displaystyle" {wims_mathml_displaymode=1; wims_mathml_rowposn=2; return DISPLAY;}
"\\textstyle" {wims_mathml_displaymode=0; wims_mathml_rowposn=2; return TEXTSTY;}
"\\textsize" {return TEXTSIZE;}
"\\scriptsize" {return SCSIZE;}
"\\scriptscriptsize" {return SCSCSIZE;}
"\\mathit" |
"\\it" |
"\\emph" {return ITALICS;}
"\\boldsymbol" |
"\\bf" |
"\\Bf" |
"\\mathbf" {return BOLD;}
"\\mathrm" |
"\\rm" {BEGIN(ROMAN); return RM;}
"\\rm " { return WIMSROMAN;}
"\\mathbb" {BEGIN(BBOLD); return BB;}
"\\mathfrak" |
"\\mathfr" {BEGIN(FRAKTUR); return FRAK;}
"\\slash" |
"\\cancel" {return SLASHED;}
"\\boxed" {return BOXED;}
"\\mathcal" {BEGIN(CALLIGRAPHIC); return CAL;}
"\\begin" {wims_mathml_env_start = 1; BEGIN(MATHENV); return BEGINENV;}
"\\end" {BEGIN(MATHENV); return ENDENV;}
"\\cases" {wims_mathml_shortcut = 0;return SHORTARRAY;}
"\\Bmatrix" {wims_mathml_shortcut = 1;return SHORTARRAY;}
"\\pmatrix" {wims_mathml_shortcut = 2;return SHORTARRAY;}
"\\vmatrix" {wims_mathml_shortcut = 3;return SHORTARRAY;}
"\\Vmatrix" {wims_mathml_shortcut = 4;return SHORTARRAY;}
"\\aligned" {wims_mathml_shortcut = 5;return SHORTARRAY;}
"\\substack" {return SUBSTACK;}
"\\array" {return ARRAY;}
"\\arrayopts" {return ARRAYOPTS;}
"\\colalign" {BEGIN(ATTRIBUTELIST); return COLALIGN;}
"\\collayout" {BEGIN(ATTRIBUTELIST); return COLLAYOUT;}
"\\rowalign" {BEGIN(ATTRIBUTELIST); return ROWALIGN;}
"\\align" {BEGIN(ATTRIBUTELIST); return ALIGN;}
"\\equalrows" {BEGIN(ATTRIBUTELIST); return EQROWS;}
"\\equalcols" {BEGIN(ATTRIBUTELIST); return EQCOLS;}
"\\rowlines" {BEGIN(ATTRIBUTELIST); return ROWLINES;}
"\\collines" {BEGIN(ATTRIBUTELIST); return COLLINES;}
"\\frame" {BEGIN(ATTRIBUTELIST); return FRAME;}
"\\padding" {BEGIN(ATTRIBUTELIST); return PADDING;}
"\\rowopts" {return ROWOPTS;}
"\\cellopts" {return CELLOPTS;}
"\\rowspan" {BEGIN(ATTRIBUTELIST); return ROWSPAN;}
"\\colspan" {BEGIN(ATTRIBUTELIST); return COLSPAN;}
"\\," |
"\\thinspace" {return THINSPACE;}
"\\:" |
"\\medspace" {return MEDSPACE;}
"\\;" |
"\\thickspace" {return THICKSPACE;}
"\\quad" {return QUAD;}
"\\qquad" {return QQUAD;}
"\\!" |
"\\negspace" {return NEGSPACE;}
"\\phantom" |
"\\vphantom" {return PHANTOM;}
"\\href" {BEGIN(PLAINTEXT); return HREF;}
"\\operatorname" {BEGIN(PLAINTEXT); return OPERATORNAME;}
"\\mathop" {BEGIN(PLAINTEXT); return MATHOP;}
"\\mathbin" {BEGIN(PLAINTEXT); return MATHBIN;}
"\\mathrel" {BEGIN(PLAINTEXT); return MATHREL;}
"\\itexnum" {BEGIN(PLAINTEXT); return ITEXNUM;}
"\\char32" {yylval = wims_mathml_copy_string("␣"); return MI;}
"\\char44" {yylval = wims_mathml_copy_string(","); return MI;}
"\\exclam" {yylval = wims_mathml_copy_string("!"); return MI;}
"\\octothorpe" {yylval = wims_mathml_copy_string("#"); return MI;}
"\\mathdollar" {yylval = wims_mathml_copy_string("$"); return MI;}
"\\percent" {yylval = wims_mathml_copy_string("%"); return MI;}
"\\ampersand" {yylval = wims_mathml_copy_string("&"); return MI;}
"\\lparen" {yylval = wims_mathml_copy_string("("); return LEFTDELIM;}
"\\rparen" {yylval = wims_mathml_copy_string(")"); return RIGHTDELIM;}
"\\plus" {yylval = wims_mathml_copy_string("+"); return MO;}
"\\period" {yylval = wims_mathml_copy_string("."); return MOP;}
"\\mathslash" {yylval = wims_mathml_copy_string("/"); return MO;}
"\\mathcolon" {yylval = wims_mathml_copy_string(":"); return MOP;}
"\\semicolon" {yylval = wims_mathml_copy_string(";"); return MOP;}
"\\less" {yylval = wims_mathml_copy_string("<"); return MO;}
"\\equal" {yylval = wims_mathml_copy_string("="); return MO;}
"\\greater" {yylval = wims_mathml_copy_string(">"); return MO;}
"\\question" {yylval = wims_mathml_copy_string("?"); return MOP;}
"\\atsign" {yylval = wims_mathml_copy_string("@"); return MI;}
"\\sterling" {yylval = wims_mathml_copy_string("£"); return MI;}
"\\yen" {yylval = wims_mathml_copy_string("¥"); return MI;}
"\\cdotp" {yylval = wims_mathml_copy_string("·"); return MO;}
"\\matheth" {yylval = wims_mathml_copy_string("ð"); return MI;}
"\\Zbar" {yylval = wims_mathml_copy_string("Ƶ"); return MI;}
"\\grave" {yylval = wims_mathml_copy_string("̀"); return MI;}
"\\acute" {yylval = wims_mathml_copy_string("́"); return MI;}
"\\overbar" {yylval = wims_mathml_copy_string("̅"); return MI;}
"\\breve" {yylval = wims_mathml_copy_string("̆"); return MI;}
"\\ovhook" {yylval = wims_mathml_copy_string("̉"); return MI;}
"\\ocirc" {yylval = wims_mathml_copy_string("̊"); return MI;}
"\\candra" {yylval = wims_mathml_copy_string("̐"); return MI;}
"\\oturnedcomma" {yylval = wims_mathml_copy_string("̒"); return MI;}
"\\ocommatopright" {yylval = wims_mathml_copy_string("̕"); return MI;}
"\\droang" {yylval = wims_mathml_copy_string("̚"); return MI;}
"\\wideutilde" {yylval = wims_mathml_copy_string("̰"); return MI;}
"\\underbar" {yylval = wims_mathml_copy_string("̱"); return MI;}
"\\upAlpha" {yylval = wims_mathml_copy_string("Α"); return MI;}
"\\upBeta" {yylval = wims_mathml_copy_string("Β"); return MI;}
"\\upGamma" {yylval = wims_mathml_copy_string("Γ"); return MI;}
"\\upDelta" {yylval = wims_mathml_copy_string("Δ"); return MI;}
"\\upEpsilon" {yylval = wims_mathml_copy_string("Ε"); return MI;}
"\\upZeta" {yylval = wims_mathml_copy_string("Ζ"); return MI;}
"\\upEta" {yylval = wims_mathml_copy_string("Η"); return MI;}
"\\upTheta" {yylval = wims_mathml_copy_string("Θ"); return MI;}
"\\upIota" {yylval = wims_mathml_copy_string("Ι"); return MI;}
"\\upKappa" {yylval = wims_mathml_copy_string("Κ"); return MI;}
"\\upLambda" {yylval = wims_mathml_copy_string("Λ"); return MI;}
"\\upMu" {yylval = wims_mathml_copy_string("Μ"); return MI;}
"\\upNu" {yylval = wims_mathml_copy_string("Ν"); return MI;}
"\\upXi" {yylval = wims_mathml_copy_string("Ξ"); return MI;}
"\\upOmicron" {yylval = wims_mathml_copy_string("Ο"); return MI;}
"\\upPi" {yylval = wims_mathml_copy_string("Π"); return MI;}
"\\upRho" {yylval = wims_mathml_copy_string("Ρ"); return MI;}
"\\upSigma" {yylval = wims_mathml_copy_string("Σ"); return MI;}
"\\upTau" {yylval = wims_mathml_copy_string("Τ"); return MI;}
"\\upUpsilon" {yylval = wims_mathml_copy_string("Υ"); return MI;}
"\\upPhi" {yylval = wims_mathml_copy_string("Φ"); return MI;}
"\\upChi" {yylval = wims_mathml_copy_string("Χ"); return MI;}
"\\upPsi" {yylval = wims_mathml_copy_string("Ψ"); return MI;}
"\\upOmega" {yylval = wims_mathml_copy_string("Ω"); return MI;}
"\\upalpha" {yylval = wims_mathml_copy_string("α"); return MI;}
"\\upbeta" {yylval = wims_mathml_copy_string("β"); return MI;}
"\\upgamma" {yylval = wims_mathml_copy_string("γ"); return MI;}
"\\updelta" {yylval = wims_mathml_copy_string("δ"); return MI;}
"\\upepsilon" {yylval = wims_mathml_copy_string("ε"); return MI;}
"\\upzeta" {yylval = wims_mathml_copy_string("ζ"); return MI;}
"\\upeta" {yylval = wims_mathml_copy_string("η"); return MI;}
"\\uptheta" {yylval = wims_mathml_copy_string("θ"); return MI;}
"\\upiota" {yylval = wims_mathml_copy_string("ι"); return MI;}
"\\upkappa" {yylval = wims_mathml_copy_string("κ"); return MI;}
"\\uplambda" {yylval = wims_mathml_copy_string("λ"); return MI;}
"\\upmu" {yylval = wims_mathml_copy_string("μ"); return MI;}
"\\upnu" {yylval = wims_mathml_copy_string("ν"); return MI;}
"\\upxi" {yylval = wims_mathml_copy_string("ξ"); return MI;}
"\\upomicron" {yylval = wims_mathml_copy_string("ο"); return MI;}
"\\uppi" {yylval = wims_mathml_copy_string("π"); return MI;}
"\\uprho" {yylval = wims_mathml_copy_string("ρ"); return MI;}
"\\upvarsigma" {yylval = wims_mathml_copy_string("ς"); return MI;}
"\\upsigma" {yylval = wims_mathml_copy_string("σ"); return MI;}
"\\uptau" {yylval = wims_mathml_copy_string("τ"); return MI;}
"\\upupsilon" {yylval = wims_mathml_copy_string("υ"); return MI;}
"\\upvarphi" {yylval = wims_mathml_copy_string("φ"); return MI;}
"\\upchi" {yylval = wims_mathml_copy_string("χ"); return MI;}
"\\uppsi" {yylval = wims_mathml_copy_string("ψ"); return MI;}
"\\upomega" {yylval = wims_mathml_copy_string("ω"); return MI;}
"\\upvarbeta" {yylval = wims_mathml_copy_string("ϐ"); return MI;}
"\\upvartheta" {yylval = wims_mathml_copy_string("ϑ"); return MI;}
"\\upphi" {yylval = wims_mathml_copy_string("ϕ"); return MI;}
"\\upvarpi" {yylval = wims_mathml_copy_string("ϖ"); return MI;}
"\\upoldKoppa" {yylval = wims_mathml_copy_string("Ϙ"); return MI;}
"\\upoldkoppa" {yylval = wims_mathml_copy_string("ϙ"); return MI;}
"\\upStigma" {yylval = wims_mathml_copy_string("Ϛ"); return MI;}
"\\upstigma" {yylval = wims_mathml_copy_string("ϛ"); return MI;}
"\\upDigamma" {yylval = wims_mathml_copy_string("Ϝ"); return MI;}
"\\updigamma" {yylval = wims_mathml_copy_string("ϝ"); return MI;}
"\\upKoppa" {yylval = wims_mathml_copy_string("Ϟ"); return MI;}
"\\upkoppa" {yylval = wims_mathml_copy_string("ϟ"); return MI;}
"\\upSampi" {yylval = wims_mathml_copy_string("Ϡ"); return MI;}
"\\upsampi" {yylval = wims_mathml_copy_string("ϡ"); return MI;}
"\\upvarkappa" {yylval = wims_mathml_copy_string("ϰ"); return MI;}
"\\upvarrho" {yylval = wims_mathml_copy_string("ϱ"); return MI;}
"\\upvarTheta" {yylval = wims_mathml_copy_string("ϴ"); return MI;}
"\\upvarepsilon" {yylval = wims_mathml_copy_string("ϵ"); return MI;}
"\\upbackepsilon" {yylval = wims_mathml_copy_string("϶"); return MI;}
"\\horizbar" {yylval = wims_mathml_copy_string("―"); return MI;}
"\\twolowline" {yylval = wims_mathml_copy_string("‗"); return MI;}
"\\enleadertwodots" {yylval = wims_mathml_copy_string("‥"); return MI;}
"\\unicodeellipsis" {yylval = wims_mathml_copy_string("…"); return MI;}
"\\dprime" {yylval = wims_mathml_copy_string("″"); return MI;}
"\\trprime" {yylval = wims_mathml_copy_string("‴"); return MI;}
"\\backdprime" {yylval = wims_mathml_copy_string("‶"); return MI;}
"\\backtrprime" {yylval = wims_mathml_copy_string("‷"); return MI;}
"\\caretinsert" {yylval = wims_mathml_copy_string("‸"); return MI;}
"\\Exclam" {yylval = wims_mathml_copy_string("‼"); return MI;}
"\\tieconcat" {yylval = wims_mathml_copy_string("⁀"); return MO;}
"\\hyphenbullet" {yylval = wims_mathml_copy_string("⁃"); return MI;}
"\\fracslash" {yylval = wims_mathml_copy_string("⁄"); return MO;}
"\\Question" {yylval = wims_mathml_copy_string("⁇"); return MI;}
"\\qprime" {yylval = wims_mathml_copy_string("⁗"); return MI;}
"\\euro" |
"\\Euro" |
"\\EUR" {yylval = wims_mathml_copy_string("€"); return MI;}
"\\leftharpoonaccent" {yylval = wims_mathml_copy_string("⃐"); return MI;}
"\\rightharpoonaccent" {yylval = wims_mathml_copy_string("⃑"); return MI;}
"\\vertoverlay" {yylval = wims_mathml_copy_string("⃒"); return MI;}
"\\enclosecircle" {yylval = wims_mathml_copy_string("⃝"); return MI;}
"\\enclosesquare" {yylval = wims_mathml_copy_string("⃞"); return MI;}
"\\enclosediamond" {yylval = wims_mathml_copy_string("⃟"); return MI;}
"\\enclosetriangle" {yylval = wims_mathml_copy_string("⃤"); return MI;}
"\\annuity" {yylval = wims_mathml_copy_string("⃧"); return MI;}
"\\threeunderdot" {yylval = wims_mathml_copy_string("⃨"); return MI;}
"\\widebridgeabove" {yylval = wims_mathml_copy_string("⃩"); return MI;}
"\\asteraccent" {yylval = wims_mathml_copy_string("⃰"); return MI;}
"\\BbbC" {yylval = wims_mathml_copy_string("ℂ"); return MI;}
"\\Eulerconst" {yylval = wims_mathml_copy_string("ℇ"); return MI;}
"\\mscrg" {yylval = wims_mathml_copy_string("ℊ"); return MI;}
"\\mscrH" {yylval = wims_mathml_copy_string("ℋ"); return MI;}
"\\mfrakH" {yylval = wims_mathml_copy_string("ℌ"); return MI;}
"\\BbbH" {yylval = wims_mathml_copy_string("ℍ"); return MI;}
"\\Planckconst" {yylval = wims_mathml_copy_string("ℎ"); return MI;}
"\\hslash" {yylval = wims_mathml_copy_string("ℏ"); return MI;}
"\\mscrI" {yylval = wims_mathml_copy_string("ℐ"); return MI;}
"\\mscrL" {yylval = wims_mathml_copy_string("ℒ"); return MI;}
"\\BbbN" {yylval = wims_mathml_copy_string("ℕ"); return MI;}
"\\BbbP" {yylval = wims_mathml_copy_string("ℙ"); return MI;}
"\\BbbQ" {yylval = wims_mathml_copy_string("ℚ"); return MI;}
"\\mscrR" {yylval = wims_mathml_copy_string("ℛ"); return MI;}
"\\BbbR" {yylval = wims_mathml_copy_string("ℝ"); return MI;}
"\\BbbZ" {yylval = wims_mathml_copy_string("ℤ"); return MI;}
"\\mfrakZ" {yylval = wims_mathml_copy_string("ℨ"); return MI;}
"\\turnediota" {yylval = wims_mathml_copy_string("℩"); return MI;}
"\\Angstrom" {yylval = wims_mathml_copy_string("Å"); return MI;}
"\\mscrB" {yylval = wims_mathml_copy_string("ℬ"); return MI;}
"\\mfrakC" {yylval = wims_mathml_copy_string("ℭ"); return MI;}
"\\mscre" {yylval = wims_mathml_copy_string("ℯ"); return MI;}
"\\mscrE" {yylval = wims_mathml_copy_string("ℰ"); return MI;}
"\\mscrF" {yylval = wims_mathml_copy_string("ℱ"); return MI;}
"\\Finv" {yylval = wims_mathml_copy_string("Ⅎ"); return MI;}
"\\mscrM" {yylval = wims_mathml_copy_string("ℳ"); return MI;}
"\\mscro" {yylval = wims_mathml_copy_string("ℴ"); return MI;}
"\\gimel" {yylval = wims_mathml_copy_string("ℷ"); return MI;}
"\\daleth" {yylval = wims_mathml_copy_string("ℸ"); return MI;}
"\\Bbbpi" {yylval = wims_mathml_copy_string("ℼ"); return MI;}
"\\Bbbgamma" {yylval = wims_mathml_copy_string("ℽ"); return MI;}
"\\BbbGamma" {yylval = wims_mathml_copy_string("ℾ"); return MI;}
"\\BbbPi" {yylval = wims_mathml_copy_string("ℿ"); return MI;}
"\\Bbbsum" {yylval = wims_mathml_copy_string("⅀"); return MI;}
"\\Game" {yylval = wims_mathml_copy_string("⅁"); return MI;}
"\\sansLturned" {yylval = wims_mathml_copy_string("⅂"); return MI;}
"\\sansLmirrored" {yylval = wims_mathml_copy_string("⅃"); return MI;}
"\\Yup" {yylval = wims_mathml_copy_string("⅄"); return MI;}
"\\mitBbbD" {yylval = wims_mathml_copy_string("ⅅ"); return MI;}
"\\mitBbbd" {yylval = wims_mathml_copy_string("ⅆ"); return MI;}
"\\mitBbbe" {yylval = wims_mathml_copy_string("ⅇ"); return MI;}
"\\mitBbbi" {yylval = wims_mathml_copy_string("ⅈ"); return MI;}
"\\mitBbbj" {yylval = wims_mathml_copy_string("ⅉ"); return MI;}
"\\PropertyLine" {yylval = wims_mathml_copy_string("⅊"); return MI;}
"\\upand" {yylval = wims_mathml_copy_string("⅋"); return MI;}
"\\leftwavearrow" {yylval = wims_mathml_copy_string("↜"); return MO;}
"\\rightwavearrow" {yylval = wims_mathml_copy_string("↝"); return MO;}
"\\twoheaduparrow" {yylval = wims_mathml_copy_string("↟"); return MO;}
"\\twoheaddownarrow" {yylval = wims_mathml_copy_string("↡"); return MO;}
"\\mapsfrom" {yylval = wims_mathml_copy_string("↤"); return MO;}
"\\mapsup" {yylval = wims_mathml_copy_string("↥"); return MO;}
"\\mapsdown" {yylval = wims_mathml_copy_string("↧"); return MO;}
"\\updownarrowbar" {yylval = wims_mathml_copy_string("↨"); return MO;}
"\\Ldsh" {yylval = wims_mathml_copy_string("↲"); return MO;}
"\\Rdsh" {yylval = wims_mathml_copy_string("↳"); return MO;}
"\\linefeed" {yylval = wims_mathml_copy_string("↴"); return MI;}
"\\carriagereturn" {yylval = wims_mathml_copy_string("↵"); return MI;}
"\\barovernorthwestarrow" {yylval = wims_mathml_copy_string("↸"); return MI;}
"\\barleftarrowrightarrow" {yylval = wims_mathml_copy_string("↹"); return MI;}
"\\acwopencirclearrow" {yylval = wims_mathml_copy_string("↺"); return MO;}
"\\cwopencirclearrow" {yylval = wims_mathml_copy_string("↻"); return MO;}
"\\leftharpoondown" {yylval = wims_mathml_copy_string("↽"); return MO;}
"\\rightharpoonup" {yylval = wims_mathml_copy_string("⇀"); return MO;}
"\\rightharpoondown" {yylval = wims_mathml_copy_string("⇁"); return MO;}
"\\updownarrows" {yylval = wims_mathml_copy_string("⇅"); return MO;}
"\\Nwarrow" {yylval = wims_mathml_copy_string("⇖"); return MO;}
"\\Nearrow" {yylval = wims_mathml_copy_string("⇗"); return MO;}
"\\Searrow" {yylval = wims_mathml_copy_string("⇘"); return MO;}
"\\Swarrow" {yylval = wims_mathml_copy_string("⇙"); return MO;}
"\\nHuparrow" {yylval = wims_mathml_copy_string("⇞"); return MO;}
"\\nHdownarrow" {yylval = wims_mathml_copy_string("⇟"); return MO;}
"\\leftdasharrow" {yylval = wims_mathml_copy_string("⇠"); return MO;}
"\\updasharrow" {yylval = wims_mathml_copy_string("⇡"); return MO;}
"\\rightdasharrow" {yylval = wims_mathml_copy_string("⇢"); return MO;}
"\\downdasharrow" {yylval = wims_mathml_copy_string("⇣"); return MO;}
"\\barleftarrow" {yylval = wims_mathml_copy_string("⇤"); return MO;}
"\\rightarrowbar" {yylval = wims_mathml_copy_string("⇥"); return MO;}
"\\leftwhitearrow" {yylval = wims_mathml_copy_string("⇦"); return MO;}
"\\upwhitearrow" {yylval = wims_mathml_copy_string("⇧"); return MO;}
"\\rightwhitearrow" {yylval = wims_mathml_copy_string("⇨"); return MO;}
"\\downwhitearrow" {yylval = wims_mathml_copy_string("⇩"); return MO;}
"\\whitearrowupfrombar" {yylval = wims_mathml_copy_string("⇪"); return MI;}
"\\circleonrightarrow" {yylval = wims_mathml_copy_string("⇴"); return MO;}
"\\downuparrows" {yylval = wims_mathml_copy_string("⇵"); return MO;}
"\\rightthreearrows" {yylval = wims_mathml_copy_string("⇶"); return MO;}
"\\nvleftarrow" {yylval = wims_mathml_copy_string("⇷"); return MO;}
"\\nvrightarrow" {yylval = wims_mathml_copy_string("⇸"); return MO;}
"\\nvleftrightarrow" {yylval = wims_mathml_copy_string("⇹"); return MO;}
"\\nVleftarrow" {yylval = wims_mathml_copy_string("⇺"); return MO;}
"\\nVrightarrow" {yylval = wims_mathml_copy_string("⇻"); return MO;}
"\\nVleftrightarrow" {yylval = wims_mathml_copy_string("⇼"); return MO;}
"\\leftarrowtriangle" {yylval = wims_mathml_copy_string("⇽"); return MO;}
"\\rightarrowtriangle" {yylval = wims_mathml_copy_string("⇾"); return MO;}
"\\leftrightarrowtriangle" {yylval = wims_mathml_copy_string("⇿"); return MO;}
"\\complement" {yylval = wims_mathml_copy_string("∁"); return MO;}
"\\increment" {yylval = wims_mathml_copy_string("∆"); return MO;}
"\\smallin" {yylval = wims_mathml_copy_string("∊"); return MO;}
"\\nni" {yylval = wims_mathml_copy_string("∌"); return MO;}
"\\smallni" {yylval = wims_mathml_copy_string("∍"); return MO;}
"\\QED" {yylval = wims_mathml_copy_string("∎"); return MI;}
"\\minus" {yylval = wims_mathml_copy_string("−"); return MO;}
"\\divslash" {yylval = wims_mathml_copy_string("∕"); return MO;}
"\\vysmwhtcircle" {yylval = wims_mathml_copy_string("∘"); return MO;}
"\\vysmblkcircle" {yylval = wims_mathml_copy_string("∙"); return MO;}
"\\cuberoot" {yylval = wims_mathml_copy_string("∛"); return MI;}
"\\rightangle" {yylval = wims_mathml_copy_string("∟"); return MI;}
"\\intclockwise" {yylval = wims_mathml_copy_string("∱"); return MI;}
"\\mathratio" {yylval = wims_mathml_copy_string("∶"); return MO;}
"\\Colon" {yylval = wims_mathml_copy_string("∷"); return MO;}
"\\dotminus" {yylval = wims_mathml_copy_string("∸"); return MO;}
"\\dashcolon" {yylval = wims_mathml_copy_string("∹"); return MO;}
"\\dotsminusdots" {yylval = wims_mathml_copy_string("∺"); return MO;}
"\\kernelcontraction" {yylval = wims_mathml_copy_string("∻"); return MO;}
"\\invlazys" {yylval = wims_mathml_copy_string("∾"); return MO;}
"\\sinewave" {yylval = wims_mathml_copy_string("∿"); return MI;}
"\\eqsim" {yylval = wims_mathml_copy_string("≂"); return MO;}
"\\nsime" {yylval = wims_mathml_copy_string("≄"); return MO;}
"\\simneqq" {yylval = wims_mathml_copy_string("≆"); return MO;}
"\\napprox" {yylval = wims_mathml_copy_string("≉"); return MO;}
"\\approxident" {yylval = wims_mathml_copy_string("≋"); return MO;}
"\\backcong" {yylval = wims_mathml_copy_string("≌"); return MO;}
"\\Doteq" {yylval = wims_mathml_copy_string("≑"); return MO;}
"\\arceq" {yylval = wims_mathml_copy_string("≘"); return MO;}
"\\wedgeq" {yylval = wims_mathml_copy_string("≙"); return MO;}
"\\veeeq" {yylval = wims_mathml_copy_string("≚"); return MO;}
"\\stareq" {yylval = wims_mathml_copy_string("≛"); return MO;}
"\\eqdef" {yylval = wims_mathml_copy_string("≝"); return MO;}
"\\measeq" {yylval = wims_mathml_copy_string("≞"); return MO;}
"\\questeq" {yylval = wims_mathml_copy_string("≟"); return MO;}
"\\Equiv" {yylval = wims_mathml_copy_string("≣"); return MO;}
"\\nlessgtr" {yylval = wims_mathml_copy_string("≸"); return MO;}
"\\ngtrless" {yylval = wims_mathml_copy_string("≹"); return MO;}
"\\cupleftarrow" {yylval = wims_mathml_copy_string("⊌"); return MO;}
"\\cupdot" {yylval = wims_mathml_copy_string("⊍"); return MO;}
"\\circledequal" {yylval = wims_mathml_copy_string("⊜"); return MO;}
"\\assert" {yylval = wims_mathml_copy_string("⊦"); return MO;}
"\\nVdash" {yylval = wims_mathml_copy_string("⊮"); return MO;}
"\\prurel" {yylval = wims_mathml_copy_string("⊰"); return MO;}
"\\scurel" {yylval = wims_mathml_copy_string("⊱"); return MO;}
"\\origof" {yylval = wims_mathml_copy_string("⊶"); return MO;}
"\\imageof" {yylval = wims_mathml_copy_string("⊷"); return MO;}
"\\hermitmatrix" {yylval = wims_mathml_copy_string("⊹"); return MO;}
"\\barvee" {yylval = wims_mathml_copy_string("⊽"); return MO;}
"\\measuredrightangle" {yylval = wims_mathml_copy_string("⊾"); return MI;}
"\\varlrtriangle" {yylval = wims_mathml_copy_string("⊿"); return MI;}
"\\smwhtdiamond" {yylval = wims_mathml_copy_string("⋄"); return MO;}
"\\eqless" {yylval = wims_mathml_copy_string("⋜"); return MO;}
"\\eqgtr" {yylval = wims_mathml_copy_string("⋝"); return MO;}
"\\npreccurlyeq" {yylval = wims_mathml_copy_string("⋠"); return MO;}
"\\nsucccurlyeq" {yylval = wims_mathml_copy_string("⋡"); return MO;}
"\\nsqsubseteq" {yylval = wims_mathml_copy_string("⋢"); return MO;}
"\\nsqsupseteq" {yylval = wims_mathml_copy_string("⋣"); return MO;}
"\\sqsubsetneq" {yylval = wims_mathml_copy_string("⋤"); return MO;}
"\\sqsupsetneq" {yylval = wims_mathml_copy_string("⋥"); return MO;}
"\\unicodecdots" {yylval = wims_mathml_copy_string("⋯"); return MO;}
"\\adots" {yylval = wims_mathml_copy_string("⋰"); return MO;}
"\\disin" {yylval = wims_mathml_copy_string("⋲"); return MO;}
"\\longdivision" {yylval = wims_mathml_copy_string("⟌"); return MI;}
"\\leftouterjoin" {yylval = wims_mathml_copy_string("⟕"); return MI;}
"\\rightouterjoin" {yylval = wims_mathml_copy_string("⟖"); return MI;}
"\\fullouterjoin" {yylval = wims_mathml_copy_string("⟗"); return MI;}
"\\lBrack" {yylval = wims_mathml_copy_string("⟦"); return LEFTDELIM;}
"\\rBrack" {yylval = wims_mathml_copy_string("⟧"); return RIGHTDELIM;}
"\\lAngle" {yylval = wims_mathml_copy_string("⟪"); return LEFTDELIM;}
"\\rAngle" {yylval = wims_mathml_copy_string("⟫"); return RIGHTDELIM;}
"\\longrightsquigarrow" {yylval = wims_mathml_copy_string("⟿");return MOL;}
"\\nvtwoheadrightarrow" {yylval = wims_mathml_copy_string("⤀");return MOL;}
"\\nVtwoheadrightarrow" {yylval = wims_mathml_copy_string("⤁");return MOL;}
"\\nvLeftarrow" {yylval = wims_mathml_copy_string("⤂");return MOL;}
"\\nvRightarrow" {yylval = wims_mathml_copy_string("⤃");return MOL;}
"\\nvLeftrightarrow" {yylval = wims_mathml_copy_string("⤄");return MOL;}
"\\twoheadmapsto" {yylval = wims_mathml_copy_string("⤅");return MOL;}
"\\Mapsfrom" {yylval = wims_mathml_copy_string("⤆");return MOL;}
"\\rightdotarrow" {yylval = wims_mathml_copy_string("⤑");return MOL;}
"\\baruparrow" {yylval = wims_mathml_copy_string("⤒");return MOL;}
"\\downarrowbar" {yylval = wims_mathml_copy_string("⤓");return MOL;}
"\\nvrightarrowtail" {yylval = wims_mathml_copy_string("⤔");return MOL;}
"\\nVrightarrowtail" {yylval = wims_mathml_copy_string("⤕");return MOL;}
"\\twoheadrightarrowtail" {yylval = wims_mathml_copy_string("⤖");return MOL;}
"\\nvtwoheadrightarrowtail" {yylval = wims_mathml_copy_string("⤗");return MOL;}
"\\nVtwoheadrightarrowtail" {yylval = wims_mathml_copy_string("⤘");return MOL;}
"\\lefttail" {yylval = wims_mathml_copy_string("⤙");return MOL;}
"\\righttail" {yylval = wims_mathml_copy_string("⤚");return MOL;}
"\\leftdbltail" {yylval = wims_mathml_copy_string("⤛");return MOL;}
"\\rightdbltail" {yylval = wims_mathml_copy_string("⤜");return MOL;}
"\\diamondleftarrow" {yylval = wims_mathml_copy_string("⤝");return MOL;}
"\\rightarrowdiamond" {yylval = wims_mathml_copy_string("⤞");return MOL;}
"\\diamondleftarrowbar" {yylval = wims_mathml_copy_string("⤟");return MOL;}
"\\barrightarrowdiamond" {yylval = wims_mathml_copy_string("⤠");return MOL;}
"\\nwsearrow" {yylval = wims_mathml_copy_string("⤡");return MOL;}
"\\neswarrow" {yylval = wims_mathml_copy_string("⤢");return MOL;}
"\\hknwarrow" {yylval = wims_mathml_copy_string("⤣");return MOL;}
"\\hknearrow" {yylval = wims_mathml_copy_string("⤤");return MOL;}
"\\hksearow" {yylval = wims_mathml_copy_string("⤥");return MOL;}
"\\hkswarow" {yylval = wims_mathml_copy_string("⤦");return MOL;}
"\\tona" {yylval = wims_mathml_copy_string("⤧");return MOL;}
"\\toea" {yylval = wims_mathml_copy_string("⤨");return MOL;}
"\\tosa" {yylval = wims_mathml_copy_string("⤩");return MOL;}
"\\towa" {yylval = wims_mathml_copy_string("⤪");return MOL;}
"\\rdiagovfdiag" {yylval = wims_mathml_copy_string("⤫");return MOL;}
"\\fdiagovrdiag" {yylval = wims_mathml_copy_string("⤬");return MOL;}
"\\seovnearrow" {yylval = wims_mathml_copy_string("⤭");return MOL;}
"\\neovsearrow" {yylval = wims_mathml_copy_string("⤮");return MOL;}
"\\fdiagovnearrow" {yylval = wims_mathml_copy_string("⤯");return MOL;}
"\\rdiagovsearrow" {yylval = wims_mathml_copy_string("⤰");return MOL;}
"\\neovnwarrow" {yylval = wims_mathml_copy_string("⤱");return MOL;}
"\\nwovnearrow" {yylval = wims_mathml_copy_string("⤲");return MOL;}
"\\rightcurvedarrow" {yylval = wims_mathml_copy_string("⤳");return MOL;}
"\\uprightcurvearrow" {yylval = wims_mathml_copy_string("⤴");return MOL;}
"\\downrightcurvedarrow" {yylval = wims_mathml_copy_string("⤵");return MOL;}
"\\leftdowncurvedarrow" {yylval = wims_mathml_copy_string("⤶");return MOL;}
"\\rightdowncurvedarrow" {yylval = wims_mathml_copy_string("⤷");return MOL;}
"\\cwrightarcarrow" {yylval = wims_mathml_copy_string("⤸");return MOL;}
"\\acwleftarcarrow" {yylval = wims_mathml_copy_string("⤹");return MOL;}
"\\acwoverarcarrow" {yylval = wims_mathml_copy_string("⤺");return MOL;}
"\\acwunderarcarrow" {yylval = wims_mathml_copy_string("⤻");return MOL;}
"\\curvearrowrightminus" {yylval = wims_mathml_copy_string("⤼");return MOL;}
"\\curvearrowleftplus" {yylval = wims_mathml_copy_string("⤽");return MOL;}
"\\cwundercurvearrow" {yylval = wims_mathml_copy_string("⤾");return MOL;}
"\\ccwundercurvearrow" {yylval = wims_mathml_copy_string("⤿");return MOL;}
"\\acwcirclearrow" {yylval = wims_mathml_copy_string("⥀");return MOL;}
"\\cwcirclearrow" {yylval = wims_mathml_copy_string("⥁");return MOL;}
"\\rightarrowshortleftarrow" {yylval = wims_mathml_copy_string("⥂");return MOL;}
"\\leftarrowshortrightarrow" {yylval = wims_mathml_copy_string("⥃");return MOL;}
"\\shortrightarrowleftarrow" {yylval = wims_mathml_copy_string("⥄");return MOL;}
"\\rightarrowplus" {yylval = wims_mathml_copy_string("⥅");return MOL;}
"\\leftarrowplus" {yylval = wims_mathml_copy_string("⥆");return MOL;}
"\\rightarrowx" {yylval = wims_mathml_copy_string("⥇");return MOL;}
"\\leftrightarrowcircle" {yylval = wims_mathml_copy_string("⥈");return MOL;}
"\\twoheaduparrowcircle" {yylval = wims_mathml_copy_string("⥉");return MOL;}
"\\leftrightharpoonupdown" {yylval = wims_mathml_copy_string("⥊");return MOL;}
"\\leftrightharpoondownup" {yylval = wims_mathml_copy_string("⥋");return MOL;}
"\\updownharpoonrightleft" {yylval = wims_mathml_copy_string("⥌");return MOL;}
"\\updownharpoonleftright" {yylval = wims_mathml_copy_string("⥍");return MOL;}
"\\leftrightharpoonupup" {yylval = wims_mathml_copy_string("⥎");return MOL;}
"\\updownharpoonrightright" {yylval = wims_mathml_copy_string("⥏");return MOL;}
"\\leftrightharpoondowndown" {yylval = wims_mathml_copy_string("⥐");return MOL;}
"\\updownharpoonleftleft" {yylval = wims_mathml_copy_string("⥑");return MOL;}
"\\barleftharpoonup" {yylval = wims_mathml_copy_string("⥒");return MOL;}
"\\rightharpoonupbar" {yylval = wims_mathml_copy_string("⥓");return MOL;}
"\\barupharpoonright" {yylval = wims_mathml_copy_string("⥔");return MOL;}
"\\lParen" {yylval = wims_mathml_copy_string("⦅"); return LEFTDELIM;}
"\\rParen" {yylval = wims_mathml_copy_string("⦆"); return RIGHTDELIM;}
"\\llparenthesis" {yylval = wims_mathml_copy_string("⦇"); return LEFTDELIM;}
"\\rrparenthesis" {yylval = wims_mathml_copy_string("⦈"); return RIGHTDELIM;}
"\\llangle" {yylval = wims_mathml_copy_string("⦉"); return LEFTDELIM;}
"\\rrangle" {yylval = wims_mathml_copy_string("⦊"); return RIGHTDELIM;}
"\\lbrackubar" {yylval = wims_mathml_copy_string("⦋"); return LEFTDELIM;}
"\\rbrackubar" {yylval = wims_mathml_copy_string("⦌"); return RIGHTDELIM;}
"\\lbrackultick" {yylval = wims_mathml_copy_string("⦍"); return LEFTDELIM;}
"\\rbracklrtick" {yylval = wims_mathml_copy_string("⦎"); return RIGHTDELIM;}
"\\lbracklltick" {yylval = wims_mathml_copy_string("⦏"); return LEFTDELIM;}
"\\rbrackurtick" {yylval = wims_mathml_copy_string("⦐"); return RIGHTDELIM;}
"\\langledot" {yylval = wims_mathml_copy_string("⦑"); return LEFTDELIM;}
"\\rangledot" {yylval = wims_mathml_copy_string("⦒"); return RIGHTDELIM;}
"\\lparenless" {yylval = wims_mathml_copy_string("⦓"); return LEFTDELIM;}
"\\rparengtr" {yylval = wims_mathml_copy_string("⦔"); return RIGHTDELIM;}
"\\Lparengtr" {yylval = wims_mathml_copy_string("⦕"); return LEFTDELIM;}
"\\Rparenless" {yylval = wims_mathml_copy_string("⦖"); return RIGHTDELIM;}
"\\lblkbrbrak" {yylval = wims_mathml_copy_string("⦗"); return LEFTDELIM;}
"\\rblkbrbrak" {yylval = wims_mathml_copy_string("⦘"); return RIGHTDELIM;}
"\\fourvdots" {yylval = wims_mathml_copy_string("⦙"); return OTHERDELIM;}
"\\vzigzag" {yylval = wims_mathml_copy_string("⦚"); return OTHERDELIM;}
"\\measuredangleleft" {yylval = wims_mathml_copy_string("⦛"); return MI;}
"\\rightanglesqr" {yylval = wims_mathml_copy_string("⦜"); return MI;}
"\\rightanglemdot" {yylval = wims_mathml_copy_string("⦝"); return MI;}
"\\angles" {yylval = wims_mathml_copy_string("⦞"); return MI;}
"\\angdnr" {yylval = wims_mathml_copy_string("⦟"); return MI;}
"\\gtlpar" {yylval = wims_mathml_copy_string("⦠"); return MI;}
"\\sphericalangleup" {yylval = wims_mathml_copy_string("⦡"); return MI;}
"\\turnangle" {yylval = wims_mathml_copy_string("⦢"); return MI;}
"\\revangle" {yylval = wims_mathml_copy_string("⦣"); return MI;}
"\\angleubar" {yylval = wims_mathml_copy_string("⦤"); return MI;}
"\\revangleubar" {yylval = wims_mathml_copy_string("⦥"); return MI;}
"\\wideangledown" {yylval = wims_mathml_copy_string("⦦"); return MI;}
"\\wideangleup" {yylval = wims_mathml_copy_string("⦧"); return MI;}
"\\measanglerutone" {yylval = wims_mathml_copy_string("⦨"); return MI;}
"\\measanglelutonw" {yylval = wims_mathml_copy_string("⦩"); return MI;}
"\\measanglerdtose" {yylval = wims_mathml_copy_string("⦪"); return MI;}
"\\measangleldtosw" {yylval = wims_mathml_copy_string("⦫"); return MI;}
"\\measangleurtone" {yylval = wims_mathml_copy_string("⦬"); return MI;}
"\\measangleultonw" {yylval = wims_mathml_copy_string("⦭"); return MI;}
"\\measangledrtose" {yylval = wims_mathml_copy_string("⦮"); return MI;}
"\\measangledltosw" {yylval = wims_mathml_copy_string("⦯"); return MI;}
"\\revemptyset" {yylval = wims_mathml_copy_string("⦰"); return MI;}
"\\emptysetobar" {yylval = wims_mathml_copy_string("⦱"); return MI;}
"\\emptysetocirc" {yylval = wims_mathml_copy_string("⦲"); return MI;}
"\\emptysetoarr" {yylval = wims_mathml_copy_string("⦳"); return MI;}
"\\emptysetoarrl" {yylval = wims_mathml_copy_string("⦴"); return MI;}
"\\circlehbar" {yylval = wims_mathml_copy_string("⦵"); return MI;}
"\\circledvert" {yylval = wims_mathml_copy_string("⦶"); return MO;}
"\\circledparallel" {yylval = wims_mathml_copy_string("⦷"); return MO;}
"\\obslash" {yylval = wims_mathml_copy_string("⦸"); return MO;}
"\\operp" {yylval = wims_mathml_copy_string("⦹"); return MO;}
"\\obot" {yylval = wims_mathml_copy_string("⦺"); return MI;}
"\\olcross" {yylval = wims_mathml_copy_string("⦻"); return MI;}
"\\odotslashdot" {yylval = wims_mathml_copy_string("⦼"); return MI;}
"\\uparrowoncircle" {yylval = wims_mathml_copy_string("⦽"); return MI;}
"\\circledwhitebullet" {yylval = wims_mathml_copy_string("⦾"); return MI;}
"\\circledbullet" {yylval = wims_mathml_copy_string("⦿"); return MI;}
"\\olessthan" {yylval = wims_mathml_copy_string("⧀"); return MO;}
"\\ogreaterthan" {yylval = wims_mathml_copy_string("⧁"); return MO;}
"\\cirscir" {yylval = wims_mathml_copy_string("⧂"); return MI;}
"\\cirE" {yylval = wims_mathml_copy_string("⧃"); return MI;}
"\\boxdiag" {yylval = wims_mathml_copy_string("⧄"); return MO;}
"\\boxbslash" {yylval = wims_mathml_copy_string("⧅"); return MO;}
"\\boxast" {yylval = wims_mathml_copy_string("⧆"); return MO;}
"\\boxcircle" {yylval = wims_mathml_copy_string("⧇"); return MO;}
"\\boxbox" {yylval = wims_mathml_copy_string("⧈"); return MO;}
"\\boxonbox" {yylval = wims_mathml_copy_string("⧉"); return MI;}
"\\triangleodot" {yylval = wims_mathml_copy_string("⧊"); return MI;}
"\\triangleubar" {yylval = wims_mathml_copy_string("⧋"); return MI;}
"\\triangles" {yylval = wims_mathml_copy_string("⧌"); return MI;}
"\\triangleserifs" {yylval = wims_mathml_copy_string("⧍"); return MI;}
"\\rtriltri" {yylval = wims_mathml_copy_string("⧎"); return MOL;}
"\\ltrivb" {yylval = wims_mathml_copy_string("⧏"); return MOL;}
"\\vbrtri" {yylval = wims_mathml_copy_string("⧐"); return MOL;}
"\\lfbowtie" {yylval = wims_mathml_copy_string("⧑"); return MOL;}
"\\rfbowtie" {yylval = wims_mathml_copy_string("⧒"); return MOL;}
"\\fbowtie" {yylval = wims_mathml_copy_string("⧓"); return MOL;}
"\\lftimes" {yylval = wims_mathml_copy_string("⧔"); return MOL;}
"\\rftimes" {yylval = wims_mathml_copy_string("⧕"); return MOL;}
"\\hourglass" {yylval = wims_mathml_copy_string("⧖"); return MO;}
"\\blackhourglass" {yylval = wims_mathml_copy_string("⧗"); return MO;}
"\\lvzigzag" {yylval = wims_mathml_copy_string("⧘"); return LEFTDELIM;}
"\\rvzigzag" {yylval = wims_mathml_copy_string("⧙"); return RIGHTDELIM;}
"\\Lvzigzag" {yylval = wims_mathml_copy_string("⧚"); return LEFTDELIM;}
"\\Rvzigzag" {yylval = wims_mathml_copy_string("⧛"); return RIGHTDELIM;}
"\\iinfin" {yylval = wims_mathml_copy_string("⧜"); return MI;}
"\\tieinfty" {yylval = wims_mathml_copy_string("⧝"); return MI;}
"\\nvinfty" {yylval = wims_mathml_copy_string("⧞"); return MI;}
"\\dualmap" {yylval = wims_mathml_copy_string("⧟"); return MOL;}
"\\laplac" {yylval = wims_mathml_copy_string("⧠"); return MI;}
"\\lrtriangleeq" {yylval = wims_mathml_copy_string("⧡"); return MOL;}
"\\shuffle" {yylval = wims_mathml_copy_string("⧢"); return MO;}
"\\eparsl" {yylval = wims_mathml_copy_string("⧣"); return MOL;}
"\\smeparsl" {yylval = wims_mathml_copy_string("⧤"); return MOL;}
"\\eqvparsl" {yylval = wims_mathml_copy_string("⧥"); return MOL;}
"\\gleichstark" {yylval = wims_mathml_copy_string("⧦"); return MOL;}
"\\thermod" {yylval = wims_mathml_copy_string("⧧"); return MI;}
"\\downtriangleleftblack" {yylval = wims_mathml_copy_string("⧨"); return MI;}
"\\downtrianglerightblack" {yylval = wims_mathml_copy_string("⧩"); return MI;}
"\\blackdiamonddownarrow" {yylval = wims_mathml_copy_string("⧪"); return MI;}
"\\mdlgblklozenge" {yylval = wims_mathml_copy_string("⧫"); return MO;}
"\\circledownarrow" {yylval = wims_mathml_copy_string("⧬"); return MI;}
"\\blackcircledownarrow" {yylval = wims_mathml_copy_string("⧭"); return MI;}
"\\errbarsquare" {yylval = wims_mathml_copy_string("⧮"); return MI;}
"\\errbarblacksquare" {yylval = wims_mathml_copy_string("⧯"); return MI;}
"\\errbardiamond" {yylval = wims_mathml_copy_string("⧰"); return MI;}
"\\errbarblackdiamond" {yylval = wims_mathml_copy_string("⧱"); return MI;}
"\\errbarcircle" {yylval = wims_mathml_copy_string("⧲"); return MI;}
"\\errbarblackcircle" {yylval = wims_mathml_copy_string("⧳"); return MI;}
"\\ruledelayed" {yylval = wims_mathml_copy_string("⧴"); return MOL;}
"\\dsol" {yylval = wims_mathml_copy_string("⧶"); return MO;}
"\\rsolbar" {yylval = wims_mathml_copy_string("⧷"); return MO;}
"\\xsol" {yylval = wims_mathml_copy_string("⧸"); return MI;}
"\\xbsol" {yylval = wims_mathml_copy_string("⧹"); return MI;}
"\\handleft" {yylval=wims_mathml_copy_string("☜"); return MI;}
"\\handright" {yylval=wims_mathml_copy_string("☞"); return MI;}
"\\handup" {yylval=wims_mathml_copy_string("☝"); return MI;}
"\\handdown" {yylval=wims_mathml_copy_string("☟"); return MI;}
"\\OK" {yylval=wims_mathml_copy_string("☑"); return MI;}
"\\NOK" {yylval=wims_mathml_copy_string("☒"); return MI;}
"\\poison" {yylval=wims_mathml_copy_string("☠"); return MI;}
"\\blitz" {yylval=wims_mathml_copy_string("⚡"); return MI;}
"\\attention" {yylval=wims_mathml_copy_string("⚠"); return MI;}
"\\nsmile" {yylval=wims_mathml_copy_string("☹"); return MI;}
"\\vvvert" {yylval=wims_mathml_copy_string("⫼"); return OTHERDELIM;}
"\\ointclockwise" |
"\\varointclockwise" {yylval=wims_mathml_copy_string("⨐"); return MO;}
"\\ointctrclockwise" |
"\\varointctrclockwise" {yylval=wims_mathml_copy_string("⨑"); return MO;}
"\\sqint" {yylval=wims_mathml_copy_string("⨖"); return MO;}
"\\fint" {yylval=wims_mathml_copy_string("*OF;"); return MO;}
"\\diagup" {yylval=wims_mathml_copy_string("╱"); return OTHERDELIM;}
"\\diagdown" {yylval=wims_mathml_copy_string("╲"); return OTHERDELIM;}
"\\lmoustache" {yylval = wims_mathml_copy_string("⎰"); return OTHERDELIM;}
"\\rmoustache" {yylval = wims_mathml_copy_string("⎱"); return OTHERDELIM;}
"\\bigint" |
"\\bigintegral" {return BIGINT;}
"\\biggint" |
"\\biggintegral" {return BIGGINT;}
"\\bigggint" |
"\\bigggintegral" {return BIGGGINT;}
"\\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;}
"\\lewis" {yylval=wims_mathml_copy_string(yytext); return LEWIS;}
"\\\\ \\\\" {wims_mathml_rowposn=2; yylval="\\\\ \\: \\\\";return ROWSEP;}
"\\\\" {wims_mathml_rowposn=2;return ROWSEP;}
"\\tabularnewline" {wims_mathml_rowposn=2; return ROWSEP;}
"\\hline" {yylval=wims_mathml_copy_string(" ");; return MOP; }
"\\cr" {wims_mathml_rowposn=2; return ROWSEP;}
"\\ " {return THICKSPACE;}
"\\lbrack" {yylval=wims_mathml_copy_string("["); return OTHERDELIM;}
"\\rbrack" {yylval=wims_mathml_copy_string("]"); return OTHERDELIM;}
"\\RR" {yylval=wims_mathml_copy_string("ℝ"); return MI;}
"\\QQ" {yylval=wims_mathml_copy_string("ℚ"); return MI;}
"\\CC" {yylval=wims_mathml_copy_string("ℂ"); return MI;}
"\\ZZ" {yylval=wims_mathml_copy_string("ℤ"); return MI;}
"\\NN" {yylval=wims_mathml_copy_string("ℕ"); return MI;}
"\\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;}}
"\\large" { yylval=wims_mathml_copy_string("120%");wims_mathml_env_start = 1; return TMP_FONTSIZE;}
"\\Large" { yylval=wims_mathml_copy_string("140%");wims_mathml_env_start = 1; return TMP_FONTSIZE;}
"\\huge" { yylval=wims_mathml_copy_string("200%");wims_mathml_env_start = 1; return TMP_FONTSIZE;}
"\\Huge" { yylval=wims_mathml_copy_string("250%");wims_mathml_env_start = 1; return TMP_FONTSIZE;}
"\\cline{"\ {0,5}[0-9]{1,3}\ {0,5}-\ {0,5}[0-9]{1,3}\ {0,5}"}"
"\\'(" {yylval=wims_mathml_copy_string("`("); return MI;}
"\\includegraphics"(\[[^\]]*\])?\{[^}]*\};
"\\"[a-zA-Z]+ {yylval=wims_mathml_copy_string(yytext+1); return MOP;}
"\&"[a-zA-Z_][a-zA-Z0-9_]*";" |
"\&#"[0-9]+";" |
"\&#x"[a-fA-F0-9]+";" {yylval=wims_mathml_copy_string(yytext); return MI;}
"\n" wims_mathml_lineno++;
[\r\t ]+ ;
. {return UNKNOWNCHAR;}
}
<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;}
<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;}
<OPTARG>{
"[" {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;}
[\n\r\t ]+ ;
. {BEGIN(MATH); unput(yytext[0]);}
}
<RAISEBOX1>{
\{[\n\r\t ]*- {BEGIN(RAISEBOX2); return NEG;}
\{[\n\r\t ]* {BEGIN(RAISEBOX2);}
}
<RAISEBOX2>{
[^\}]*?\} {yylval=wims_mathml_copy_string(yytext); if ((yyleng > 1) && (yylval != wims_mathml_empty_string)) yylval[yyleng-1]='\0'; BEGIN(TEXTOPTARG1); return TEXTSTRING;}
}
<TEXTOPTARG1>{
\[[^\]]*?\] {yylval=wims_mathml_copy_string(yytext+1); if ((yyleng > 1) && (yylval != wims_mathml_empty_string)) yylval[yyleng-2]='\0'; BEGIN(TEXTOPTARG); return TEXTSTRING;}
. {BEGIN(MATH); unput(yytext[0]);}
}
<TEXTOPTARG>{
\[[^\]]*?\] {yylval=wims_mathml_copy_string(yytext+1); if ((yyleng > 1) && (yylval != wims_mathml_empty_string)) yylval[yyleng-2]='\0'; BEGIN(MATH); return TEXTSTRING;}
. {BEGIN(MATH); unput(yytext[0]);}
}
<MATHENV>{
"\{matrix\}" {wims_mathml_env_start = 0; BEGIN(MATH); return MATRIX;}
"\{pmatrix\}" {wims_mathml_env_start = 0; BEGIN(MATH); return PMATRIX;}
"\{bmatrix\}" {wims_mathml_env_start = 0; BEGIN(MATH); return BMATRIX;}
"\{Bmatrix\}" {wims_mathml_env_start = 0; BEGIN(MATH); return BBMATRIX;}
"\{vmatrix\}" {wims_mathml_env_start = 0; BEGIN(MATH); return VMATRIX;}
"\{Vmatrix\}" {wims_mathml_env_start = 0; BEGIN(MATH); return VVMATRIX;}
"\{smallmatrix\}" {wims_mathml_env_start = 0; BEGIN(MATH); return SMALLMATRIX;}
"\{cases\}" |
"\{dcases\}" {wims_mathml_env_start = 0; BEGIN(MATH); return CASES;}
"\{align*\}" |
"\{align\}" |
"\{aligned\}" {wims_mathml_env_start = 0; BEGIN(MATH); return ALIGNED;}
"\{gathered\}" {wims_mathml_env_start = 0; BEGIN(MATH); return GATHERED;}
"\{split\}" {wims_mathml_env_start = 0; BEGIN(MATH); return ALIGNED;}
"\{array\}" |
"\{alignat\}" {if (wims_mathml_env_start == 1) BEGIN(ARRAYOPTIONS); else BEGIN(MATH); return ARRAY;}
"\{svg\}" {wims_mathml_env_start = 0; BEGIN(SVGENV); return SVG;}
"\{html\}" {wims_mathml_env_start = 0; BEGIN(HTMLENV); return HTML;}
"\{equation\}" {wims_mathml_env_start = 0; BEGIN(MATH); return EQUATION;}
"\{eqnarray\}" {wims_mathml_env_start = 0; BEGIN(MATH); return MATRIX;}
}
<ARRAYOPTIONS>{
"[t]" {yylval=wims_mathml_copy_string("axis 1"); return ARRAYALIGN;}
"[c]" {yylval=wims_mathml_copy_string("center"); return ARRAYALIGN;}
"[b]" {yylval=wims_mathml_copy_string("axis -1"); return ARRAYALIGN;}
"\{" {BEGIN(COLOPTS); return ST;}
[\t\n\r ]+ ;
}
<COLOPTS>{
"\}" {wims_mathml_env_start = 0; BEGIN(MATH); return END;}
[0-99rlc|.:_\-\ ]{0,99} {
wims_mathml_env_start=0;
int p;
// yyleng is length of last matched token eg "{ c |ccc|c }
// 8 is max length of tag " center " ; 14 is length " columnalign=\"" 14+1 '\0'
// {----c|c|c}
int len = yyleng*8+15;
char C[len];
char M[len];
char H[len];
memset(C,'\0',len);// fill memory with null
memset(M,'\0',len);
memset(H,'\0',len);
strncat(C," columnalign=\"",14);
strncat(M," columnlines=\"",14);
strncat(H," rowlines=\"",11);
/* {c|c|c|c---}*/
for( p = 0; p < yyleng ; p++){
if( strlen(C) < (len - 8) && strlen(M) < (len - 8)){
/* in case of trouble...array M[len] or C[len] will be too small */
switch( yytext[p] ){
case 'c' : strncat(C," center ",8);break;
case 'r' : strncat(C," right ",7);break;
case 'l' : strncat(C," left ",6); break;
case '|' : strncat(M," solid ",7);break;
case ':' : strncat(M," dashed ",8);break;
case '-' : strncat(H," solid ",7);break;
case '_' : strncat(H," dashed ",8);break;
case '.' : strncat(H," none ",6);break;
case ' ' : break;
default : strncat(M," none ",6);strncat(H," none ",6);break;
}
}
}
/* 31/5/2017 bug in MathJax : rowlines="" will show rowlines */
if( strlen(M) < 16 ){ strncat(M," none ",6); }
if( strlen(H) < 16 ){ strncat(H," none ",6); }
strncat(C,"\" ",2);
strncat(M,"\" ",2);
strncat(H,"\" ",2);
yylval=wims_mathml_copy3(C,M,H);
return TEX_OPTIONS;
}
}
<SVGENV>{
"\\end\{svg" {
yylval = wims_mathml_copy_string(yytext);
replace_str(yylval,"\\lt ","<");
replace_str(yylval,"\\gt ",">");
yyleng = strlen(yylval);
yylval[yyleng-8]=0; BEGIN(SVGEND); return XMLSTRING;}
(.|\n) {yymore();}
}
<SVGEND>{
"\}" {BEGIN(MATH); return ENDSVG;}
}
<HTMLENV>{
"\\end\{html" {
yylval = wims_mathml_copy_string(yytext);
replace_str(yylval,"\\lt ","<");
replace_str(yylval,"\\gt ",">");
yyleng = strlen(yylval);
yylval[yyleng-9]=0; BEGIN(HTMLEND); return XMLSTRING;}
(.|\n) {yymore();}
}
<HTMLEND>{
"\}" {BEGIN(MATH); return ENDHTML;}
}
<ROMAN>{
"\{" {return ST;}
"\}" {BEGIN(MATH); return END;}
[a-zA-Z] {yylval=wims_mathml_copy_string(yytext); return RMCHAR;}
[\t\n\r ]+ ;
. {return yytext[0];}
}
<BBOLD>{
"\{" {return ST;}
"\}" {BEGIN(MATH); return END;}
[a-z] {yylval=wims_mathml_copy_string(yytext); return BBLOWERCHAR;}
[A-Z] {yylval=wims_mathml_copy_string(yytext); return BBUPPERCHAR;}
[0-9] {yylval=wims_mathml_copy_string(yytext); return BBDIGIT;}
[\t\n\r ]+ ;
. {return yytext[0];}
}
<CALLIGRAPHIC>{
"\{" {return ST;}
"\}" {BEGIN(MATH); return END;}
[a-zA-Z] {yylval=wims_mathml_copy_string(yytext); return CALCHAR;}
[\t\n\r ]+ ;
. {return yytext[0];}
}
<FRAKTUR>{
"\{" {return ST;}
"\}" {BEGIN(MATH); return END;}
[a-zA-Z] {yylval=wims_mathml_copy_string(yytext); return FRAKCHAR;}
[\t\n\r ]+ ;
. {return yytext[0];}
}
<PLAINTEXT>{
\{[^\}]*?\} {yylval=wims_mathml_copy_string(yytext+1); if ((yyleng > 1) && (yylval != wims_mathml_empty_string)) yylval[yyleng-2]='\0'; BEGIN(MATH); return TEXTSTRING;}
}
<INT1>{
"\{" {return ST;}
"\}" {BEGIN(INT2); return END;}
[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;}
[\t\n\r ]+ ;
. {return yytext[0];}
}
<INT2>{
"\{" {return ST;}
"\}" {BEGIN(INT3); return END;}
[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;}
[\t\n\r ]+ ;
. {return yytext[0];}
}
<INT3>{
"\{" {return ST;}
"\}" {BEGIN(MATH); return END;}
[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;}
[\t\n\r ]+ ;
. {return yytext[0];}
}
%%
void wims_mathml_restart ()
{
BEGIN(INITIAL);
}
static const char * s_wims_mathml_buffer = 0;
static unsigned long s_wims_mathml_length = 0;
void wims_mathml_setup (const char * buffer, unsigned long length)
{
yy_flush_buffer( YY_CURRENT_BUFFER );
s_wims_mathml_buffer = buffer;
s_wims_mathml_length = length;
}
static int s_wims_mathml_read (char * buffer, int max_size)
{
int result = 0;
if (max_size < s_wims_mathml_length)
{
result = max_size;
memcpy (buffer, s_wims_mathml_buffer, max_size);
s_wims_mathml_buffer += max_size;
s_wims_mathml_length -= max_size;
}
else
{
result = s_wims_mathml_length;
memcpy (buffer, s_wims_mathml_buffer, s_wims_mathml_length);
s_wims_mathml_buffer = 0;
s_wims_mathml_length = 0;
}
return result;
}