diff --git a/run.py b/run.py index 00defec..3284f41 100755 --- a/run.py +++ b/run.py @@ -35,6 +35,10 @@ def make_html_path(path): return os.path.join(settings.OUTPUT_DIR, path + '.html') +_SWAP_A_AND_CODE_RE = re.compile(r'<(a|span)\b([^>]*)>([^<]*)()') +_MERGE_ADJACENT_CODE_RE = re.compile(r'( ?)') + + def md_to_html(md_data, path, hrefs=None): paths = path.split('/') @@ -61,6 +65,8 @@ def md_to_html(md_data, path, hrefs=None): md._html_attribute_hrefs = hrefs html = md.convert(md_data) + html = _SWAP_A_AND_CODE_RE.sub(r'<\1\2>\3', html) + html = _MERGE_ADJACENT_CODE_RE.sub(r'\1', html) return html, { 'meta_result': md._meta_result, 'mathjax_enabled': md._mathjax_enabled