如果你用过 Markdown 写过笔记或文档,一定体会过它的简洁与局限------写个简单的博客文章绰绰有余,但一旦想排出一本正经的学术论文或精美的幻灯片,它就开始"力不从心"了。Quarkdown 正是为了填补这道鸿沟而生的。它是一个基于 Markdown 的现代排版系统,把 Markdown 的亲切感和 LaTeX 级别的排版能力融为一体,让你用一套源码就能输出论文、书籍、网站、幻灯片......几乎想要什么就能出什么。
🪐 它到底是什么?
Quarkdown 由开发者 iamgio (Giorgia Gio)于 2024 年 1 月创建,是一个开源的、图灵完备的 Markdown 扩展排版系统。截至 2026 年,它在 GitHub 上已积累超过 15,780 颗星 和 488 个 Fork,并在 Hacker News 上获得 668 点的高度关注。
它的核心理念可以用一句话概括: "一份源文件,多种输出形态。"
你写的是 Markdown,但经过 Quarkdown 的编译器处理后,可以得到:
- 一篇排版精美、可直接打印的学术论文(PDF)
- 一本完整的书籍
- 一个交互式幻灯片演示
- 一个静态知识库网站或技术文档站
这在传统工具里几乎是不可能的------LaTeX 擅长论文,但做幻灯片很痛苦;Markdown 写博客很爽,但排版能力极其有限。Quarkdown 把两者的优点拼在了一起。
🔧 核心特性详解
Markdown 的超集:函数系统
Quarkdown 最革命性的设计,是在 Markdown 里引入了函数调用机制。这让它从一个"标记语言"升级成了一个真正的"脚本化排版语言"。
函数调用的语法长这样:
css
.somefunction {arg1} {arg2}
Body argument
你甚至可以在文档里自定义函数:
vbnet
.function {greet}
to from:
**Hello, .to** from .from!
.greet {world} from:{iamgio}
输出结果就是:Hello, world from iamgio!
这个设计和 LaTeX 的 \command{} 非常相似,但语法更直观,学习曲线更平缓。
图灵完备的脚本能力
Quarkdown 内置了一套完整的脚本系统,包括:
- 变量定义与赋值
- 条件判断(if/else)
- 循环语句(loops)
- 数学运算
- 数据解构(destructuring)
- Lambda 表达式
这意味着你可以在文档里写逻辑,动态生成内容------这是普通 Markdown 完全做不到的事情。
丰富的标准库
Quarkdown 自带一个持续扩展的标准库,覆盖了大量实用功能:
| 功能分类 | 具体能力 |
|---|---|
| 布局系统 | 行、列、网格、容器、浮动、对齐 |
| 数学公式 | 完整 TeX 公式支持 |
| 图表 | XY 图表、Mermaid 流程图 |
| 数据处理 | CSV 导入、表格生成与操作 |
| 幻灯片 | 交互片段、演讲者注释 |
| 文档结构 | 目录、参考文献、脚注、书籍封面 |
| 代码 | 高级代码块、正则样式化 |
🎯 支持的输出目标
Quarkdown 的"一源多出"能力来自其灵活的渲染后端,目前支持以下输出格式:

- Plain HTML:连续流式布局,类似 Notion 或 Obsidian,适合静态网站和知识管理
- Paged HTML(基于 paged.js):分页排版,适合论文、文章和书籍
- Slides(基于 reveal.js):交互式演示文稿
- Docs :适合大型 Wiki 和技术文档站------Quarkdown 自己的官方 Wiki(100+ 子文档)就是用它构建的,编译时间约 2 秒
⚔️ 与同类工具的横向对比
Quarkdown 的出现,让排版工具的格局变得更有趣。社区里对它和 LaTeX、Typst 的比较讨论非常热烈。
| 工具 | 语法难度 | 输出灵活性 | 脚本能力 | 适合场景 |
|---|---|---|---|---|
| LaTeX | 高(陡峭学习曲线) | 高(主要 PDF) | 高(宏系统) | 学术论文、数学排版 |
| Typst | 中(现代语法) | 中(主要 PDF) | 中(内置脚本) | 论文、技术文档 |
| Markdown | 低(极易上手) | 低(HTML 为主) | 无 | 博客、笔记 |
| Quarkdown | 低-中(基于 Markdown) | 高(多种格式) | 高(图灵完备) | 论文/书/网站/幻灯片 |
Quarkdown 的核心优势在于:它是目前唯一能用接近 Markdown 的写作体验,同时输出多种专业格式的工具。正如开发者所说,它是"Markdown 的亲切感 + LaTeX 的排版能力"的混合体。
当然,它也有局限------对于极度复杂的数学排版场景,LaTeX 的宏系统仍然更强大;Typst 在纯 PDF 排版的精细控制上也有自己的优势。
🚀 如何开始使用
安装
Quarkdown 基于 JVM(Java 虚拟机),需要 Java 环境。安装后通过命令行使用:
python
# 创建新项目
quarkdown create myproject
# 编译文档
quarkdown compile myfile.qmd
# 启动实时预览服务器
quarkdown serve myfile.qmd
VS Code 扩展
官方提供了 VS Code 插件 ,支持实时预览功能------你在左边写代码,右边实时看到渲染效果,延迟极低。这对于写作体验来说是质的提升。
一个最简单的文档示例
ini
.doctype {paged}
.theme {paperwhite}
# 我的第一篇论文
## 摘要
这是用 Quarkdown 写的第一个文档。
## 正文
.math
E = mc^2
这是爱因斯坦的质能方程。
短短几行,就能输出一个带有 LaTeX 风格排版的 PDF 论文页面。
🧠 技术架构:它是怎么工作的
Quarkdown 的编译流程分为几个清晰的阶段:

整个系统基于 Kotlin 编写,代码库包含多个模块:核心编译器(quarkdown-core)、标准库(quarkdown-stdlib)、HTML 渲染器(quarkdown-html)、CLI 工具(quarkdown-cli)、LSP 语言服务器(quarkdown-lsp)等,架构清晰,扩展性强。
🌟 生态与社区现状
Quarkdown 的生态正在快速成长:
- 官方 Wiki 本身就是用 Quarkdown 编写并部署的,包含 100+ 子文档
- VS Code 扩展 提供语法高亮、实时预览、代码补全
- 内置 AI Agent 技能,让 AI 编程助手能够"理解" Quarkdown 语法,直接生成符合规范的文档
- Docker 支持,可以容器化部署
- 持续集成友好,3 分钟内即可配置好 CD 工作流自动发布文档
💡 总结
Quarkdown 代表了一种新的文档创作哲学------写作应该简单,但输出不应该将就。它让你不必在"Markdown 的简单"和"LaTeX 的强大"之间二选一,而是两者兼得。
对于学生、研究者、技术写作者、甚至前端开发者来说,它都是一个值得认真尝试的工具。尤其是当你需要同时维护一份文档,并以多种形式发布时,Quarkdown 的"一源多出"能力几乎无可替代。
项目仍在活跃开发中(截至 2026 年已有 3,600+ 次提交),社区也在持续壮大。如果你对现代排版工具感兴趣,这颗正在冉冉升起的"夸克之星"绝对值得关注。
参考来源