AsciiDoc 语法高亮——v2.11 新增,轻量级替代 Markdown 的技术文档格式
为什么选 AsciiDoc 而不是 Markdown
AsciiDoc 诞生于 2002 年(比 Markdown 早 2 年),由 Stuart Rackham 创建,最初灵感来自 DocBook 但简化了语法。它和 Markdown 的核心差异:
| 维度 | AsciiDoc | Markdown | |||
|---|---|---|---|---|---|
| 标题语法 | = 一级 / == 二级 / === 三级 | # / ## / ### | |||
| 可配置性 | 强(属性行、块属性) | 弱 | |||
| 代码块 | ---- 围栏 | ` 围栏 | |||
| 表格 | ` | ===` 语法更灵活 | ` | --- | ` 语法较死板 |
| 条件渲染 | ✅ ifdef ifndef | ❌ 不支持 | |||
| 交叉引用 | ✅ 原生 <<锚点>> | ❌ 通常不支持 | |||
| 作者元数据 | ✅ 原生 :author: | ❌ 通常要 front-matter | |||
| 社区规模 | 中小 | 极大 | |||
| 技术生态 | 主要是 Asciidoctor(Ruby / JS) | pandoc、各种静态站点 |
AsciiDoc 适合 技术文档、API 手册、长文档 场景。Markor v2.11 新增它后,AsciiDoc 用户可以在手机上继续编辑技术手册。

Markor 对 AsciiDoc 的支持
v2.11 起 Markor 实现了 AsciiDoc 格式的:
| 能力 | 状态 |
|---|---|
| 语法高亮(编辑器模式) | ✅ 标题、加粗、列表、代码块、表格、属性各自颜色 |
| 格式自动识别 | ✅ .adoc / .asciidoc / .asc 扩展名自动应用高亮 |
| 预览模式渲染 | ⚠️ 基础支持(View Mode 里 WebView 做简单 HTML 转换,不是完整 Asciidoctor 渲染) |
| 快速插入按钮 | ✅ 底部操作栏对应 AsciiDoc 语法 |
| PDF / HTML 导出 | ✅ 走 Markor 通用导出(基于 flexmark-java 的转换) |
基本 AsciiDoc 语法对照
标题
= 一级标题(文档标题)
作者姓名 <email@example.com>
:revnumber: v1.0
:revdate: 2026-10-14
== 二级标题
=== 三级标题
==== 四级标题
加粗 / 斜体 / 下划线
*加粗* _斜体_ +下划线+
`行内代码`
和 Markdown 非常像,只是少了 Markdown 的 ** 双写形式——AsciiDoc 用 单个 * _ + 就够。
代码块
----
这是一个代码块
可以是任何代码或纯文本
----
或带语言标注:
[source,java]
----
public class Hello {
public static void main(String[] args) {
System.out.println("Hello AsciiDoc");
}
}
----
表格
|===
| 姓名 | 年龄 | 城市
| 张三 | 30 | 北京
| 李四 | 25 | 上海
|===
比 Markdown 表格更灵活——可以跨行、跨列、嵌套表格。
链接和图片
example.com[显示文字]
image::images/photo.png[图片标题]
列表
. 有序项目一
. 有序项目二
.. 嵌套有序
* 无序项目一
* 无序项目二
任务列表(AsciiDoc 原生支持):
* [*] 已完成任务
* [ ] 未完成任务
引用块
[quote, 作者姓名, 来源]
____
这是一段引用文字
可以跨多行
____
和 Markdown 的混合使用
Markor 能正确区分 AsciiDoc 和 Markdown 格式——根据扩展名自动切换语法高亮。两种格式的文件可以 共存于同一个 Notebook 根目录:
Notebook/
├── markdown-notes/
│ ├── meeting-notes.md
│ └── quick-draft.md
├── tech-docs/
│ ├── api-manual.adoc
│ └── sys-design.adoc
└── references/
├── paper-reference.md
└── asciidoc-cheatsheet.adoc
Markor 文件浏览器按文件名展示,打开时自动识别格式应用对应高亮。
AsciiDoc 完整渲染在桌面端
Markor 的预览模式对 AsciiDoc 是 基础转换(不是完整 Asciidoctor 渲染引擎)。所以:
- 手机上在 Markor 里写 AsciiDoc → 语法高亮 + 基础预览
- 桌面端用 Asciidoctor 渲染 → 完整 HTML / PDF / EPUB / DocBook 输出
桌面端渲染命令:
# Ruby 版 Asciidoctor
asciidoctor input.adoc -o output.html
asciidoctor-pdf input.adoc -o output.pdf
# Java 版 AsciidoctorJ(pandoc 也能处理)
pandoc input.adoc -f asciidoc -t html -o output.html
pandoc input.adoc -f asciidoc -t pdf -o output.pdf
手机上写好的 AsciiDoc 同步到桌面,直接丢给 Asciidoctor 就能生成完整技术文档。