第 1 章 简介与发展史
1.1 Markdown 是什么
Markdown 是一种轻量级标记语言(lightweight markup language),由 John Gruber 与 Aaron Swartz 于 2004 年发布。它用一组简单的纯文本符号(如 #、*、>、-、|)来表示文档结构与排版格式,可被工具一键转换为 HTML、PDF 等格式。
源码示例:
# 一级标题
段落正文,**加粗** 与 *斜体*。
- 列表项 1
- 列表项 2渲染效果:一个一级标题,后接一段正文(其中"加粗"为粗体、“斜体"为斜体),下方为两个无序列表项。
1.2 设计目标
根据 John Gruber 的设计理念 Daring Fireball: Markdown Syntax,Markdown 的核心目标是:
- 易读(readability):源码即便不渲染也几乎可读
- 易写(writeability):普通键盘即可输入全部符号
- 纯文本(plain text):可移植、可版本控制
- 可转换(convertible):可输出结构良好的 HTML/XHTML
1.3 发展史与方言(Flavor)
Markdown 原始规范较为模糊,社区演化出多种"方言”(flavor):
| 方言 | 维护方 | 主要扩展 |
|---|---|---|
| CommonMark | CommonMark 社区 / Jeff Atkinson 等 | 严格、规范的 0.30 版本,是当代基准 |
| GFM (GitHub Flavored Markdown) | GitHub | 表格、任务列表、删除线、自动链接、代码围栏 |
| MultiMarkdown | Fletcher Penney | 脚注、定义列表、元数据 |
| Markdown Extra | Michel Fortin | 表格、脚注、定义列表 |
| PHP Markdown Extra | Michel Fortin | 同上 |
| R Markdown / Quarto | RStudio/Posit | 内嵌可执行代码块 |
注:Hugo、GitHub、GitLab、Obsidian、Notion、飞书 等多数现代工具均以 CommonMark + GFM 为基础。
1.4 常用编辑器与渲染器
- 编辑器:Visual Studio Code(自带预览)、Typora(即时渲染)、Obsidian、MarkText、Zettlr
- 静态站点:Hugo、Jekyll、VuePress、Docusaurus、Astro + Starlight
- 在线编辑:StackEdit、Dillinger、GitHub Gist
- 格式转换:Pandoc(Markdown ↔ HTML/Word/PDF/EPUB)
1.5 Hello Markdown
第一个 Markdown 文档:
源码:
# Hello Markdown
这是一段正文,包含 **粗体**、*斜体* 与 `行内代码`。
- 列表项 A
- 列表项 B
> 引用:Markdown 易读易写。
[访问 CommonMark](https://commonmark.org/)渲染效果:一级标题"Hello Markdown",一段含粗体、斜体、行内代码的正文,两个无序列表项,一段引用块,最后是一个超链接。
1.6 小结
- Markdown 是纯文本标记语言,目标是易读、易写、可移植
- 当代主流基准是 CommonMark 0.30 与 GFM 0.29
- 多数编辑器、文档站点与笔记软件都支持 Markdown
- 后续章节将按语法标识逐一给出实例