排除美人鱼代码块以使用 Codehilite (MkDocs) 突出显示
Exclude mermaid code blocks for highlighting with Codehilite (MkDocs)
我正在尝试通过 mkdocs(使用 material)从降价文件生成文档以在 gitlab 上发布。我的文件包括代码块和美人鱼图表,它们被声明为相同的(语言不同)。我想使用 CodeHilite 来美化代码块,但美人鱼块也将被它作为代码块处理,而不是被 mermaid-mkdocs 插件忽略。有没有办法,我可以从 codeHilite 中排除某些块或任何其他更改以将两者一起使用?
我遇到了完全相同的问题,并通过使用 pymdownx
扩展找到了以下解决方案(与 mkdocs material 主题捆绑在一起,参见 https://squidfunk.github.io/mkdocs-material/extensions/pymdown/):
将以下内容添加到您的 mkdocs.yml
中:
markdown_extensions:
- codehilite
- pymdownx.superfences:
custom_fences:
- name: mermaid
class: mermaid
format: !!python/name:pymdownx.superfences.fence_div_format
extra_javascript:
- https://unpkg.com/mermaid@8.5.1/dist/mermaid.min.js
我不会为美人鱼使用任何额外的 mkdocs 插件,例如 mermaid2
。
此解决方案基于https://github.com/squidfunk/mkdocs-material/issues/693#issuecomment-411885426
如果您使用 mermaid2 插件,自述文件包含有关 Using Mermaid and code highlighting at the same time.
的部分
你必须以这种方式使用 superfences:
markdown_extensions:
- pymdownx.superfences:
# make exceptions to highlighting of code:
custom_fences:
- name: mermaid
class: mermaid
format: !!python/name:mermaid2.fence_mermaid
注意: @streuspeicher 说你 没有 使用 mermaid2 插件来利用美人鱼图是正确的,如果你对 mkdocs、javascript 库等有 平均 知识
我在设计美人鱼 2 [披露] 时考虑了两类用户:
对css、javascript等基本知识不了解的初学者。他们只需在他们的插件列表下声明 mermaid2
,它就会开箱即用。
在另一个极端,真正想要通过主题、回调等调整美人鱼使用的高级用户并且想要一个可靠的框架来做到这一点。
如果您处于甜蜜点(对美人鱼图有基本需求,并且对扩展、css、javascript 等有信心),您可以不用 mermaid2 也能开心。
我正在尝试通过 mkdocs(使用 material)从降价文件生成文档以在 gitlab 上发布。我的文件包括代码块和美人鱼图表,它们被声明为相同的(语言不同)。我想使用 CodeHilite 来美化代码块,但美人鱼块也将被它作为代码块处理,而不是被 mermaid-mkdocs 插件忽略。有没有办法,我可以从 codeHilite 中排除某些块或任何其他更改以将两者一起使用?
我遇到了完全相同的问题,并通过使用 pymdownx
扩展找到了以下解决方案(与 mkdocs material 主题捆绑在一起,参见 https://squidfunk.github.io/mkdocs-material/extensions/pymdown/):
将以下内容添加到您的 mkdocs.yml
中:
markdown_extensions:
- codehilite
- pymdownx.superfences:
custom_fences:
- name: mermaid
class: mermaid
format: !!python/name:pymdownx.superfences.fence_div_format
extra_javascript:
- https://unpkg.com/mermaid@8.5.1/dist/mermaid.min.js
我不会为美人鱼使用任何额外的 mkdocs 插件,例如 mermaid2
。
此解决方案基于https://github.com/squidfunk/mkdocs-material/issues/693#issuecomment-411885426
如果您使用 mermaid2 插件,自述文件包含有关 Using Mermaid and code highlighting at the same time.
的部分你必须以这种方式使用 superfences:
markdown_extensions:
- pymdownx.superfences:
# make exceptions to highlighting of code:
custom_fences:
- name: mermaid
class: mermaid
format: !!python/name:mermaid2.fence_mermaid
注意: @streuspeicher 说你 没有 使用 mermaid2 插件来利用美人鱼图是正确的,如果你对 mkdocs、javascript 库等有 平均 知识
我在设计美人鱼 2 [披露] 时考虑了两类用户:
对css、javascript等基本知识不了解的初学者。他们只需在他们的插件列表下声明
mermaid2
,它就会开箱即用。在另一个极端,真正想要通过主题、回调等调整美人鱼使用的高级用户并且想要一个可靠的框架来做到这一点。
如果您处于甜蜜点(对美人鱼图有基本需求,并且对扩展、css、javascript 等有信心),您可以不用 mermaid2 也能开心。