aboutsummaryrefslogtreecommitdiff
path: root/mammoth
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2014-08-30 10:54:02 +0100
committerMichael Williamson <mike@zwobble.org>2014-08-30 10:54:45 +0100
commit32d35f2fcdd85f65ea38eb16b772de503f8d4107 (patch)
tree9818c4727b277e52e64641867205930bf0df4b1e /mammoth
parent7d5045309a7100dfd2404f0bcdf73d27f4883ab1 (diff)
Ignore separators in footnotes XML
Diffstat (limited to 'mammoth')
-rw-r--r--mammoth/docx/footnotes_xml.py16
-rw-r--r--mammoth/lists.py3
2 files changed, 12 insertions, 7 deletions
diff --git a/mammoth/docx/footnotes_xml.py b/mammoth/docx/footnotes_xml.py
index c5ea746..1c596ab 100644
--- a/mammoth/docx/footnotes_xml.py
+++ b/mammoth/docx/footnotes_xml.py
@@ -1,15 +1,17 @@
-#~ from .. import documents
-#~ from .. import results
from .. import lists
-#~ from .xmlparser import node_types
-#~
+
def read_footnotes_xml_element(element):
- return lists.map(
- _read_footnote_element,
+ footnote_elements = lists.filter(
+ _is_footnote_element,
element.find_children("w:footnote"),
)
-
+ return lists.map(_read_footnote_element, footnote_elements)
+
+
+def _is_footnote_element(element):
+ return element.attributes.get("w:type") not in ["continuationSeparator", "separator"]
+
def _read_footnote_element(element):
return FootnoteElement(element.attributes["w:id"], element.children)
diff --git a/mammoth/lists.py b/mammoth/lists.py
index 28889a9..cf39b99 100644
--- a/mammoth/lists.py
+++ b/mammoth/lists.py
@@ -17,7 +17,10 @@ def _collect(values, result):
if sys.version_info[0] == 2:
map = map
+ filter = filter
else:
import builtins
def map(*args, **kwargs):
return list(builtins.map(*args, **kwargs))
+ def filter(*args, **kwargs):
+ return list(builtins.filter(*args, **kwargs))