aboutsummaryrefslogtreecommitdiff
path: root/mammoth
diff options
context:
space:
mode:
Diffstat (limited to 'mammoth')
-rw-r--r--mammoth/writers/markdown.py8
1 files changed, 7 insertions, 1 deletions
diff --git a/mammoth/writers/markdown.py b/mammoth/writers/markdown.py
index c4e1158..76e4f90 100644
--- a/mammoth/writers/markdown.py
+++ b/mammoth/writers/markdown.py
@@ -1,12 +1,14 @@
from __future__ import unicode_literals
+import re
+
class MarkdownWriter(object):
def __init__(self):
self._fragments = []
def text(self, text):
- self._fragments.append(text)
+ self._fragments.append(_escape_markdown(text))
def start(self, name, attributes=None):
pass
@@ -23,3 +25,7 @@ class MarkdownWriter(object):
def as_string(self):
return "".join(self._fragments)
+
+
+def _escape_markdown(value):
+ return re.sub(r"([\`\*_\{\}\[\]\(\)\#\+\-\.\!])", r"\\\1", re.sub("\\\\", "\\\\\\\\", value))