packages/python/python-markdown/0001-fix-double-escaping.patch

33 lines
1.2 KiB
Diff

From f43f515333519b44f76746d80e0e77876bf76804 Mon Sep 17 00:00:00 2001
From: facelessuser <faceless.shop@gmail.com>
Date: Sun, 7 Oct 2018 12:29:05 -0600
Subject: Fix double escaping of block code
Ref #725
diff --git a/markdown/extensions/codehilite.py b/markdown/extensions/codehilite.py
index d204ebf7..712618f6 100644
--- a/markdown/extensions/codehilite.py
+++ b/markdown/extensions/codehilite.py
@@ -200,13 +200,20 @@ def _parseHeader(self):
class HiliteTreeprocessor(Treeprocessor):
""" Hilight source code in code blocks. """
+ def code_unescape(self, text):
+ """Unescape code."""
+ text = text.replace("&amp;", "&")
+ text = text.replace("&lt;", "<")
+ text = text.replace("&gt;", ">")
+ return text
+
def run(self, root):
""" Find code blocks and store in htmlStash. """
blocks = root.iter('pre')
for block in blocks:
if len(block) == 1 and block[0].tag == 'code':
code = CodeHilite(
- block[0].text,
+ self.code_unescape(block[0].text),
linenums=self.config['linenums'],
guess_lang=self.config['guess_lang'],
css_class=self.config['css_class'],