diff options
| author | John MacFarlane <[email protected]> | 2025-12-11 22:19:31 +0100 |
|---|---|---|
| committer | John MacFarlane <[email protected]> | 2025-12-11 22:19:31 +0100 |
| commit | a90307d0c87cb8d8ca67c60cc565656c22354b06 (patch) | |
| tree | 715ed47d8f07a5831427946f9ccd1ca06c0bb677 | |
| parent | c6e2eee5a5b407b2c747c0a15582a6e77e67b467 (diff) | |
Remove workaround that had been needed for older ghc versions.
| -rw-r--r-- | src/Text/Pandoc/Writers/Powerpoint/Presentation.hs | 24 |
1 files changed, 10 insertions, 14 deletions
diff --git a/src/Text/Pandoc/Writers/Powerpoint/Presentation.hs b/src/Text/Pandoc/Writers/Powerpoint/Presentation.hs index 7345d319a..9e7bcb04f 100644 --- a/src/Text/Pandoc/Writers/Powerpoint/Presentation.hs +++ b/src/Text/Pandoc/Writers/Powerpoint/Presentation.hs @@ -176,11 +176,6 @@ runPres :: WriterEnv -> WriterState -> Pres a -> (a, [LogMessage]) runPres env st p = (pres, reverse $ stLog finalSt) where (pres, finalSt) = runState (runReaderT p env) st --- GHC 7.8 will still complain about concat <$> mapM unless we specify --- Functor. We can get rid of this when we stop supporting GHC 7.8. -concatMapM :: (Monad m) => (a -> m [b]) -> [a] -> m [b] -concatMapM f xs = liftM concat (mapM f xs) - type Pixels = Integer data Presentation = Presentation DocProps [Slide] @@ -348,7 +343,7 @@ instance Default PicProps where -------------------------------------------------- inlinesToParElems :: [Inline] -> Pres [ParaElem] -inlinesToParElems = concatMapM inlineToParElems +inlinesToParElems = fmap mconcat . mapM inlineToParElems inlineToParElems :: Inline -> Pres [ParaElem] inlineToParElems (Str s) = do @@ -484,7 +479,7 @@ blockToParagraphs (BlockQuote blks) = , pPropIndent = Just 0 } , envRunProps = (envRunProps r){rPropForceSize = Just blockQuoteSize}})$ - concatMapM blockToParagraphs blks + mconcat <$> mapM blockToParagraphs blks -- TODO: work out the format blockToParagraphs blk@(RawBlock _ _) = do addLogMessage $ BlockNotRendered blk return [] @@ -508,7 +503,7 @@ blockToParagraphs (BulletList blksLst) = do , pPropIndent = Nothing , pPropIncremental = incremental }}) $ - concatMapM multiParList blksLst + mconcat <$> mapM multiParList blksLst blockToParagraphs (OrderedList listAttr blksLst) = do pProps <- asks envParaProps incremental <- listShouldBeIncremental @@ -518,7 +513,7 @@ blockToParagraphs (OrderedList listAttr blksLst) = do , pPropIndent = Nothing , pPropIncremental = incremental }}) $ - concatMapM multiParList blksLst + mconcat <$> mapM multiParList blksLst blockToParagraphs (DefinitionList entries) = do incremental <- listShouldBeIncremental let go :: ([Inline], [[Block]]) -> Pres [Paragraph] @@ -526,11 +521,12 @@ blockToParagraphs (DefinitionList entries) = do term <-blockToParagraphs $ Para [Strong ils] -- For now, we'll treat each definition term as a -- blockquote. We can extend this further later. - definition <- concatMapM (blockToParagraphs . BlockQuote) blksLst + definition <- + mconcat <$> mapM (blockToParagraphs . BlockQuote) blksLst return $ term ++ definition local (\env -> env {envParaProps = (envParaProps env) {pPropIncremental = incremental}}) - $ concatMapM go entries + $ mconcat <$> mapM go entries blockToParagraphs (Div (_, classes, _) blks) = let hasIncremental = "incremental" `elem` classes hasNonIncremental = "nonincremental" `elem` classes @@ -538,7 +534,7 @@ blockToParagraphs (Div (_, classes, _) blks) = let | hasNonIncremental -> Just InNonIncremental | otherwise -> Nothing addIncremental env = env { envInIncrementalDiv = incremental } - in local addIncremental (concatMapM blockToParagraphs blks) + in local addIncremental (mconcat <$> mapM blockToParagraphs blks) blockToParagraphs (Figure attr capt blks) = -- This never seems to be used: blockToParagraphs (Shared.figureDiv attr capt blks) blockToParagraphs hr@HorizontalRule = notRendered hr @@ -563,7 +559,7 @@ multiParList (b:bs) = do , pPropLevel = level + 1 } }) - $ concatMapM blockToParagraphs bs + $ mconcat <$> mapM blockToParagraphs bs return $ p ++ ps cellToParagraphs :: Alignment -> SimpleCell -> Pres [Paragraph] @@ -824,7 +820,7 @@ blocksToSlide' lvl blks spkNotes = bodyBlocksToSlide lvl blks spkNotes blockToSpeakerNotes :: Block -> Pres SpeakerNotes blockToSpeakerNotes (Div (_, ["notes"], _) blks) = local (\env -> env{envInSpeakerNotes=True}) $ - SpeakerNotes <$> concatMapM blockToParagraphs blks + SpeakerNotes . mconcat <$> mapM blockToParagraphs blks blockToSpeakerNotes _ = return mempty handleSpeakerNotes :: Block -> Pres () |
