目录
-
- 简介
- 首次用户
- 功能特点
- 竞品和相关作品
- 进一步阅读
简介
Pandoc 是一款通用文档转换工具,它支持任意标记语言之间的格式转换。Pandoc 发展于 2006 年由加州大学伯克利分校的哲学系教授 John MacFarlane 使用 Haskell 语言开发。
Pandoc 被称为”文档转换的瑞士军刀”,因为它几乎可以完成任何标记格式之间的转换。
Pandoc 不仅支持多种输出格式和细节调整选项,还支持使用 Lua、Python 语言编写自定义文档转换脚本,甚至作为其它文档工具的依赖,例如 R 、Markdown 和 Quarto。
首次用户
-
使用
x pandoc 即可自动下载并使用- 在终端运行
eval "$(curl https://get.x-cmd.com)" 即可完成 x 命令安装, 详情参考 x-cmd 官网
- 在终端运行
-
x-cmd 提供1分钟教程,其中包含了 Pandoc 命令常用功能的 demo 示例,可以帮你快速上手 Pandoc 。
-
使用案例:
# 将 txt 格式的文档转换为 html 格式的文档 x pandoc hello.txt -o hello.html # 将 txt 格式的文档转换为 docx 格式的文档 x pandoc hello.txt -o hello.docx # 将多个文档合并后添加标题输出 x pandoc hello.txt hello.html -V title="Hello" # 将多个文档合并为一个文档 x pandoc hello.txt hello.html -V title="Hello" -o hello.html
功能特点
- 多种格式支持:Pandoc 可以处理多种标记格式,包括 Markdown、HTML、XML 等,以及输出各种文本格式,如纯文本、Markdown、EPUB 等。如果安装了 LaTeX 的还可以输出 PDF 格式。
- 更为具体的格式列表可以在 Pandoc 官网或通过
pandoc --list-input-formats 和pandoc --list-output-formats 查看。
- 更为具体的格式列表可以在 Pandoc 官网或通过
- 强化的 Markdown:Pandoc 支持多种 Markdown 语法扩展,包括表格、脚注、引用、数学公式等,提供更强大的标记功能。同时用户可以通过使用
--strict 选项禁用扩展,输出纯粹的 Markdown。 - 模块化设计:用户可以使用 Lua脚本实现自定义阅读器和写入器,从而满足特殊的文本格式转换。
- 文献引用支持:Pandoc 可以使用参考文献管理软件的文献数据,并支持多种引文格式。引文格式的支持让Pandoc可以在 Markdown 中生成具有内联引用的学术文章,也可以将文献数据流转换为所选样式的引文列表。
竞品和相关作品
- PanWriter 是一个基于 Pandoc 的 Markdown 编辑器,通过 GUI 的方式实现了 Pandoc 的部分文档转换功能。
- AsciiDoctor 是一个用 Ruby 编写的文档转换器,专注于 AsciiDoc 格式。它提供了丰富的功能,包括文档生成、PDF输出等。
- reStructuredText 是一种轻量级标记语言,用于编写结构化文档。它通常与工具如 Sphinx 结合使用。
- Bookdown 是一个 R 语言包,用于创建书籍和文档,支持多种输出格式,包括 PDF、HTML 和 ePub。
进一步阅读
- 官方文档 - 该文档提供了详细的指南和参考,包括 Pandoc 的基本概念、命令用法。
- 维基百科 也对 Pandoc 提供了详细的介绍和使用方法。
- pandoc(1) - Linux man page- 该文章介绍了 Pandoc 的语法。
- Pandoc 从入门到精通 - 通过阅读该文章可以让你快速上手 Pandoc 。