diff options
| author | Michael Williamson <mike@zwobble.org> | 2015-02-07 18:55:24 +0000 |
|---|---|---|
| committer | Michael Williamson <mike@zwobble.org> | 2015-02-07 18:55:24 +0000 |
| commit | 57eddaefd1961884cddbaf427459822ad8811aeb (patch) | |
| tree | 1693604dfbd460f861227915b9734a4b9ebeb3eb /mammoth/writers | |
| parent | e0b022e52d720758023bb0248ea0a17a4cbbb822 (diff) | |
Add scaffolding for markdown
Diffstat (limited to 'mammoth/writers')
| -rw-r--r-- | mammoth/writers/__init__.py | 18 | ||||
| -rw-r--r-- | mammoth/writers/markdown.py | 25 |
2 files changed, 41 insertions, 2 deletions
diff --git a/mammoth/writers/__init__.py b/mammoth/writers/__init__.py index 04a64d7..376b322 100644 --- a/mammoth/writers/__init__.py +++ b/mammoth/writers/__init__.py @@ -1,5 +1,19 @@ from .html import HtmlWriter +from .markdown import MarkdownWriter -def writer(): - return HtmlWriter() +def writer(output_format=None): + if output_format is None: + output_format = "html" + + return _writers[output_format]() + + +def formats(): + return _writers.keys() + + +_writers = { + "html": HtmlWriter, + "markdown": MarkdownWriter, +} diff --git a/mammoth/writers/markdown.py b/mammoth/writers/markdown.py new file mode 100644 index 0000000..c4e1158 --- /dev/null +++ b/mammoth/writers/markdown.py @@ -0,0 +1,25 @@ +from __future__ import unicode_literals + + +class MarkdownWriter(object): + def __init__(self): + self._fragments = [] + + def text(self, text): + self._fragments.append(text) + + def start(self, name, attributes=None): + pass + + def end(self, name): + if name == "p": + self._fragments.append("\n\n") + + def self_closing(self, name, attributes=None): + pass + + def append(self, other): + self._fragments.append(other) + + def as_string(self): + return "".join(self._fragments) |
