在标题中生成ID



我的网站使用Jekyll和Redcarpet markdown解析器。我想让它让我的标题自动生成与ID:

# My heading

成为:

<h1 id="my-heading">My heading</h1>

但我还没有找到办法。

我想坚持使用红地毯作为我的降价解析器,但这不是必须的。如果有另一个支持所有相同功能的,我会很乐意考虑。我特别喜欢红地毯以分段格式生成代码块。

我的首选解决方案是@maul-esel的Github问题答案:

红毯自述中提到了配置选项with_toc_data。这会生成类似id="toc_0"等的标题的ID。

您可以通过将其添加到_config.yml Jekyll配置中来启用它:

markdown: redcarpet
redcarpet:
    extensions: [with_toc_data]

这并不理想——我更喜欢像id="my-heading"这样的语义ID——但它足够好,而且非常简单——这意味着我不需要设置和学习另一个markdown解析器(或者研究如何扩展红地毯)。

如果有帮助,它确实可以与Kramdown 一起工作

$ kramdown <<< '# My heading'
<h1 id="my-heading">My heading</h1>

相关内容

  • 没有找到相关文章

最新更新