varkor/quiver · 上手攻略
- 仓库:varkor/quiver
- 链接:https://github.com/varkor/quiver
- 分类:academic-writing
- 作者:Tom
- 更新:2026-08-11
是什么
quiver(q.uiver.app)是一个现代化的网页端交换图(commutative diagram)与粘贴图(pasting diagram)编辑器,由 varkor 开发维护。它允许用户用鼠标或键盘快捷键直观地绘制图表,并导出为 LaTeX(tikz-cd)或 Typst(fletcher)代码,比手写 LaTeX 快一到两个数量级。
解决什么问题
在数学、理论计算机科学、Category Theory 等领域,交换图是表达结构化关系的核心工具。但手写 tikz-cd 代码绘制复杂图表非常耗时且容易出错。quiver 通过可视化编辑解决了这个痛点:画图 → 点导出 → 得到生产级 LaTeX/Typst 代码。
快速安装
quiver 是一个纯前端 Web 应用,无需安装,直接访问 q.uiver.app 即可使用。
如需本地运行开发版:
# 克隆仓库
git clone https://github.com/varkor/quiver.git
cd quiver
# 构建(需要 Make)
make
# 本地服务
make serve
# 然后打开 localhost:8000
⚠️ 构建依赖 Make 和 Bash;部分系统默认工具链不兼容,可手动下载 KaTeX 最新版放到
src/KaTeX/解决。
核心用法
基本操作
- 新建对象:双击画布空白处。
- 新建箭头:从起点拖动到终点,自动创建对象和箭头。
- 重排对象:拖动空白区域可移动所有对象。
- 修改箭头端点:拖动箭头端点改变连接对象。
- 键盘优先:按
Tab在各单元格间切换,适合大量填入标签的场景(先画图,再按 Tab 填内容)。
导出
quiver 支持三种导出格式:
LaTeX(tikz-cd):
点击导出按钮选择 LaTeX,复制代码粘贴到你的 .tex 文件:
\usepackage{tikz-cd}
\usepackage{quiver} % quiver 提供的额外样式
\begin{tikzcd}
A \arrow[r, "f"] \arrow[d, "g"] & B \arrow[d, "h"] \\
C \arrow[r, "k"] & D
\end{tikzcd}
Typst(fletcher):
#import "@preview/quiver:0.2.0": *
#quiver[
{"span": (0, 0), "text": "A"},
{"span": (2, 0), "text": "B"},
{"span": (0, 2), "text": "C"},
{"span": (2, 2), "text": "D"},
]
HTML 嵌入: 支持导出嵌入用 iframe 分享到网页的格式。
高级功能
- 自定义宏支持:上传包含
\newcommands的文件,编辑器自动识别使用。 - 多选批量修改:Shift + 点击可多选,批量改箭头样式。
- 历史记录:Undo/Redo(Ctrl+Z / Ctrl+Y)。
- Pan 与 Zoom:大图支持拖动平移和滚轮缩放。
- 颜色支持:支持对箭头和标签上色(适合高维图表)。
- 高维粘贴图:支持 3-cell 等高阶胞腔图。
典型适用场景
- 数学论文:Category Theory、Homological Algebra、Topology 等方向的交换图。
- 教科书与讲义:制作插图丰富的数学教材。
- 学术演讲:Beamer 幻灯片中的图表。
- 在线文档:通过 HTML 嵌入分享可交互的图表。
坑与注意
- TikZ 导出局限:部分复杂曲线(如三重弯曲箭头、缩短曲线箭头)导出 TikZ 时效果不完美,需手动微调。完整已知问题列表见 GitHub issues。
- 必须 localhost 访问:quiver 必须通过 HTTP 服务打开,不能直接双击
index.html(依赖动态加载 KaTeX)。 - 不支持本地保存:图表通过 URL 编码存储在链接中,链接丢失则图丢失;可导出 JSON 备份。
- Typst 支持较新:fletcher 包需要对应版本,导出前确认本地 Typst 环境版本匹配。
- 颜色格式:颜色用 RGB 值直接指定,不支持颜色名。
与同类对比
| 工具 | 类型 | 优点 | 缺点 |
|---|---|---|---|
| quiver | Web 可视化 | 专为交换图优化,导出 tikz-cd 质量高 | 复杂曲线 TikZ 导出偶有瑕疵 |
| tikz-cd(手写) | LaTeX 包 | 精确控制 | 复杂图极慢 |
| Ipe | 桌面编辑器 | 通用矢量图 | 非专用交换图工具 |
| Mathcha | 在线公式编辑器 | 包含图表 | 导出 tikz-cd 支持弱 |
quiver 的核心定位是专用 + 高质量导出,而非通用图表工具。
一句话推荐结论
写数学/范畴论相关论文或幻灯片,需要画交换图时,quiver 是目前最顺手的工具——打开浏览器就能用,导出 tikz-cd 质量可以直 接用于生产。