@@ -619,12 +619,12 @@ writeOpenXML opts (Pandoc meta blocks) = do
619619 _ -> []
620620 title <- withParaPropM (pStyleM "Title") $ blocksToOpenXML opts [Para tit | not (null tit)]
621621 subtitle <- withParaPropM (pStyleM "Subtitle") $ blocksToOpenXML opts [Para subtitle' | not (null subtitle')]
622− authors <- withParaPropM (pStyleM "Author") $ blocksToOpenXML opts $
622+ authors <- withParaProp (pCustomStyle "Author") $ blocksToOpenXML opts $
623623 map Para auths
624624 date <- withParaPropM (pStyleM "Date") $ blocksToOpenXML opts [Para dat | not (null dat)]
625625 abstract <- if null abstract'
626626 then return []
627− else withParaPropM (pStyleM "Abstract") $ blocksToOpenXML opts abstract'
627+ else withParaProp (pCustomStyle "Abstract") $ blocksToOpenXML opts abstract'
628628 let convertSpace (Str x : Space : Str y : xs) = Str (x ++ " " ++ y) : xs
629629 convertSpace (Str x : Str y : xs) = Str (x ++ y) : xs
630630 convertSpace xs = xs
@@ -693,14 +693,14 @@ blockToOpenXML opts (Header lev (ident,_,_) lst) = do
693693 ,("w:name",bookmarkName)] ()
694694 let bookmarkEnd = mknode "w:bookmarkEnd" [("w:id", id')] ()
695695 return [mknode "w:p" [] (paraProps ++ [bookmarkStart, bookmarkEnd] ++ contents)]
696−blockToOpenXML opts (Plain lst) = withParaPropM (pStyleM "Compact")
696+blockToOpenXML opts (Plain lst) = withParaProp (pCustomStyle "Compact")
697697 $ blockToOpenXML opts (Para lst)
698698-- title beginning with fig: indicates that the image is a figure
699699blockToOpenXML opts (Para [Image alt (src,'f':'i':'g':':':tit)]) = do
700700 setFirstPara
701701 paraProps <- getParaProps False
702702 contents <- inlinesToOpenXML opts [Image alt (src,tit)]
703− captionNode <- withParaPropM (pStyleM "Image Caption")
703+ captionNode <- withParaProp (pCustomStyle "ImageCaption")
704704 $ blockToOpenXML opts (Para alt)
705705 return $ mknode "w:p" [] (paraProps ++ contents) : captionNode
706706-- fixDisplayMath sometimes produces a Para [] as artifact
@@ -712,8 +712,8 @@ blockToOpenXML opts (Para lst) = do
712712 _ -> False
713713 pSM <- gets stParaStyles
714714 let paraProps' = case paraProps of
715− [] | isFirstPara -> [mknode "w:pPr" [] [(pStyle "First Paragraph" pSM)]]
716− [] -> [mknode "w:pPr" [] [(pStyle "Body Text" pSM)]]
715+ [] | isFirstPara -> [mknode "w:pPr" [] [pCustomStyle "FirstParagraph"]]
716+ [] -> [mknode "w:pPr" [] [pStyle "Body Text" pSM]]
717717 ps -> ps
718718 modify $ \s -> s { stFirstPara = False }
719719 contents <- inlinesToOpenXML opts lst
@@ -741,7 +741,7 @@ blockToOpenXML opts (Table caption aligns widths headers rows) = do
741741 let captionStr = stringify caption
742742 caption' <- if null caption
743743 then return []
744− else withParaPropM (pStyleM "Table Caption")
744+ else withParaProp (pCustomStyle "TableCaption")
745745 $ blockToOpenXML opts (Para caption)
746746 let alignmentFor al = mknode "w:jc" [("w:val",alignmentToString al)] ()
747747 let cellToOpenXML (al, cell) = withParaProp (alignmentFor al)
@@ -752,8 +752,7 @@ blockToOpenXML opts (Table caption aligns widths headers rows) = do
752752 [ mknode "w:tcBorders" []
753753 $ mknode "w:bottom" [("w:val","single")] ()
754754 , mknode "w:vAlign" [("w:val","bottom")] () ]
755− let emptyCell = [mknode "w:p" [] [mknode "w:pPr" []
756− [mknode "w:pStyle" [("w:val","Compact")] ()]]]
755+ let emptyCell = [mknode "w:p" [] [pCustomStyle "Compact"]]
757756 let mkcell border contents = mknode "w:tc" []
758757 $ [ borderProps | border ] ++
759758 if null contents
@@ -801,9 +800,9 @@ blockToOpenXML opts (DefinitionList items) = do
801800
802801definitionListItemToOpenXML :: WriterOptions -> ([Inline],[[Block]]) -> WS [Element]
803802definitionListItemToOpenXML opts (term,defs) = do
804− term' <- withParaPropM (pStyleM "Definition Term")
803+ term' <- withParaProp (pCustomStyle "DefinitionTerm")
805804 $ blockToOpenXML opts (Para term)
806− defs' <- withParaPropM (pStyleM "Definition")
805+ defs' <- withParaProp (pCustomStyle "Definition")
807806 $ concat `fmap` mapM (blocksToOpenXML opts) defs
808807 return $ term' ++ defs'
809808