主题
Markdown 支持 - v0.0.1 核心功能
All Writer 完整支持 Markdown 语法,提供原生 Markdown 编辑体验和丰富的扩展功能。
功能特点
📝 完整的 Markdown 语法支持
All Writer 支持标准 Markdown 语法的所有特性:
- 标题:6 级标题,自动生成大纲
- 文本格式:粗体、斜体、删除线、高亮
- 列表:有序列表、无序列表、任务列表
- 链接和图片:支持相对路径和绝对路径
- 代码:行内代码和代码块,支持语法高亮
- 表格:支持对齐和格式化
- 引用:支持嵌套引用
- 数学公式:行内公式和块级公式(KaTeX)
- 图表:Mermaid 流程图、序列图等
🎨 扩展语法
除了标准 Markdown,All Writer 还支持:
- 删除线:
~~文本~~ - 高亮:
==文本== - 注解(外部引用):
[[ref:引用标题]]语法 - HTML 标签:支持部分安全的 HTML 标签
- HTML 注释:支持 HTML 注释语法
- Mermaid 图表:流程图、序列图、甘特图等
- KaTeX 数学公式:完整的 LaTeX 数学语法
⚡ 实时预览
- 编辑时实时查看渲染效果
- 支持编辑模式和预览模式切换
- 大纲面板自动同步更新
基础语法
标题
使用 # 创建标题,标题会自动显示在大纲面板中:
markdown
# 一级标题
## 二级标题
### 三级标题
#### 四级标题
##### 五级标题
###### 六级标题文本格式
markdown
_斜体文本_
**粗体文本**
**_粗斜体文本_**
~~删除的文本~~
==高亮的文本==列表
无序列表
markdown
- 项目 1
- 项目 2
- 子项目 2.1
- 子项目 2.2有序列表
markdown
1. 第一项
2. 第二项
3. 第三项
1. 子项 3.1
2. 子项 3.2任务列表
markdown
- [ ] 未完成任务
- [x] 已完成任务链接和图片
markdown
[链接文本](https://example.com)
代码
行内代码
markdown
使用 `code` 表示行内代码。代码块
支持多种编程语言的语法高亮:
markdown
```javascript
function hello() {
console.log("Hello, World!");
}
```表格
markdown
| 列 1 | 列 2 | 列 3 |
| ------ | ------ | ------ |
| 数据 1 | 数据 2 | 数据 3 |
| 数据 4 | 数据 5 | 数据 6 |支持对齐:
markdown
| 左对齐 | 居中 | 右对齐 |
| :----- | :--: | -----: |
| 左 | 中 | 右 |引用
markdown
> 这是一段引用文本。
>
> 可以包含多个段落。
>
> > 嵌套引用也是支持的。扩展功能
数学公式
行内公式
markdown
这是行内公式:$E = mc^2$块级公式
markdown
$$
\int_{-\infty}^{\infty} e^{-x^2} dx = \sqrt{\pi}
$$图表
Mermaid 流程图
markdown
```mermaid
graph TD
A[开始] --> B{判断}
B -->|是| C[操作1]
B -->|否| D[操作2]
C --> E[结束]
D --> E
```Mermaid 序列图
markdown
```mermaid
sequenceDiagram
participant A as 用户
participant B as 系统
A->>B: 请求
B-->>A: 响应
```HTML 支持
All Writer 支持在 Markdown 中使用部分安全的 HTML 标签。出于安全考虑,所有 HTML 内容都会经过 DOMPurify 清理。
支持的 HTML 标签:
- 文本标签:
<p>,<span>,<div>,<br>,<hr> - 格式标签:
<strong>,<em>,<u>,<s>,<code>,<pre> - 列表标签:
<ul>,<ol>,<li> - 表格标签:
<table>,<thead>,<tbody>,<tr>,<th>,<td> - 链接和图片:
<a>,<img> - 其他:
<details>,<summary>,<blockquote>
示例:
markdown
<div style="color: red;">
这是红色文本
</div>
<details>
<summary>点击展开</summary>
这是折叠的内容。
</details>
<span style="background-color: yellow;">高亮文本</span>注意事项:
- 危险的标签(如
<script>,<iframe>,<object>等)会被自动过滤 style属性中的部分危险样式可能会被清理- 建议优先使用 Markdown 语法,HTML 仅用于 Markdown 无法实现的效果
注解(外部引用)
All Writer 支持在文档中使用外部引用注解,类似于学术论文中的引用标注。注解会自动渲染为带序号的上标,点击可查看引用详情。
语法:
markdown
这是需要标注的内容[[ref:引用标题]]。
这是另一个引用[[ref:另一个引用]]。
相同的引用标题会使用相同的序号[[ref:引用标题]]。功能特点:
- 自动编号:相同标题的引用使用相同序号,按出现顺序自动分配
- 点击查看:点击上标数字可查看引用详情(标题、内容、链接等)
- 项目级别:引用在项目级别管理,可在项目中复用
- 使用统计:自动统计每个引用的使用次数
使用步骤:
- 在右侧面板打开"外部引用"面板
- 创建新的引用(输入标题、内容描述、链接等)
- 在文档中使用
[[ref:引用标题]]语法插入引用 - 引用会自动渲染为带序号的上标(如 [1], [2])
- 点击上标可查看引用详情
示例:
markdown
机器学习是人工智能的一个重要分支[[ref:人工智能概述]]。
深度学习作为机器学习的子领域[[ref:深度学习基础]],近年来取得了突破性进展[[ref:人工智能概述]]。渲染效果:
[[ref:人工智能概述]]→ 显示为 [1][[ref:深度学习基础]]→ 显示为 [2]- 再次使用
[[ref:人工智能概述]]→ 仍然显示为 [1]
HTML 注释
All Writer 支持在 Markdown 中使用 HTML 注释,注释内容不会在渲染时显示,但会保留在源代码中。
语法:
markdown
<!-- 这是一条注释,不会在渲染时显示 -->
这是一段正常文本。
<!--
多行注释也是支持的
可以包含多行内容
-->用途:
- 添加文档说明和备注
- 临时隐藏某些内容
- 为后续编辑添加提示
- 标记待完成的内容
示例:
markdown
## 研究方法
<!-- 描述实验设计、数据采集方法、分析工具 -->
这是研究方法的正文内容。
## 实验结果
<!-- TODO: 需要添加数据图表 -->
<!-- 展示主要发现、数据图表、统计分析 -->快捷键
All Writer 提供了 Markdown 编辑的快捷键:
| 功能 | 快捷键 |
|---|---|
| 加粗 | Ctrl + B |
| 斜体 | Ctrl + I |
| 插入链接 | Ctrl + K |
| 插入代码块 | Ctrl + Shift + K |
| 插入表格 | Ctrl + T |
| 插入图片 | Ctrl + Shift + I |
最佳实践
1. 标题层级
- 使用合理的标题层级
- 避免跳过层级(如从 H1 直接跳到 H3)
- 建议不超过 4 级标题
2. 列表使用
- 使用有序列表表示步骤
- 使用无序列表表示要点
- 合理使用嵌套列表
3. 代码块
- 始终指定代码语言以获得语法高亮
- 长代码块使用代码块而非行内代码
- 添加必要的代码注释
4. 链接和图片
- 使用描述性的链接文本
- 为图片添加 alt 文本
- 使用相对路径引用本地资源
5. 表格
- 保持表格简洁
- 使用对齐方式提高可读性
- 避免过宽的表格
常见问题
Q: Markdown 和 HTML 可以混用吗?
A: 可以。All Writer 支持在 Markdown 中使用 HTML 标签,但建议优先使用 Markdown 语法。
Q: 如何插入特殊字符?
A: 使用反斜杠转义,如 \* 表示字面量星号,而不是强调标记。
Q: 支持哪些代码语言?
A: All Writer 支持主流编程语言的语法高亮,包括 JavaScript、Python、Java、C++、Go、Rust 等。
Q: 数学公式支持哪些语法?
A: 支持 LaTeX 数学公式语法,包括分数、根号、积分、求和等。
Q: 图表支持哪些类型?
A: 支持 Mermaid 流程图、序列图、甘特图、类图等多种图表类型。
相关资源
- 📖 Markdown 语法指南 - 详细的语法说明
- 📝 大纲编辑器 - 了解大纲功能
- 📤 导出功能 - 了解如何导出文档
- Markdown 官方文档
💡 提示:Markdown 语法简单易学,建议多练习。All Writer 提供实时预览功能,可以边写边查看效果。