‹› markdown.extensions.md_in_html

An implementation of PHP Markdown Extra’s parsing of Markdown syntax in raw HTML.

See the documentation for details.

‹› markdown.extensions.md_in_html.HTMLExtractorExtra(md: Markdown, *args, **kwargs)

Bases: HTMLExtractor

Override HTMLExtractor and create etree Elements for any elements which should have content parsed as Markdown.

‹› markdown.extensions.md_in_html.HTMLExtractorExtra.reset()

Reset this instance. Loses all unprocessed data.

‹› markdown.extensions.md_in_html.HTMLExtractorExtra.close()

Handle any buffered data.

‹› markdown.extensions.md_in_html.HTMLExtractorExtra.get_element() -> etree.Element

Return element from treebuilder and reset treebuilder for later use.

‹› markdown.extensions.md_in_html.HTMLExtractorExtra.get_state(tag, attrs: Mapping[str, str]) -> Literal['block', 'span', 'off', None]

Return state from tag and markdown attribute. One of ‘block’, ‘span’, or ‘off’.

‹› markdown.extensions.md_in_html.HtmlBlockPreprocessor(md: Markdown | None = None)

Bases: Preprocessor

Remove html blocks from the text and store them for later retrieval.

‹› markdown.extensions.md_in_html.MarkdownInHtmlProcessor(parser: BlockParser)

Bases: BlockProcessor

Process Markdown Inside HTML Blocks which have been stored in the HtmlStash.

‹› markdown.extensions.md_in_html.MarkdownInHtmlProcessor.parse_element_content(element: etree.Element) -> None

Recursively parse the text content of an etree Element as Markdown.

Any block level elements generated from the Markdown will be inserted as children of the element in place of the text content. All markdown attributes are removed. For any elements in which Markdown parsing has been disabled, the text content of it and its children are wrapped in an AtomicString.

‹› markdown.extensions.md_in_html.MarkdownInHTMLPostprocessor(md: Markdown | None = None)

Bases: RawHtmlPostprocessor

‹› markdown.extensions.md_in_html.MarkdownInHTMLPostprocessor.stash_to_string(text: str | etree.Element) -> str

Override default to handle any etree elements still in the stash.

‹› markdown.extensions.md_in_html.MarkdownInHtmlExtension(**kwargs)

Bases: Extension

Add Markdown parsing in HTML to Markdown class.

‹› markdown.extensions.md_in_html.MarkdownInHtmlExtension.extendMarkdown(md)

Register extension instances.