LaTeX与Typst排版工具的比较与思考
尝试LaTeX和Typst排版工具的体验与思考
背景介绍:
最近,我完成了一篇小论文的撰写,这是我第一次正式撰写论文。由于我以前比较懒,一直不想学习LaTeX,主要是听说它太难学了,也没有考虑过去学习它,所以我对LaTeX一无所知。这篇论文最终只需要提交PDF格式,我开始寻找是否有比Word功能更强,但又像LaTeX一样是文本/命令驱动的工具。于是,我找到了一个名为Typst的工具,它在GitHub上的star数量已经相当可观,截至我撰写这篇文章时,已经有49.5k个star。
Typst简介:
对于不熟悉Typst的读者,我简单介绍一下Typst。它是一个现代排版语言,语法更接近编程语言,直接面向排版,并且提供比LaTeX更好的可读性、报错信息和编译速度,相对来说,Typst更容易入门。
使用Typst的体验:
我决定尝试使用Typst来撰写这篇论文,整个过程似乎都很顺利,没有遇到什么问题。
然而,当我要处理一些复杂的公式和矢量图时,我发现Typst的文档难以理解,询问AI也得不到有效的帮助,因为AI完全不了解Typst,给出的答案都不是Typst语言的内容,这估计是因为AI的训练数据不足。
转机:
这时,我突然想到为什么不用Markdown加上简单的公式表达,然后直接交给ChatGPT处理。至于图片,我可以手绘后让AI生成矢量图,或者直接让ChatGPT生成TiKZ矢量图。
AI与Typst:
我开始思考,既然我们可以用自然语言描述让AI生成标记语言,那么为什么不用Typst呢?我原本打算使用Typst完成论文,然后让AI帮助我处理公式和矢量图。
结果:
然而,ChatGPT、Gemini、MiniMax、Kimi、Grok、Claude、Deepseek等AI工具都没有一个能够使用Typst。
Typst的未来:
最终,我决定让AI将Typst的内容转换为LaTeX,遇到错误时将日志交给AI解决。排版问题,我点击问题所在处直接跳转到源码,并单独询问AI进行修改。
Typst的优势:
这让我重新认识到Typst的出现是为了解决以下问题:
- 更好的源码可读性
- 更好的报错信息
- 更快的编译速度
- 内置大量包,避免额外包冲突
- 降低排版工具的学习门槛
- 多人协作
AI的挑战:
AI的出现似乎解决了LaTeX使用中的痛点,如宏包、报错和复杂语法。然而,AI并没有解决编译速度慢的问题,与Typst相比,编译速度确实慢很多。但就我个人而言,我写的这篇论文虽然长达23页,主要是由于计算过程和TiKZ图片较多,编译速度对我来说是可以接受的。
挑战与机遇:
其他问题,如多人协作,目前Typst的支持并不完善。虽然我不出版论文,但我知道出版商提供的模板和他们的要求都是基于LaTeX。Typst要获得认可,必须保证输出格式和兼容性,提供丰富的模板,满足各种期刊的要求。这似乎形成了一个恶性循环:用户少 → 模板少 → 出版商不支持 → 模板少 → 用户少。
个人观点:
我认为,Typst解决的是上世纪90年代就应该被解决的问题,但在AI时代,它的必要性可能已经降低。尽管如此,Typst仍然是一个值得探索和发展的工具。
评论已关闭