Repair 插件
Repair 插件在 Markdown AST 转成 HAST 之前对其进行二次处理。它可以修复未完成的语法、整理节点边界,或添加临时展示内容,而不改写原始字符串。
声明插件
接收内容时,在末尾加一个生成中的指示点;接收结束后,它会自动消失:
插件在内置修复完成后,向当前末尾内容块追加一个带 indicator 类的 HTML 节点。stop() 结束本次遍历,确保只插入一次。
接入 Core
在快速开始的 Core 输入中加入 repairs,并开启 build.repair 和 build.repairEnding。
ending: true 让插件只作用于正在生成的最后一个内容块。接收结束时将 repairEnding 设为 false,指示点就会移除;原始 Markdown 始终保持不变。
内置 HTML 处理已允许 span 的 class 属性。使用 HTML 渲染器时,添加少量样式即可显示这个点:
遍历设置放在
config中,插件自身的构造选项用独立字段保存。Core 负责执行 runner 和管理生命周期。
内置插件
Core 默认包含以下插件,无需手动注册。
PRESET_REPAIR_PLUGINS,从 @fluxdown/core-presets/repair 导入。
修复由 build.repair 控制。下表第一组面向生成过程中的临时末尾状态,还需要 build.repairEnding。
正在生成的末尾
排版边界整理
下面这些插件在 build.repair 开启时工作,不要求开启 repairEnding。
修复影响当前展示,不会改写应用保存的 Markdown 原文。