@paperist/remark-math
v2.0.0
Published
wooorm/remark plugin for math likes LaTeX / MathJax
Downloads
13
Readme
@paperist/remark-math
wooorm/remark plugin for math likes KaTeX / MathJax
Table of Contents
Install
npm i remark @paperist/remark-math
Usage
const unified = require('unified');
const parser = require('remark-parse');
const math = require('@paperist/remark-math');
const markdown = `
In an x-y Cartesian coordinate system,
the circle with centre coordinates \\((a, b)\\) and
radius \\(r\\) is the set of all points \\((x, y)\\) such that
\\[
(x - a)^2 + (y - b)^2 = r^2
\\]
> https://en.wikipedia.org/wiki/Circle
`;
const processor = unified()
.use(parser)
.use(math);
const ast = processor.parse(markdown);
processor.run(ast).then((ast) => {
console.dir(ast, { depth: null });
});
AST
Math
Math
extends Literal
.
interface Math extends Literal {
type: 'math';
math: string;
}
For example, the following markdown:
\[
x^2 + y^2 = r^2
\]
Yields:
{
"type": "math",
"value": "\\[\nx^2 + y^2 = r^2\n\\]",
"math": "\nx^2 + y^2 = r^2\n"
}
InlineMath
InlineMath
extends Literal
.
interface InlineMath extends Literal {
type: 'inlineMath';
math: string;
}
For example, the following markdown:
\(E = mc^2\)
Yields:
{
"type": "inlineMath",
"value": "\\(E = mc^2\\)",
"math": "E = mc^2"
}
Contribute
PRs accepted.