• v0.4.2 20b6d03617

    thzxx released this 2026-07-24 15:06:57 +08:00 | 24 commits to master since this release

    v0.4.2 更新内容

    依赖变更

    • @metona-team/metona-editor: 0.1.3 -> 0.1.10
      • 实例级主题 API (editor.setTheme())
      • 新增配置项: lineNumbers / autoBrackets / autofocus / readOnly
      • 新增插件: exportTool (导出 MD/HTML)
      • 新增回调: onSave (原生 Ctrl+S 拦截)
    • @metona-team/metona-toast: 2.0.1 -> 0.1.2

    三主题系统

    • 亮色 / 暗色 / 暖色 三主题循环切换,工具栏按钮显示当前主题名称
    • 应用颜色通过 MeEditor.themes.exportCSSVars() 自动同步编辑器主题
    • 侧边栏选中项使用 accent 12% 透明度背景,文字清晰可读
    • 二级/三级背景色由文字色按透明度派生,适配任意编辑器主题
    • Toast 通知主题同步切换
    • 样式驱动: 移除 variables.css 中硬编码 .dark 色值,完全由 JS 动态同步

    编辑器功能启用

    • 行号装订线 (lineNumbers: true)
    • 括号自动闭合 (autoBrackets: true)
    • 自动聚焦 (autofocus: true)
    • 预览模式只读 (readOnly 动态同步)
    • 导出 MD/HTML 文件 (exportTool 插件)

    快捷键优化

    • Ctrl+S 双通道: 编辑器 onSave 回调 + 全局 keydown 兜底
    • 300ms 防重入锁,避免双击或双事件触发重复保存
    • 工具栏/侧边栏聚焦时 Ctrl+S 仍可正常工作

    架构重构

    • 主题模型: darkMode boolean -> themeMode 枚举 (light | dark | warm)
    • Store: toggleDarkMode() -> cycleTheme() 三态循环
    • 插件注册: PluginObject 引用 -> 字符串数组 (与 demo 一致)
    • 主题同步: 30行手动CSS覆写 -> editor.setTheme() 实例级API (v0.1.5+)

    测试

    • 更新 editorStore 测试用例,覆盖 themeMode / cycleTheme
    • 全部 98 个测试通过

    修复

    • 侧边栏选中项文字完全看不清的问题 (accent纯色背景+accent纯色文字 -> 12%透明度背景+纯色文字)
    Downloads