Skip to content

gudn/am-parse-js

Repository files navigation

am-parse

Simple library for converting asciimath to other formats

Usage

use am_parse::{convert, OutputFormat};

fn main() {
  println!("{}", convert("1/2", OutputFormat::Latex, vec![]));
}

convert accepts three arguments:

  1. asciimath input string
  2. output format. Currently supports only Latex
  3. Custom functions list. This is list of user-defined functions, like f, g and others. This will be parsed as brace functions.

AsciiMath dialect

This is not original AsciiMath. Some symbols is not included (like TT, |--, etc); spaces is important -- they split input into blocks. For example, 1+2/3 renders to 1+\frac{2}{3}, but 1+2 / 3 renders to \frac{1+2}{3}. This works with functions arguments, fractions, superscripts and subscripts. Also it includes brace functions: they are enforced to be Matrix or expression in brackets.

Examples

  • root 3 x /4 -> \frac{\sqrt[3]{x}}{4}
  • sin 3*x -> \sin{3\cdot x}, sin3*x -> \sin3\cdot x
  • fr"text"-> \mathfrak{text}
  • ubrace^3 32 -> \underbrace{32}^3

About

WASM npm modules for am-parse

Resources

License

Stars

Watchers

Forks