asciidoctor(1)
名称
asciidoctor - 将 AsciiDoc 源文件转换为 HTML、DocBook 及其他格式
描述
asciidoctor(1) 命令将 AsciiDoc 源文件 文件 转换为 HTML5、DocBook 5、man(ual) page 及其他自定义输出格式。
如果 文件 是 -,则从标准输入读取 AsciiDoc 源。
选项
安全设置
- -B, --base-dir=目录
-
包含文档和资源的基目录。默认为包含源文件的目录,或者,如果源是从流中读取的,则为当前工作目录。当与安全模式设置结合使用时,可用于 chroot 程序执行。
- -S, --safe-mode=安全模式
-
设置安全模式级别:unsafe、safe、server 或 secure。禁用源文件中潜在的危险宏,例如
include::[]。如果未设置,当使用此脚本调用 Asciidoctor 时,安全模式级别默认为 unsafe。 - --safe
-
将安全模式级别设置为 safe。启用 include 指令,但阻止访问源文件的祖先路径。为兼容 asciidoc 命令而提供。如果未设置,当使用此脚本调用 Asciidoctor 时,安全模式级别默认为 unsafe。
文档设置
- -a, --attribute=属性
-
定义、覆盖或取消设置文档属性。命令行属性优先于源文件中定义的属性,除非名称或值以 @ 结尾。不对值应用任何替换。
属性 通常格式为键值对,形式为 名称=值。其他形式有 名称(此时 值 默认为空字符串)、名称!(取消设置 名称 属性),以及 名称=值@(或 名称@=值)(此时如果 值 在源文档中已定义 名称 属性,则不会覆盖)。包含空格的值必须用引号括起来,形式为 名称="包含空格的值"。
此选项可以指定多次。
- -b, --backend=后端
-
后端输出文件格式:开箱即用的支持 html5、docbook5 和 manpage。您还可以使用后端别名 html(别名为 html5)或 docbook(别名为 docbook5)。可以传递其他值,但如果 Asciidoctor 无法将后端解析为转换器,它将失败。默认为 html5。
- -d, --doctype=文档类型
-
文档类型:article、book、manpage 或 inline。在使用 docbook 后端时设置根元素,在使用 html 后端时设置 HTML body 元素的样式类。book 文档类型允许单个文档中有多个 0 级章节标题。manpage 文档类型启用对生成 man page 所需元数据的解析。inline 文档类型允许将单个段落的内容进行格式化并返回,而无需将其包装在容器元素中。默认为 article。
文档转换
- -D, --destination-dir=目录
-
目标输出目录。默认为包含源文件的目录,或者,如果源是从流中读取的,则为当前工作目录。如果指定,则目录相对于当前工作目录解析。
- -E, --template-engine=名称
-
用于自定义转换器模板的模板引擎。与引擎同名的 gem 将被自动加载。此名称也用于构建自定义转换器模板的完整路径。如果未指定模板引擎,将根据找到的自定义转换器模板的文件扩展名自动检测。
- -e, --embedded
-
输出可嵌入的文档,其中不包含头部、尾部以及正文之外的所有内容。此选项对于生成可以插入到外部模板中的文档很有用。
- -I, --load-path=目录
-
将指定目录添加到加载路径,以便 -r 可以从默认 Ruby 加载路径之外加载扩展。此选项可以指定多次。
- -n, --section-numbers
-
自动编号章节标题。--attribute sectnums 的同义词。
- -o, --out-file=输出文件
-
将输出写入文件 输出文件。默认为输入文件的基本名称,后跟 backend 扩展名。文件相对于当前工作目录解析。如果输入是从标准输入或命名管道 (fifo) 读取的,则输出文件默认为 stdout。如果 输出文件 是 -,则输出文件将写入标准输出。
- -R, --source-dir=目录
-
源目录。目前仅在同时指定了目标目录时使用。用于在目标目录中保留在此目录内转换的文件的目录结构。如果指定,则目录相对于当前工作目录解析。
- -r, --require=库
-
在执行处理器之前,使用标准的 Ruby require 加载指定的库。此选项可以指定多次。
- -s, --no-header-footer
-
输出可嵌入的文档,其中不包含头部、尾部以及正文之外的所有内容。此选项对于生成可以插入到外部模板中的文档很有用。
- -T, --template-dir=目录
-
包含自定义转换器模板的目录,这些模板将覆盖内置集中的一个或多个模板。(需要 tilt gem)
如果存在一个子文件夹与引擎名称(如果已指定)匹配,则该文件夹将被附加到模板目录路径。类似地,如果结果模板目录中存在一个与后端名称匹配的子文件夹,则该文件夹将被附加到模板目录路径。
此选项可以指定多次。在后续目录中找到的匹配模板将覆盖之前发现的模板。
环境变量
Asciidoctor 尊重 SOURCE_DATE_EPOCH 环境变量。如果此变量被赋予整数值,则该值将用作所有输入文档的 epoch 以及本地日期和时间。有关此环境变量的更多信息,请参阅 reproducible-builds.org/specs/source-date-epoch/。
错误报告
请参阅 Asciidoctor 的问题跟踪器:github.com/asciidoctor/asciidoctor/issues?q=is%3Aopen。
作者
Asciidoctor 由 Dan Allen 和 Sarah White 领导并维护,并得到了 Asciidoctor 社区中许多个人的贡献。该项目于 2012 年由 Ryan Waldron 在 Nick Hengeveld 为 Git 网站编写的原型基础上启动。Jason Porter 编写了此命令提供的 CLI 接口的第一个实现。
AsciiDoc.py 由 Stuart Rackham 创建,并得到了 AsciiDoc.py 社区中许多个人的贡献。
资源
项目网站: asciidoctor.org
项目文档: docs.asciidoctor.org
社区聊天: chat.asciidoctor.org
邮件列表归档: discuss.asciidoctor.org