From 343ae0aaa95e4598c307fe95d1d267093f385094 Mon Sep 17 00:00:00 2001 From: Navan Chauhan Date: Tue, 26 Mar 2024 18:07:13 -0600 Subject: [PATCH] fix code_blocks scope --- lib/markdown2.py | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/lib/markdown2.py b/lib/markdown2.py index f3f92e34..3b75295b 100755 --- a/lib/markdown2.py +++ b/lib/markdown2.py @@ -2777,6 +2777,7 @@ class Latex(Extra): _pre_code_block_re = re.compile(r"
(.*?)
", re.DOTALL) converter = None + code_blocks = {} def _convert_single_match(self, match): return self.converter.convert(match.group(1)) @@ -2785,8 +2786,8 @@ def _convert_double_match(self, match): return self.converter.convert(match.group(1).replace(r"\n", ''), display="block") def code_placeholder(self, match): - placeholder = f"" - code_blocks[placeholder] = match.group(0) + placeholder = f"" + self.code_blocks[placeholder] = match.group(0) return placeholder def run(self, text): @@ -2796,8 +2797,6 @@ def run(self, text): except ImportError: raise ImportError('The "latex" extra requires the "latex2mathml" package to be installed.') - code_blocks = {} - # Replace code blocks with placeholder tag text = self._pre_code_block_re.sub(self.code_placeholder, text) @@ -2805,7 +2804,7 @@ def run(self, text): text = self._double_dollar_re.sub(self._convert_double_match, text) # Convert placeholder tag back to original code - for placeholder, code_block in code_blocks.items(): + for placeholder, code_block in self.code_blocks.items(): text = text.replace(placeholder, code_block) return text