plurimath / mathml2asciimath

Convert MathML to AsciiMath
https://www.metanorma.com
BSD 2-Clause "Simplified" License
4 stars 0 forks source link

= mathml2asciimath

image:https://img.shields.io/gem/v/mathml2asciimath.svg["Gem Version", link="https://rubygems.org/gems/mathml2asciimath"] image:https://github.com/plurimath/mathml2asciimath/workflows/ubuntu/badge.svg["Ubuntu Build Status", link="https://github.com/plurimath/mathml2asciimath/actions?query=workflow%3Aubuntu"] image:https://github.com/plurimath/mathml2asciimath/workflows/macos/badge.svg["OSX Build Status", link="https://github.com/plurimath/mathml2asciimath/actions?query=workflow%3Amacos"] image:https://github.com/plurimath/mathml2asciimath/workflows/windows/badge.svg["Windows Build Status", link="https://github.com/plurimath/mathml2asciimath/actions?query=workflow%3Awindows"] image:https://codeclimate.com/github/plurimath/mathml2asciimath/badges/gpa.svg["Code Climate", link="https://codeclimate.com/github/plurimath/mathml2asciimath"] image:https://img.shields.io/github/issues-pr-raw/plurimath/mathml2asciimath.svg["Pull Requests", link="https://github.com/plurimath/mathml2asciimath/pulls"] image:https://img.shields.io/github/commits-since/plurimath/mathml2asciimath/latest.svg["Commits since latest",link="https://github.com/plurimath/mathml2asciimath/releases"]

Ruby gem to convert MathML into AsciiMath

Ignores style and MathML attributes (other than mfenced/@open, mfenced/@close, mo/@fence).

Processes the following MathML tags: mrow, mfenced, msqrt, mfrac, msup, msub, munderover, msubsup, munder, mover, mi, mn, ntext, mo, mtable, mtr, mtd.

Converts all the Unicode characters MathJax knows about into AsciiMath operators (e.g. \\beta, xx, oint)

As with the other two MathML to AsciiMath converters available online (Python: https://github.com/rochecompaan/upfront.mathml2asciimath, Node.js: https://github.com/learningobjectsinc/mathml-to-asciimath), this converter is not foolproof, production-ready, or complete, and you will need to post-edit output. It's still a lot better than nothing. (And because it converts Unicode to Ascii, it's a lot better than the other two.)