Skip to main content

Convert GitHub admonitions to mkdocs syntax when building docs.

Project description

GitHub Admonitions for MkDocs

Convert GitHub admonitions to mkdocs admonitions when building docs, so that you can have admonitions on GitHub and in the documentation from the same file.

Now also supporting GitLab admonitions (alerts, thanks @pismy!).

[!TIP] This is an admonition. They are a useful tool to attract attention to information.

Usage

To install the plugin:

python -m pip install mkdocs-github-admonitions-plugin

Then in your mkdocs.yml file, add the plugin:

plugins:
  - gh-admonitions

Now you can write GitHub-compatible admonitions, and they will be automatically converted when used in mkdocs pages.

Why is this needed?

Both GitHub and mkdocs support admonitions from their markdown flavors. Unfortunately, their flavors are different. A GitHub admonition is written like this:

> [!TIP]
> This is the GitHub admonition syntax.

And mkdocs admonitions are written like this:

!!! tip

    This is the mkdocs-materials admonition syntax.

So an admonition in your documentation will render correctly on either GitHub or in your mkdocs pages, but not both. With this plugin, you write the admonition once in GitHub syntax, and it will still show correctly in the built mkdocs pages!

Limitations

The mkdocs admonitions are much more powerful. They can feature titles. They have more types, and you can add custom ones. You can render inline admonitions. They can be collapsable, and be collapsed by default. And much more.

But since the GitHub syntax has none of that, this tool can not offer such mkdocs admonitions to be generated. All admonitions will be converted to non-collapsed title-less admonitions.

GitHub admonitions feature two types which are not supported by mkdocs: caution and important. In converting these admonitions, we will preserve their title, but use the danger and warning symbol and color, respectively.

Examples

Here is a gallery with various admonitions. They should show up correctly on the built documentation too!

[!tip] This is normally formatted. Type in lower case. No extra spaces. It contains two lines in markdown, but only a soft linebreak.

[!CAUTION]
This admonition has:

  • ALL CAPS in the type
  • a list

Note that this admonition uses the "danger" symbol with "Caution" title.

[!Important] This contains inline and

import this  # python code in ticks
and code block with spaces

Note that this admonition uses the "warning" symbol with "Important" title.

[!note] And this admonition contains an empty line

That only has a > character in markdown.

[!warning] Admonitions may contains quotes

Quotes always contain great wisdom.

But pay attention! There may be admonitions which are really just code:

> [!note]
> This is not an admonition.

Disclaimer

This is an independent project and not affiliated with GitHub in any way.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mkdocs_github_admonitions_plugin-0.1.1.tar.gz (5.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

File details

Details for the file mkdocs_github_admonitions_plugin-0.1.1.tar.gz.

File metadata

File hashes

Hashes for mkdocs_github_admonitions_plugin-0.1.1.tar.gz
Algorithm Hash digest
SHA256 7f81520a0681b9955952d73b21ce99b923921830b6b6d1ace9b3fb95cd1fb61f
MD5 232afbc2341de2a2bf11e350ca623b40
BLAKE2b-256 126237f2080af26ec1d569bb21eb2a4d54f5ea54d36a92938abbbc37c6ab671b

See more details on using hashes here.

File details

Details for the file mkdocs_github_admonitions_plugin-0.1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for mkdocs_github_admonitions_plugin-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 824dc821764171943c1043c88218d4af0329693870ba9be657f890d484a0aa85
MD5 f59dd4acc0a36bbd4525075402bc8a80
BLAKE2b-256 e8a38cfd5d9a651612b0d2a15176341b040d43d27b063e17684cb353ec7ce789

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page