#asciimath #format #converting #convert #parse #text #latex

程序+库 am-parse

简单的库,用于将 asciimath 转换为其他格式

6 个版本

0.99.6 2021 年 12 月 2 日
0.99.4 2021 年 12 月 1 日
0.99.3 2021 年 11 月 29 日

1400文本处理

每月 24 次下载

MIT 许可证

61KB
2K SLoC

am-parse

简单的库,用于将 asciimath 转换为其他格式

使用方法

use am_parse::{convert, OutputFormat};

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

convert 接受三个参数

  1. asciimath 输入字符串
  2. 输出格式。目前仅支持 Latex
  3. 自定义函数列表。这是一个用户定义的函数列表,如 fg 等。这些将被解析为花括号函数。

AsciiMath 语法

这不是原始的 AsciiMath。一些符号被省略(如 TT|-- 等);空格很重要 - 它们将输入分割成块。例如,1+2/3 渲染为 1+\frac{2}{3},但 1+2 / 3 渲染为 \frac{1+2}{3}。这也适用于函数参数、分数、上标和下标。还包括花括号函数:它们被强制为矩阵或括号内的表达式。

示例

  • 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

无运行时依赖