是否有可能生成一个自动目录使用Github调味Markdown?
当前回答
Github调味Markdown使用红地毯作为他们的Markdown引擎。 摘自RedCarpet回购:
:with_toc_data -添加HTML锚的每个头在输出HTML, 允许链接到每个部分。
似乎你需要在渲染器级别设置这个标志,这在Github上显然是不可能的。然而,Github Pages的最新更新,似乎自动锚定是为标题打开的,创建可链接的标题。这不是你想要的,但它可能会帮助你更容易地为你的文档创建一个TOC(尽管是手动的)。
其他回答
可以从README中使用http://documentup.com/自动生成一个网页。md文件。它不是创建TOC,但对于许多人来说,它可能解决了想要创建TOC的原因。
Documentup的另一个替代方案是Flatdoc: http://ricostacruz.com/flatdoc/
无耻的“借用”这个SO答案。
你可以用Pandoc做到这一点。
pandoc -s --toc input.md -o input_toc.md
注意:输入和输出文件的顺序在这里很重要。
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。现在我的内容已经采用了这种方法。
目前还不可能使用markdown语法(参见GitHub上正在进行的讨论),但是你可以使用一些外部工具,例如:
在线内容表生成器(raychenon/play-table-of-contents) arthurhammer/ GitHub -toc -浏览器扩展,添加一个目录到GitHub回购表
或者使用AsciiDoc代替(例如README.adoc)。
:toc: macro
:toc-title:
:toclevels: 99
# Title
## A
### A2
## B
### B2
正如这条评论所建议的。点击这里查看演示。
我创建了两个选项来生成一个toc的github风味markdown:
DocToc命令行工具(源代码)需要node.js
Installation:NPM install -g doctoc
Usage:doctoc。向当前目录和所有子目录中的所有markdown文件添加目录。
DocToc WebApp
如果你想先在网上试试,去doctoc网站, 粘贴标记页面的链接,它将生成一个表 可以插入标记文件顶部的内容。
Github维基和锚
正如Matthew Flaschen在下面的评论中指出的那样,对于其维基页面,GitHub之前并没有生成doctoc所依赖的锚。
更新:但是,他们修复了这个问题。
推荐文章
- Github:导入上游分支到fork
- GitHub上的分叉和克隆有什么区别?
- 如何将现有的解决方案从Visual Studio 2013添加到GitHub
- 是否可以在GitHub上搜索特定的文件名?
- 如何将LaTeX与Markdown混合?
- GitHub -未能连接到GitHub 443 windows/连接到GitHub失败-无错误
- 我怎么能让詹金斯CI与Git触发器推到主人?
- 如何从拉请求中删除提交
- 如何用分发文件发布npm包?
- 如何同步项目到GitHub与Android工作室?
- 跟踪在GitHub上创建的一个新的远程分支
- 如何将一个特定的提交从一个分支合并到Git中的另一个分支?
- 从pull请求中删除一个修改过的文件
- 下载GitHub项目的最快方式
- 乳胶渲染在README。md在Github上