Something went wrong. Try again.
tex math to mathml core converter
Something went wrong. Try again.
Changelog #
2026.917.0 #
- A script argument is one token, as TeX reads it, so
x^12is x to the first followed by a 2.\frac, the arrows,_and^share one argument reader. 'is a superscript prime,f''the double prime glyph, and a^right after a prime joins the same superscript. It used to be a baseline<mo>that the operator dictionary spaced as an unknown operator.\xrightarrow[a]{b}is refused. The bracket used to become the label.\emptyset,\forall,\exists,\lnotand the reserved characters are identifiers. As operators outside the dictionary they took 0.2777em on each side, where TeX gives an ordinary symbol none.- A sign after a relation, an opening fence or punctuation is wrapped with its
operand, so
x = -1has no gap after the minus. :is the relation U+2236, spaced as a binary operator rather than as punctuation, and\colonis the punctuation colon.- Add
\varpi,\varrhoand\varsigma. - Text mode follows TeX: an unescaped brace groups and vanishes,
\is a space,\textbackslasha backslash, and\\is refused rather than read as a backslash. An unknown control symbol is named in the error. Parser.parsevalidates the source itself, so the public parser and emitter cannot produce a character XML refuses.Unexpected_charcarries the character whole. An error names a character outside printable ASCII by its code point.Ast.variantisAuto | Normal. ItsUprightshared a name with the text font inTypes.- The srd corpus output is pinned byte for byte in
test/srd.mathml.
2026.903.1 #
- Reject code points outside XML's
Charproduction. Valid UTF-8 admits C0 controls and the U+FFFE and U+FFFF noncharacters, which no XML parser accepts, and\text{}copied them into the output. \|is\Vertand emits U+2016 rather than a single bar.\vertand a bare|are the single bar, and|no longer stops the conversion.- Set uppercase Greek upright with
mathvariant="normal". MathML Core applies automatic italic to a single-character identifier, which TeX does not do to uppercase Greek. \epsilonand\phiemit the symbol forms U+03F5 and U+03D5, with\varepsilonand\varphifor U+03B5 and U+03C6. Complete the Greek table.- Accept a single unbraced token as an argument, so
\frac12is one half. - Add
\le,\ge,\ne, and the reserved characters\%\&\#\$\_.
2026.903.0 #
- Initial release. Converts fractions, extensible arrows, text runs, scripts, grouping, spacing, and a symbol and Greek letter table to MathML Core.