MCPcopy Create free account
hub / github.com/Python-Markdown/markdown / unescape

Method unescape

markdown/inlinepatterns.py:563–580  ·  view source on GitHub ↗

Return unescaped text given text with an inline placeholder.

(self, text: str)

Source from the content-addressed store, hash-verified

561 return place_holder, m.start(0), m.end(0)
562
563 def unescape(self, text: str) -> str:
564 """ Return unescaped text given text with an inline placeholder. """
565 try:
566 stash = self.md.treeprocessors['inline'].stashed_nodes
567 except KeyError: # pragma: no cover
568 return text
569
570 def get_stash(m: re.Match[str]) -> str:
571 id = m.group(1)
572 value = stash.get(id)
573 if value is not None:
574 try:
575 # Ensure we don't have a placeholder inside a placeholder
576 return self.unescape(self.md.serializer(value))
577 except Exception:
578 return r'\%s' % value
579
580 return util.INLINE_PLACEHOLDER_RE.sub(get_stash, text)
581
582 def backslash_unescape(self, text: str) -> str:
583 """ Return text with backslash escapes undone (backslashes are restored). """

Callers 2

handleMatchMethod · 0.95
get_stashMethod · 0.95

Calls

no outgoing calls

Tested by

no test coverage detected