From cd2a10d64f6f2a1a42c1a3f0c144a3a521083cd8 Mon Sep 17 00:00:00 2001 From: Michael Williamson Date: Wed, 17 Jun 2015 15:54:29 +0100 Subject: Allow strikethrough to be configured in style mapping --- mammoth/conversion.py | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) (limited to 'mammoth/conversion.py') diff --git a/mammoth/conversion.py b/mammoth/conversion.py index c4631e1..71edaf4 100644 --- a/mammoth/conversion.py +++ b/mammoth/conversion.py @@ -100,7 +100,7 @@ class DocumentConverter(object): if run.is_underline: self._convert_underline(run_generator) if run.is_strikethrough: - run_generator.start("s") + self._convert_strikethrough(run_generator) self._convert_elements_to_html(run.children, run_generator) run_generator.end_all() html_generator.append(run_generator) @@ -111,6 +111,15 @@ class DocumentConverter(object): if style is not None: append_html_path(run_generator, style.html_path) + + def _convert_strikethrough(self, run_generator): + style = self._find_style(None, "strikethrough") + if style is None: + run_generator.start("s") + else: + append_html_path(run_generator, style.html_path) + + def _convert_text(self, text, html_generator): html_generator.text(text.value) @@ -238,8 +247,8 @@ class DocumentConverter(object): def _document_matcher_matches(matcher, element, element_type): - if matcher.element_type == "underline": - return element_type == "underline" + if matcher.element_type in ["underline", "strikethrough"]: + return matcher.element_type == element_type else: return ( matcher.element_type == element_type and ( -- cgit v1.2.3