diff options
| author | John MacFarlane <[email protected]> | 2023-03-17 20:06:17 -0700 |
|---|---|---|
| committer | John MacFarlane <[email protected]> | 2023-03-17 20:06:17 -0700 |
| commit | 80e750aa5e7ac03add8a3ef5a8f2725b1d0ff901 (patch) | |
| tree | 1f50cdc1eba8b12886d70f7144ee3d0b46b0b887 /src | |
| parent | a23d14079c056af3c63d7903dfd17b30c1e1b8d6 (diff) | |
Docx writer: include abstract title.
Closes #8702.
Uses localized term for abstract.
Diffstat (limited to 'src')
| -rw-r--r-- | src/Text/Pandoc/Writers/Docx.hs | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/src/Text/Pandoc/Writers/Docx.hs b/src/Text/Pandoc/Writers/Docx.hs index e3956c5ef..d33f2aca6 100644 --- a/src/Text/Pandoc/Writers/Docx.hs +++ b/src/Text/Pandoc/Writers/Docx.hs @@ -48,7 +48,7 @@ import Data.Time.Clock.POSIX import Data.Digest.Pure.SHA (sha1, showDigest) import Skylighting import Text.Pandoc.Class (PandocMonad, report, toLang, getMediaBag) -import Text.Pandoc.Translations (translateTerm) +import Text.Pandoc.Translations (Term(Abstract), translateTerm) import Text.Pandoc.MediaBag (lookupMedia, MediaItem(..)) import qualified Text.Pandoc.Translations as Term import qualified Text.Pandoc.Class.PandocMonad as P @@ -767,7 +767,15 @@ writeOpenXML opts (Pandoc meta blocks) = do date <- withParaPropM (pStyleM "Date") $ blocksToOpenXML opts [Para dat | not (null dat)] abstract <- if null abstract' then return [] - else withParaPropM (pStyleM "Abstract") $ blocksToOpenXML opts abstract' + else do + abstractTitle <- translateTerm Abstract + abstractTit <- withParaPropM (pStyleM "AbstractTitle") $ + blocksToOpenXML opts + [Para [Str abstractTitle]] + abstractContents <- withParaPropM (pStyleM "Abstract") $ + blocksToOpenXML opts abstract' + return $ abstractTit <> abstractContents + let convertSpace (Str x : Space : Str y : xs) = Str (x <> " " <> y) : xs convertSpace (Str x : Str y : xs) = Str (x <> y) : xs convertSpace xs = xs |
