跳到正文
QuireKit MSFE
开发者文档
v0.0.0 · 实验版本

模式与只读

在同一编辑器实例中切换源码与阅读呈现,保持内容和历史连续。

三种模式

模式使用场景
source显示完整 Markdown,使用代码编辑器式的输入体验
live在源码上显示阅读呈现,进入相关范围时显露语法
locked阅读、选择和复制,关闭正文编辑

修改一段文字,切换模式,再回到「实时预览」撤销,观察它们如何共用同一份文档。

正在准备编辑器…

独立只读权限

setReadOnly(true) 可以使源码或实时预览模式只读。它与呈现模式是不同维度:例如保留完整源码显示,同时禁止正文修改。

ts

输入与焦点

模式切换不重建实例,也不主动抢占工具栏焦点。组合输入期间会延后呈现切换,避免中断输入法。需要让用户继续输入时,宿主可以显式调用 focus()。

呈现与权限是两条轴

modereadOnly用户行为
sourcefalse编辑原始语法
livefalse原生编辑与非活动预览并存
source / livetrue保留该呈现,禁止写入
locked任意阅读呈现与复制,禁止写入

从 locked 返回 live 后,显式 readOnly 仍按宿主设置生效。setTheme() 不改变这两条轴。组合输入期间模式切换可能延后,editor.mode 表示当前实际模式,不是最后一次请求值。

自定义控件的配合

NodeView 与预览 props 中的 readOnly 是实际权限。折叠、查找、复制等源码中立动作可以继续;语言、字段、替换和删除操作必须尊重写保护。最终命令仍会检查,不应靠 disabled 属性作为唯一权限控制。

自定义投影默认只出现在 live / locked;进入 source 应能读到原始语法。应用若提供额外模式 UI,需要清楚显示当前实际状态并覆盖 IME 延后切换。见 投影层。

MSFE · QuireKitMarkdown 源码始终属于你。