文档类型(又称为doctype)声明了预期的AsciiDoc文档结构。AsciiDoc定义了一组固定的文档类型。每一种文档类型对AsciiDoc文档允许的结构都有轻微的变化,以适应不同的使用情况。
默认文档类型是`article`,它提供了其他文档类型所依赖的基础结构。`book`文档类型允许多个零级别部分,作为部分章节。`manpage`文档类型提供了一个扩展头部,用于定义manpage的标准元数据,如卷号、man和目的。`inline`文档类型适用于嵌入式场景。
文档类型
- 文章(
article
) -
默认的文档类型定义(doctype)。在DocBook中,这包括附录、摘要、参考文献、术语表和索引部分。除非你要制作一本书或者手册页,否则你不需要担心文档类型定义。默认的就足够了。
- 书籍(
book
) -
在文章文档类型的基础上构建,新增了将顶级标题作为部分标题的能力,包括了附录、献词、前言、参考书目、术语表、索引和版权页。还有多部分书籍的概念,但是普通书籍和多部分书籍的区别是由内容决定的。一本书只有章节和特殊部分,而多部分书籍则由包含一个或多个章节或特殊部分的各个部分组成。
- 手册页(
manpage
) -
用于为Unix和类Unix操作系统生产一个roff或HTML格式的手册页(man page)。该文档类型指示解析器识别一个特殊的文档头部和部分命名习惯,以将AsciiDoc内容组织为手册页。有关如何使用AsciiDoc结构化手册页以及如何使用Asciidoctor生成它的详细信息,请参见asciidoctor:manpage-backend:index.html。
- 内联(
inline
) -
有些情况下,您可能只希望对输入文本应用内联AsciiDoc格式,而不需要将其包裹在块元素中。例如,在Asciidoclet项目(Javadoc中的AsciiDoc)中,Javadoc标签中的文本只需要内联格式化。
内联文档类型规则
内联文档类型的规则如下:
-
AsciiDoc源文件中只读取了一个段落。
-
内联格式已应用。
-
输出没有用正常的段落标签包裹。
给定以下输入:
https://asciidoctor.org[AsciiDoc]是一种_轻量级_标记语言...
使用选项`doctype=inline`和`backend=html5`进行处理后会产生:
<a href="https://asciidoctor.org">AsciiDoc</a> 是一种 <em>轻量级</em> 标记语言…
内联文档类型使得AsciiDoc处理器能够涵盖从非结构化(内联)文本到完整的独立文档的全部应用范围!