summaryrefslogtreecommitdiff
path: root/mammoth/options.py
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2014-01-07 22:50:38 +0000
committerMichael Williamson <mike@zwobble.org>2014-01-07 22:50:38 +0000
commit189b6180fc032c95e49023879fcf328795b45bd3 (patch)
tree3d97993388607ffb1d020f1afdc2a6f66ad0ee23 /mammoth/options.py
parent77b597fc382bc7674f1e4365825aba70814577f4 (diff)
Read options in separate module
Diffstat (limited to 'mammoth/options.py')
-rw-r--r--mammoth/options.py36
1 files changed, 36 insertions, 0 deletions
diff --git a/mammoth/options.py b/mammoth/options.py
new file mode 100644
index 0000000..4e4d5f1
--- /dev/null
+++ b/mammoth/options.py
@@ -0,0 +1,36 @@
+from . import style_reader, lists
+
+
+def read_options(options):
+ if options.get("style_map") is None:
+ style_map = _default_style_map
+ else:
+ style_map = _read_style_map(style_map)
+
+ options["style_map"] = style_map
+ return options
+
+
+def _read_style_map(style_text):
+ lines = filter(None, map(lambda line: line.strip(), style_text.split("\n")))
+ return lists.map(style_reader.read_style, lines)
+
+
+
+_default_style_map = _read_style_map("""
+p.Heading1 => h1:fresh
+p.Heading2 => h2:fresh
+p.Heading3 => h3:fresh
+p.Heading4 => h4:fresh
+p:unordered-list(1) => ul > li:fresh
+p:unordered-list(2) => ul|ol > li > ul > li:fresh
+p:unordered-list(3) => ul|ol > li > ul|ol > li > ul > li:fresh
+p:unordered-list(4) => ul|ol > li > ul|ol > li > ul|ol > li > ul > li:fresh
+p:unordered-list(5) => ul|ol > li > ul|ol > li > ul|ol > li > ul|ol > li > ul > li:fresh
+p:ordered-list(1) => ol > li:fresh
+p:ordered-list(2) => ul|ol > li > ol > li:fresh
+p:ordered-list(3) => ul|ol > li > ul|ol > li > ol > li:fresh
+p:ordered-list(4) => ul|ol > li > ul|ol > li > ul|ol > li > ol > li:fresh
+p:ordered-list(5) => ul|ol > li > ul|ol > li > ul|ol > li > ul|ol > li > ol > li:fresh
+""")
+