MkDocs Pymdownx Material Extras
A plugin for MkDocs -- specifically the MkDocs Material Theme.
Adds additional resources that are used in the PyMdown Extensions documentation, and other @facelessuser projects.
While this is not specifically meant for outside consumption, and was originally written for @facelessuser projects, it can be freely used if desired.
Files are copied from the pymdown-extensions project.
Instructions
This is bound to specific versions of MkDocs Material and PyMdown Extensions. It may sometimes be tied to betas.
Installation:
pip install mkdocs_pymdownx_material_extras
Add it to your mkdocs.yml plugins. It is assuming you are using MkDocs Material. When doing so, remember to add
back the search plugin as it doesn't append to the plugins, but overrides the plugins:
plugins:
- search
- mkdocs_pymdownx_material_extras
Setup your theme as follows:
theme:
name: material # Must use Material theme
custom_dir: docs/theme # If you have overrides, specify where to find them
palette:
scheme: dracula # This is how to enables the Dracula theme for dark. For light, it will use default Material with some tweaks.
primary: deep purple # Primary colors
accent: deep purple # accent color
The following Material primary/accent colors map to actual Dracula colors:
| Material | Dracula |
|---|---|
| red | red |
| pink | pink |
| purple | purple |
| deep-purple | purple |
| blue | blue |
| indigo | blue |
| light-blue | blue |
| cyan | cyan |
| teal | cyan |
| green | green |
| light-green | green |
| lime | green |
| yellow | yellow |
| amber | yellow |
| orange | orange |
| deep-orange | orange |
Sponsor Footer Link
If you'd like to add the sponsor heart in the footer, add your sponsor link under the MkDocs theme options like so.
theme:
pymdownx:
sponsor: "https://github.com/sponsors/facelessuser"
Mermaid Support
Mermaid support is baked in. Simply add the Mermaid script to your MkDocs config:
extra_javascript:
- https://cdn.jsdelivr.net/npm/mermaid@11.5.0/dist/mermaid.min.js
If you do not like our default setup, you are free to modify it. Simply provide a script file before before you include Mermaid with the new config:
extra_javascript:
- my_mermaid_config.js
- https://cdn.jsdelivr.net/npm/mermaid@11.5.0/dist/mermaid.min.js
Also, setup your Mermaid diagrams:
markdown_extensions:
- pymdownx.superfences:
custom_fences:
# Mermaid diagrams
- name: diagram
class: diagram
format: !!python/name:pymdownx.superfences.fence_code_format
Then you can specify your Mermaid diagrams in diagram code blocks:
```diagram
...
```
Mermaid setups are provided per scheme. You can see the setup here. if you are trying to override them.
MathJax/KaTeX
Again, MathJax and KaTeX support is baked in. Simply add the MathJax script(s) to your MkDocs config:
MathJax:
extra_javascript:
- https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js
KaTeX:
extra_css:
- https://cdn.jsdelivr.net/npm/katex@0.13.18/dist/katex.min.css
extra_javascript:
- https://cdn.jsdelivr.net/npm/katex@0.13.18/dist/katex.min.js
Lastly, setup Arithmatex:
markdown_extensions:
- pymdownx.arithmatex:
generic: true # Must use generic mode
block_tag: 'pre' # We wrap block math in `<pre>` to avoid issues with MkDocs minify HTML plugin: https://github.com/byrnereese/mkdocs-minify-plugin
If you do not like the default MathJax setup, add your own config before MathJax script:
extra_javascript:
- my_mathjax_config.js
- https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js
Release files for mkdocs-pymdownx-material-extras 2.8
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| mkdocs_pymdownx_material_extras-2.8.tar.gz | 26.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| mkdocs_pymdownx_material_extras-2.8-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 55.4 kB
Release files / mkdocs_pymdownx_material_extras-2.8.tar.gz
| Download URL | mkdocs_pymdownx_material_extras-2.8.tar.gz |
|---|---|
| Size | 26.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
7b22bb119cd9592f98d6c6d4d269506d9a68d7038355c71525aadc88169ee9fe
|
|
BLAKE2b-256 checksum How to use checksums |
5ef65199d1e251e15b3c554f46b5796d02870e129f524dc2f117e828c5444674
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.12.9
|
Release files / mkdocs_pymdownx_material_extras-2.8-py3-none-any.whl
| Download URL | mkdocs_pymdownx_material_extras-2.8-py3-none-any.whl |
|---|---|
| Size | 28.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
81b68789420c51b9b15514180d0f3ab7136d56ee512c830c998d2edb77ca3d77
|
|
BLAKE2b-256 checksum How to use checksums |
10780059cb24b62a3dd68293daea38acb2cb75415d5735a62d6d60f752cd00ed
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.12.9
|