Files
mnote/design/11-wolai/comprehensive-feature-matrix.md
T
lix-2026 cdff672aa5 feat: align local-first workspace direction
Document the VSCode-like local-first product shape, demote Convex to a control-plane role, and retire stale architecture drafts.

Add local workspace migration/export references plus smoke coverage for no-Convex managed workspace startup, local markdown title/body/options persistence, asset upload behavior, and Convex fixture export.

Verification: git diff --cached --check; node scripts/check-local-first-convex-guard.js --staged; node scripts/task444-convex-workspace-export-local-fixture-smoke.js; node scripts/task166-local-first-managed-workspace-no-convex-smoke.js; node scripts/task167-local-markdown-title-body-options-no-convex-smoke.js
2026-05-19 08:11:58 +08:00

8.8 KiB
Raw Blame History

Wolai 基础功能 ↔ mnote 实现完整对照矩阵

生成时间:2026-05-19 说明:逐项对照 Wolai 帮助中心基础功能和当前 mnote 代码,每项标注 //🔧 并附证据路径

一、基础操作

# Wolai 功能 状态 mnote 证据
1 基本编辑(输入/换行/方向键) leptos-tiptap island ProseMirror 编辑器
2 块概念Block Editor 模式) EditorBlockType 枚举定义 15 种块(core-protocol/src/editor/model.rs:7-22
3 拖动块:: 手柄拖拽) HANDLE_SHELL_SELECTOR / DragEventlib.rs:45, 136
4 选中块Esc/方向键/Shift多选) TiptapSelectionState 选择状态(lib.rs
5 上方/下方插入块+按钮 / a/b快捷键) block handle shell + 快捷键处理
6 分栏(拖拽到左/右侧) columnsLayout Tiptap 扩展未注册
7 块布局显示Ctrl+Shift+U 🔧 pageOptionIsSupported 未包含此选项
8 块转换(文本↔标题↔列表↔页面) EditorCommand::ReplaceBlockeditor/command.rs:22
9 块菜单(点击 :: → 转换/颜色/操作) 🔧 上下文菜单存在,但块菜单功能可比
10 复制/粘贴 write_mnote_text_to_clipboard
11 缩进/取消缩进Tab/Shift+Tab Tiptap 原生支持
12 文本样式工具条(粗/斜/下划/删除线/行内代码) TextMark::{Bold, Italic, Underline, Strike, Code}
13 文字颜色/背景色 TiptapColorAttributes TiptapHighlightAttributes
14 超链接Ctrl+K TiptapLinkResource TiptapMarkName::Link
15 行内数学公式 数学公式 Tiptap 扩展
16 选中文字 → 页面引用 🔧 PageReference 块类型存在,快捷交互待接线
17 块引用 EditorBlockType::BlockReference + TiptapNodeName 支持
18 脚注与注释 无脚注/注释扩展

二、页面选项

# 选项 状态 mnote 证据
1 自适应宽度wideLayout 已接通 layout.rs:531: maxWidth = wideLayout ? '980px' : '760px'
2 小字体smallText 已接通 data-page-small-text attributelayout.rs:529
3 标题目录showToc 🔧 UI可见待接线 layout.rs:438 说"当前 Rust 壳还没有正式目录面板"
4 标题自动编号showHeadingNumbers 已接通 layout.rs:439 hint: "标题前显示顺序编号"
5 编辑保护protectEditing 🔧 UI可见待接线 layout.rs:447 hint: "只显示降级说明"
6 折叠反向引用collapseBacklinks 🔧 UI可见待接线
7 隐藏子页面hideChildPages 🔧 UI可见待接线
8 显示块引用数字showBlockRefCount 🔧 UI可见待接线
9 布局密度layoutDensity 已接通 hint: "段落与列表间距会变化"
10 页面字体pageFont 已接通 hint: "当前页面字体会切换"
11 字数统计 computeLivePageStats() 实时计算(layout.rs:485-507
12 待办统计 todoTotal / todoDone 统计(layout.rs:503-506
13 暗色模式 Good Night 模式 / 跟随系统(layout.rs
14 删除页面(进垃圾桶) tree.resource.archive
15 移动到... tree 命令 routes/tree.rs
16 页面引用链接复制 上下文菜单"复制页面引用链接"(layout.rs:3146-3148
17 导出页面 无导出 UI

三、基础块类型

# 块类型 Wolai 命令 状态 mnote 证据
1 文本/段落 /wb /wenben /text /plain Paragraph + TiptapExtension::Paragraph
2 标题 H1-H4 /bt /biaoti /h1 /h2 /h3 /h4 Heading + TiptapExtension::Heading
3 列表(无序) /lb /liebiao /wuxu /bullet BulletListItem + TiptapExtension::BulletList
4 数字列表(有序) /szlb /shuzi /number NumberedListItem + TiptapExtension::OrderedList
5 待办列表 /dblb /daiban /todo Todo + TiptapExtension::TaskList + TiptapExtension::TaskItem
6 折叠列表 /zdlb /toggle + space Toggle 扩展
7 页面块(subpage 块转换 → 页面 🔧 PageReference 类型存在,嵌入页 UI 待确认
8 引述文字(blockquote /yswz /quote Quote + TiptapExtension::Blockquote
9 着重文字(callout /zzwz /callout !! space Callout 扩展
10 代码片段 /dmpd /code CodeBlock + TiptapExtension::CodeBlock
11 数学公式 /sxgs /latex /math LaTeX 公式扩展
12 分割线 /fgx /fengexian Divider + TiptapExtension::HorizontalRule

四、进阶块类型(基础级)

# 块类型 状态 mnote 证据
1 简单表格 Table + TiptapExtension::Table/TableRow/TableCell/TableHeader
2 数据表格(database 无 Database/Notion-DB 扩展
3 统计图表 无 Charts 扩展
4 Mermaid 绘图 无 Mermaid 扩展
5 思维导图 Mindmap + routes/mindmap_api.rs + ssr/pages/mindmap.rs
6 页面目录(TOC 🔧 Toc + TiptapExtension::TocNode 已注册,但 showToc 标注"待接线"
7 按钮 无 Button 扩展
8 进度条 无 ProgressBar 扩展
9 仪表数字 无 Dashboard/Counter 扩展
10 会议 无 Meeting 扩展
11 嵌入第三方应用 🔧 OnlyOffice 已接,其他 iframe embed 待定
12 网址书签 无 Bookmark 扩展

五、媒体与文件

# 类型 状态 mnote 证据
1 图片 Image + TiptapExtension::Image + TiptapImageResource
2 视频 视频 Tiptap 扩展
3 音频 无 Audio 扩展
4 文件附件 OnlyOffice adapter + 附件块
5 Emoji 表情 Emoji 选择器
6 Font Awesome 图标 无 FA 图标选择器
7 动态图标 无动态图标
8 卡通头像 仅有文字头像(layout.rs:7873: "L"

六、编辑器 UI / 壳

# 功能 状态 mnote 证据
1 侧栏(品牌/搜索/页面树) layout.rs:7801: "左侧栏 + 内容区的双栏布局"
2 浮动 AI 按钮 wolai-floating-ai buttonlayout.rs:7927
3 浮动帮助按钮 wolai-floating-help buttonlayout.rs:7926
4 搜索模态Ctrl+P 搜索壳 + smoke 验证
5 垃圾桶入口 侧栏下方入口
6 模板中心 无模板功能
7 右侧边栏(双栏编辑) 🔧 上下文菜单有"在右侧边栏打开",面板 UI 待确认
8 今日速记/日记 无每日速记功能
9 页面关系图 无关系图可视化
10 导航历史 🔧 页面上下文菜单含"块历史",但非历史列表

七、键盘快捷键

# 快捷键 功能 状态
1 Ctrl+P 搜索
2 Ctrl+Shift+L 标题目录 🔧(选项UI可见但功能待接线)
3 Ctrl+Shift+U 显示块结构
4 Ctrl+Shift+C 编辑保护 🔧
5 Ctrl+Z 撤回
6 Ctrl+Shift+V 匹配样式粘贴
7 Tab / Shift+Tab 缩进/取消缩进
8 Esc 选中块
9 a / b 上方/下方插入块
10 Enter(思维导图) 插入同级节点
11 Alt+O 右侧边栏打开 🔧
12 Alt+Q 打开/关闭右侧边栏
13 Ctrl+Alt+G Good Night 暗色模式
14 Ctrl+ 今日速记

八、汇总

类别 总数 🔧 覆盖率
基础操作 18 11 3 4 61%
页面选项 17 10 5 2 59%
基础块类型 12 9 1 2 75%
进阶块类型 12 2 2 8 17%
媒体与文件 8 4 0 4 50%
编辑器 UI/壳 10 6 2 2 60%
键盘快捷键 14 8 3 3 57%
总计 91 50 16 25 55%

注:🔧 = 存在代码/UI 但功能未完全接通(如标题目录 TOC 扩展已注册但 UI 面板未挂接)