手写 Markdown 表格是一件痛苦的事:数管道符、补横杠、对齐列宽……每次都要花大量时间在格式上,而不是内容本身。Markdown 表格生成器可以把这部分工作交给工具,你只需关注数据。
GFM 表格语法速览
GFM(GitHub Flavored Markdown)表格是目前最通用的 Markdown 表格格式,GitHub、GitLab、VS Code、Obsidian、Notion 等工具均支持。
基本结构:
| 姓名 | 角色 | 状态 |
|--------|--------|------|
| 张三 | 工程师 | 在职 |
| 李四 | 设计师 | 在职 |
| 王五 | 管理员 | 休假 |
三个组成部分:
- 表头行:列名,用管道符
|分隔 - 分隔行:横杠加可选的冒号(控制对齐)
- 数据行:每行一条记录
首尾的管道符可以省略,但保留更易读。
列对齐控制
分隔行里的冒号位置决定对齐方式:
| 语法 | 对齐 |
|---|---|
--- 或 :--- | 左对齐(默认) |
:---: | 居中 |
---: | 右对齐 |
混合对齐示例:
| 商品 | 数量 | 单价 |
|:-----------|:----:|--------:|
| 螺丝刀 | 10 | ¥9.90 |
| 万用表 | 3 | ¥128.00 |
| 电烙铁 | 5 | ¥45.00 |
商品列左对齐,数量居中,单价右对齐——数字列用右对齐更专业。
三种使用方式
可视化编辑器
直接在表格单元格里打字,工具栏提供:
- 添加行 / 删除行:纵向调整表格大小
- 添加列 / 删除列:横向调整列数
- 列对齐选择器:在每列表头的下拉框选择左/居中/右对齐
右侧 Markdown 输出实时更新,点击复制即可使用。
适合场景:结构清晰、数据量小,想从零开始创建表格。
CSV 粘贴
把 CSV 数据粘贴进来——来自 Excel/Google Sheets 导出、数据库查询结果或 tsv 文件都行。工具自动识别分隔符(逗号、Tab、分号),解析后同步填充可视化编辑器和 Markdown 输出。
示例,粘贴:
语言,范式,发布年份
Python,多范式,1991
Go,并发优先,2009
Rust,系统编程,2015
TypeScript,类型系统,2012
生成的 Markdown 表格:
| 语言 | 范式 | 发布年份 |
|------------|------------|----------|
| Python | 多范式 | 1991 |
| Go | 并发优先 | 2009 |
| Rust | 系统编程 | 2015 |
| TypeScript | 类型系统 | 2012 |
适合场景:把表格数据转换为文档,或者把导出的 CSV 快速整理进 README。
JSON 粘贴
粘贴 JSON 对象数组,键名自动成为表头,值填充数据行。接口返回的数据、配置对象列表都可以直接粘贴进来。
示例,粘贴:
[
{ "接口": "/users", "方法": "GET", "鉴权": true },
{ "接口": "/login", "方法": "POST", "鉴权": false },
{ "接口": "/profile", "方法": "PUT", "鉴权": true }
]
生成:
| 接口 | 方法 | 鉴权 |
|----------|------|-------|
| /users | GET | true |
| /login | POST | false |
| /profile | PUT | true |
适合场景:API 文档、接口列表、配置项说明。
管道符的转义
GFM 表格用 | 分隔列,所以单元格内容里出现的 | 必须转义为 \|,否则会被解析为列分隔符。工具会自动处理这个问题。
如果需要手写,记得转义:
| 表达式 | 含义 |
|----------|------------------|
| `a \| b` | 逻辑或 |
| `a && b` | 逻辑与 |
| `a ?? b` | 空值合并运算符 |
常见使用场景
README 依赖表——列出项目依赖、版本号和许可证:
| 包名 | 版本 | 许可证 |
|-------------|--------|---------|
| react | 18.3.0 | MIT |
| typescript | 5.4.5 | Apache |
| eslint | 9.0.0 | MIT |
接口文档——接口路径、请求方法、参数说明。
更新日志——版本、日期、变更内容并排展示。
技术选型对比——方案 A vs 方案 B 的功能矩阵。
从代码数据生成表格
如果数据已经存在于 Python 字典列表、Go 结构体数组或 JS 对象数组中,可以先序列化成 JSON,再粘贴到 JSON 标签页。
Python 示例:
import json
tools = [
{"工具": "Prettier", "语言": "JS/TS", "配置文件": ".prettierrc"},
{"工具": "Black", "语言": "Python", "配置文件": "pyproject.toml"},
{"工具": "gofmt", "语言": "Go", "配置文件": "内置"},
]
print(json.dumps(tools, ensure_ascii=False, indent=2))
# 粘贴输出到 JSON 标签页即可
GFM 表格的局限
了解边界条件,避免踩坑:
- 不支持合并单元格:每个格独立。需要合并时,改用 HTML
<table>元素。 - 不支持多行单元格:每格内容必须在一行内。内容过长会在窄屏下截断。
- 仅支持行内 Markdown:格内可以用
**加粗**、`代码`、[链接](url),但不能放代码块或列表等块级元素。 - 需要预览才能确认效果:原始 Markdown 表格在纯文本编辑器里很难看,用预览验证渲染结果。
GFM 表格语法速查
| 元素 | 语法 |
|---|---|
| 表头分隔 | --- |
| 左对齐 | :--- |
| 居中 | :---: |
| 右对齐 | ---: |
| 转义管道符 | | |
| 加粗文字 | **文字** |
| 行内代码 | `代码` |
| 链接 | [标签](url) |
别再手数管道符了。立即使用 Markdown 表格生成器 →