diff options
| author | Michael Williamson <mike@zwobble.org> | 2015-02-08 20:20:33 +0000 |
|---|---|---|
| committer | Michael Williamson <mike@zwobble.org> | 2015-02-08 20:20:33 +0000 |
| commit | 1236e907e724926dedfac0695b1eedbe0acf226f (patch) | |
| tree | 752bbedcffa05da7cdbe19b504c6ddb1de15b622 /mammoth/writers/markdown.py | |
| parent | 43c6b4c065d6581b93ae0e8a6dec673e6e029840 (diff) | |
Handle a tags in markdown writer
Diffstat (limited to 'mammoth/writers/markdown.py')
| -rw-r--r-- | mammoth/writers/markdown.py | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/mammoth/writers/markdown.py b/mammoth/writers/markdown.py index 8830277..66bc9f2 100644 --- a/mammoth/writers/markdown.py +++ b/mammoth/writers/markdown.py @@ -12,16 +12,22 @@ class _Wrapped(object): self._start = start self._end = end - def __call__(self): + def __call__(self, attributes): return self._start, self._end +def _hyperlink(attributes): + href = attributes.get("href", "") + return "[", "]({0})".format(href) + + def _init_writers(): writers = { "p": _Wrapped("", "\n\n"), "br": _Wrapped("", " \n"), "strong": _symmetric_wrapped("__"), "em": _symmetric_wrapped("*"), + "a": _hyperlink, } for level in range(1, 7): @@ -31,7 +37,7 @@ def _init_writers(): _writers = _init_writers() -_default_writer = lambda: ("", "") +_default_writer = lambda attributes: ("", "") class MarkdownWriter(object): @@ -43,7 +49,7 @@ class MarkdownWriter(object): self._fragments.append(_escape_markdown(text)) def start(self, name, attributes=None): - start, end = _writers.get(name, _default_writer)() + start, end = _writers.get(name, _default_writer)(attributes) self._fragments.append(start) self._element_stack.append(end) |
