Files
mnote/mindlist.md
T

4.0 KiB
Raw Blame History

KMind 能力对标清单(阶段化)

通过三个阶段逐步将 KMind 的成熟能力迁移到 MNOTE。完成后在方括号内打勾,并在下方补充备注/提交记录。


-## S1. 核心内核

  • 画布容器 / 多根模式 / 懒渲染
    参考 design/Kmind/js/0.js:719-1160MindMap 构造、_initializeContainerinitContainerreRenderresizeView,复刻 SVG 分层、容器重试与多根导图的渲染机制,映射到我们的 MindmapCanvas / MindLayoutEngine
  • 渲染管线与布局注册
    对齐 Render 类(design/Kmind/js/0.js:11753-15120)的节点缓存、布局切换、命令注册、懒渲染、generalization 处理;把 LogicalStructure/MindMap/Fishbone 等布局映射成我们自研引擎的 layout API。
  • 快捷键与命令路由
    移植 KeyCommand + keyMapdesign/Kmind/js/0.js:11709-1189011721-11740)的多实例冲突、防冒泡捕获、编辑快捷键白名单,落地到 MindmapShortcutController
  • 富文本输入 / 撤销栈 / 实时测量
    复用 design/Kmind/js/0.js:11114-11290 的 Quill historyinputkeyboard 模块与 render/TextEdit,实现节点富文本编辑、粘贴清洗、撤销重做,并与 BlockNote 文档保持同步。
  • 节点链接 / 附件 / 思源解析
    checkSiyuanLinkFormatDatacheckSiyuanPdfUrlFormatDatasetNodeSiyuanHyperlink 等逻辑(design/Kmind/js/0.js:12040-12380)改写成我们的 link/attachment 数据模型,实现块链接、PDF 标注、镜像粘贴解析。

S2. 交互与 UI

  • 浮动工具条 / 节点属性面板
    design/Kmind/app.js:468-1150 的 i18n 配置复刻附件、图标、外框、公式、链接、节点属性面板等按钮布局与交互。
  • 直觉按钮 & 拖拽建节点
    依据 READMEdesign/kmind-plugin/README.md:103-125)中“直觉按钮”/禅模式描述,落地相同的拖动建节点体验和提示文案。
  • 导航工具栏 / 只读 / 禅模式 / MiniMap
    参考 navigatorToolbardesign/Kmind/js/0.js 内相关实现)及 README 中的 Fullscreen / Zen / Readonly 说明,实现视图控制、全屏、回到根节点、MiniMap。
  • MOC 模式与文档树导图
    对照 READMEdesign/kmind-plugin/README.md:17-37)与文档树创建导图流程(同文件 365 行附近),完成 BlockNote Outline ↔ Mindmap 的实时映射、增删节点限制、全局配置项。
  • 镜像块 / 跨文档嵌入
    参考 design/kmind-plugin/README.md:139-199 的操作流程,设计 MindmapEmbedWidget:镜像块 copy/paste、跳回源导图、蒙版提示。
  • PDF 标注 & 思源链接处理
    结合 README (design/kmind-plugin/README.md:89-125) 和核心代码中的 PDF 解析函数,支持粘贴思源 PDF 标注/块引用后自动生成节点链接、缩略图/跳转。

S3. 主题与资产

  • 主题 JSON / 主题编辑器
    引入 ../simple-mind-map-plugin-themesdesign/Kmind/js/0.js:3-400)的 50+ 主题配置,整合 themeConfig 机制,支持导入/导出/预览以及 MindManager 风格主题。
  • 图标 / 贴纸 / 字体资源
    整理 design/Kmind/img/*.svgdesign/Kmind/fonts/* 资产,生成 React 可用的图标组件和字体声明,为附件、标签、状态、贴纸 UI 提供素材。
  • 导出 / 嵌入 / 全屏 / 小地图等工具
    借鉴 design/Kmind/js/0.js:11114-11580 与 README 对导出、禅模式、只读、全屏、MiniMap 的描述,实现 PNG/SVG/OPML 导出、嵌入视图与全屏展示。
  • 插件/挂件包装
    参考 design/kmind-plugin/plugin.jsondesign/kmind-plugin/app/widget.json 定义的入口、权限和资源结构,规划我们的桌面壳/挂件打包流程。

备注 & 进度记录

日期 项目 说明 提交
2025-11-29 S1 核心内核 初始化画布/布局/命令/快捷键/文本/链接骨架,形成可用工程模板 暂未提交