JSON选项

JSON 选项是一组可以序列化为 JSON 并嵌入到 Markdown 中的选项。

用法

Markdown 前置内容

JSON 选项可以作为 markmap 的值添加到 Markdown 文件的前置内容中。

例如:

---
markmap:
  color:
    - blue
  # 其他选项
---

Markdown 内容在这里

VSCode 的 Markmap

JSON 选项可以在 gera2ld.markmap-vscode 中设置为 默认选项,这样您就不必修改每个文件的前置内容。

例如:

{
    "color": ["blue"]
}

选项列表

color

类型:string | string[],默认:d3.schemeCategory10

用于每个节点的分支和圆圈颜色的颜色列表。

如果未提供,则将使用 d3.schemeCategory10

colorFreezeLevel

类型:number,默认:0

在指定的分支级别冻结颜色,即所有子分支将使用其祖先节点在冻结级别的颜色。

0 表示完全不冻结。

duration

类型:number,默认:500

折叠/展开节点时的动画持续时间。

maxWidth

类型:number,默认:0

每个节点内容的最大宽度。0 表示没有限制。

initialExpandLevel

类型:number,默认:-1

初始渲染时要展开的节点的最大级别。

-1 表示展开所有级别。

extraJs

类型:string[],默认:无

JavaScript URL 列表。这对于添加更多功能(如 Katex 插件)非常有用。

extraCss

类型:string[],默认:无

CSS URL 列表。这对于添加更多功能(如 Katex 插件)非常有用。

zoom

类型:boolean,默认:true

是否允许缩放 Markmap。

pan

类型:boolean,默认:true

是否允许平移 Markmap。

htmlParser

类型:{ selector: string }

传递选项给内部 HTML 解析器,例如覆盖显示元素的默认选择器。

spacingHorizontal

类型:number,默认:80

spacingVertical

类型:number,默认:5

为什么?

如果您不是开发人员,可以跳过此部分。

Markmap 有自己的选项,可以在创建时或之后传递。

Markmap.create(svg, markmapOptions, data);

然而,markmapOptions 是一个低级对象,包含复杂的逻辑,几乎无法序列化,因此不具可移植性。

jsonOptions 的引入是为了可移植性,但作为权衡,它只能代表 markmapOptions 的一个子集。

jsonOptions 可以通过一次函数调用转换为 markmapOptions

import { deriveOptions } from 'markmap-view';

const markmapOptions = deriveOptions(jsonOptions);