使用与编写插件
插件用于扩展内容处理流程中的一个环节。先确定想改变的行为属于哪一层,再选择对应的插件:
Core 已内置常见语法、修复、HTML 处理和平滑输出能力。各子页末尾列出对应的内置插件;优先调整它们的选项,需要新行为时再编写插件。
配置预设
插件输入支持三种形式:插件列表、按名称配置的对象,以及 [插件列表, 配置对象]。在 S 中传静态配置时,使用元组形式:
创建 Core 时,把 repairs 与 text、build 一起传入。这样会暂时隐藏未完成的图片,同时保留其他预设。
也可以直接导入插件类并配置:
已有的预设类会留在原来的位置,并使用新选项;新的插件类会加入列表。如果同时通过类元组和名称配置同一个选项,按名称提供的配置优先。
Core 加载的预设类型声明会提供
RemarkConfigs、RehypeConfigs、RepairConfigs和MapperConfigs,无需单独导入这些名称。
禁用或调整顺序
四类插件都支持 disabled 和 priority:
这会保留 Markdown 的普通换行行为,不再将其转成硬换行。同一类插件中,priority 越小越早执行;优先级相同时保持声明顺序。
编写插件
remark 和 rehype 插件用于接入 unified 插件;repair 插件访问并修改 Markdown AST 节点;mapper 则使用 Stative 构建持续变化的 HAST 内容块列表。
各子页分别介绍声明方式和如何接入:
传入插件类或 mapper 函数即可,由 Core 管理生命周期。每次运行的数据应留在转换函数或状态流内,让同一个声明可以用于多份内容。
预设从
/remark、/rehype、/repair或/mapper导入。@fluxdown/core-presets没有根入口。