latex-math-parser 1.0.1
Install from the command line:
Learn more about npm packages
$ npm install @andstor/latex-math-parser@1.0.1
Install via package.json:
"@andstor/latex-math-parser": "1.0.1"
About this version
A parser for LaTeX math expressions.
This parser converts LaTeX math syntax into an abstract syntax tree (AST) representation. It is built using PEG.js and supports a mostly complete set of standard LaTeX math expressions.
npm install @andstor/latex-math-parserconst { parse } = require('@andstor/latex-math-parser');
const latex = '\\frac{a}{b} + \\sqrt{x}';
const ast = parse(latex);
console.log(JSON.stringify(ast, null, 2));This parser can be used with various code generators to convert the AST into different programming languages or formats. Currently supported generators include:
- maxima-codegen: Maxima is a computer algebra system that can manipulate symbolic expressions.
The complete grammar for this parser can be found at src/grammars/latex.pegjs. Following are some of the key features supported by the parser:
- Arithmetic operations: Addition, subtraction, multiplication, division, modulo, exponentiation, and implied multiplication.
- Logical and bitwise operations: Logical AND/OR, bitwise AND/OR/XOR, relational and equality operators.
-
Assignment expressions: Standard and compound assignments (e.g.,
=,+=,*=, etc.). - Function calls: Built-in and user-defined functions, including support for argument lists and nested calls.
-
Fractions: Parsing of LaTeX
\fracexpressions. -
Limits: Parsing of limit expressions (e.g.,
\lim). -
Logarithms: Parsing of logarithms with arbitrary bases, including
\log,\ln, and\lg. -
Binomial coefficients: Parsing of
\binom. -
Summations: Parsing of
\sumwith lower and upper bounds. -
Integrals: Parsing of definite and indefinite integrals (
\int). - Differentials: Parsing of differential expressions.
- Trigonometric functions: Parsing of all standard and inverse trigonometric functions.
-
Roots: Parsing of square roots and nth roots (
\sqrt). - Absolute value: Parsing of absolute value expressions.
-
Grouping: Parentheses and LaTeX groupings (
\left(...\right)). - Indexing: Array and matrix indexing.
-
Lists and sets: Parsing of lists (
[1,2,3]) and sets (\{1,2,3\}). -
Identifiers and constants: Unicode and ASCII identifiers, mathematical constants (e.g.,
\pi,e,\infty). - Numbers: Integer and floating-point literals.
-
Booleans and strings: Parsing of boolean (
true,false) and string literals. -
Matrix environments: Parsing of LaTeX matrix environments (e.g.,
matrix,pmatrix, etc.).
Details
- latex-math-parser
-
andstor
- 7 months ago
- MIT
- 12 dependencies
Assets
- latex-math-parser-1.0.1.tgz
Download activity
- Total downloads 0
- Last 30 days 0
- Last week 0
- Today 0