Typst 快速上手:5 分钟从零编译出第一份 PDF 文档
Typst 快速上手:5 分钟从零编译出第一份 PDF 文档
【免费下载链接】typstA markup-based typesetting system that is powerful and easy to learn.项目地址: https://gitcode.com/GitHub_Trending/ty/typst
Typst 是一个基于标记语言的排版系统,可以理解为"Markdown 的语法加上 LaTeX 级别的排版引擎",适合工程师、学生和写作者用它产出论文、报告、讲义等专业 PDF,而不用背大量命令。写一个.typ文件、跑一条命令,就能得到排版规整的成品文档。
🎯 它解决什么问题
如果你遇到过下面几种情况,这个项目就是为你准备的:
- 你习惯用 Markdown,可一旦需要页码、分栏、公式编号,导出链路就开始失灵;
- 你想改用 LaTeX,却发现要先背一套命令和宏包,写错一个参数就报一整页红字;
- 你在 Word 里协作,格式被人一改,带公式和表格的长文档就重新乱掉。
一句话定位:Typst 保留"一个符号干一件事"的轻量语法,同时提供 LaTeX 级别的页面、分栏与公式控制。
🚀 5 分钟上手:安装并编译第一份文档
第一步,安装。按平台选一即可:
# macOS brew install typst # Windows winget install --id Typst.Typst # 或使用 Rust 直接安装 cargo install --locked typst-cli如果想从源码构建,先执行git clone https://gitcode.com/GitHub_Trending/ty/typst,再运行cargo build --release。
第二步,写文件。新建hello.typ:
= Hello Typst 这是我的第一份 #emph[Typst] 文档。 + 项目一 + 项目二 $ E = m c^2 $第三步,编译。在终端运行typst compile hello.typ。
跑完你会在同目录得到hello.pdf:标题加粗并自动编号,列表带圆点,公式独占一行。这就是"写完即得成果"的完整流程,接下来看看它还能做什么。
🧪 核心能力实测
数学公式:美元符号包住就是数学
公式和正文共用同一个排版引擎,不需要额外宏包。
$ sum_(n=1)^∞ 1 / n^2 = π^2 / 6 $上面这张图来自仓库测试套件的真实渲染:一份数学作业里,页眉、行内公式、树状图形共处一页,没有写任何特殊命令。
表格:几行标记变成对齐的三线表
列宽和对齐由引擎自动计算,你只负责填内容。
#table( columns: 4, [姓名], [物种], [体重], [体长], [Debby], [Rhinoceros], [1900kg], [390cm], )数据量大时改用csv函数直接读文件成表,不必手写每一行。
多栏与页面控制:像调幻灯片页面一样直观
纸张、边距、栏数、栏距都是普通参数,改一个数字就生效。
#set page(columns: 2, gutter: 2em, margin: 1.5cm) #lorem(80)这张测试渲染图里,两栏内容是自动平衡的,不会出现某一栏底部留一大片空白的情况。
内置脚本:文档会自己计算
Typst 同时是一门完整的脚本语言,文档内可以直接循环、判断。
#let data = (3, 1, 4, 1, 5) #let s = data.fold(0, (acc, x) => acc + x) 总和:#s这意味着你可以用数据直接生成封面或目录,这类"数据驱动文档"是纯 Markdown 做不到的。公式、表格、分栏解决了"排得好看",脚本则解决了"动态生成"。和常见工具比起来差距有多大?
⚖️ 与常见工具横向对比
| 维度 | Typst | LaTeX | Word | Markdown |
|---|---|---|---|---|
| 学习成本 | ✅ 低 | — 需背大量命令 | ✅ 低 | ✅ 低 |
| 页面/分栏/公式控制 | ✅ | ✅ | — 靠手动调整 | — |
| 编译速度 | ✅ 毫秒级增量编译 | — 慢且需多遍 | — | — |
| 实时反馈 | ✅ watch 模式 | — 需手动重编 | ✅ | ✅ |
| 脚本扩展 | ✅ 完整脚本系统 | — 宏系统门槛高 | — | — |
四者的差别主要在"你愿意把时间花在哪里":Typst 把格式工作交给引擎,你只写内容。
🕳️ 实用技巧与常见坑
set规则放在文档开头。它只影响规则位置之后的元素,写在正文中间会导致前后样式不一致。- 单页产出用
page(height: auto)。页面高度自适应内容,适合讲义、封面,不会多出半页空白。 - 展示型公式要在美元符号内加空格。
$ x $会独占一行并居中,不带空格则是行内公式。 - 用 watch 模式提效。
typst watch main.typ在文件变化时自动重排,增量编译机制类似"只重印被改过的那几页",反馈接近即时。 - 中文显示方框是缺字体。先用
typst fonts查看可用字体,必要时set text(font: "Noto Serif CJK SC")指定一款中文字体。 - 字面量 # 要写成 ##。注释和脚本都以 # 开头,
##才能输出一个真正的井号。
📚 资源与生态
- 手册入口:按语言、库函数、导出格式组织,查函数用。
- 入门教程:从零讲起的完整引导,写第一份文档前读一遍最省事。
- CLI 源码:compile、watch、query 等子命令都在这里,想了解实现可以看。
- 测试套件:
tests/ref/render/下有上千张期望渲染图,想知道"某个效果应该长什么样"时比搜文档更快。 - 官方在线协作编辑器的入口写在 README 顶部,适合不想装东西、先在线试两分钟的人。
小结
现在你可以:用一条命令把单个文件编成 PDF,用零命令成本写出公式、表格和多栏版面,再用内置脚本做数据驱动的动态文档,编译快到几乎感觉不到"编译"这件事。下一步很明确:在终端运行brew install typst(Windows 用winget install --id Typst.Typst),或打开入门教程,把上面那个hello.typ原样敲一遍,你会在 5 分钟内看到自己的第一份 PDF。
【免费下载链接】typstA markup-based typesetting system that is powerful and easy to learn.项目地址: https://gitcode.com/GitHub_Trending/ty/typst
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
