Markdown 已经不是“写文档的人偶尔用一下”的格式了。
README、技术方案、接口说明、AI 生成的总结、会议纪要、项目任务拆解,越来越多内容都会先以 .md 文件落地。问题是,Markdown 文件变常见以后,预览这件小事反而经常变得有点别扭。
我自己遇到最多的场景是:只是想快速看一眼 README 或 AI 输出的 Markdown,却要打开完整 IDE;或者为了预览一个本地文件,启动一个一百多 MB 的 Electron 应用。浏览器当然也能看,但它通常不是为本地 Markdown 工作流准备的,文件监听、GFM、暗色主题、打印、公式、图表这些细节都要自己补。
更麻烦的是,现在的 Markdown 内容越来越“重”。它不只是标题、列表和链接,还经常包含代码块、任务列表、数学公式、Mermaid 图表。一个太简单的预览器会渲染不完整,一个功能很全的编辑器又显得过重。
于是我做了 MD Preview:一个用 Rust + 系统 WebView 写的轻量 Markdown 预览工具。
它的目标不是替代 Obsidian、Typora、VS Code 这类完整写作或开发环境,而是解决一个更窄的需求:快速、安全、离线地打开本地 Markdown 文件。
这个工具想解决的痛点
第一,启动要快。
很多时候我们不是要进入“写作环境”,只是想看一个文件。MD Preview 不打包 Chromium,也不使用 Electron,而是调用系统 WebView:macOS 上是 WebKit,Windows 上是 WebView2,Linux 上是 WebKitGTK。这样可以把包体和启动成本压下来。
第二,本地文件应该有本地体验。
拖拽文件、命令行打开、文件改动自动刷新,这些都是日常工作流里很自然的动作。比如你在编辑器里改 README,旁边的预览窗口应该自动刷新,而不是每次手动重新打开。
第三,常见 Markdown 扩展要能正常显示。
MD Preview 支持 GFM 表格、任务列表、删除线、标题锚点,也内置了 40+ 语言代码高亮。v1.1.1 之后还支持 KaTeX 数学公式和 Mermaid 图表。为了不拖慢首屏,这些渲染能力是离线内置并按需加载的:文档里没有公式或图表时,就不会为了它们阻塞初始渲染。
第四,预览工具不要打扰阅读。
所以我把源码编辑和打印放进一个 hover 才出现的右上角工具栏里。默认状态就是安静地看文档;需要改一点文字时,可以直接切到源码编辑;需要给别人看或存 PDF 时,可以调系统打印。
第五,更新检查也不能影响启动。
v1.1.1 增加了 GitHub Releases 更新检测,但它会在首屏之后异步执行,并且带缓存。网络失败时静默跳过,不应该因为一个更新请求让本地文件打开变慢。
当前版本
MD Preview 现在提供 macOS、Windows、Linux 构建:
- macOS DMG:4.3 MB,已签名、公证和 staple
- Windows ZIP:1.8 MB
- Linux tar.gz:2.4 MB
因为加入了 KaTeX 和 Mermaid,它已经不再按最早的 1MB 宣传,但仍然是一个很小的本地工具。相比许多 Electron 预览器,它的安装包、内存占用和启动速度都更接近“随手打开一个文件”的预期。
项目地址:
最新版本:
如果你平时也经常处理 README、AI 生成的 Markdown、技术文档或带公式/图表的笔记,欢迎试用,也欢迎提 issue。这个项目会继续围绕一个原则做:把 Markdown 预览这件小事做轻、做快、做完整。