利益相关声明:作者与文中产品有直接的利益相关(开发者、自家产品等)

我是 Typora 的早期用户,免费版用了好几年。所见即所得的体验确实好,写完直接看效果,不用分屏预览。

后来它开始收费了,买断制,按设备授权。完全合理,只是当时我还在上学,没什么预算。而且它不开源,我看不到里面在干什么。

后来我开始用 Obsidian,功能确实强,但我要的只是一个写东西的地方。知识图谱、双向链接、插件系统……这些都很好,但对我来说太重了。装完打开一看,左边一堆面板,右边一堆按钮,我只是想安安静静写篇文档。

VS Code 加 Markdown 插件也试过,体验还行,但不太适合我日常写东西的场景。

兜兜转转一圈,我决定自己写一个。我想得很清楚:这个编辑器应该轻量、所见即所得、本地优先,而且从一开始就要有 AI。

为什么是 Tauri

我选了 Tauri 2 而不是 Electron。Tauri 用系统自带的 WebView,不需要打包浏览器引擎,安装包只有 8MB 左右。冷启动也快,基本秒开。

技术栈就是 Tauri 2 + React + TypeScript,编辑器内核用的 Milkdown。写起来比我想象中顺利,主要是 Tauri 2 的 Rust 后端和前端通信做得很干净。

编辑体验

工作区

打开就是一个干净的编辑区域,左边文件树,右边是文档。所见即所得——标题、加粗、链接、图片都是渲染好的,不是在看源码。也可以切到源码模式,或者用分屏左右对照。

打字的时候,Markdown 语法会实时渲染:**加粗** 打完最后两个星号就变成加粗~~删除线~~`行内代码`==高亮== 都是一样。不用打完再去预览。

输入 / 会弹出命令面板,可以快速插入标题、列表、引用、代码块、表格、Callout。也支持模糊搜索,打 /warn 就能找到 Warning 类型的 Callout。

表格不用手写语法,拖拽就能加行列、调宽度、对齐。代码块支持 40 多种语言的语法高亮,一键复制。还有 Mermaid 图表,写完语法直接渲染成图,支持放大查看。

KaTeX 数学公式也支持,行内用 $...$,独立段用 $$...$$。脚注、Frontmatter、HTML 内联渲染这些也都有。

块元素可以拖拽排序,折叠标题下的内容。快捷键全部可以自定义,一共 25 个。

内置 AI

从一开始我就想把 AI 做进编辑器里,不是作为一个插件或者附加功能,而是编辑体验的一部分。

内联 AI:选中一段文字,可以润色、改写、续写、总结、翻译,也可以输入任意指令。所有修改都是预览模式——你会看到一个 diff,确认了才写入,不确认就丢弃。按 Cmd+Z 还能撤回被拒绝的预览。

AI 编辑预览

侧边面板 AI:这个不只是聊天框。它是一个完整的 AI Agent,能读取文档内容、搜索全文、定位段落、批量编辑、甚至联网搜索。你可以对它说"把第三章的表格改成列表"或者"查一下这个 API 的最新文档",它会自己调用工具完成。

Markra AI

支持的模型很多:OpenAI、Anthropic、Gemini、DeepSeek、Mistral、Qwen、小米 MiMo、Ollama 等等,一共 14 个内置服务商。也可以接任何 OpenAI 兼容的自定义 API。内联编辑和侧边面板可以分别配置不同的模型。

联网搜索也做了:不需要 API Key 就能用本地 Bing 搜索,也支持 SearXNG 自托管。搜到的网页会自动提取正文转成 Markdown 喂给 AI。

但有一点我很坚持:AI 应该由用户自己控制。不需要注册账号,不需要联网验证。AI 请求只发往你指定的服务商,填你自己的 API Key 就行。

工作区和文件管理

打开一个文件夹就是一个工作区。文件树可以新建、重命名、删除、拖拽排序、按名称/时间排序。多文件用标签页打开,支持"在侧边打开"左右对照编辑。

Cmd+P 快速搜索打开文件。全文搜索可以搜整个工作区的内容,按文件分组展示结果。

文档有版本历史,可以预览和恢复。还有本地备份功能,可配置间隔时间和退出时自动备份。

如果需要多设备同步,支持 WebDAV 双向同步。文件也可以存到 iCloud、OneDrive、坚果云这些网盘里,编辑器不干涉。

图片支持 4 种存储方式:本地、WebDAV、PicGo/PicList、S3 兼容服务(MinIO、R2 等)。从剪贴板粘贴自动上传,文件命名模式可以自定义。

导出和主题

导出支持 PDF、HTML,还支持通过 Pandoc 导出 DOCX、EPUB、LaTeX。PDF 可以调页面大小、边距、页眉页脚。

内置 20 套主题——亮色暗色都有,GitHub、Solarized、Nord、Catppuccin 这些经典配色。也支持自定义 CSS,可以导入导出。

编辑器的写作宽度、字体、行高、代码块换行这些都能调。支持 11 种语言界面,包括简繁中文、日韩法德西等。

几个设计决定

本地优先。 文件就是 .md,存在你的磁盘上。你想用网盘同步都行,编辑器本身不管你这个。

不搞注册。 下载就能用,编辑器本身完全离线可用。

免费开源。 核心功能全部开放,AGPL-3.0 协议,代码完全公开。

还差什么

说实话,目前有几个明显的问题:

全文搜索做了,但还不够智能,不支持正则和模糊匹配。

工作区偶尔有边界情况没处理好,比如重命名文件夹、软链接之类的。

导出模板还不够丰富。

没有移动端。短期内也不打算做,桌面端先把体验打磨好。

写在最后

Markra 不是要取代谁。Typora、Obsidian、VS Code 都是很好的工具,只是每个人的需求不一样。我想要一个轻的、快的、所见即所得的编辑器,刚好自己会写代码,就做了。

目前 GitHub 上有 420 多个 star,安装了大概 1 万多次。还很小,但每天有人在用,也有人在提 issue 和 PR,这就够了。

如果你也有类似的需求,可以试试:

官网https://markra.app

网页版(不用下载):https://editor.markra.app

桌面版https://github.com/murongg/markra/releases/latest

源码https://github.com/murongg/markra

欢迎提 issue,也欢迎 PR。

标签:#App+1 #Markdown #效率工具 #开源

2
0