Pandoc 二十年:从拖延到全球流行
Twenty Years of Pandoc

2006 年 8 月 3 日,我发布了 Pandoc 0.1 版本,当时它只有 3000 行 Haskell 代码,能转换 Markdown、HTML 等少数格式。我从未想过,这个最初源于拖延症和探索 Haskell 语言乐趣的小项目,会在二十年后演变成支持五十多种文档格式的开源工具。从最初仅靠邮件联系朋友,到后来被 Debian 收录、迁移至 GitHub,再到集成进 Quarto 和 Jupyter Notebook,Pandoc 见证了无数开发者的协作。如今,它已安装在全球数百万台电脑上,成为最流行的 Haskell 程序。这篇文章回顾了 Pandoc 从诞生到成熟的历程,包括引入模板系统、支持 CSL 引用、开发 CommonMark 规范以及架构上的重大重构。
一个最初仅仅是拖延症产物的项目,因编写 Haskell 代码的乐趣以及对我学术工作的日益实用性而不断壮大。
HN 评论区
49- PeterStuer
> 通过编写 N 个解析器(“阅读器”)和 M 个渲染器(“写入器”),就可以支持 N × M 种转换。
一篇关于这个优秀项目的精彩文章。在这个“氛围编程”(vibe-coding)炒作盛行的时代,看到当工具基于基本原理、手工精心构建时,它是如何被扩展并滚雪球般变得更有用的,实在令人欣慰。
> 那么,也许未来人们将不再需要像 Pandoc 这样的工具。
我认为我们只会越来越需要像 Pandoc 这样优秀的工具。正如文中提到的,这里存在着巨大的生态和实际差异。即使大语言模型(LLM)能达到无限接近确定性级别的可靠性,但在效率上,它依然要高出好几个数量级,尤其是在处理大批量作业时。
- adamddev1
Pandoc 很棒。我每天多次使用它在 Outlook 邮件和代码框架之间转换内容:
https://gist.github.com/rahimnathwani/210b1f9cb6ce731a304322...
cat email-to-xyz.md | md2clip
clip2md > email-from-xyz.md
- aanet
我喜欢 Pandoc 的一点是,它能生成干净的 HTML 或 LaTeX 代码(在正确选项下,它也能生成干净的 Markdown)。
如果你将其与 Typst 或 Hevea 生成的 HTML 进行比较,就会发现这超级有用,因为这样我们就可以应用自己的样式。