git.iko.soy/typeable/pandoc
on master help sign in
Introduce blockNormalize
a934db9Jesse Rosenthal
src/Text/Pandoc/Readers/Docx.hs+14−1
@@ -150,6 +150,19 @@ strNormalize (Str "" : ils) = strNormalize ils
150strNormalize ((Str s) : (Str s') : l) = strNormalize ((Str (s++s')) : l)
150strNormalize ((Str s) : (Str s') : l) = strNormalize ((Str (s++s')) : l)
151strNormalize (il:ils) = il : (strNormalize ils)
151strNormalize (il:ils) = il : (strNormalize ils)
152
152
153+blockNormalize :: Block -> Block
154+blockNormalize (Plain (Space : ils)) = blockNormalize (Plain ils)
155+blockNormalize (Plain ils) = Plain $ strNormalize ils
156+blockNormalize (Para (Space : ils)) = blockNormalize (Para ils)
157+blockNormalize (Para ils) = Para $ strNormalize ils
158+blockNormalize (Header n attr (Space : ils)) =
159+ blockNormalize $ Header n attr ils
160+blockNormalize (Table (Space : ils) align width hdr cells) =
161+ blockNormalize $ Table ils align width hdr cells
162+blockNormalize (Table ils align width hdr cells) =
163+ Table (strNormalize ils) align width hdr cells
164+blockNormalize blk = blk
165+
153runToInlines :: ReaderOptions -> Docx -> Run -> [Inline]
166runToInlines :: ReaderOptions -> Docx -> Run -> [Inline]
154runToInlines _ _ (Run rs runElems)
167runToInlines _ _ (Run rs runElems)
155 | isJust (rStyle rs) && (fromJust (rStyle rs)) `elem` codeSpans =
168 | isJust (rStyle rs) && (fromJust (rStyle rs)) `elem` codeSpans =
@@ -296,7 +309,7 @@ makeImagesSelfContained _ inline = inline
296bodyToBlocks :: ReaderOptions -> Docx -> Body -> [Block]
309bodyToBlocks :: ReaderOptions -> Docx -> Body -> [Block]
297bodyToBlocks opts docx (Body bps) =
310bodyToBlocks opts docx (Body bps) =
298 bottomUp removeEmptyPars $
311 bottomUp removeEmptyPars $
299− bottomUp strNormalize $
312+ bottomUp blockNormalize $
300 bottomUp spanRemove $
313 bottomUp spanRemove $
301 bottomUp divRemove $
314 bottomUp divRemove $
302 map (makeHeaderAnchors) $
315 map (makeHeaderAnchors) $