是否有可能生成一个自动目录使用Github调味Markdown?


当前回答

2021年3月更新:GitHub增加了一个官方解决方案

readme现在显示一个ToC,就像你向下滚动它们:

演示:https://github.com/cirosantilli/test-git-web-interface/tree/master/d

它没有在文档中呈现,因为我想要更好的Ctrl + F,但总比没有强。

Also现在也适用于非readme,例如:https://github.com/cirosantilli/test-git-web-interface/blob/master/md.md

他们还添加了一个存储库设置来启用禁用该功能。太奇怪了,谁会想让它失效呢?在https://github.com/cirosantilli/test-git-web-interface/settings下面

目录 自动生成此存储库中Markdown文件的目录。目录将显示在文件顶部附近。

原来的答案

这是不可能的,除了建议的变通办法。

我建议Kramdown TOC扩展和其他可能性support@github.com和Steven!Ragnarök的回复一如既往:

谢谢你的建议和链接。我将把它添加到我们的内部功能请求列表中,供团队查看。

让我们给这个问题投票,直到它发生为止。

另一种解决方法是使用Asciidoc而不是Markdown,后者会渲染toc。现在我的内容已经采用了这种方法。

其他回答

使用coryfklein/doctoc, thlorenz/doctoc的一个分支,它不会在每个目录中添加“由doctoc生成”。

npm install -g coryfklein/doctoc

可以从README中使用http://documentup.com/自动生成一个网页。md文件。它不是创建TOC,但对于许多人来说,它可能解决了想要创建TOC的原因。

Documentup的另一个替代方案是Flatdoc: http://ricostacruz.com/flatdoc/

对于Github的Texteditor Atom,请查看这个很棒的插件(或Atom术语中的“包”),它可以从解析的markdown文件生成“标题的TOC(目录)”文件:

降价目录

一旦安装为Atom-package,您可以使用快捷键ctrl-alt-c在当前光标位置插入基于markdown-doc-structure的TOC…

截图:

原子Keybindings

markdown-toc为您提供以下默认键绑定来控制Atom中的插件:

ctrl-alt-c =>在光标位置创建TOC ctrl-alt-u =>更新TOC ctrl-alt-r =>删除TOC

插件特性(来自项目的README)

通过锚标记自动链接,例如# A 1→# A -1 深度控制[1-6]使用depthFrom:1和depthTo:6 使用withLinks使能或禁用链接 使用updateOnSave保存时刷新列表 使用有序列表(1. ..., 2. ...) orderedList:0

这并不是对这个问题的直接回答,因为很多人都提供了变通方法。我认为到目前为止,Github还没有正式支持生成TOC。如果你想让GitHub在他们的GFM预览页面上自动呈现一个目录,请参加关于官方功能请求问题的讨论。

大多数其他答案需要安装一些工具。 我找到了一个快速简单的在线解决方案https://imthenachoman.github.io/nGitHubTOC。

对于任何markdown输入,它生成内容输出表。 您可以指定最小和最大标题级别。

源代码位于https://github.com/imthenachoman/nGitHubTOC