> For the complete documentation index, see [llms.txt](https://wiki1.yemapt.org/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://wiki1.yemapt.org/newbie/markdown.md).

# Markdown语法

## 背景

Markdown 和 BBCode 都是轻量级标记语言，本站选择 Markdown 作为种子描述、论坛帖子和评论内容的编辑语法，以下是 Markdown 相比 BBCode 的优点：

#### 1. **语法更简洁直观**

* **Markdown**：用简单的符号（如 `#`、`*`、`-`）实现格式，接近自然书写习惯。
  * 标题：`# 标题`
  * 加粗：`**文本**`
  * 列表：`- 项目`
* **BBCode**：依赖标签（如 `[b][/b]`），更像 HTML 的简化版，输入更繁琐。
  * 标题：`[h1]标题[/h1]`
  * 加粗：`[b]文本[/b]`

#### 2. **原生可读性更强**

* **Markdown** 的原始文本无需渲染也能清晰阅读。例如：\
  `**加粗** 和 _斜体_` 直接表达意图。
* **BBCode** 的标签会干扰阅读：\
  `[b]加粗[/b] 和 [i]斜体[/i]`。

#### 3. **跨平台通用性**

* **Markdown** 被广泛支持：GitHub、Notion、VS Code、Stack Overflow、博客工具等。
* **BBCode** 主要局限于传统论坛（如 phpBB、Discourse），应用场景狭窄。

#### 4. **扩展性与灵活性**

* **Markdown**：
  * 支持混合 HTML 实现复杂布局（如表格、图表）。
  * 通过扩展语法（如 GitHub Flavored Markdown）支持任务列表、代码高亮等。
* **BBCode**：功能依赖论坛预设的标签，扩展性差，无法自由定制。

#### 5. **工具生态丰富**

* **Markdown** 有强大的编辑器（Typora、Obsidian）、预览工具、静态网站生成器（Hugo、Jekyll）等。
* **BBCode** 工具链较少，通常依赖论坛内置的编辑器。

#### 6. **移动端友好**

* Markdown 的符号（`*` `#` `-`）在手机键盘上易于输入，而 BBCode 的 `[ ]` 标签需要频繁切换符号面板。

#### 7. **标准化与社区支持**

* Markdown 有 CommonMark 等标准化努力，减少方言差异；而 BBCode 不同论坛的实现可能不一致。
* Markdown 拥有活跃的开源社区，BBCode 逐渐成为“旧时代”产物。

## 语法规范

### 原生语法规范

您可以参考 [这篇教程](https://www.runoob.com/markdown/md-tutorial.html) 学习 Markdown 语法，诚然在markdown中可以使用HTML/CSS/JavaScript语言，但为了网站的健壮性，我们屏蔽了绝大多数HTML/CSS/JavaScript语法，建议您只使用纯粹的 Markdown 语法。

### 扩展支持

由于大部分PT站都构建自PHP，并且都在使用BBCode语言，本站也提供了相当多的 Markdown 扩展语法，用于构建比肩 BBCode 的展示体验。

#### 1. emoji

您可以使用这种语法来编写emoji：

```
:xxxx:
```

例如:smile:

```
:smile:
```

这里是 [emoji码表](https://gist.github.com/rxaviers/7360908) ，你可以参考使用，同时本站的编辑器工具栏中内置了许多emoji快捷方式。

#### 2. 折叠面板

BBCode语法支持折叠面板，本站引入了类似的语法支持：

```markdown
:::collapse{label=这是折叠面板}
这是内容
:::
```

其中label表示折叠面板的标题，:::包裹的内容则是内容。编辑器工具栏中包含了折叠面板的快捷操作。

#### 3. Alert支持

如果想实现带有背景颜色的内容，则可以使用alert语法，其中type表示提示类型，message表示标题，showIcon表示是否展示图标。编辑器工具栏中包含了折叠面板的快捷操作。

```markdown
:::alert{type=error}
这是内容
:::
:::alert{type=warning}
这是内容
:::
:::alert{type=success}
这是内容
:::
:::alert{type=info message=这是标题 showIcon=1}
这是内容
:::

```
