Repolode
panphora

panphora/overtype

一个轻量的 JavaScript Markdown 编辑器,通过透明 textarea 叠加在渲染预览上实现所见即所得的编辑体验。

Star
3,703
Fork
92
未关闭 Issue
6
最近提交
13天前

这是什么?

OverType 是一个 Markdown 编辑器库,底层保留原生 textarea 负责输入,在其下方绘制带样式的预览层。textarea 透明,预览与输入使用等宽、等字号排版,因此输入内容与渲染结果逐字对齐,Markdown 语法符号也保持可见。

库体积约 134KB(压缩后),无运行时依赖。可通过 npm 以 ESM 或 CommonJS 方式引入,也可经 CDN 以 ES 模块或全局脚本加载,并提供原生 Web Component 形式。内置可选工具栏、Solar 与 Cave 两套主题(支持全局或单实例设置)、列表自动续行、任务列表渲染、统计栏,以及粘贴和拖放文件的上传回调。

编辑器提供读写内容、在编辑/纯文本/预览模式间切换、导出干净 HTML 等接口,并单独提供 Markdown 解析器,可用于服务端渲染或浏览器扩展。图片不会被渲染,所有文本需使用同一等宽字体和字号以保持对齐。

核心功能

  • 01透明 textarea 叠加层,让输入内容与样式化预览保持对齐。
  • 02可选工具栏,包含粗体、斜体、代码、链接、标题、列表、任务列表和引用按钮。
  • 03支持 Cmd/Ctrl+B、Cmd/Ctrl+K 等快捷键,并支持类似 GitHub 的列表自动续行。
  • 04内置 Solar 与 Cave 主题,也支持自定义颜色主题。
  • 05可导出干净的 HTML 或渲染后的 HTML,并提供独立的 Markdown 解析器。
  • 06可通过 npm 包、CDN 脚本或 Web Component 使用。

适用场景

  • 在网页表单或评论框中加入轻量的 Markdown 输入,无需构建步骤。
  • 在单文件网页应用中构建笔记或文档编辑器。
  • 在需要良好移动端键盘支持的页面中嵌入 Markdown 编辑器。
  • 使用独立解析器在服务端将 Markdown 渲染为 HTML。

快速上手

  1. 1

    从 npm 安装该包

    npm install overtype
  2. 2

    导入 OverType 并在容器元素上创建编辑器

    import OverType from 'overtype'; const [editor] = new OverType('#editor', { value: '# Hello' });

标签

常见问题

overtype 是什么?
一个轻量的 JavaScript Markdown 编辑器,通过透明 textarea 叠加在渲染预览上实现所见即所得的编辑体验。 OverType 是一个 Markdown 编辑器库,底层保留原生 textarea 负责输入,在其下方绘制带样式的预览层。textarea 透明,预览与输入使用等宽、等字号排版,因此输入内容与渲染结果逐字对齐,Markdown 语法符号也保持可见。
overtype 可以免费使用吗?用的什么许可证?
overtype 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
overtype 还在维护吗?
活跃维护中。overtype 最近一次提交是在 2026年10月10日。
overtype 适合用来做什么?
在网页表单或评论框中加入轻量的 Markdown 输入,无需构建步骤。 在单文件网页应用中构建笔记或文档编辑器。 在需要良好移动端键盘支持的页面中嵌入 Markdown 编辑器。 使用独立解析器在服务端将 Markdown 渲染为 HTML。
overtype 怎么安装和运行?
从 npm 安装该包: npm install overtype 导入 OverType 并在容器元素上创建编辑器: import OverType from 'overtype'; const [editor] = new OverType('#editor', { value: '# Hello' });
在哪里获取 overtype?
源代码和安装说明在 GitHub 上:https://github.com/panphora/overtype

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目