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 嵌入分享可交互的图表。

坑与注意

  1. TikZ 导出局限:部分复杂曲线(如三重弯曲箭头、缩短曲线箭头)导出 TikZ 时效果不完美,需手动微调。完整已知问题列表见 GitHub issues。
  2. 必须 localhost 访问:quiver 必须通过 HTTP 服务打开,不能直接双击 index.html(依赖动态加载 KaTeX)。
  3. 不支持本地保存:图表通过 URL 编码存储在链接中,链接丢失则图丢失;可导出 JSON 备份。
  4. Typst 支持较新:fletcher 包需要对应版本,导出前确认本地 Typst 环境版本匹配。
  5. 颜色格式:颜色用 RGB 值直接指定,不支持颜色名。

与同类对比

工具 类型 优点 缺点
quiver Web 可视化 专为交换图优化,导出 tikz-cd 质量高 复杂曲线 TikZ 导出偶有瑕疵
tikz-cd(手写) LaTeX 包 精确控制 复杂图极慢
Ipe 桌面编辑器 通用矢量图 非专用交换图工具
Mathcha 在线公式编辑器 包含图表 导出 tikz-cd 支持弱

quiver 的核心定位是专用 + 高质量导出,而非通用图表工具。

一句话推荐结论

写数学/范畴论相关论文或幻灯片,需要画交换图时,quiver 是目前最顺手的工具——打开浏览器就能用,导出 tikz-cd 质量可以直 接用于生产。