返回 marp
index.ts
根目录 / website / utils / markdown / parse / index.ts
1 import remarkGfm from 'remark-gfm'
2 import remarkParse from 'remark-parse'
3 import remarkSlug from 'remark-slug'
4 import { unified, Processor } from 'unified'
5 import { removePosition } from 'unist-util-remove-position'
6 import { imageParagraphToFigure } from './image-paragraph-to-figure'
7 import { marpCodeBlock } from './marp-code-block'
8
9 let parser: Processor | undefined
10
11 export const parse = async (md: string) => {
12 parser =
13 parser ||
14 unified()
15 .use(remarkParse)
16 .use(remarkGfm)
17 .use(remarkSlug)
18 .use(imageParagraphToFigure)
19 .use([marpCodeBlock])
20
21 return removePosition(await parser.run(parser.parse(md)), true)
22 }
23
23 lines TYPESCRIPT