目录生成器
把整篇 Markdown 粘进来,自动按标题层级抽数一份带锚点链接的目录,支持设定深度与列表样式。
输入 Markdown 文档
层级范围 只收录该深度内的标题
H
~
H
列表样式
锚点链接风格
输出 目录(TOC)
在线 Markdown 目录生成器介绍
Markdown 目录生成器读取文档中的各级标题(# 到 ######),按层级缩进生成一份目录(TOC),并为每个条目附上与 GitHub 规则一致的锚点链接——中文标题、空格、标点都会按 GitHub 的 slug 规则正确转换,点击目录即可跳转到对应章节。可控制收录深度、选择有序/无序/纯文本样式,生成后一键复制回填到文档开头。全部解析在浏览器本地完成,文档内容不上传。
主要功能
- 按
#层级自动建树,缩进与标题层级一一对应 - 锚点链接遵循 GitHub slug 规则,中文标题可正常跳转
- 可设定收录的标题层级范围(如只收 H2–H3)
- 无序 / 有序 / 纯文本缩进三种列表样式
- 自动忽略代码块、行内代码里的「伪标题」
- 统计标题数量,复制或下载 .md 文件
使用方法
- 把整篇 Markdown 文档粘贴到左侧输入框
- 按需调整层级范围(常用 H2~H3)与列表样式
- 右侧即时生成目录,检查层级是否符合预期
- 点「复制」,把目录粘贴回文档的开头位置
常见问题
为什么目录里少了我写的标题?
最常见的原因有两个:一是标题层级被排除在「层级范围」之外(比如只收 H2–H3 而那是 H4);二是标题写在了代码块里,工具会把 fenced code block 内的内容当作代码而非文档结构,这是有意设计。
生成的锚点在语雀 / 飞书 / 微信公众号能用吗?
不一定。GitHub 式锚点在 GitHub、GitLab、Typora、Obsidian 等环境中有效;语雀、飞书、公众号等平台的锚点规则各不相同,此时建议选择「不加链接」的纯目录,再手动补各自平台的锚点。
重复标题的锚点怎么处理?
按 GitHub 规则,同名标题从第二个开始追加
-1、-2 等序号,工具已自动处理,重复标题也能各自跳转。有没有办法自动维护目录?
GitHub、VS Code 等环境支持 TOC 相关扩展插件,可在保存时自动更新。本工具适合发布前一次性生成或文档结构变动后重新生成。
注意事项
- 标题层级建议连续使用(H2 下用 H3),跳级会导致目录缩进混乱
- 锚点跳转只在支持该 slug 规则的平台上生效,跨平台前先测试
- 目录本身也是 Markdown 列表,回填后如再用本工具重新生成,请先移除旧目录
- 超长文档建议只收录到 H3,避免目录比正文还长