Python Markdown扩展¶
Python Markdown Extensions包是一个出色的集合 额外的扩展非常适合高级技术写作。材料 对于MkDocs,它将此包列为显式依赖项,因此它会自动 已安装受支持的版本。
支持的扩展¶
一般来说,所有属于Python Markdown extensions的扩展都应该 使用MkDocs的材料。以下列表包括所有扩展 是原生支持的,这意味着它们无需任何进一步调整即可工作。
Arithmatex¶
[Athmetex]扩展允许渲染块和内联块 方程式,并与MathJax1无缝集成——一个用于 数学排版。通过mkdocs.yml
启用它:
除了在mkdocs.yml
中启用扩展之外,还有MathJax配置和 需要包含JavaScript运行时,这可以用几行代码完成 [附加JavaScript]:
window.MathJax = {
tex: {
inlineMath: [["\\(", "\\)"]],
displayMath: [["\\[", "\\]"]],
processEscapes: true,
processEnvironments: true
},
options: {
ignoreHtmlClass: ".*|",
processHtmlClass: "arithmatex"
}
};
document$.subscribe(() => { // (1)!
MathJax.startup.output.clearCache()
MathJax.typesetClear()
MathJax.texReset()
MathJax.typesetPromise()
})
- 这将MathJax与[即时加载]集成在一起
此扩展的其他配置选项不受官方支持 MkDocs的材料,这就是为什么它们可能会产生意想不到的结果。使用 他们的风险由你自己承担。
使用方法见参考:
BetterEm¶
BetterEm扩展改进了标记的检测,以强调文本 在Markdown中使用特殊字符,即“bold”和“italic”格式化。通过
mkdocs.yml`启用它:
此扩展的配置选项并不特定于材质 MkDocs,因为它们只影响Markdown解析阶段。请参阅BetterEm 文档了解更多信息。
Caption¶
Caption扩展增加了向任何Markdown块添加标题的能力, 包括图像、表格和代码块。通过mkdocs.yml
启用它:
此扩展的配置选项并不特定于材质 MkDocs,因为它们只影响Markdown解析阶段。请参阅[标题 文档][标题]了解更多信息。
Caret, Mark & Tilde¶
Caret、Mark和Tilde扩展增加了突出显示文本的功能 并使用简单的语法定义子和上标。让他们在一起 通过mkdocs.yml
:
此扩展的配置选项并不特定于材质 MkDocs,因为它们只影响Markdown解析阶段。参见[注意事项],[标记] 以及Tilde文档以获取指导。
使用方法见参考:
Critic¶
Critic扩展允许使用Critic Markup来突出显示 在文档中添加、删除或更新部分,即用于跟踪 Markdown语法。通过mkdocs.yml
启用它:
支持以下配置选项:
-
此选项定义标记的方式 应该被解析,即是否只“查看”所有建议的更改,或者 或者“接受”或“拒绝”它们:
使用方法见参考:
Details¶
[详细信息]扩展增强了[警告]扩展,使 由此产生的全面折叠,允许它们被打开和关闭 用户。通过mkdocs.yml
启用它:
没有可用的配置选项。使用方法见参考:
Emoji¶
表情符号扩展自动内联捆绑的和自定义的图标和表情 将*.svg
文件格式转换为生成的HTML页面。通过mkdocs.yml
启用它:
markdown_extensions:
- pymdownx.emoji:
emoji_index: !!python/name:material.extensions.emoji.twemoji # (1)!
emoji_generator: !!python/name:material.extensions.emoji.to_svg
- [Python Markdown扩展]使用“pymdownx”命名空间,但为了 支持图标内联,必须使用
materialx
命名空间,因为它 扩展了pymdownx的功能。
支持以下配置选项:
-
此选项定义了哪个集合 emojis用于渲染。请注意,使用“emojione”不是 由于[许可限制][表情符号索引]而推荐:
-
此选项定义了如何 解析的表情符号或图标快捷代码被渲染。请注意,图标只能 与
to_svg
配置一起使用: -
此选项允许列出文件夹 在Markdown或
mkdocs.yml
中使用额外的图标集,即 在[图标定制指南]中有更详细的解释:
此扩展的其他配置选项不受官方支持 MkDocs的材料,这就是为什么它们可能会产生意想不到的结果。使用 他们的风险由你自己承担。
使用方法见参考:
Highlight¶
Highlight扩展增加了对代码块语法高亮显示的支持 (借助[SuperFence][pymdownx.superfaces])和内联代码块 (借助InlineHilite)。通过启用它 mkdocs.yml
:
- Highlight由SuperFences[pymdownx.superfaces]扩展用于 对代码块执行语法高亮显示,而不是相反,这 这就是为什么还需要启用此扩展。
支持以下配置选项:
-
此选项允许控制 是否应在构建时使用高亮显示 [Pygages]或在浏览器中使用JavaScript语法高亮显示:
例如,Highlight.js是一个JavaScript语法高亮显示工具,可以 与一些[额外的JavaScript]和[额外的样式]集成
mkdocs.yml
中的表格]:请注意,Highlight.js与 Highlight扩展名。
以下所有配置选项仅与构建时兼容 使用[Pygges]突出显示语法,因此如果
use_Pygments,则不适用
设置为“false”。 -
此选项指示[Pygages] 添加一个CSS类来标识代码块的语言,即 自定义注释标记正常工作所必需的:
-
此选项将自动 在所有代码块中添加一个title,显示所使用语言的名称 例如,
Python
是为py
块打印的: -
此选项将添加行号 到所有代码块。如果你想在_some_中添加行号,但不是全部 代码块,请参阅[添加行号][添加行]一节 代码块参考中的数字],其中还包含一些提示 使用行号:
-
Highlight扩展 提供了三种添加行号的方法,其中两种方法由支持 MkDocs的材料。而
table
将代码块包装在<table>中
元素“pymdownx inline”将行号呈现为行本身的一部分:请注意,
inline
将把行号放在实际代码旁边,这 意味着在用光标选择文本时,它们将被包括在内,或者 将代码块复制到剪贴板。因此,无论是“表”的使用` 或者建议使用“pymdownx内联”。 -
默认值:“false”-如果代码块包含行号,则启用此选项 设置将用锚链接包裹它们,这样它们就可以被超链接 更容易分享:
-
设置此选项后,每个 代码块的行被包裹在“span”中,这对功能至关重要 如线条高亮显示以正确工作:
此扩展的其他配置选项不受官方支持 MkDocs的材料,这就是为什么它们可能会产生意想不到的结果。使用 他们的风险由你自己承担。
使用方法见参考:
- Using code blocks
- Adding a title
- Adding line numbers
- Highlighting specific lines
- Custom syntax theme
InlineHilite¶
InlineHilite扩展增加了对内联代码语法高亮显示的支持 阻碍。它建立在Highlight扩展之上,从 其来源于其配置。通过mkdocs.yml
启用它:
此扩展的配置选项并不特定于材质 MkDocs,因为它们只影响Markdown解析阶段。唯一的例外是 css_class
选项,不得更改。请参阅 [内联Hilite文档][内联Hilite]以获取指导。
使用方法见参考:
Keys¶
Keys扩展添加了一个简单的语法,允许渲染键盘 例如Ctrl+Alt+Del。通过mkdocs.yml
启用它:
此扩展的配置选项并不特定于材质 MkDocs,因为它们只影响Markdown解析阶段。唯一的例外是 [class
][Keys-options]选项,不得更改。请参阅 [密钥文档][密钥]了解更多信息。
使用方法见参考:
SmartSymbols¶
SmartSymbols扩展将某些字符序列转换为 例如版权符号或分数。通过启用它 mkdocs.yml
:
此扩展的配置选项并不特定于材质 MkDocs,因为它们只影响Markdown解析阶段。请参阅SmartSymbols 文档以获取指导。
Snippets¶
Snippets扩展增加了从任意文件嵌入内容的能力 通过使用简单的 语法。通过mkdocs.yml
启用它:
此扩展的配置选项并不特定于材质 MkDocs,因为它们只影响Markdown解析阶段。请参阅[片段 文档][片段]了解更多信息。
使用方法见参考:
SuperFences¶
SuperFences扩展允许任意嵌套代码和内容 相互之间的块,包括警告、标签、列表和所有其他 元素。通过mkdocs.yml
启用它:
支持以下配置选项:
-
此选项允许定义 自定义围栏的处理程序,例如保留[Meamaid.js]的定义 要在浏览器中解释的图表:
markdown_extensions: - pymdownx.superfences: custom_fences: - name: mermaid class: mermaid format: !!python/name:pymdownx.superfences.fence_code_format
请注意,这将主要防止语法高亮显示 应用。请参阅[图表]上的参考,了解Mermaid.js是如何工作的 与MkDocs材料集成。
此扩展的其他配置选项不受官方支持 MkDocs的材料,这就是为什么它们可能会产生意想不到的结果。使用 他们的风险由你自己承担。
使用方法见参考:
- Using annotations
- Using code blocks
- Using content tabs
- Using flowcharts
- Using sequence diagrams
- Using state diagrams
- Using class diagrams
- Using entity-relationship diagrams
Tabbed¶
Tabbed扩展允许使用内容选项卡,这是一种简单的分组方式 可访问选项卡下的相关内容和代码块。通过启用它 mkdocs.yml
:
支持以下配置选项:
-
此选项启用内容选项卡 [替代样式],它在移动视口上具有更好的行为,并且 唯一支持的样式:
-
此选项启用内容选项卡' [
combine_header_slug
style]标志,它将标头的id添加到 选项卡的id: -
此选项允许 slug功能的定制。对于某些语言,默认值可能不是 生成良好且可读的标识符——考虑使用另一个slug函数 例如Python Markdown扩展中的那些:
此扩展的其他配置选项不受官方支持 MkDocs的材料,这就是为什么它们可能会产生意想不到的结果。使用 他们的风险由你自己承担。
使用方法见参考:
Tasklist¶
Tasklist扩展允许使用[GitHub风味Markdown] 受启发的[任务列表][任务列表规范],遵循相同的语法 习俗。通过mkdocs.yml
启用它:
支持以下配置选项:
-
此选项可切换渲染 复选框的样式,用漂亮的图标替换原生复选框样式, 因此建议:
-
此选项切换是否 复选框是可点击的。由于状态不持久,因此使用此 从用户体验的角度来看,选项是_rather discused_:
此扩展的其他配置选项不受官方支持 MkDocs的材料,这就是为什么它们可能会产生意想不到的结果。使用 他们的风险由你自己承担。
使用方法见参考: