github asnunes/mathml-to-latex v1.8.0

4 hours ago
  • (FEAT) Wrap bare tables and rows in proper LaTeX environments
    An <mtable> with no fences around it (how MathJax and LaTeXML emit multiline align equations) now renders as \begin{aligned}...\end{aligned} when it declares mixed right/left column alignment, and as \begin{matrix}...\end{matrix} otherwise, instead of emitting raw &/\\ that do not compile. Orphan <mtr> rows wrap themselves too, and the MathJax piecewise shape ({ + table without a closing operator) becomes a cases environment. A property-based test now guarantees alignment markers never appear outside an environment. #75 (#74, obsidianmd/obsidian-clipper#143)

  • (FEAT) Support unicode double-bar norm delimiters (, )
    The glyphs real-world MathML uses for norms now translate to the \| delimiter (\left\|x\right\| instead of the invalid \left∥), sibling <mo>∥</mo> pairs are recognized as fences — including scripted norms like ‖P‖_F^2 where the closing bar sits inside the script base — and a double-bar fenced table becomes a Vmatrix. A lone keeps its relational meaning (\parallel). #79 (#43)
    Thanks to @sunnyawake5 for reporting.

  • (FIX) Invisible operators no longer leak into the output
    Function application (U+2061), invisible times (U+2062), invisible separator (U+2063) and invisible plus (U+2064) — ubiquitous in MathML from Word and web editors — were passed through as raw unicode characters (sin ⁡ x) or mistranslated (\llbracket). They are now dropped, producing clean output like sin x. #73 (#71)

  • (FIX) <mmultiscripts> conversion rewritten
    Prescripts now attach to the base ({}_{238}^{92}U instead of a literal \_ glyph), every script pair is kept with {} atoms between pairs so multiple pairs never produce a double-subscript error, <mprescripts/> is found at any position, <none/> placeholders are omitted instead of emitting empty _{}, and a base-only element is accepted as the spec allows. Composite bases group with invisible braces instead of invented visible parentheses. #78 (#77)

  • (FIX) Corrected operator mappings for , and
    produced the non-existent \geg, lost its backslash (literal sim), and mapped to \rightarrowtail; they now produce \geqq, \sim and \mapsto. #75

Don't miss a new mathml-to-latex release

NewReleases is sending notifications on new releases.