AsciiDoc基础
============

在这一章里我会介绍一些用AsciiDoc编写文档所需用到的最基本的语法，整个教程我都会以写书为例，这里也不例外。看完本章后你应该就能写出一本非常朴素的书了！

[[chaper]]

章节
----

写书前当然要先列个提纲，拟个目录，再往里面慢慢充实内容。先来看看一本书通常会包含哪些结构：

.一本书的骨架
======================================
.......................................

书名
====
作者名
v0.1, 2012-12
:doctype: book <1>

[preface]
前言标题
-------- <2>
前言前言前言……

第一章标题
----------
内容内容内容……

第二章标题
----------
内容内容内容……

[appendix]
附录标题
--------
内容内容内容……

[bibliography]
参考文献标题
------------
内容内容内容……

[index]
索引标题
--------

.......................................
======================================

[[0_1_section]]

<1> 这里的每一个章节其实就是AsciiDoc里面的1级section，当我们将doctype设为book的时候1级section在语义上就成为书本里的章节了，而0级section就成为了书本的题目。 
<2> 注意标题标示的长度应与标题文字的长度一致。


我们写书的时候每一章下面还会有子章节。AsciiDoc最多支持4级子目录，每一级的目录标题都需要用不同的语法来标示（废话……）。请看下面的示例：

.章节的嵌套
======================================
.......................................

第二章标题
----------
内容……

第二章二级标题
~~~~~~~~~~~~~~
内容……

第二章三级标题
^^^^^^^^^^^^^^
内容……

第二章四级标题
++++++++++++++
内容……

.......................................
======================================


或许有人会觉到写个标题还要用另一整行来标示，好麻烦呀。其实AsciiDoc支持两种标题的标记语法。一种是((双行标题))（Two line title），另一种是((单行标题))（One line title）。双行标题就是我们前面所用的那种，而单行标题则允许用户将标题的定义与内容写在一行里面：

.单行标题
======================================
.......................................

= 书书名 =
== 第一章标题 ==
=== 第一章二级标题 ===
==== 第一章三级标题 ====
===== 第一章四级标题 ======

.......................................
======================================


在写书时具体使用哪种格式则纯粹是个人喜好了。如果你想再偷懒一点，单行标题右边的“=”也是可以省略的。


[[normal_para]]

段落
----

AsciiDoc非常轻量，以至于它对于段落这种结构没有特别的标记语法。如果硬要说有的话那段落的标记就是 *空行* 。每一个段落在AsciiDoc中用空行来分隔，就这么简单。不过注意的是每一段的开头都要在左边顶格写，如果有空格的话就成另一种标记了，这个在<<literal_para>>中会有专门的介绍。


字体样式
----------

这里介绍几个常用的字体样式，它们是：

*粗体* ：

 *粗体* <1>

<1> 如果加粗字体两旁有其他中文字体的话，需要用空格隔开，英文字体则无此问题。


'斜体' ：

  '斜体'


[underline]#下划线# ：

  [underline]#下划线#


[big]#大号# ：

  [big]#大号#


[red]#有色字体# ：

  [red]#有色字体#


需要注意的是中文文档的pdf的输出还不支持这些字体属性。这跟fop对字体处理的方式有关系。目前我还没找到完美的解决方案，只有一些取巧的办法，详见<<tool_chain>>。








