py-asciimath
A simple converter from ASCIIMath/MathML to LaTeX/MathML
Decision gist · record as of 2026-08-14
Yes, if you need bidirectional translation between ASCIIMath, LaTeX, and MathML and can accept an unmaintained package. The code is stable, has no known vulnerabilities, and the three dependencies are lightweight. Install friction is low. However, do not rely on it for new features or bug fixes—treat it as a snapshot tool. If you need active maintenance or support, consider alternatives.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Low install friction with three straightforward dependencies (lark-parser, docopt, lxml).
- However, the package is abandoned—last commit was 2023-07-28 and no releases since 2020-04-22.
- Consider this a stable snapshot rather than actively maintained software.
License · maintenance · safety
permissive license (permissive) — Licensed under MIT (permissive), so you can use, modify, and distribute it freely with minimal restrictions.
last release 2020-04-22 (2305 days) · last repo commit 2023-07-28 · 42 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 1,086,732 downloads/mo, #4,383 on PyPI
Alternatives
Verify before relying
from py_asciimath.translator.translator import ASCIIMath2Tex
asciimath2tex = ASCIIMath2Tex()
result = asciimath2tex.translate(r"e^x > 0 forall x in RR")
print(result)- Whether MathML-to-LaTeX conversion via XSLT MathML Library is fully functional or has known limitations beyond what the fact sheet documents.
- Current compatibility with modern Python versions beyond 3.9, given the package is abandoned and last tested on 3.5–3.9.
- Whether the command-line interface remains fully functional or has bitrot issues.
What it is and what it does
py-asciimath is a translation layer between three mathematical notation formats: ASCIIMath (a human-readable markup), LaTeX (typesetting), and MathML (XML-based mathematical markup). It exposes translator classes for each conversion pair—ASCIIMath2MathML, ASCIIMath2Tex, MathML2Tex, and Tex2ASCIIMath—plus a command-line tool for batch conversions.
The package parses ASCIIMath using lark-parser and relies on lxml for XML handling. It is useful for workflows that need to move mathematical expressions between different systems—for instance, converting user-friendly ASCIIMath input into LaTeX for document generation or MathML for web display. The package is abandoned (last release April 2020), so it should be treated as a stable but unmaintained tool.
Use it for
- Convert ASCIIMath notation from user input into LaTeX for PDF document generation in educational or scientific applications.
- Transform MathML from web sources into LaTeX for inclusion in academic papers or typeset documents.
- Batch-convert mathematical expressions via the command-line interface for data pipeline or content migration tasks.
- Parse and validate ASCIIMath expressions as part of a math-aware text editor or note-taking application.
- Generate MathML from LaTeX for embedding mathematical content in web pages or EPUB documents.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you need bidirectional translation between ASCIIMath, LaTeX, and MathML and can accept an unmaintained package.
The code is stable, has no known vulnerabilities, and the three dependencies are lightweight. Install friction is low. However, do not rely on it for new features or bug fixes—treat it as a snapshot tool. If you need active maintenance or support, consider alternatives.
Install
py-asciimath on PyPI
Before you install
Low install friction with three straightforward dependencies (lark-parser, docopt, lxml). However, the package is abandoned—last commit was 2023-07-28 and no releases since 2020-04-22. Consider this a stable snapshot rather than actively maintained software.
License in practice
Licensed under MIT (permissive), so you can use, modify, and distribute it freely with minimal restrictions.
Quickstart
from py_asciimath.translator.translator import ASCIIMath2Tex
asciimath2tex = ASCIIMath2Tex()
result = asciimath2tex.translate(r"e^x > 0 forall x in RR")
print(result)
Verify before relying
- Whether MathML-to-LaTeX conversion via XSLT MathML Library is fully functional or has known limitations beyond what the fact sheet documents.
- Current compatibility with modern Python versions beyond 3.9, given the package is abandoned and last tested on 3.5–3.9.
- Whether the command-line interface remains fully functional or has bitrot issues.
Package facts
| License | permissive license permissive |
| Python support | Not specified |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 3 packageslark-parserdocoptlxml |
| Maintenance | Abandoned 2,305 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 1,086,732 / month, #4,383 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | License :: OSI Approved :: MIT LicenseProgramming Language :: Python :: 3Programming Language :: Python :: 3.5Programming Language :: Python :: 3.6Programming Language :: Python :: 3.7Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9 |
Evidence: py_asciimath-0.3.0-py2.py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “asciimath to latex converter”
- py-asciimathConverts between ASCIIMath, LaTeX, and MathML mathematical notation…
- latex2mathmlConverts LaTeX mathematical expressions to MathML format, available…
- pybtexPybtex reads bibliography data from BibTeX, BibTeXML, or YAML files…
Give your agent the search over MCP, or paste the wish link into any chat.
More Markup packages
PyYAML parses and emits YAML 1.1 data format, enabling serialization and deserialization of configuration files and Python objects to and from human-readable YAML text.
A Python markdown parser that converts markdown to HTML following the CommonMark specification, with support for plugins and custom syntax rules.
Install it if you need reliable markdown-to-HTML conversion.
Beautiful Soup parses HTML and XML documents into a navigable tree, providing Pythonic methods to search, iterate, and modify the parsed content.
Install it if you need to parse or extract data from markup documents.
et_xmlfile writes large XML files with minimal memory overhead by serializing elements to disk as they are created, rather than holding the entire tree in memory.
Install it if incremental XML writing fits your use case; skip it if your XML documents are small or you already use lxml.
Parses and edits TOML files while preserving formatting, comments, and structure, then serializes them back with layout intact.
Install it if you're building tools that touch TOML files and user readability of the source matters.
Parses Python docstrings in ReST, Google, Numpydoc, and Epydoc formats, extracting structured information like descriptions, parameters, return types, and exceptions.
Install it if you need to programmatically read and extract structured data from Python docstrings.
See also latex2mathml · latex2sympy2 · pypptx-with-oxml · latex2sympy2-extended · pylatexenc · sphinxcontrib-katex · math-verify · sphinxcontrib-jsmath · dicttoxml · itanium-demangler