# MetonaEditor > TypeScript 重构 · 零依赖 · 轻量级的桌面端 Markdown Editor 库。单文件,开箱即用。 [![npm version](https://img.shields.io/badge/version-0.2.0-blue.svg)](https://www.npmjs.com/package/@metona-team/metona-editor) [![license](https://img.shields.io/badge/license-MIT-green.svg)](./LICENSE) [![tests](https://img.shields.io/badge/tests-583%20passed-brightgreen.svg)](./tests) [![coverage](https://img.shields.io/badge/coverage-95%25%20(parser)-brightgreen.svg)](./tests) --- ## 特性 - **TypeScript 源码** — v0.2.0 全模块 TypeScript 重构,完整类型支持,IDE 智能提示 - **零依赖** — 单文件打包,无任何运行时依赖,UMD/ESM/CJS 三种格式 - **现代化** — 原生 ES2020+ 实现,CSS 变量主题系统,响应式布局,无障碍支持 - **易扩展** — 完整插件系统 v2(依赖拓扑排序、异步插件、生命周期钩子、`unuse` 卸载),自定义工具栏按钮与快捷键,预设插件开箱即用 - **易维护** — 模块化源码,JSDoc 注释完整,TypeScript 类型声明,425 个单元测试覆盖 - **易使用** — 工厂函数 `create()` 一行接入,链式 API,中文优先文档与翻译 - **安全** — 内置 XSS 防护(`javascript:`/`vbscript:`/`file:` 协议过滤),HTML 转义,`safeUrl` 净化 - **内置解析器** — 自研 CommonMark 子集 + GFM 扩展(表格含列对齐、任务列表、上下标、数学公式、脚注、嵌套列表、emoji 短码、三重强调、反斜杠转义等),可整体替换;v0.1.15 新增 parseTokens/renderTokens 分离 API + registerBlockHandler 块级扩展 - **三模式视图** — edit / split / preview 自由切换,分屏拖拽调整比例,滚动同步,模式切换保持滚动位置 - **编辑体验** — 语法高亮编辑区、行号装订线 + 当前行高亮、智能 Enter、括号闭合、拖放文件、大纲面板、Zen 专注模式、预览链接拦截 - **主题系统** — light / dark / auto / warm 四套预设,CSS 变量定制,实例级主题隔离,外部主题跟随(syncWithElement / adoptFromParent),主题继承(extends),跟随系统主题,@media print 打印样式 - **国际化** — zh-CN / en-US 完整翻译,实例级语言隔离,复数规则,命名空间,动态远程加载翻译包,RTL 支持 - **历史栈** — 撤销/重做,防抖合并(可配置延迟),可配置上限 - **只读模式** — `readOnly` 配置 / `setReadOnly()` API,适用于预览/展示场景 - **预设插件** — autoSave、exportTool、searchReplace、imagePaste、shortcutHelp、fileSystem(IndexedDB 存储) - **性能优化** — 渲染缓存跳过重复解析,`refresh()` 强制刷新,模式切换无冗余渲染 --- ## 目录 - [快速开始](#快速开始) - [配置项](#配置项) - [API 参考](#api-参考) - [事件系统](#事件系统) - [插件系统](#插件系统) - [主题系统](#主题系统) - [国际化](#国际化) - [Markdown 解析器](#markdown-解析器) - [TypeScript 支持](#typescript-支持) - [测试](#测试) - [构建](#构建) - [浏览器兼容性](#浏览器兼容性) - [License](#license) --- ## 快速开始 ### 安装 ```bash npm install @metona-team/metona-editor ``` ### 浏览器直接引入(UMD) > 样式由 JS 自动注入(`styles.js` 运行时动态创建 `