@sciexpr/parser
LaTeX 和化学式解析器。
安装
bash
npm install @sciexpr/parserParserRegistry
typescript
import { ParserRegistry } from '@sciexpr/parser'
const registry = new ParserRegistry()
// 自动检测
registry.parse('\\frac{1}{2}') // → math
registry.parse('H2SO4', { hint:'auto' }) // → molecule
// 手动指定
registry.parse('\\alpha', { hint: 'latex' })
registry.parse('NaCl', { hint: 'chemical' })LatexParser
typescript
import { LatexParser } from '@sciexpr/parser'
new LatexParser().parse('\\sqrt{x^2 + y^2}')支持的命令
\frac \sqrt ^{} _{} \alpha~\omega \infty \partial \text{}
自定义解析器
typescript
registry.register({
id: 'my-parser',
formats: ['custom'],
canParse(input) { return input.startsWith('@@') },
parse(input) { /* ... */ },
})