跳转至

Python Markdown

MkDocs的材料支持大量的Python Markdown扩展, 这也是它对技术写作如此有吸引力的部分原因。下列的 是所有支持的扩展的列表,链接到 参考需要启用哪些功能。

支持的扩展

缩写

version 1.0.0 extension [abbr][Abbreviations]

[缩写]扩展增加了向 元素,通过用abbr标签包裹它。只有纯文本(无标记) 支持。通过mkdocs.yml启用它:

markdown_extensions:
  - abbr

没有可用的配置选项。使用方法见参考:

告诫

version 0.1.0 extension [admonition][Admonition]

Admonition扩展增加了对警告的支持,通常称为 call-outs,可以使用简单的语法在Markdown中定义。使能够 通过mkdocs.yml

markdown_extensions:
  - admonition

没有可用的配置选项。使用方法见参考:

属性列表

version 0.1.0 extension [attr_list][Attribute Lists]

Attribute Lists扩展允许添加HTML属性和CSS类 到[几乎所有][属性列表限制]Markdown内联和块级别 具有特殊语法的元素。通过mkdocs.yml启用它:

markdown_extensions:
  - attr_list

没有可用的配置选项。使用方法见参考:

定义列表

version 1.1.0 extension [def_list][Definition Lists]

Definition Lists扩展增加了添加定义列表的能力(更多 通常称为[描述列表]-HTML中的“dl”)通过Markdown转换为 文件。通过mkdocs.yml启用它:

markdown_extensions:
  - def_list

没有可用的配置选项。使用方法见参考:

脚注

version 1.0.0 extension [footnotes][Footnotes]

Footnotes扩展允许定义内联脚注,然后 在文档的所有Markdown内容下方呈现。通过mkdocs.yml启用它:

markdown_extensions:
  - footnotes

不支持任何配置选项。使用方法见参考:

HTML中的Markdown

version 0.1.0 extension [md_in_html][Markdown in HTML]

Markdown in HTML扩展允许在HTML中编写Markdown, 这对于用自定义元素包装Markdown内容非常有用。启用它 通过mkdocs.yml

markdown_extensions:
  - md_in_html

默认情况下,Markdown忽略原始HTML块级别内的任何内容 元素。启用“md_in_html”扩展后,原始html的内容 通过包含“Markdown”,块级元素可以被解析为Markdown开始标记上的属性。markdown`属性将被删除 输出,而所有其他属性将被保留。

没有可用的配置选项。使用方法见参考:

目录

version 0.1.0 extension [toc][Table of Contents]

[目录]扩展会自动生成目录 从文档中,MkDocs的材料将作为结果的一部分呈现 页面。通过mkdocs.yml启用它:

markdown_extensions:
  - toc:
      permalink: true

支持以下配置选项:

option toc.title

version 7.3.5 default computed – 此选项在右侧导航中设置目录的标题 侧边栏,通常自动来源于以下内容的翻译 在mkdocs.yml中设置的[站点语言]:

markdown_extensions:
  - toc:
      title: On this page
option toc.permalink

default _false_ 此选项添加锚链接 在末尾包含段落符号“¶”或其他自定义符号 每个标题,与您当前查看的页面完全相同 MkDocs的材料将在鼠标悬停时显示:

markdown_extensions:
  - toc:
      permalink: true
markdown_extensions:
  - toc:
      permalink: ⚓︎
option toc.permalink_title

default _Permanent link_ 此选项设置 悬停时显示并由屏幕阅读器读取的锚链接的标题。 出于可访问性的原因,将其更改为更易于访问的版本可能是有益的 可辨别的名称,说明锚点链接到该部分本身:

markdown_extensions:
  - toc:
      permalink_title: Anchor link to this section for reference
option toc.slugify

default _toc.slugify_ 此选项允许 slug功能的定制。对于某些语言,默认值可能不是 生成良好且可读的标识符——考虑使用另一个slug函数 例如Python Markdown扩展中的那些:

markdown_extensions:
  - toc:
      slugify: !!python/object/apply:pymdownx.slugs.slugify
        kwds:
          case: lower
markdown_extensions:
  - toc:
      slugify: !!python/object/apply:pymdownx.slugs.slugify {}
option toc.toc_depth

default _6_ 定义要设置的级别范围 包括在目录中。这可能对项目有用 具有深度结构化标题的文档,以缩短文档的长度 目录,或完全删除目录:

markdown_extensions:
  - toc:
      toc_depth: 3
markdown_extensions:
  - toc:
      toc_depth: 0

此扩展的其他配置选项不受官方支持 MkDocs的材料,这就是为什么它们可能会产生意想不到的结果。使用 他们的风险由你自己承担。

Tables

version 0.1.0 extension [tables][Tables]

Tables扩展通过使用 简单的语法。通过mkdocs.yml启用它(尽管它应该通过以下方式启用 默认值):

markdown_extensions:
  - tables

没有可用的配置选项。使用方法见参考:

被取代的扩展

不支持(或可能不支持)以下Python Markdown扩展 不再推荐使用。相反,替代方案 应当予以考虑。

Fenced Code Blocks

version 0.1.0 extension [fenced_code_blocks][Fenced Code Blocks]

被[超级围栏]取代。这个扩展可能仍然有效,但 SuperFences扩展在许多方面都是优越的,因为它允许任意 嵌套,因此建议。

CodeHilite

version 0.1.0 extension [codehilite][CodeHilite]

被[突出显示]取代。对CodeHilite的支持已于年终止 <!--md:version6.0.0→,因为Highlight与其他工具有更好的集成 基本扩展,如[超级围栏]和[内联Hilite]。