The following plugins are embedded within the core package:
- tables (GFM)
- strikethrough (GFM)
These can be enabled individually:
from markdown_it import MarkdownIt
md = MarkdownIt("commonmark").enable('table')or as part of a configuration:
from markdown_it import MarkdownIt
md = MarkdownIt("gfm-like")See <inv:markdown_it#using>
The mdit_py_plugins, contains a number of common plugins.
They can be chained and loaded via:
from markdown_it import MarkdownIt
from mdit_py_plugins import plugin1, plugin2
md = MarkdownIt().use(plugin1, keyword=value).use(plugin2, keyword=value)
html_string = md.render("some *Markdown*").. autofunction:: mdit_py_plugins.front_matter.front_matter_plugin
.. autofunction:: mdit_py_plugins.footnote.footnote_plugin
.. autofunction:: mdit_py_plugins.deflist.deflist_plugin
.. autofunction:: mdit_py_plugins.tasklists.tasklists_plugin
.. autofunction:: mdit_py_plugins.field_list.fieldlist_plugin
.. autofunction:: mdit_py_plugins.anchors.anchors_plugin
.. autofunction:: mdit_py_plugins.wordcount.wordcount_plugin
.. autofunction:: mdit_py_plugins.container.container_plugin
.. autofunction:: mdit_py_plugins.admon.admon_plugin
.. autofunction:: mdit_py_plugins.attrs.attrs_plugin
.. autofunction:: mdit_py_plugins.attrs.attrs_block_plugin
.. autofunction:: mdit_py_plugins.texmath.texmath_plugin
.. autofunction:: mdit_py_plugins.dollarmath.dollarmath_plugin
.. autofunction:: mdit_py_plugins.amsmath.amsmath_plugin
.. autofunction:: mdit_py_plugins.subscript.sub_plugin
.. autofunction:: mdit_py_plugins.superscript.superscript_plugin
myst_blocks and myst_role plugins are also available, for utilisation by the MyST renderer
.. autofunction:: mdit_py_plugins.myst_role.myst_role_plugin
.. autofunction:: mdit_py_plugins.myst_blocks.myst_block_plugin
Use the mdit_py_plugins as a guide to write your own, following the markdown-it design principles.
There are many other plugins which could easily be ported from the JS versions (and hopefully will):
- abbreviation
- emoji
- insert
- mark
- ... and others