插件选项
markdown-it-mermaid-enhanced 的公开配置面刻意保持得比较小
MermaidItOptions
| 字段 | 类型 | 默认值 | 说明 |
|---|---|---|---|
theme | 'auto' | 'default' | 'dark' | 'forest' | 'neutral' | 'base' | 'auto' | auto 跟随系统深色模式 |
renderEngine | 'mermaidjs' | 'excalidraw' | 'mermaidjs' | 指定 wrapper 背后的渲染器 |
sketch | boolean | false | 开启 Mermaid sketch 模式 |
fontFamily | string | '' | 标准字体覆盖 |
sketchFont | string | '' | 手绘字体覆盖,同时隐式开启 sketch |
minHeight | string | '' | 插件级最小高度回退值 |
mermaidConfig | Record<string, unknown> | {} | 透传给 Mermaid.js 的额外配置 |
excalidrawConfig | MermaidToExcalidrawConfig | {} | 透传给 Excalidraw 转换层的配置 |
MermaidToExcalidrawConfig
| 字段 | 类型 | 说明 |
|---|---|---|
startOnLoad | boolean | 透传给转换层 |
flowchart.curve | 'linear' | 'basis' | Flowchart 曲线 |
themeVariables.fontSize | string | 转换阶段使用的字号 |
maxEdges | number | 边数量上限 |
maxTextSize | number | 文本体积上限 |
一个紧凑示例
ts
import MarkdownIt from 'markdown-it'
import markdownItMermaidEnhanced from 'markdown-it-mermaid-enhanced'
const markdown = new MarkdownIt().use(markdownItMermaidEnhanced, {
theme: 'auto',
renderEngine: 'mermaidjs',
sketch: true,
sketchFont: '"Excalifont"',
minHeight: '160px',
})