diff options
author | Jesse Rosenthal <jrosenthal@jhu.edu> | 2014-06-24 14:24:38 -0400 |
---|---|---|
committer | Jesse Rosenthal <jrosenthal@jhu.edu> | 2014-06-24 15:06:25 -0400 |
commit | 69743cd5981d7e910c5d83da18fc698c8d522e69 (patch) | |
tree | d1fabd2b038e3de1cf6fbd21be44efa0aa3b9cca | |
parent | a8866bc1215a4e4c6582dedc940c86cdaeb02d9f (diff) | |
download | pandoc-69743cd5981d7e910c5d83da18fc698c8d522e69.tar.gz |
Docx reader: Ignore zero (or negative) indent
If a block has an indentation less than or equal to zero, it should not be
treated as a block quote.
-rw-r--r-- | src/Text/Pandoc/Readers/Docx.hs | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/src/Text/Pandoc/Readers/Docx.hs b/src/Text/Pandoc/Readers/Docx.hs index 59fb7b37f..b787ca9fb 100644 --- a/src/Text/Pandoc/Readers/Docx.hs +++ b/src/Text/Pandoc/Readers/Docx.hs @@ -132,7 +132,6 @@ runStyleToContainers rPr = divAttrToContainers :: [String] -> [(String, String)] -> [Container Block] -divAttrToContainers [] [] = [] divAttrToContainers (c:cs) _ | isJust (isHeaderClass c) = let n = fromJust (isHeaderClass c) in @@ -151,10 +150,14 @@ divAttrToContainers (c:cs) kvs | c `elem` listParagraphDivs = divAttrToContainers (c:cs) kvs | c `elem` blockQuoteDivs = (Container BlockQuote) : (divAttrToContainers (cs \\ blockQuoteDivs) kvs) divAttrToContainers (_:cs) kvs = divAttrToContainers cs kvs -divAttrToContainers [] (kv:kvs) | fst kv == "indent" = - (Container BlockQuote) : divAttrToContainers [] kvs -divAttrToContainers [] (_:kvs) = - divAttrToContainers [] kvs +divAttrToContainers [] kvs | isJust (lookup "indent" kvs) = + let kvs' = filter (\(k,_) -> k /= "indent") kvs + in + case fromJust (lookup "indent" kvs) of + "0" -> divAttrToContainers [] kvs' + ('-' : _) -> divAttrToContainers [] kvs' + _ -> (Container BlockQuote) : divAttrToContainers [] kvs' +divAttrToContainers _ _ = [] parStyleToContainers :: ParagraphStyle -> [Container Block] |