基于 Typst 标记的文档排版系统:让文档编译快一点

前言

写技术文档的人对这类体验都不陌生:改一个标题样式,编译一次要几十秒;写 LaTeX 时为了一个对齐问题来回试;参考文献管理还要依赖外部工具。Typst 的定位就是替换这套流程——它是一个基于标记的排版系统,把内置标记、脚本、数学排版、参考文献管理和增量编译放到一起,目标是在保持排版质量的同时,让编译近于即时。

下面介绍的是一个发布在 SkillHub 上的社区 Skill,坐标 @user_3c6cb52e/typst-markup-typesetting-system,版本 1.0.0。它的作用是把 Typst 这套能力包装成一个可以直接使用的技能:你给出文档内容,它用 Typst 标记排版并输出 PDF 等格式。

这是什么

一句话定位:一个基于 Typst 标记的文档排版系统,用于替代 LaTeX 等传统工具完成文档编译。

  • 出品方:社区发布者 user_3c6cb52e,来源标记为 community。
  • 分类:office-efficiency。
  • 版本:1.0.0。
  • 不需要 API Key(标签 requires_api_key=false)。
  • 截至本文抓取时,SkillHub 页面显示评分 100000、下载 1891、安装 0。

它解决什么问题:让使用者不用自己搭建 Typst 环境、记语法细节,就能产出排版规范的文档。

核心功能

以下能力在 Skill 简介和 Typst 官方文档中均有明确依据:

1、内置标记:常见格式任务(标题、列表、强调、引用)有轻量语法,比如 = Heading 一级标题、$...$ 数学公式。
2、脚本系统:用 # 写表达式,可以定义变量和函数,实现重复内容的自动生成。
3、数学排版:多字母标识符直接当作定义和函数处理,不需要反斜杠。
4、参考文献管理:内置 bibliography 相关模型。
5、增量编译:只重编译改动部分,构建接近即时;CLI 提供 typst watch 监听文件变化自动重编译。
6、导出:编译目标包括 PDF、HTML、PNG、SVG 等。

安装与启用

这个 Skill 本体通过 SkillHub 使用,官方页面为 https://www.skillhub.cn/skills/user_3c6cb52e/typst-markup-typesetting-system。

底层依赖 Typst 编译器。从 Typst 官方 GitHub 仓库核实的安装方式如下:

# macOS
brew install typst

# Windows
winget install --id Typst.Typst

# Linux:各发行版可查 Repology 上的 Typst 包,或安装 snap
# 或者用 Rust 工具链安装
cargo install --locked typst-cli

安装完成后可以确认版本:

typst --version

注意:任务线索里提到的评分 99892 和下载 1850 与 SkillHub 抓取资料(评分 100000、下载 1891)不一致,以抓取资料为准。Cursor / Codex CLI / Claude Code 的安装差异在资料中没有说明,这里不写。

典型用法

以下命令均来自 Typst 官方 GitHub README。

写一个 Typst 源文件,比如 fib.typ:

#set page(width: 10cm, height: auto)
#set heading(numbering: "1.")

= Fibonacci sequence
The Fibonacci sequence is defined through the
recurrence relation $F_n = F_(n-1) + F_(n-2)$.

#let count = 8
#let fib(n) = (
  if n <= 2 { 1 }
  else { fib(n - 1) + fib(n - 2) }
)

The first #count numbers of the sequence are:

#align(center, table(
  columns: count,
  ..range(1, count + 1).map(n => $F_#n$),
  ..range(1, count + 1).map(n => str(fib(n))),
))

编译成 PDF:

# 在工作目录生成 file.pdf
typst compile file.typ

# 指定输出路径
typst compile path/to/source.typ path/to/output.pdf

监听变化自动重编译:

typst watch file.typ

自定义字体路径:

typst compile --font-path path/to/fonts file.typ
typst fonts --font-path path/to/fonts

查看子命令和详细用法:

typst help
typst help watch

适用场景与注意

适合的场景:

  • 技术文档、论文初稿、报告、幻灯片讲义等需要稳定排版的文本类产出。
  • 团队里有人熟悉 LaTeX,想在保持数学排版能力的同时降低学习成本。
  • 文档迭代频繁、需要秒级反馈的场景,增量编译带来的体验提升最明显。

需要注意:

  • 项目当前版本 1.0.0,来源是 community,安装数为 0,质量还没有大规模使用验证,建议先小范围试用。
  • Typst 模板和包生态仍在发展,复杂模板可能不如 LaTeX 成熟。
  • Skill 简介中的能力描述与 Typst 官方功能一致,但具体命令行为请以 typst help 输出为准。
  • 所有示例代码都来自 Typst 官方仓库,未做魔改;如果 Skill 有额外约定,以 Skill 自身说明为准。

结尾

这个 Skill 的价值在于:把 Typst 从”一个要自己装、自己学的工具”变成”一个可以交给 AI 执行的排版任务”。对于文档迭代快、又不想在 LaTeX 上花太多调试时间的场景,值得试一次。

官方地址:https://api.skillhub.cn/user_3c6cb52e/typst-markup-typesetting-system

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

Xiaoye