分类 默认分类 下的文章

Markdown 语法大全(最全最完整版)

版本:v1.0
日期:2026-05-26
说明:本文档涵盖了 Markdown 的所有标准语法、扩展语法、主流平台(GitHub Flavored Markdown、CommonMark、MultiMarkdown、Marxico、Typora、Obsidian 等)支持的语法,以及 HTML 内嵌用法,力求成为最全面、最广泛的 Markdown 语法参考手册。


目录


一、概述与基础概念

1.1 什么是 Markdown

Markdown 是一种轻量级标记语言,由 John Gruber 于 2004 年创建。它的设计理念是:易于阅读、易于书写、易于转换为 HTML 和其他格式

1.2 Markdown 的标准与变体

标准/变体 说明
Original Markdown John Gruber 的原始规范
CommonMark 标准化、无歧义的 Markdown 规范(最通用)
GitHub Flavored Markdown (GFM) GitHub 扩展,增加了表格、任务列表、删除线、自动链接等
MultiMarkdown (MMD) 扩展了脚注、定义列表、元数据、公式等
Markdown Extra PHP 扩展,支持表格、定义列表、脚注等
Marxico 印象笔记 Markdown 编辑器,支持绘图等
Obsidian Flavored Markdown Obsidian 笔记软件扩展,支持双链、Callout 等
MDX 支持在 Markdown 中嵌入 JSX 组件

1.3 设计哲学

  • 纯文本格式,任何文本编辑器均可打开
  • 语法简洁直观,即使不渲染也具有可读性
  • 可方便地转换为 HTML、PDF、Word 等格式

二、标题(Headings)

Markdown 支持 6 级标题,使用 # 号标记:

2.1 ATX 风格(推荐)

一级标题(H1)

二级标题(H2)

三级标题(H3)

四级标题(H4)

五级标题(H5)
六级标题(H6)

注意# 与标题文字之间必须至少有 1 个空格。部分编辑器要求更严格,建议保持 1 个空格。

2.2 Setext 风格(仅支持 H1 和 H2)

一级标题

二级标题

=- 的数量至少为 1 个,但建议使用 3 个以上以提高可读性。

2.3 可选的闭合 #

一级标题

二级标题

三级标题 ### 闭合的 # 号数量不需要与开头一致

闭合 # 号为可选语法,并非所有解析器都支持,不建议使用。

2.4 标题最佳实践

  • 一个文档通常只使用 一个 H1 标题
  • 标题层级不要跳级(如 H1 直接到 H3)
  • 标题前后建议空一行,保证兼容性

三、段落与换行

3.1 段落

段落之间使用 一个或多个空行 分隔:

这是第一段。

这是第二段。

3.2 换行

方式 语法 说明
方式一 在行尾加 两个空格 然后回车 标准 Markdown
方式二 使用 <br> 标签 HTML 标签
方式三 直接回车(无需两个空格) GFM 等扩展支持

第一行(末尾有两个空格)
第二行

第一行
第二行

3.3 空行技巧

在部分编辑器中,多个空行可能会被合并为一个。如需强制插入多个空行,可使用:

第一段


第二段(中间有一个空行间距)

或者使用 HTML 实体:

第一段

 

第二段


四、文本样式(强调)

4.1 基础样式一览

样式 语法 渲染效果
加粗 **加粗**__加粗__ 加粗
斜体 *斜体*_斜体_ 斜体
加粗斜体 ***加粗斜体***___加粗斜体___ 加粗斜体
删除线 ~~删除线~~ 删除线
行内代码 `行内代码` | 行内代码
超链接 [文本](URL) 超链接

4.2 加粗(Bold)

加粗文本
加粗文本

加粗可以包含斜体在内

注意:推荐使用 **(星号),因为 _(下划线)在部分解析器中与单词中间的下划线冲突。

4.3 斜体(Italic)

斜体文本
斜体文本

最佳实践:推荐使用 *(星号)。

4.4 加粗 + 斜体组合

加粗且斜体
加粗且斜体
加粗且斜体
加粗且斜体
加粗且斜体
加粗且斜体

4.5 嵌套强调

这是加粗文本,其中包含斜体部分
这是斜体文本,其中包含加粗部分

4.6 行内代码中的强调

行内代码中不支持 Markdown 语法,所有符号原样显示:

这段**不会被加粗**

渲染为:这段**不会被加粗**


五、列表

5.1 无序列表

使用 *+- 作为列表标记:

  • 项目一
  • 项目二
  • 项目三
  • 项目一
  • 项目二
  • 项目三
  • 项目一
  • 项目二
  • 项目三

三种写法效果完全相同,推荐统一使用 -

5.2 有序列表

使用数字加 .) 标记:

  1. 第一项

  2. 第二项

  3. 第三项

  4. 第一项

  5. 第二项

  6. 第三项

  1. 第一项
  2. 第二项
  3. 第三项

注意:有序列表的数字并不影响渲染结果,但推荐使用正确的顺序以提高可读性。

5.3 嵌套列表(子列表)

子列表需要 缩进 2~4 个空格或 1 个制表符

  • 项目一
    • 子项目 1.1
      • 子子项目 1.1.1
    • 子项目 1.2
  • 项目二
    1. 子项目 2.1(有序)
    2. 子项目 2.2(有序)

5.4 列表中包含段落

列表项之间插入空行,即可包含多个段落,后续段落需缩进:

  1. 第一段内容。

    这是同列表项中的第二段内容。(需要缩进 4 个空格或 1 个制表符)

  2. 第二项。

5.5 列表中包含引用

  • 项目一

    这是一条引用
    列表中的引用需要缩进

  • 项目二

5.6 列表中包含代码块

  • 项目一

    ```python
    print("Hello, World!")
  • 项目二

列表中的代码块需要 额外缩进(通常再缩进 4 个空格)。

5.7 列表中包含图片

  1. 项目一

    图片描述

  2. 项目二

5.8 有序与无序混合嵌套

  1. 第一项
    • 无序子项
    • 无序子项
  2. 第二项
    1. 有序子项
    2. 有序子项

5.9 定义列表(MultiMarkdown / PHP Markdown Extra)

术语 A
定义 A 的说明
术语 B
定义 B 的说明

5.10 列表最佳实践

  • 无序列表统一使用 -
  • 子列表缩进使用 2 个或 4 个空格(保持一致)
  • 列表前后建议空一行
  • 列表项之间需要空行来分隔多段内容

六、链接

链接文本
链接文本

示例:

百度

链接文本

或者:

链接文本

或者:

链接文本

隐式链接名

百度

6.3 自动链接(URL / 邮箱)

GFM 扩展语法,直接写 URL 会自动转换为链接:

https://example.com

user@example.com

标准 Markdown 中需要使用尖括号:

https://example.com
user@example.com

6.4 带格式的链接

加粗链接
斜体链接
代码链接

6.5 链接到标题(锚点)

跳转到二级标题

标题的锚点规则:

  • 字母转小写
  • 空格转为 -
  • 特殊字符被移除
  • 中文通常保持原样或被移除(取决于解析器)

6.6 链接在新标签页打开

Markdown 本身不支持此功能,需使用 HTML

新窗口打开链接


七、图片

7.1 基本语法

替代文本
替代文本

示例:

Markdown Logo

7.2 引用式图片

替代文本

7.3 带链接的图片

图片替代文本

7.4 设置图片大小

标准 Markdown 不支持设置图片大小,需使用 HTML

替代文本 替代文本

7.5 图片居中

替代文本

或者:

替代文本

7.6 带标题的图片(figure)

替代文本
图片标题说明

7.7 图片画廊(部分编辑器支持)

图片1 图片2 图片3

7.8 Base64 内嵌图片

替代文本


八、引用(Blockquote)

8.1 基本语法

这是一段引用文本。
可以有多行。

8.2 省略中间的 >

这是一段引用。
虽然这行没有 > 符号,但仍然属于引用。
这行又回到了引用。

8.3 嵌套引用

第一层引用

第二层引用

第三层引用

8.4 引用中包含其他元素

引用中的列表

  • 列表项 1
  • 列表项 2
    • 子列表项

引用中的代码块

print("引用中的代码块")

引用中的标题

引用中的标题

引用中的段落内容。

引用中的表格

列 1 列 2
A B

8.5 引用最佳实践

  • 空行也建议加 > 以提高可读性
  • 引用块前后建议空一行

九、分隔线(Horizontal Rule)

使用三个或更多的 *-_







注意:使用 --- 时需确保上一行不是文本,否则会被解析为 Setext 风格的二级标题。


十、代码

10.1 行内代码(Inline Code)

使用反引号包裹:

使用 console.log() 来输出调试信息。

10.2 行内代码中包含反引号

使用双反引号包裹:

这是一个包含 ` 反引号的代码

10.3 代码块(Code Block)— 缩进式

缩进 4 个空格或 1 个制表符:

第一行代码
第二行代码
第三行代码

10.4 代码块(Fenced Code Block)— 围栏式(推荐)

使用三个或更多反引号 ``或波浪号~~~`:

代码内容
代码内容

10.5 代码块指定语言(语法高亮)

def hello():
    print("Hello, World!")

支持的常用语言标识

标识 语言 标识 语言
bash / shell Shell 脚本 python / py Python
javascript / js JavaScript typescript / ts TypeScript
java Java c C 语言
cpp / c++ C++ csharp / cs C#
go Go rust Rust
ruby / rb Ruby php PHP
swift Swift kotlin / kt Kotlin
sql SQL html HTML
css CSS scss / sass SASS/SCSS
json JSON xml XML
yaml / yml YAML toml TOML
markdown / md Markdown latex / tex LaTeX
diff Diff dockerfile Dockerfile
makefile Makefile graphql GraphQL
protobuf Protocol Buffers r R 语言
matlab MATLAB perl / pl Perl
lua Lua scala Scala
haskell Haskell elixir Elixir
erlang Erlang clojure Clojure
dart Dart objectivec / obj Objective-C
powershell PowerShell vb.net VB.NET
assembly / asm 汇编 plaintext / text 纯文本
console / terminal 终端输出 git Git
nginx Nginx 配置 ini / conf 配置文件
graphql GraphQL mermaid Mermaid 图表

语言标识不区分大小写。

10.6 代码块中的行号高亮(部分编辑器支持)

function example() {
  const a = 1;      // 高亮
  const b = 2;
  const c = 3;      // 高亮
  const d = 4;      // 高亮
  const e = 5;      // 高亮
  return a + b;
}

10.7 代码块标题(部分编辑器/插件支持)

example.js
console.log("Hello");

或:

console.log("Hello");

10.8 代码块 Diff 显示

+ 新增的行
- 删除的行
  未修改的行

十一、表格

11.1 基本语法

列标题 1 列标题 2 列标题 3
内容 1 内容 2 内容 3
内容 4 内容 5 内容 6

11.2 对齐方式

左对齐 居中对齐 右对齐
内容 1 内容 2 内容 3
内容 4 内容 5 内容 6
  • :------:左对齐(默认)
  • :---::居中对齐
  • ---::右对齐

11.3 简化写法

列两侧的 | 可以省略,分隔线的 - 至少需要一个:

标题 1 标题 2
内容 内容

11.4 表格中包含其他元素

包含链接

名称 链接
百度 百度

包含行内代码

函数 说明
printf() 格式化输出
scanf() 格式化输入

包含加粗/斜体

项目 状态
核心模块 已完成

11.5 表格中使用 | 字符

使用 HTML 实体 &#124; 表示管道符:

表达式 说明
a | b 按位或

11.6 多行表格(部分扩展支持)

MultiMarkdown 扯展:

列 1 列 2
内容跨越
多行
第二列

十二、脚注(Footnote)

支持:MultiMarkdown、Obsidian、Typora、Marxico 等

12.1 基本语法

这是一段带有脚注的文本1

这是另一段文本2

12.2 命名脚注

这是脚注3

12.3 行内脚注(部分解析器支持)

这是行内脚注^[行内脚注的内容]。


十三、任务列表(Task List)

GFM 扩展语法

13.1 基本语法

  • 已完成的任务
  • 未完成的任务
  • 另一个未完成任务

13.2 嵌套任务列表

  • 任务组 A
    • 子任务 A.1
    • 子任务 A.2
  • 任务组 B
    • 子任务 B.1
    • 子任务 B.2

13.3 有序任务列表

  1. 第一步
  2. 第二步
  3. 第三步

注意[x][ ] 中的 x 不区分大小写,[] 与内容之间无空格。


十四、删除线(Strikethrough)

GFM 扩展语法

这段文本会被加上删除线

渲染效果:这段文本会被加上删除线


十五、表情符号(Emoji)

15.1 使用 Emoji 代码

:smile: :heart: :thumbsup: :rocket: :fire:

15.2 直接使用 Unicode Emoji

😀 ❤️ 👍 🚀 🔥 ✅ ❌ ⭐ 📌 📝 🎉 💡 ⚠️ 🔗 💻 📱 🌍 🎯 📊 📅

15.3 常用 Emoji 代码表

代码 Emoji 代码 Emoji 代码 Emoji
:smile: 😄 :laughing: 😆 :blush: 😊
:heart: ❤️ :thumbsup: 👍 :thumbsdown: 👎
:rocket: 🚀 :fire: 🔥 :star:
:check: :x: :warning: ⚠️
:bulb: 💡 :link: 🔗 :computer: 💻
:memo: 📝 :chart: 📊 :date: 📅
:lock: 🔒 :unlock: 🔓 :email: 📧
:phone: 📱 :globe: 🌍 :eye: 👁️
:coffee: :beer: 🍺 :cake: 🍰
:music: 🎵 :movie_camera: 🎥 :book: 📖
:wrench: 🔧 :hammer: 🔨 :gear: ⚙️
:bug: 🐛 :bomb: 💣 :gift: 🎁
:trophy: 🏆 :medal: 🏅 :calendar: 📆
:cloud: ☁️ :sunny: ☀️ :umbrella: ☂️
:mag: 🔍 :key: 🔑 :bell: 🔔
:+1: 👍 :-1: 👎 :100: 💯
:ok_hand: 👌 :clap: 👏 :pray: 🙏

十六、高亮标记(Highlight)

支持:Marxico、Obsidian、Typora 等

高亮文本

渲染效果:高亮文本(带黄色背景)

HTML 方式(更通用):

高亮文本


十七、下标与上标(Subscript / Superscript)

MultiMarkdown、Obsidian 等支持

17.1 下标

H~2~O 是水的化学式

渲染效果:H₂O

17.2 上标

X2 是 X 的平方

渲染效果:X²

17.3 HTML 方式

H2O
X2


十八、定义列表(Definition List)

MultiMarkdown / PHP Markdown Extra 支持

术语 1
定义 1
术语 2
定义 2a
定义 2b

HTML 方式(更通用):

术语 1
定义 1
术语 2
定义 2a
定义 2b

十九、缩写(Abbreviation)

MultiMarkdown / PHP Markdown Extra 支持

HTMLCSS 是前端开发的基础。

文档中所有出现的 HTMLCSS 会自动添加 <abbr> 标签,鼠标悬停时显示全称。


二十、数学公式(Math / LaTeX)

支持:Typora、Obsidian、Marxico、GitLab、Notion、Jupyter 等

20.1 行内公式

这是一个行内公式:\(E = mc^2\)

20.2 块级公式

\[E = mc^2\]

或:
\[\sum_{i=1}^{n} x_i = x_1 + x_2 + \cdots + x_n\]

20.3 常用数学公式示例

分数

\[\frac{a}{b}\]

根号

\[\sqrt{x^2 + y^2}\]

求和

\[\sum_{i=0}^{n} i^2\]

积分

\[\int_{0}^{\infty} e^{-x} dx\]

矩阵

\[\begin{bmatrix} 1 & 2 & 3 \\ 4 & 5 & 6 \\ 7 & 8 & 9 \end{bmatrix}\]

方程组

\[\begin{cases} x + y = 1 \\ x - y = 0 \end{cases}\]

多行公式对齐

\[\begin{aligned} f(x) &= x^2 + 2x + 1 \\ &= (x+1)^2 \end{aligned}\]

条件函数

\[f(x) = \begin{cases} 1, & x > 0 \\ 0, & x = 0 \\ -1, & x < 0 \end{cases}\]

希腊字母

\[\alpha, \beta, \gamma, \delta, \epsilon, \zeta, \eta, \theta, \lambda, \mu, \nu, \xi, \pi, \rho, \sigma, \tau, \phi, \chi, \psi, \omega\]

集合运算

\[A \cup B, \quad A \cap B, \quad A \setminus B, \quad A \subseteq B, \quad A \in B\]

箭头

\[\leftarrow, \rightarrow, \leftrightarrow, \Leftarrow, \Rightarrow, \Leftrightarrow, \mapsto\]

二十一、流程图与图表(Mermaid)

支持:GitHub、GitLab、Obsidian、Typora、Notion、Docusaurus 等

21.1 基本用法

graph TD A[开始] --> B{判断} B -->|是| C[执行操作] B -->|否| D[结束] C --> D

21.2 流程图(Flowchart)

graph LR A[矩形] --> B(圆角矩形) B --> C{菱形判断} C -->|条件1| D[(数据库)] C -->|条件2| E((圆形))

节点形状

语法 形状 说明
A[文本] 矩形 普通节点
A(文本) 圆角矩形 圆角节点
A{文本} 菱形 判断/条件
A((文本)) 圆形 圆形节点
A>文本] 旗帜形 右旗帜形
A[(文本)] 圆柱体 数据库
A[[文本]] 子流程 子流程
A[(文本)] 数据库 数据库图标
A((文本)) 圆形 连接点

箭头类型

语法 说明
--> 实线箭头
--- 实线无箭头
-> 实线箭头(短)
-.-> 虚线箭头
-.- 虚线无箭头
==> 粗线箭头
=== 粗线无箭头
--文本--> 带标签箭头

方向

关键字 说明
TB / TD 从上到下
BT 从下到上
LR 从左到右
RL 从右到左

21.3 时序图(Sequence Diagram)

sequenceDiagram participant A as 用户 participant B as 服务器 participant C as 数据库 A->>B: 发送请求 B->>C: 查询数据 C-->>B: 返回数据 B-->>A: 返回响应 Note over A,C: 这是一个跨越所有参与者的注释 Note right of B: 右侧注释

消息类型

语法 说明
-> 实线无箭头
--> 虚线无箭头
->> 实线箭头
-->> 虚线箭头
-x 实线叉号
--x 虚线叉号
-) 实线开放箭头
--) 虚线开放箭头

21.4 甘特图(Gantt Chart)

gantt title 项目开发计划 dateFormat YYYY-MM-DD section 需求阶段 需求分析 :a1, 2024-01-01, 10d 需求评审 :after a1, 5d section 设计阶段 系统设计 :2024-01-16, 10d 详细设计 :2024-01-26, 8d section 开发阶段 编码实现 :2024-02-03, 20d 单元测试 :2024-02-23, 10d section 测试阶段 集成测试 :2024-03-04, 10d 验收测试 :2024-03-14, 5d

21.5 类图(Class Diagram)

classDiagram class Animal { +String name +int age +makeSound() void } class Dog { +String breed +fetch() void } class Cat { +String color +purr() void } Animal <|-- Dog Animal <|-- Cat

21.6 状态图(State Diagram)

stateDiagram-v2 [*] --> 待处理 待处理 --> 处理中 : 开始处理 处理中 --> 已完成 : 处理成功 处理中 --> 已失败 : 处理失败 已完成 --> [*] 已失败 --> 待处理 : 重试

21.7 饼图(Pie Chart)

pie title 编程语言使用占比 "JavaScript" : 35 "Python" : 25 "Java" : 15 "Go" : 10 "其他" : 15

21.8 ER 图(Entity Relationship)

erDiagram CUSTOMER ||--o{ ORDER : places CUSTOMER { string name string email int age } ORDER ||--|{ LINE_ITEM : contains ORDER { int orderNumber date created string status } LINE_ITEM { string productName int quantity float price }

21.9 用户旅程图(User Journey)

journey title 用户购物体验 section 浏览商品 打开首页: 5: 用户 搜索商品: 4: 用户 查看详情: 4: 用户 section 下单支付 加入购物车: 5: 用户 填写地址: 3: 用户 完成支付: 3: 用户 section 收货评价 等待发货: 2: 用户 确认收货: 5: 用户 发表评价: 4: 用户

21.10 Git 图(Git Graph)

gitGraph commit commit branch develop checkout develop commit commit checkout main merge develop commit

21.11 思维导图(Mindmap)

mindmap root((中心主题)) 主题A 子主题A1 子主题A2 主题B 子主题B1 子主题B2 主题C 子主题C1 子主题C2

二十二、HTML 内嵌

Markdown 天然支持 HTML 标签,可以在 Markdown 文档中直接使用 HTML

22.1 文本样式

加粗
加粗(语义化)
斜体
斜体(语义化)
下划线
删除线
删除线(语义化)
高亮
下标
上标
插入的文本
键盘文本
小号文本

22.2 键盘按键样式

Ctrl + C 复制

22.3 缩写

HTML 是一种标记语言。

22.4 引用与出处

这是一段引用。

—— 引用来源

22.5 上下标

H2O
X2

22.6 文本对齐

左对齐
居中对齐
右对齐

或:

居中文本

22.7 字体颜色与大小

红色文本
红色文本
红色文本
大号文本
黄色背景文本

22.8 折叠内容(Details / Summary)

点击展开(折叠内容)

这里是折叠的内容,可以包含 Markdown 语法(取决于解析器)。

  • 列表项 1
  • 列表项 2

22.9 表格(HTML 方式)

列 1 列 2
内容 1 内容 2
合并行 内容 3
内容 4

22.10 iframe 嵌入

22.11 视频嵌入

22.12 音频嵌入

22.13 有序/无序列表(HTML 方式)

  1. 有序列表项 1
  2. 有序列表项 2
  • 无序列表项 1
  • 无序列表项 2
  1. 从 5 开始编号
  2. 编号为 6
  1. 项目 1
    • 子项目 1a
    • 子项目 1b

二十三、转义字符

23.1 使用反斜杠转义

以下字符前加 \ 可以转义,使其显示为原文字符:

\ 反斜杠
` 反引号

  • 星号
    _ 下划线
    {} 花括号
    [] 方括号
    () 小括号

    井号

  • 加号
  • 减号(连字符)
    . 点号
    ! 感叹号
    | 管道符

示例:

*这不是斜体*
#这不是标题
[这不是链接]

23.2 HTML 实体

实体 字符 说明
& & & 符号
< < 小于号
> > 大于号
" " 双引号
' ' 单引号
&nbsp; 不换行空格
&mdash; 长破折号
&ndash; 短破折号
&copy; © 版权符号
&reg; ® 注册商标
&trade; 商标符号
&#124; | 管道符
&rarr; 右箭头
&larr; 左箭头
&hellip; 省略号
&bull; 项目符号
&deg; ° 度数符号
&plusmn; ± 正负号
&times; × 乘号
&divide; ÷ 除号
&euro; 欧元符号
&pound; £ 英镑符号
&yen; ¥ 人民币/日元符号
&sect; § 章节符号
&para; 段落符号
&dagger; 剑号
&Dagger; 双剑号
&laquo; « 左书名号
&raquo; » 右书名号

二十四、元数据 / YAML Front Matter

支持:Jekyll、Hugo、Hexo、Gatsby、Docusaurus、Obsidian 等

24.1 基本语法

在文件开头使用 --- 包围的 YAML 块:


title: 文章标题
date: 2024-01-01
author: 作者名
tags:

  • 标签1
  • 标签2
    categories:
  • 分类1
    description: 文章描述
    draft: false

正文开始

这里是文章内容。

24.2 常用 Front Matter 字段

字段 说明 示例
title 标题 title: 我的文章
date 日期 date: 2024-01-01
updated 更新日期 updated: 2024-06-01
author 作者 author: 张三
tags 标签 tags: [JavaScript, React]
categories 分类 categories: 前端开发
description 描述 description: 文章摘要
summary 摘要 summary: 简短描述
slug URL 别名 slug: my-article
url 自定义 URL url: /custom/path
draft 是否草稿 draft: true
layout 布局模板 layout: post
permalink 永久链接 permalink: /2024/01/01/title/
toc 是否显示目录 toc: true
mathjax 是否启用公式 mathjax: true
mermaid 是否启用图表 mermaid: true
comments 是否启用评论 comments: true
cover 封面图片 cover: /images/cover.jpg
aliases 别名(Obsidian) aliases: [别名1, 别名2]
publish 是否发布 publish: false
lang 语言 lang: zh-CN
series 系列 series: React 入门
weight 排序权重 weight: 10
icon 图标 icon: 📝
keywords 关键词 keywords: [MD, 语法]
robots 搜索引擎指令 robots: noindex

24.3 多作者示例

---
title: 协作文章
authors:
  - name: 张三
    url: https://example.com/zhangsan
  - name: 李四
    url: https://example.com/lisi
---

二十五、目录(Table of Contents)

25.1 自动目录(各平台)

平台 语法 说明
GitHub [[_TOC_]] 自动生成目录
GitLab [[_TOC_]]{{< toc >}} 自动生成目录
Hugo {{< toc >}} 短代码
Docusaurus `toctable-of-contents 插件
Obsidian [[toc]] 自动生成目录
VS Code 插件 <!-- TOC --> 由插件生成
Markdown All in One <!-- TOC -->...<!-- /TOC --> 自动维护

25.2 手动目录

手动创建目录链接到各标题的锚点:

目录


二十六、嵌入视频与音频

26.1 YouTube 嵌入

26.2 Bilibili 嵌入

26.3 本地视频

26.4 本地音频

26.5 视频链接卡片(部分平台)

视频标题


二十七、嵌入 iframe

27.1 基本用法

27.2 嵌入 Google 地图

27.3 嵌入 CodePen


二十八、注释 / HTML 注释

28.1 HTML 注释

28.2 用于占位或编辑说明


二十九、锚点与内部跳转

29.1 自动锚点

Markdown 标题会自动生成锚点:

这是标题

跳转到标题

锚点生成规则

原始标题 生成的锚点
## Hello World #hello-world
## Hello-World #hello-world
## Hello_World #hello_world
## 你好世界 #你好世界(部分平台)或被移除
## Hello (World) #hello-world
## Hello & World #hello--world#hello-world
## 1. Introduction #1-introduction

注意:不同平台的锚点生成规则可能不同。

29.2 手动锚点(HTML

跳转到自定义锚点

或:

自定义锚点标题

29.3 属性方式锚点(部分解析器)

标题


三十、Diff 语法

30.1 使用 diff 语言标识

+ 新增的行(绿色)
+ 另一个新增行
- 删除的行(红色)
- 另一个删除行
  未修改的行

30.2 在代码中标注

def greet(name):
-   print("Hello")        # 旧代码
+   print(f"Hello, {name}!")  # 新代码

三十一、Callout / Admonition(提示框)

31.1 Obsidian Callout

[!NOTE]
这是一个提示信息。

[!WARNING]
这是一个警告信息。

[!IMPORTANT]
这是一个重要信息。

[!TIP]
这是一个小贴士。

[!CAUTION]
这是一个注意/小心信息。

[!INFO]
这是一个信息说明。

[!QUOTE]
这是一段引用。

[!EXAMPLE]
这是一个示例。

[!ABSTRACT]
这是一个摘要。

[!SUCCESS]
这是一个成功信息。

[!QUESTION]
这是一个问题。

[!FAILURE]
这是一个失败信息。

[!DANGER]
这是一个危险警告。

[!BUG]
这是一个 Bug 说明。

31.2 可折叠的 Callout

[!NOTE]+ 点击展开
这是可折叠的内容,默认展开。

[!NOTE]- 点击展开
这是可折叠的内容,默认收起。

31.3 嵌套 Callout

[!NOTE]
外层提示

[!WARNING]
内层警告

31.4 自定义标题

[!NOTE] 自定义标题
带有自定义标题的提示框。

31.5 GitHub Admonition(Beta)

[!NOTE]
GitHub 也在逐步支持 Callout 语法。

[!WARNING]
警告信息。

[!TIP]
提示信息。

[!IMPORTANT]
重要信息。

[!CAUTION]
注意信息。

31.6 Docusaurus Admonition

提示信息

小贴士

信息说明

警告信息

危险警告

📝 自定义标题

带自定义标题的提示框


三十二、属性语法(Attribute)

支持:Marxico、Obsidian、部分 Markdown 扩展

32.1 给元素添加 ID 和类

标题

图片{width=300 .custom-class}

链接{target=_blank}

32.2 给链接添加属性

链接{:target="_blank" rel="noopener"}

32.3 给图片添加属性

图片{: width="300" height="200" .border}


三十三、Obsidian 特殊语法

[[笔记名称]]
[[笔记名称|显示文本]]
[[笔记名称#标题]]
[[笔记名称#标题|显示文本]]
[[笔记名称#^块ID]]

33.2 标签(Tag)

标签名

多级/标签

标签-连字符

标签中不能包含空格。

33.3 嵌入(Embed)

![[笔记名称]]
![[图片名.png]]
![[图片名.png|300]]
![[笔记名称#标题]]

33.4 块引用

^块ID

33.5 查询(Dataview 插件)

TABLE file.ctime AS 创建时间
FROM "日记"
SORT file.ctime DESC
LIMIT 10

33.6 内联查询

$= dv.pages("#标签").length 篇笔记


三十四、Docusaurus / MDX 扩展

34.1 提示框(Admonition)

📝 提示标题

提示内容

提示内容

信息内容

警告内容

危险内容

34.2 选项卡

import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';

这是 Apple 的内容。 这是 Orange 的内容。

34.3 代码块标题

src/components/Hello.js
function Hello() {
  return <div>Hello, World!</div>;
}

34.4 代码块交互

function MyComponent() {
  return <button onClick={() => alert('Hello!')}>Click Me</button>;
}

34.5 可导入的代码

import CodeBlock from '@theme/CodeBlock';
import MyComponentSource from '!!raw-loader!./myComponent';

<CodeBlock title="src/components/myComponent.jsx" showLineNumbers>
  {MyComponentSource}
</CodeBlock>

三十五、GitBook 扩展语法

35.1 提示框

{% hint style="info" %}
信息提示
{% endhint %}

{% hint style="warning" %}
警告提示
{% endhint %}

{% hint style="danger" %}
危险提示
{% endhint %}

{% hint style="success" %}
成功提示
{% endhint %}

35.2 可折叠内容

{% collapsible title="点击展开" %}
折叠的内容
{% endcollapsible %}

35.3 页面嵌入

{% content-ref url="./other-page.md" %}
other-page.md
{% endcontent-ref %}

35.4 API 定义

{% swagger method="get" path="/api/users" baseUrl="https://api.example.com" summary="获取用户列表" %}
{% swagger-parameter type="query" name="page" %}
页码
{% endswagger-parameter %}

{% swagger-response status="200" description="成功响应" %}

{
  "users": []
}
{% endswagger-response %}
{% endswagger %}

三十六、Markdown 编辑器快捷键速查

36.1 通用快捷键

操作 快捷键 效果
加粗 Ctrl + B **文本**
斜体 Ctrl + I *文本*
链接 Ctrl + K [文本](URL)
行内代码 Ctrl + `` `代码`
标题 Ctrl + Shift + H 切换标题级别

36.2 VS Code(Markdown All in One 插件)

操作 快捷键
预览 Ctrl + Shift + V
侧边预览 Ctrl + K V
加粗 Ctrl + B
斜体 Ctrl + I
链接 Ctrl + K
有序列表 Ctrl + Shift + [
无序列表 Ctrl + Shift + ]
标题升级 Ctrl + ]
标题降级 Ctrl + [
目录 Ctrl + MT

36.3 Typora 快捷键

操作 快捷键
加粗 Ctrl + B
斜体 Ctrl + I
下划线 Ctrl + U
删除线 Alt + Shift + 5
行内代码 Ctrl + Shift + ``
代码块 Ctrl + Shift + K
公式块 Ctrl + Shift + M
引用 Ctrl + Shift + Q
链接 Ctrl + K
图片 Ctrl + Shift + I
标题 1~6 Ctrl + 1~6
段落 Ctrl + 0
表格 Ctrl + T
无序列表 Ctrl + Shift + ]
有序列表 Ctrl + Shift + [
任务列表 Ctrl + Shift + X
源码模式 Ctrl + /
聚焦模式 F8
打字机模式 F9
大纲 Ctrl + Shift + 1

三十七、各平台兼容性速查表

功能 GFM CommonMark MultiMarkdown Obsidian Typora Hugo Jekyll
标题
加粗/斜体
无序列表
有序列表
链接
图片
引用
行内代码
代码块
表格
任务列表 ⚠️
删除线 ⚠️
自动链接
脚注 ⚠️
数学公式 ⚠️ ⚠️
高亮 ⚠️ ⚠️
下标/上标 ⚠️ ⚠️
定义列表 ⚠️ ⚠️
缩写 ⚠️ ⚠️
Front Matter
Mermaid ⚠️ ⚠️
Callout ✅(Beta) ⚠️ ⚠️
双链

✅ 原生支持 | ⚠️ 需插件/扩展 | ❌ 不支持


三十八、完整示例

以下是一个综合运用各种 Markdown 语法的完整示例:


title: Markdown 完整示例
date: 2024-01-01
author: 作者
tags: [Markdown, 教程]
description: 一个展示所有 Markdown 语法的完整示例

Markdown 完整示例

Logo

[!NOTE] 关于本文
本文档展示了 Markdown 的各种语法特性。

目录


1. 文本样式

这是一段普通文本,包含 加粗斜体加粗斜体删除线行内代码

还可以组合使用 高亮文本(部分编辑器支持)。

化学式 H~2~O 和数学公式 X2(部分编辑器支持)。

1.1 链接

行内链接
引用链接

1.2 图片

示例图片


2. 列表

2.1 无序列表

  • 项目 A
    • 子项目 A.1
    • 子项目 A.2
  • 项目 B
  • 项目 C

2.2 有序列表

  1. 第一步
  2. 第二步
    1. 子步骤 2.1
    2. 子步骤 2.2
  3. 第三步

2.3 任务列表

  • 已完成
  • 未完成
  • 另一个未完成

3. 代码

行内代码:const x = 10;

代码块:

// JavaScript 示例
function fibonacci(n) {
  if (n <= 1) return n;
  return fibonacci(n - 1) + fibonacci(n - 2);
}

console.log(fibonacci(10)); // 55

Diff:

- const old = "旧代码";
+ const new = "新代码";

4. 表格

功能 语法 说明
加粗 **文本** 左对齐
斜体 *文本* 居中
代码 `代码` 右对齐

5. 数学公式

行内公式:\(E = mc^2\)

块级公式:
\[\int_{-\infty}^{\infty} e^{-x^2} dx = \sqrt{\pi}\]

6. 引用

这是一段引用。

嵌套引用。

引用中可以包含 加粗代码


7. Mermaid 图表

graph LR A[开始] --> B{判断} B -->|是| C[执行] B -->|否| D[结束] C --> D

8. 脚注

这是一段带有脚注的文本1,还有另一个脚注4


9. HTML 扩展

点击展开详情

折叠的内容可以包含任何 Markdown 语法。

  • 列表项 1
  • 列表项 2
| 居中表格 | 示例 | | -------- | ------ | | 内容 1 | 内容 2 |

10. 注释


最后更新:2024-01-01

回到顶部


附录 A:Markdown 特殊字符速查

A.1 必须转义的字符

字符 转义写法 常见用途
\ \\ 转义字符
* \* 斜体/加粗/列表
_ \_ 斜体/加粗
# \# 标题
+ \+ 列表
- \- 列表/分隔线
. \. 有序列表
! \! 图片
{ \{ 花括号
} \} 花括号
[ \[ 链接/图片
] \] 链接/图片
( \( 链接
) \) 链接
` | \` 代码
| \| 表格

A.2 特殊排版符号

效果 语法 备注
空行 <br>&nbsp; 强制换行/空行
空格 &nbsp; 不换行空格
省略号 &hellip;
破折号 &mdash;
连接号 &ndash;
项目符号 &bull;

附录 B:Emoji 速查表(常用)

B.1 表情与手势

Emoji 代码 说明
😀 :grinning: 咧嘴笑
😃 :smiley: 笑脸
😄 :smile: 微笑
😁 :grin: 露齿笑
😆 :laughing: 大笑
😊 :blush: 脸红
😎 :sunglasses: 戴墨镜
😍 :heart_eyes: 花痴
🤔 :thinking: 思考
😴 :sleeping: 睡觉
👍 :+1:
👎 :-1:
👌 :ok_hand: OK
👏 :clap: 鼓掌
🙏 :pray: 合十
💪 :muscle: 肌肉
🤝 :handshake: 握手
✌️ :v:
🖖 :vulcan_salute: 瓦肯举手礼

B.2 物品与符号

Emoji 代码 说明
🚀 :rocket: 火箭
🔥 :fire:
:star:
💡 :bulb: 灯泡
📌 :pushpin: 图钉
📝 :memo: 备忘录
:white_check_mark: 对勾
:x: 叉号
⚠️ :warning: 警告
🔗 :link: 链接
🔒 :lock:
🔑 :key: 钥匙
🎯 :dart: 飞镖
🏆 :trophy: 奖杯
💎 :gem: 宝石
🎁 :gift: 礼物
📊 :bar_chart: 图表
💻 :computer: 电脑
📱 :iphone: 手机
⚙️ :gear: 齿轮
🔧 :wrench: 扳手
🐛 :bug: 虫子
🎉 :tada: 庆祝

B.3 自然与天气

Emoji 代码 说明
☀️ :sunny: 晴天
🌧️ :rain: 下雨
❄️ :snowflake: 雪花
🌈 :rainbow: 彩虹
🌍 :earth_africa: 地球
🌙 :moon: 月亮
🌸 :cherry_blossom: 樱花
🍀 :four_leaf_clover: 四叶草

附录 C:LaTeX 数学符号速查

C.1 希腊字母

小写 语法 大写 语法
α \alpha A A
β \beta B B
γ \gamma Γ \Gamma
δ \delta Δ \Delta
ε \epsilon E E
ζ \zeta Z Z
η \eta H H
θ \theta Θ \Theta
ι \iota I I
κ \kappa K K
λ \lambda Λ \Lambda
μ \mu M M
ν \nu N N
ξ \xi Ξ \Xi
π \pi Π \Pi
ρ \rho P P
σ \sigma Σ \Sigma
τ \tau T T
φ \phi Φ \Phi
χ \chi X X
ψ \psi Ψ \Psi
ω \omega Ω \Omega

C.2 运算符

符号 语法 说明
+ +
-
× \times
÷ \div
± \pm 正负
\mp 负正
· \cdot 点乘
\circ 圆圈运算
\oplus 直和
\otimes 张量积

C.3 关系符

符号 语法 说明
= = 等于
\neq 不等于
< < 小于
> > 大于
\leq 小于等于
\geq 大于等于
\approx 约等于
\equiv 恒等于
\sim 相似
\propto 正比于
\in 属于
\notin 不属于
\subset 真子集
\supset 真超集
\subseteq 子集
\supseteq 超集
\cup 并集
\cap 交集
\emptyset 空集
\forall 任意
\exists 存在

C.4 箭头

符号 语法 说明
\leftarrow 左箭头
\rightarrow 右箭头
\leftrightarrow 左右箭头
\Leftarrow 双线左箭头
\Rightarrow 双线右箭头
\Leftrightarrow 双线左右箭头
\uparrow 上箭头
\downarrow 下箭头
\mapsto 映射到
\longrightarrow 长右箭头

C.5 求和/积分/极限

符号 语法 说明
\sum 求和
\prod 求积
\int 积分
\iint 二重积分
\iiint 三重积分
\oint 曲线积分
\partial 偏导数
\infty 无穷
lim \lim 极限
lim sup \limsup 上极限
lim inf \liminf 下极限

C.6 函数

符号 语法
sin \sin
cos \cos
tan \tan
log \log
ln \ln
exp \exp
max \max
min \min
sup \sup
inf \inf
det \det
dim \dim
gcd \gcd
arg \arg

C.7 其他符号

符号 语法 说明
\sqrt{x} 根号
√[n]{x} \sqrt[n]{x} n 次根号
\ldots 底部省略号
\cdots 中部省略号
\vdots 垂直省略号
\ddots 对角省略号
\hbar 约化普朗克常数
\ell 手写体 l
\Re 实部
\Im 虚部
\aleph 阿列夫
\nabla 梯度算子

C.8 格式化

语法 效果 说明
\frac{a}{b} a/b 分数
\sqrt{x} √x 根号
\overline{x} 上划线
\underline{x} 下划线
\hat{x} 帽子
\vec{x} x⃗ 向量箭头
\dot{x} 一阶导数点
\ddot{x} 二阶导数点
\tilde{x} 波浪号
\bar{x} 横线
\widehat{xy} x̂ŷ 宽帽子
\widetilde{xy} x̃ỹ 宽波浪号
\overset{a}{b} b 上方放 a 上方叠加
\underset{a}{b} b 下方放 a 下方叠加
\binom{n}{k} C(n,k) 二项式系数

附录 D:Mermaid 图表类型速查

D.1 支持的图表类型

关键字 图表类型 版本
graph / flowchart 流程图 所有版本
sequenceDiagram 时序图 所有版本
classDiagram 类图 所有版本
stateDiagram / stateDiagram-v2 状态图 所有版本
erDiagram ER 图 8.x+
gantt 甘特图 所有版本
pie 饼图 8.x+
journey 用户旅程图 8.x+
gitGraph Git 图 9.x+
mindmap 思维导图 9.x+
timeline 时间线 9.x+
quadrantChart 象限图 9.x+
requirementDiagram 需求图 9.x+
C4Context / C4Container / C4Deployment C4 架构图 9.x+
sankey 桑基图 10.x+
block 块图 10.x+
xychart XY 图表 10.x+

D.2 甘特图状态关键字

关键字 说明
active 当前活跃
done 已完成
crit 关键路径

D.3 流程图方向关键字

关键字 说明
TB Top → Bottom(上到下)
TD Top → Down(上到下)
BT Bottom → Top(下到上)
LR Left → Right(左到右)
RL Right → Left(右到左)

D.4 时序图激活/停用

sequenceDiagram participant A participant B A->>B: 请求 activate B B-->>A: 响应 deactivate B

简写方式:

sequenceDiagram A->>+B: 请求(激活 B) B-->>-A: 响应(停用 B)

D.5 时序图循环/条件/并行

sequenceDiagram loop 每分钟 A->>B: 心跳检测 end alt 成功 B-->>A: 响应成功 else 失败 B-->>A: 响应失败 end par 并行操作 A->>C: 操作1 and A->>D: 操作2 end

变更日志

版本 日期 作者 变更内容
v1.0 2026-05-26 Cline 初始版本,包含完整 Markdown 语法大全

提示:本文档力求最全面,但 Markdown 语法在不同平台和编辑器中可能存在差异。如需特定平台的支持细节,请查阅对应平台的官方文档。


  1. 这是第一个脚注。 

  2. 这是第二个脚注的内容。脚注可以很长,
    续行需要缩进。 

  3. 命名脚注的内容。 

  4. 这是一个命名脚注。 

EnhancedMarkdown:为 Typecho 打造的增强版 Markdown 解析器

用一篇文章,解锁 Typecho 博客的 Markdown 全部潜力。

这篇文章本身就是用 EnhancedMarkdown 的全部语法写成的——你看到的每一种排版效果,都是插件的实时渲染。

为什么需要这个插件?

Typecho 默认使用 HyperDown 作为 Markdown 解析器,在日常写作中够用,但当你需要更丰富的排版能力时,它的局限性就显现出来了:

  • 不支持脚注、定义列表、缩写词等 Markdown Extra 语法 → 现在支持了
  • GFM 表格对齐等能力缺失 → 完整 GFM 支持
  • 正则后处理导致占位符冲突和渲染异常 → 彻底消除

ℹ️ 核心思路

EnhancedMarkdown 的解决思路很直接——完全替换默认解析器,而非在其基础上打补丁。基于 Parsedown + ParsedownExtra 引擎,从根本上解决问题,同时大幅扩展语法能力。

插件概览

项目 说明
当前版本 v3.9.1
解析引擎 Parsedown + ParsedownExtra
工作方式 完全替换系统默认 Markdown 解析器
最低要求 Typecho(支持命名空间插件机制的版本)
许可证 BSD License

演进历程

插件的开发经历了几次关键迭代,每一次都在解决真实的使用问题:

timeline title EnhancedMarkdown 版本演进 section v2.0 起步 基于 HyperDown 扩展 : 正则后处理方式 section v3.0 重构 切换 Parsedown 引擎 : 原生语法扩展 section v3.2 完善 lang- 前缀兼容 : 高亮插件适配 section v3.3 增强 KaTeX 数学公式 : Mermaid 图表 section v3.4 优化 按需加载机制 : 零资源浪费 section v3.4.2 修复 容器内容渲染修复 : 优先级冲突修正 section v3.5.0 增强 HTML块内MD解析 : 代码块标题 : 容器方括号语法 section v3.5.1 修正 纯HTML内容误编码修复 : Markdown语法检测 section v3.5.2 兼容性 标题ID Slug格式 : 脚注CSS样式 section v3.5.3 修正 PHP 8.2+兼容性 : GFM换行修复 section v3.6.0 新增 Prism.js 语法高亮 : 代码块着色 section v3.7.0 重构 代码块暗色主题 : 复制按钮 : 统一包裹 section v3.8.0 增强 KaTeX/Mermaid CDN : 资源来源选择 section v3.8.1 修正 Prism .token.tag : 主题样式污染修复 section v3.8.2 修正 Prism Autoloader冲突 : 全部语言高亮修复 section v3.9.0 交互 Mermaid图表缩放 : 拖拽平移 : 还原按钮 section v3.9.1 修正 图片尺寸语法修复 : 空格分隔兼容

v2.0 — 起步阶段(基于 HyperDown 扩展)

最初的实现方式是在 HyperDown 解析结果上做正则后处理——用 str_replace 替换占位符来扩展语法。这种方式简单直接,但随着扩展语法增多,占位符冲突导致的显示故障越来越频繁。

v3.0 — 重大重构(切换 Parsedown 引擎)

这是最关键的一次变更。将整个解析引擎从 HyperDown 切换为 Parsedown + ParsedownExtra,扩展方式也从正则后处理改为 Parsedown 原生的 InlineTypes / BlockTypes 注册机制:

  • 彻底消除占位符冲突:不再有字符串替换带来的副作用
  • 原生语法扩展:通过注册自定义解析器实现新语法,与标准语法和平共处
  • 获得 Markdown Extra 支持:脚注、定义列表、缩写词开箱即用

💡 技术细节

Parsedown 使用 BlockTypesInlineTypes 数组注册自定义解析器。例如,:::type 容器语法通过将 Container 注册到 : 字符触发;^text^ 上标通过将 Superscript 注册到 ^ 字符触发。
优先级很关键:同一个字符可以注册多个处理器,Parsedown 按数组顺序依次尝试。: 字符上同时注册了 Table、DefinitionList 和 Container。v3.4.2 使用 array_unshift 将 Container 提升为最高优先级,避免 DefinitionList 在容器前紧挨段落时错误拦截 :::type 行。

v3.2 — 细节完善

修正了代码语言标识的兼容性问题——将 language-php 风格的 class 名转换为 Typecho 约定的 lang-php 前缀,确保 Prism.js、Highlight.js 等语法高亮插件正常工作。

v3.3 — 公式与图表

新增两大重量级功能:

  • 数学公式(KaTeX 渲染):支持 \(...\) 行内公式和 $\(...\)$ 块级公式
  • Mermaid 图表:支持流程图、时序图、甘特图等,用 ```mermaid 代码块书写

v3.4 — 性能优化 + 修复

⚠️ 性能优化要点

引入按需加载机制——KaTeX(约 1.5MB)和 Mermaid(约 3.2MB)仅在实际包含公式/图表的页面才加载。纯文字文章页面零额外资源开销。同时修复了公式定界符缺失和 Mermaid 数组路径错误两个 Bug。

v3.4.2 — 容器语法关键修复

修复了两个影响 :::type 容器语法的 Bug:

  • Bug #1:容器内容为空blockContainer() 初始化时设置了空 text 属性,Parsedown 渲染时 isset(\(Element['text'])` 优先于 `rawHtml`,导致容器内容永远不显示。修复:`unset(\)Block['element']['text'])
  • Bug #2:容器被定义列表拦截 — ParsedownExtra 的 DefinitionList 注册在 : 字符上,当 :::info 前紧挨段落时会错误拦截。修复:使用 array_unshift 将 Container 注册为 : 字符的最高优先级处理器

v3.5.0 — 解析增强

本次更新带来了 3 项解析增强:

  • HTML 块内 Markdown 解析:新增 blockMarkupComplete() 方法,对白名单标签(<center><details><div> 等)自动解析内部 Markdown。使用白名单机制确保 <script>/<style>/<pre> 等标签不受影响
  • 代码块标题支持:新增 blockFencedCode() 方法提取 title="..." 参数,支持 ```javascript title="示例" 语法显示代码块标题栏
  • 容器方括号语法:扩展 blockContainer() 正则,支持 :::note[自定义标题] Docusaurus Admonition 风格语法,向后兼容 :::note 标题 空格语法

v3.5.1 — 纯 HTML 内容误编码修正

v3.5.0 的 blockMarkupComplete() 引入了一个回归问题:当 <div> 等白名单标签内部为纯 HTML(不含 Markdown 语法)时,text() 的递归解析会将 HTML 标签转义为实体编码并错误包裹在 <pre><code> 中。

🚫 回归问题示例

<div style="color:#fff">标题</div><audio>...</audio> 会被错误渲染为:
<pre><code><div style="color:#fff">标题</div>...</code></pre>

修复方案:新增 containsMarkdownSyntax() 启发式检测方法——使用 strip_tags() 去除 HTML 标签后,通过正则检测纯文本中是否包含 Markdown 语法标记(**`[$ 等)。纯 HTML 内容跳过 text() 调用,直接保留原始输出。

v3.5.2 — 主题兼容性修复

本次更新聚焦于与主题的兼容性,修复了两个问题:

  • 标题 ID 改用 Slug 格式:旧版使用 toc-0toc-1 等数字 ID,依赖解析顺序且不可预测,主题 JS 无法构建有效锚点链接。v3.5.2 新增 generateSlug() 方法,将标题文本转为可读的 slug 格式 ID(如 hello-world为什么需要这个插件),重复标题自动追加 -2-3 后缀。同时新增配置项,可选择 Slug 格式或保留旧版数字格式
  • 脚注样式补全:ParsedownExtra 生成 .footnotes.footnote-ref.footnote-backref 等元素但无样式,脚注内容显示混乱。新增完整的脚注 CSS:分割线、字号缩小、有序列表间距、上标定位、回链样式,确保在任何主题下都有良好的视觉呈现

v3.5.3 — PHP 8.2+ 兼容性修复

修复了一个属性大小写错误导致的 PHP 8.2+ 兼容性问题:

  • BreaksEnabled 大小写不一致:Parser 构造函数中使用 \(this->BreaksEnabled = true`(大写 B),而父类 Parsedown 声明的属性为 `\)breaksEnabled(小写 b)。PHP 属性名大小写敏感,导致在 PHP 8.2+ 上触发 Deprecated: Creation of dynamic property 弃用警告,且 GFM 自动换行功能实际未生效(赋值到了错误的动态属性)
  • 修复方式:改用 Parsedown 提供的公共 setter 方法 $this->setBreaksEnabled(true),所有 PHP 版本均兼容

⚠️ PHP 8.2+ 注意

如果你的服务器运行 PHP 8.2 或更高版本,旧版插件会在每次解析时产生弃用警告。v3.5.3 彻底解决了此问题。同时,GFM 换行功能(文本中的单个换行符渲染为 <br>)现在能正确生效。

v3.6.0 — 代码语法高亮(Prism.js)

新增内置代码语法高亮功能,基于 Prism.js 前端渲染引擎:

  • Prism.js 集成:自动为 ```language 围栏代码块添加语法着色,下载版已包含 200+ 编程语言支持
  • 按需加载:沿用 KaTeX/Mermaid 的按需加载模式——仅当代码块存在时才加载 Prism.js CSS/JS 资源,无代码块的页面零开销
  • 配置开关:插件设置新增「代码语法高亮(Prism.js)」选项,默认启用

v3.7.0 — 代码块暗色主题重构

对代码块的视觉呈现进行了全面重构,从浅色主题切换为暗色主题,并统一了所有代码块的 HTML 结构:

  • 暗色主题:代码块背景从 #f6f8fa 浅灰切换为 #1e1e1e 深色,文字颜色为 #d4d4d4,顶栏为 #2d2d2d,整体视觉更专业
  • 统一包裹结构:所有非 Mermaid 代码块(无论有无标题)统一包裹为 <div class="code-block-wrapper"> 容器,内含顶栏(code-top-bar)和代码区(actual-code-content
  • 复制按钮:顶栏右侧新增「语言名 | 复制」按钮,点击复制代码内容到剪贴板,显示"已复制"反馈 2 秒后恢复
  • Prism.js 适配prism.css 全面适配暗色主题——移除 pre 的 border/box-shadow/margin(由 wrapper 控制),背景设为 transparent,隐藏 Prism.js Toolbar 插件

⚠️ 结构变更说明

v3.7.0 之前的版本中,有标题的代码块和无标题的代码块使用不同的 HTML 结构。v3.7.0 统一为单一结构,简化了 CSS 维护和功能扩展。行号插件(line-numbers 类)也适配了新的 actual-code-content 选择器。

v3.8.0 — CDN 资源来源选择

增强了 KaTeX 和 Mermaid 的资源加载灵活性,支持在本地文件和 CDN 之间自由切换:

  • 资源来源选择:插件设置新增「KaTeX 资源来源」和「Mermaid 资源来源」配置项,可选「插件本地文件」或「CDN 网址」
  • CDN 基础路径:选择 CDN 模式后,可自定义 CDN 目录路径(如 https://cdn.jsdelivr.net/npm/katex@0.17.0/dist/),插件自动拼接具体文件名
  • 安全回退:CDN 基础路径为空时自动回退到本地文件,避免生成无效 URL
  • 新增 getResourceUrl() 方法:统一处理本地/CDN 路径逻辑,减少代码重复

💡 CDN 默认地址

插件预设了 jsDelivr CDN 的默认地址:

  • KaTeX:https://cdn.jsdelivr.net/npm/katex@0.17.0/dist/
  • Mermaid:https://cdn.jsdelivr.net/npm/mermaid@11.15.0/dist/
    使用 CDN 模式可减轻服务器带宽压力,但需要外部网络请求。默认使用本地文件,升级后行为不变。

v3.8.1 — Prism .token.tag 主题样式污染修复

修复了博客主题的 .tag CSS 类污染 Prism.js 代码高亮的问题:

  • 问题:博客主题为标签云定义了 .tag 类样式(padding/background-color/border-radius),Prism.js 在 PHP/markup 类语言中为 HTML 标签 token 生成 <span class="token tag">CSS 选择器 .tag 命中了 token 元素,导致代码块内出现白色背景块
  • 修复:在 prism.css 中新增 .token.tag 覆盖规则,使用 !important 重置布局属性(background/border/padding/margin/box-shadow/border-radius/display/font-size/line-height),保留 Prism 主题定义的 token 颜色

v3.8.2 — 代码语法高亮全部语言修复

修复了代码语法高亮仅少数语言生效的问题:

  • 问题prism.js 中同时打包了全部语言语法定义(300+种)和 Autoloader 插件。Autoloader 的设计目的是从外部服务器动态加载语言文件,但本地不存在外部语言文件。Autoloader 会拦截高亮流程,对部分语言尝试 AJAX 加载外部文件 → 加载失败 → 高亮失败。仅少数核心语言(如 markupcssjavascript)因注册优先级高能绕过 Autoloader 正常工作
  • 修复:从 prism.js 中移除 Autoloader 插件,保留全部 300+ 种语言语法定义。所有语言高亮由内联语法定义直接处理,无需外部文件加载
  • 影响范围:仅替换 prism/prism.js,不修改其他文件,向后完全兼容

v3.9.1 — 图片尺寸语法修复

修复了图片尺寸语法 ![alt](url =WxH) 在 URL 与 =WxH 之间存在空格时无法解析的问题:

  • 问题![alt](url =300x200) 因空格导致父类 Parsedown 的 URL 正则匹配失败,整张图片不被渲染。仅 ![alt](url=300x200) 无空格格式可正常工作
  • 修复:重写 inlineImage() 方法为预处理模式——在调用父类解析前先从文本中剥离 =WxH 参数,使父类能正常匹配标准 Markdown 图片语法,再在返回结果中注入 width/height 属性
  • 影响范围:仅修改 Parser::inlineImage() 方法,不影响无尺寸参数的普通图片

v3.9.0 — Mermaid 图表框内缩放交互

为 Mermaid 图表新增了框内缩放、平移、还原交互功能:

  • 鼠标滚轮缩放:在图表框内滚动鼠标滚轮即可自由缩放(范围 0.05x~20x),缩放中心跟随鼠标光标位置,想看哪里就滚到哪里
  • 鼠标拖拽平移:按住鼠标左键拖拽即可平移图表内容,1:1 跟随鼠标移动,手感自然流畅
  • 移动端支持:单指拖拽平移 + 双指捏合缩放,移动端也能自由查看大型图表细节
  • 还原按钮:右上角常驻显示循环箭头图标按钮,点击后平滑过渡回初始视角——防止缩放/平移后"找不到图"
  • 零视觉影响:不改变图表的渲染大小和外观,仅在框内提供交互能力,wrapper 完全透明无边框

💡 使用方式

图表渲染完成后,直接在图表区域内使用鼠标操作即可。右上角的 🔄 按钮随时可以一键回到初始状态。大型流程图、复杂时序图都能轻松查看了。


功能全览

标准 Markdown 增强

完整的 GFM(GitHub Flavored Markdown)支持:

删除线

这段文字已经被删除了,但你仍然可以看到它。

GFM 表格

支持左对齐、居中、右对齐:

左对齐 居中对齐 右对齐
内容 A 内容 B 100
内容 C 内容 D 200

任务列表

  • 安装 Typecho
  • 启用 EnhancedMarkdown 插件
  • 写一篇使用增强语法的文章
  • 分享给朋友

Markdown Extra 语法

这些是标准 Markdown 不支持、但对技术写作非常有用的语法。

脚注5

这是一段包含脚注引用的文字6,脚注会自动显示在文章末尾,点击可以跳转。

定义列表

Typecho
一个轻量级的博客引擎,以简洁高效著称
Markdown
一种轻量级标记语言,让你用纯文本格式编写文档
EnhancedMarkdown
Typecho 的增强版 Markdown 解析器插件

缩写词

在技术文章中,HTMLCSSAPI 这些缩写词很常见。鼠标悬停即可看到完整含义。

自定义扩展语法

以下是插件独创的语法扩展,标准 Markdown 不支持。

TOC 自动目录

你已经在文章开头看到了——本篇文章顶部的目录就是用 [toc] 标记自动生成的。它会自动扫描所有标题,生成带锚点链接的嵌套目录树。

容器/提示块

:::type 语法创建彩色提示框。下面展示所有 8 种类型:

💡 小技巧

这是一个提示信息(tip),适合用来分享技巧和最佳实践。

ℹ️ 信息

这是一个信息说明块(info),适合用来补充背景知识。

⚠️ 注意

这是一个警告信息(warning),适合用来提醒读者注意潜在问题。

🚫 危险

这是一个危险警示(danger),适合用来标记可能导致数据丢失等严重后果的操作。

📝 备注

这是一个备注块(note),适合用来记录补充说明。

✅ 成功

这是一个成功状态块(success),适合用来确认操作已正确完成。

📋 详细信息

这是一个详细信息块(details),适合用来收纳较长的补充内容,保持文章主体简洁。

💬 引用

这是一个引用块(quote),适合用来展示名人名言或重要观点。

📝 🆕 方括号语法

v3.5.0 新增支持 Docusaurus Admonition 风格的方括号语法::::note[自定义标题]。方括号内的标题优先于空格标题,向后完全兼容。你现在看到的这个提示框就是用方括号语法创建的!

上标 / 下标 / 高亮

物理学中最著名的方程:E = mc2,其中 c 代表光速。

水的化学式是 H~2~O,硫酸是 H~2~SO~4~。

在学习过程中,标记重点内容 是提高效率的好方法。

等等,你注意到了吗?上面这行文字中,2 被渲染成了上标,~2~ 被渲染成了下标,标记重点内容 被高亮显示了。

图片尺寸

![图片描述](image.png =300x200)   → 宽 300px,高 200px
![图片描述](image.png =300x)      → 宽 300px,高度自适应
![图片描述](image.png =x200)      → 高度 200px,宽度自适应

数学公式(KaTeX)

支持 LaTeX 语法,使用 KaTeX 前端渲染,速度远优于 MathJax。

行内公式

质能方程 \(E = mc^2\) 是物理学最著名的公式之一。勾股定理 \(a^2 + b^2 = c^2\) 是几何学的基础。欧拉公式 \(e^{i\pi} + 1 = 0\) 被誉为数学中最美的等式。

块级公式

\[\sum_{i=1}^{n} x_i^2 = x_1^2 + x_2^2 + \cdots + x_n^2\]

\[\begin{aligned} &\mathcal{F}(x) = \lim_{n\to\infty} \sum_{k=0}^{n} \binom{n}{k} \left( \int_{\partial\Omega} \frac{\partial^{\alpha+\beta}}{\partial x^{\alpha}\partial y^{\beta}} \left[ e^{-\zeta \cdot \nabla} \Psi(\mathbf{r},t) \right] \cdot \mathbf{n} \, dS \right)^{k} \\ &\qquad \times \det\begin{pmatrix} \frac{\partial f_1}{\partial x_1} & \frac{\partial f_1}{\partial x_2} & \cdots & \frac{\partial f_1}{\partial x_n} \\ \frac{\partial f_2}{\partial x_1} & \frac{\partial f_2}{\partial x_2} & \cdots & \frac{\partial f_2}{\partial x_n} \\ \vdots & \vdots & \ddots & \vdots \\ \frac{\partial f_n}{\partial x_1} & \frac{\partial f_n}{\partial x_2} & \cdots & \frac{\partial f_n}{\partial x_n} \end{pmatrix} \\ &\qquad \times \left[ \prod_{i=1}^{\infty} \left(1 + \frac{z_i^2}{\lambda_i}\right)^{-\gamma_i} \right] \cdot \exp\left\{-\iiint_{\mathbb{R}^3} \frac{|\xi|^2}{2\sigma^2} \cdot \frac{1}{\sqrt{2\pi}} e^{-\frac{x^2+y^2+z^2}{2}} \, dV\right\} \\ &\qquad \times \begin{cases} \displaystyle \frac{\Gamma\left(\frac{p}{2}\right) \cdot \zeta(3)}{\pi^{p/2} \cdot \mathrm{B}(a,b)} & \text{if } p \equiv 1 \pmod{2} \\[12pt] \displaystyle \frac{\mathrm{Li}_2\left(e^{i\theta}\right) - \mathrm{Li}_2\left(e^{-i\theta}\right)}{2i\sin\theta} & \text{if } p \equiv 0 \pmod{2} \end{cases} \\ &\qquad \times \left. \frac{d^{m}}{dt^{m}} \right|_{t=0} \left[ \operatorname{tr}\left( \mathbf{A}^{-1}(t) \cdot \frac{d\mathbf{A}}{dt} \right) \right] \cdot \oint_{\gamma} \frac{\omega(z)}{z-z_0} \, dz \\ &\qquad \times \langle \psi_1 | \left[ \hat{H}, \hat{O} \right] | \psi_2 \rangle \cdot \mathbf{A}^{\top} \xrightarrow{\text{a.s.}} \mathcal{N}(\mu,\Sigma^2) \\ &\qquad \times \sum_{n=0}^{\infty} \frac{(-1)^n}{(2n+1)!} \left( \frac{\partial}{\partial \theta} \right)^{2n+1} \left. \left( \theta \cot\theta \right) \right|_{\theta=0} \end{aligned}\]

💡 转义支持

如果你只是想写一个美元符号,比如 \$100,使用反斜杠转义即可,不会被识别为公式定界符。

Mermaid 图表

用文本描述图表,前端自动渲染。文章中的图表不再是截图,而是可维护的文本代码。

交互提示:以下图表均可使用鼠标滚轮缩放、拖拽平移查看细节,右上角 🔄 按钮可一键还原。

流程图

graph TD A[开始写作] --> B{选择内容类型} B -->|技术文章| C[使用代码块] B -->|数学笔记| D[使用 KaTeX 公式] B -->|项目文档| E[使用 Mermaid 图表] C --> F[启用语法高亮] D --> G[编写 LaTeX 公式] E --> H[绘制流程图] F --> I[发布文章] G --> I H --> I

时序图

sequenceDiagram participant 用户 participant 浏览器 participant Typecho participant 插件 用户->>浏览器: 编写 Markdown 文章 浏览器->>Typecho: 提交文章内容 Typecho->>插件: 触发 markdown Hook 插件->>插件: Parsedown 解析 + 扩展语法 插件-->>Typecho: 返回渲染后 HTML Typecho-->>浏览器: 输出完整页面 浏览器->>浏览器: KaTeX/Mermaid 前端渲染 浏览er-->>用户: 展示最终效果

甘特图

gantt title 插件开发计划 dateFormat YYYY-MM-DD section 基础功能 解析引擎重构 :done, a1, 2026-05-26, 1d GFM 语法支持 :done, a2, after a1, 1d section 增强功能 数学公式支持 :done, b1, after a2, 1d Mermaid 图表 :done, b2, after b1, 1d section 优化 按需加载 :done, c1, after b2, 1d Bug 修复 :done, c2, after c1, 1d

性能优化

插件在设计上追求零代价——不用的时候不产生任何开销。

按需加载机制

不是简单地判断"功能是否开启",而是扫描页面实际内容:

  1. 解析 Markdown 时检测输出 HTML 中是否包含 .math-block / .math-inline / .mermaid 元素
  2. 设置静态标志 \(hasMath` / `\)hasMermaid
  3. CSS 注入(<head>)和 JS 注入(</body> 前)根据标志决定是否加载

✅ 性能对比

页面类型 优化前 优化后
纯文字文章 ~4.5MB 0KB
含公式文章 ~4.5MB ~300KB
含图表文章 ~4.5MB ~3.2MB
:::

字体精简

KaTeX 字体文件从 TTF + WOFF + WOFF2 三种格式精简为仅 WOFF2:

  • TTF 格式(~600KB) → 已移除
  • WOFF 格式(~500KB) → 已移除
  • WOFF2 格式(300KB) → 唯一保留
    浏览器会优先加载 WOFF2 格式,自动跳过不存在的格式引用,无需修改 CSS。

    技术实现(开发者视角)

    📝 面向开发者

    以下内容面向有 Typecho 插件开发经验的读者。如果你只是想使用插件,可以跳过这部分。

Hook 注册

插件通过 4 个 Hook 点接入 Typecho:

// ① 替换文章 Markdown 解析器
\Typecho\Plugin::factory('Widget\Base\Contents')->markdown = [__CLASS__, 'parse'];

// ② 替换评论 Markdown 解析器
\Typecho\Plugin::factory('Widget\Base\Comments')->markdown = [__CLASS__, 'parse'];

// ③ 注入 CSS 到 <head>
\Typecho\Plugin::factory('Widget\Archive')->header = [__CLASS__, 'injectStyles'];

// ④ 注入 JS 到 </body> 前
\Typecho\Plugin::factory('Widget\Archive')->footer = [__CLASS__, 'injectScripts'];

自定义语法扩展

基于 Parsedown 的扩展机制,注册自定义的行内元素和块级元素:

// 注册容器块语法(:::type 触发)
$this->BlockTypes[':'][] = 'Container';

// 注册上标语法(^ 触发)
$this->InlineTypes['^'] = ['Superscript'];

// 注册高亮语法(= 触发)
$this->InlineTypes['='] = ['Highlight'];

// 扩展扫描字符列表(Parsedown 只扫描此列表中的字符)
$this->inlineMarkerList .= '^=';

数学公式保护机制

数学公式中的 _*\ 等字符会被 Parsedown 误解析。解决方案是预处理-后处理两阶段

  1. 预处理:在 Parsedown 解析前,用 \x00 占位符替换公式内容
  2. Parsedown 解析:占位符不包含特殊字符,不会被误解析
  3. 后处理:将占位符替换为带有 KaTeX 定界符的 HTML 标签
// 块级公式占位符 → HTML(使用 \[...\] 定界符)
\(replacement = '<div class="math-block">\[' . \)escapedFormula . '\]</div>';

// 行内公式占位符 → HTML(使用 \(...\) 定界符)
\(replacement = '<span class="math-inline">\(' . \)escapedFormula . '\)</span>';

容器嵌套的脚注保护

🚫 技术陷阱

容器内容通过 $this->text() 递归解析,但 Parsedown 的 text() 方法内部会执行 DefinitionData = array()这会清空容器外已收集的脚注定义!必须使用保存/恢复机制来防止数据丢失。

// ① 保存当前定义数据(脚注、引用、缩写)
\(savedDefinitionData = \)this->DefinitionData;

// ② 递归解析容器内容(会触发 DefinitionData 重置)
\(contentHtml = \)this->text($Block['content']);

// ③ 合并子解析产生的定义回主数据
\(this->DefinitionData = \)savedDefinitionData;

安装与配置

安装步骤

  • 步骤一:将 EnhancedMarkdown 文件夹上传至 usr/plugins/ 目录
  • 步骤二:登录 Typecho 后台 → 插件管理 → 启用 EnhancedMarkdown
  • 步骤三:在插件设置中按需开关各项功能

配置项一览

所有 15 项配置均可独立设置,语法功能默认全部启用:

# 功能 语法示例 默认
1 TOC 目录 [toc] 启用
2 任务列表 - [x] / - [ ] 启用
3 上标 ^text^ 启用
4 下标 ~text~ 启用
5 高亮标记 ==text== 启用
6 容器/提示块 :::type ... ::: 启用
7 图片尺寸 ![alt](url =WxH) 启用
8 数学公式 \(...\) / $\(...\)$ 启用
9 Mermaid 图表 ```mermaid 启用
10 代码语法高亮 ```language 启用
11 标题锚点 ID 格式 Slug 格式 / 数字格式 Slug 格式
12 KaTeX 资源来源 本地 / CDN 本地
13 KaTeX CDN 路径 自定义目录 URL jsDelivr
14 Mermaid 资源来源 本地 / CDN 本地
15 Mermaid CDN 路径 自定义目录 URL jsDelivr

文件结构

EnhancedMarkdown/
├── Plugin.php          # 插件主入口(Hook 注册、配置面板、CSS/JS 注入)
├── Parser.php          # 增强解析器(基于 Parsedown 扩展)
├── Parsedown.php       # Parsedown 核心引擎
├── ParsedownExtra.php  # Parsedown Extra 扩展
├── katex/              # KaTeX 数学公式渲染库
│   ├── katex.min.js
│   ├── katex.min.css
│   ├── auto-render.min.js
│   └── fonts/          # WOFF2 字体(仅 300KB)
├── mermaid.min.js      # Mermaid 图表渲染库
├── prism/              # Prism.js 代码语法高亮库
│   ├── prism.js        # 核心 + 全部语言支持
│   └── prism.css       # 主题样式
└── README.md

总结

💬 一句话总结

EnhancedMarkdown 的设计目标很明确:让 Typecho 的 Markdown 写作体验不输于任何现代写作平台

通过完全替换解析引擎而非打补丁的方式,从根本上保证了语法的正确性和扩展的可靠性。回到这篇文章本身——你所看到的目录、提示框、高亮、上下标、数学公式、流程图、甘特图、脚注、任务列表、定义列表……全部来自插件的实际渲染。

如果你在 Typecho 博客中需要用到这些丰富排版能力,不妨试试这个插件。

公司名称 总部所在地 成立年份 员工人数(万) 年营收(亿美元) 净利润(亿美元) 研发投入(亿美元) 核心业务 现任CEO 市值(亿美元) 公司简介
Apple 美国库比蒂诺 1976 16.4 3833 970 299 iPhone、Mac、服务 Tim Cook 33500 全球最具价值的科技公司之一,以iPhone、Mac、iPad等硬件产品为核心,构建了iOS、macOS封闭生态系统,并通过App Store、Apple Music、iCloud等服务持续提升用户粘性与利润空间,品牌溢价能力行业领先。
Microsoft 美国雷德蒙德 1975 22.1 2451 881 272 Windows、Azure、Office Satya Nadella 31200 全球软件与云计算巨头,Windows操作系统长期垄断桌面市场,Office办公套件深入人心。近年来全力转型云服务,Azure增长迅猛,并通过OpenAI合作布局AI,企业级市场地位稳固,盈利能力持续增强。
Alphabet 美国山景城 1998 18.3 3074 738 454 搜索、YouTube、云 Sundar Pichai 22800 Google母公司,全球搜索引擎绝对霸主,搜索广告贡献主要收入。旗下YouTube是全球最大视频平台,Android系统主导移动生态。同时大力投入Waymo自动驾驶、量子计算等前沿技术,研发投入位居行业前列。
Amazon 美国西雅图 1994 152.5 5748 304 732 电商、AWS、广告 Andy Jassy 20500 全球最大电商平台,从网上书店起步发展为覆盖零售、物流、云计算的商业帝国。AWS是全球云服务市场领导者,贡献大部分利润。同时布局广告、流媒体、AI(Alexa)等领域,员工规模庞大,业务多元且协同性强。
NVIDIA 美国圣克拉拉 1993 2.96 1305 729 176 GPU、AI芯片 Jensen Huang 28700 全球图形处理器与AI芯片龙头,最初以游戏显卡闻名。随着大模型浪潮爆发,其GPU成为AI训练与推理的事实标准,数据中心业务爆发式增长,市值一度跃居全球前列,是本轮AI革命最核心的硬件受益者。
Meta 美国门洛帕克 2004 6.73 1349 391 465 Facebook、Instagram、元宇宙 Mark Zuckerberg 14600 全球最大社交网络公司,旗下Facebook、Instagram、WhatsApp、Messenger覆盖数十亿用户,广告收入为主要来源。近年来重金投入元宇宙(Reality Labs)与AI,短期亏损巨大,但长期押注下一代计算平台与社交形态。
Tesla 美国奥斯汀 2003 14.0 968 150 134 电动车、储能、自动驾驶 Elon Musk 7800 全球新能源汽车领军者,以纯电驱动、智能驾驶和OTA升级重新定义汽车产品。Model 3/Y等车型畅销全球,同时布局储能(Powerwall/Megapack)、太阳能及人形机器人Optimus,品牌影响力与创始人光环极强。
TSMC 中国台湾新竹 1987 7.35 900 344 144 晶圆代工 魏哲家 9200 全球最大专业集成电路制造服务公司,晶圆代工市场份额遥遥领先。掌握最先进制程工艺(3nm/2nm),为Apple、NVIDIA、AMD、高通等几乎所有顶级芯片设计公司代工,是全球半导体产业链中不可替代的关键环节。
Samsung 韩国水原 1969 27.0 2120 223 165 半导体、手机、显示 李在镕 3800 韩国最大跨国企业集团,业务覆盖电子、半导体、显示面板、家电、造船等众多领域。三星电子是全球存储芯片龙头,同时也是顶级智能手机厂商,OLED面板供应苹果等客户,产业链垂直整合能力行业罕见。
Tencent 中国深圳 1998 10.8 860 272 98 游戏、社交、云、金融 马化腾 4200 中国最大互联网综合服务提供商之一,微信与QQ构建了庞大的国民级社交生态。游戏业务全球领先(《王者荣耀》《和平精英》),同时布局金融科技、云计算、视频号、广告及大量对外投资,生态渗透力极强。

  1. 这是第一个脚注的内容,演示脚注的基本用法。 

  2. 这是第二个脚注,展示了多个脚注共存的场景。