博士生用 Typst 取代 LaTeX 写论文引热议:编译速度快 9 倍,但导师并不满意


一位博士生最近在网上分享了自己使用Typst(而非传统的LaTeX)撰写博士论文的经历,在技术社区引发了激烈讨论。这个选择看似小众,却触及了学术界一个由来已久的痛点:LaTeX虽然功能强大,但学习曲线陡峭、编译速度缓慢、错误信息晦涩难懂。

从90秒到10秒:速度是第一生产力

作者选择Typst的直接原因很简单——一位朋友的LaTeX论文编译时间竟然长达90秒。「我太容易分心了,根本无法忍受在做小改动时要等90秒的编译时间。」相比之下,Typst的编译速度快得惊人:即使是150页以上的论文,完整编译只需15秒,内容修改几乎是即时更新的。

HackerNews用户WhyNotHugo深有同感:「我最后一篇论文用的是makefile,通常能工作。但不工作时,运行两次就能修复。最罕见的情况下,我必须运行git clean -xdf,然后下一次运行就能工作了。」另一位用户shusaku则幽默地评论道:「疯狂的定义就是做同样的事情两次却期待不同的结果。巧合的是,这正是编译LaTeX的基本方式。」

Typst的语言设计:现代化的力量

Typst最大的亮点在于其精心设计的语言。作者将其描述为「Markdown和动态类型Rust的混合体」,这种组合听起来很奇怪,但实际使用起来却非常舒适。

#let numbers = (1,2,5,8)
This is *bold text*. The sum of [#numbers.map(it => str(it)).join(", ")] is *#numbers.sum()*

这段代码会生成:「This is bold text. The sum of [1, 2, 5, 8] is 16

相比LaTeX中到处都是反斜杠的语法,Typst的设计更加直观。更重要的是,Typst拥有一个设计良好的脚本语言。正如作者所说:「我对LaTeX最大的抱怨是没有任何东西是一致的。每个包都定义自己的小工具,甚至连基本的if语句都不统一。感觉你不是在学LaTeX,而是在分别学习每个包。」

实际应用:不只是纸上谈兵

作者展示了一个实际案例:他收集了各种硬件描述语言的元数据,存储在TOML文件中。由于Typst可以直接解析TOML,他能够轻松地用这些数据生成论文中的分类图表。这种程度的编程集成在LaTeX中几乎是不可想象的。

HackerNews用户lizimo分享了更有趣的应用场景:「我们已经在生产环境中使用Typst生成PDF文档几个月了,比如发票和标签。每天生成数千份文档,我很高兴其中一些被打印出来,供仓库里做实际工作的人使用。」

痛点仍在:生态系统的挑战

然而,Typst并非完美无缺。最大的问题来自于参考文献管理。Typst每个文档只能有一个参考文献部分和文件,这对于需要为引言和每篇包含的论文分别设置参考文献的博士论文来说是个致命缺陷。虽然Alexandria包提供了解决方案,但仍需要额外的工作。

更大的挑战在于生态系统。正如HackerNews用户gumbojuice指出:「我坚持使用LaTeX,不是因为偏好,而是因为期刊/会议仍然不接受比如typst。他们会接受吗?我不知道,这取决于他们是否愿意将其整合到工具链中。」

导师的不同视角

有趣的是,作者的导师对此有完全不同的看法。导师认为:「问题是你必须调整它才能让事情看起来符合要求。这不一定是优势。作为导师,我会建议在所有手稿都用LaTeX编写的领域中使用Typst吗?不会。」

导师特别指出,从监督者的角度来看,他几乎没有在源代码中编辑任何文本,而是让作者自己编辑文本和格式,这相当低效。

社区的两极化反应

HackerNews的讨论呈现出明显的两极分化。支持者认为Typst代表了未来。用户commandersaki列出了Typst的诸多优势:「编译时不会生成5个该死的文件」、「编译是即时的」、「诊断信息更容易理解(有点像Rust编译器的建议风格)」。

反对者则担心Typst的持续性。用户dleslie警告说:「三十年后LaTeX仍将是开源的,可能还会被维护。Typst看起来是开源和闭源的混合体;这种模式往往会忽视开源部分,在闭源部分实现关键功能。」

用户the-wumpus则反驳道:「网页应用编辑器是闭源的,但它提供的大部分功能都是开源的,所以本地编辑体验类似(在我看来更好)。typst编译器、LSP和你需要使用的所有东西都是开源的。」

写在最后

正如作者在结论中所说:「如果你像我一样,喜欢玩编程语言,容易被工具困扰,更喜欢可以调整到完全符合自己要求的工具,而不是开箱即用但难以调整的工具,那么Typst绝对值得一试。」

对于学术界来说,Typst的出现提供了一个思考的契机:我们是否应该继续忍受LaTeX的种种不便,仅仅因为「大家都在用」?还是应该拥抱新技术带来的效率提升?

用户rcpt的评论或许代表了一种新的可能:「自从我写LaTeX以来已经有十年了,我同意它的所有痛点。但似乎LaTeX正是LLM会完美处理的东西。我觉得今天使用它不会太糟糕。」

无论选择哪种工具,重要的是它能帮助研究者更好地表达思想。正如用户noelwelsh所说:「在一天结束时,我不是在试图迁移任何人。使用你认为最好的。对于我的使用场景,我确信Typst是比LaTeX更好的选择。」


相關推薦

2024-10-21

了改进,展示了 Typst 不断进步的实力。 Typst 0.12 的更新并不只局限于表面功能的提升。开发团队进行了大量底层重构,为未来的功能扩展和改进奠定了坚实的基础。值得注意的是,Typst 未来计划支持 HTML 输出、更加易访问的 PDF

2022-12-10

树莓派(Raspberry Pi)宣布聘请了一名间谍设备制作专家 Toby Roberts。在加入树莓派基金会之前,Toby Roberts 曾是英国东部地区特别行动组(ERSOU)的一名警察,在工作中使用树莓派构建了很多监控技术。 “我曾经是一名警官,负

2023-08-03

超导通路。 据称,华中科技大学材料学院博士后武浩、博士生杨丽,在常海欣教授的指导下,成功首次验证合成了可以磁悬浮的 LK-99 晶体,该晶体悬浮的角度比 Sukbae Lee 等人获得的样品磁悬浮角度更大,有望实现真正意义的无

2024-08-08

多以开发为中心的LLMs使用方式不同,它完全不试图增强或取代编码过程。毕竟,编写代码是开发软件中最有趣的部分。相反,这个想法是专注于那些不那么有趣的部分,比如处理新提交的问题、将问题与现有文档匹配等。 奥斯卡在

2025-05-14

。 上述三人应该均来自北京邮电大学,其中崔宝江是博士生导师,现主要从事网络攻防技术、漏洞挖掘技术、大数据安全分析技术、网络与主机安全行为分析、Web / 软件和操作系统安全缺陷分析、移动互联网和物联网安全技

2023-09-15

行工具typst也加强了功能,现在支持自动更新,下载包的速度也更快了。文档方面,新增了页面设置指南,让用户更容易掌握排版技巧。参考文献样式也有所优化。 总之,这次Typst的更新范围很广,无论是功能,还是性能和可扩

2023-08-22

nbsp;发帖称,他们已经为 SYSINIT 采用合并排序 (mergesort) 来取代冒泡排序 (bubblesort)。 SYSINIT 是通用调用排序和调度机制的框架,FreeBSD 目前使用它来动态初始化内核。 当加载内核或其模块之一时,SYSINIT 允许在内核链接时对 Fr

2023-06-30

样高效。四个月内,这一数字增加到 50% 以上。 2. Rust 编译器速度并没有想象的那么快 谷歌证实了此说法。 他们表示,到目前为止,构建速度慢是开发者在使用 Rust 时遇到的第一大挑战,只有略多于 40% 的受访者认为速度可

2023-08-09

令行工具使用体验,优化了包管理逻辑避免冲突。加入了编译警告机制并增强了报错信息的可读性。同时,核心语法树被剥离为 typst-syntax 库,使 Typst 更容易嵌入其它 Rust 项目中。 可以说,Typst 0.7 版本的每一个变化都让 Typst

2022-11-01

thleen 和 Andrew 结婚,同年她又从伦敦大学获得了应用数学博士学位。为了为他们的工作争取更多资金,Boot 夫妇再次前往洛克菲勒基金会寻求资助,该基金会提出的的条件则是让 APE(​​C)X 可以与人类语言以及数学一起工作。结

2023-11-09

KAUST AI 中心的执行秘书 Sarah Salhi,博士后王宇辉,以及博士生王文一对于此论文提供的建议以及帮助。 [1] arxiv.org/pdf/2308.00… [2] en.wikipedia.org/wiki/Societ… [3] arxiv.org/pdf/2305.17… [4] en.wikipedia.org/wiki/Univer… [5] en.wikipedia.org/wiki/G

2022-11-22

改进,并计划采取进一步措施: Kotlin 1.7.0 为 Kotlin/JVM 编译器引入了性能改进。根据基准测试,与 Kotlin 1.6.0 相比,编译时间平均减少了 10%。 在 Kotlin 1.7.0 中,改进的增量编译,目前是实验性的,只支持 Gradle 构建系统中的 J

2021-12-22

C语言;文件格式规范也非常简短,只有一页PDF。但简短并不意味着简单,与 C/C++ 图像处理库 stb_image / stb_image_write 和 libpng 相比,QOI 的编码速度提高了100 倍,解码速度提高了 3-4 倍,压缩率提高了 20%。 无可否认,QOI 在压

2022-10-26

并没有比旧的编译器快(作为一个 data point,自我构建的速度快 7%)。正如 Zig’s New Relationship with LLVM 中所述,编译时间由 LLVM 主导,因此提高编译速度的唯一方法是 Zig 拥有自己的自定义后端。 公告指出,为最常见的架构