git.iko.soy/typeable/pandoc
on master help sign in
Man reader: minor refactoring.
faa35bbJohn MacFarlane
src/Text/Pandoc/Readers/Man.hs+9−9
@@ -510,7 +510,7 @@ type ListBuilder = [Blocks] -> Blocks
510
510
511parseList :: PandocMonad m => ManParser m Blocks
511parseList :: PandocMonad m => ManParser m Blocks
512parseList = try $ do
512parseList = try $ do
513− xx <- many1 paras
513+ xx <- many1 items
514 let bls = map snd xx
514 let bls = map snd xx
515 let bldr = fst $ head xx
515 let bldr = fst $ head xx
516 return $ bldr bls
516 return $ bldr bls
@@ -528,20 +528,20 @@ parseList = try $ do
528 Left _ -> bulletList
528 Left _ -> bulletList
529 listKind _ = bulletList
529 listKind _ = bulletList
530
530
531− paras :: PandocMonad m => ManParser m (ListBuilder, Blocks)
531+ items :: PandocMonad m => ManParser m (ListBuilder, Blocks)
532− paras = do
532+ items = do
533 (MMacro _ args) <- mmacro "IP"
533 (MMacro _ args) <- mmacro "IP"
534 let lbuilder = listKind args
534 let lbuilder = listKind args
535 inls <- parseInlines
535 inls <- parseInlines
536 continuations <- mconcat <$> many continuation
536 continuations <- mconcat <$> many continuation
537 return $ (lbuilder, para inls <> continuations)
537 return $ (lbuilder, para inls <> continuations)
538
538
539− continuation :: PandocMonad m => ManParser m Blocks
539+continuation :: PandocMonad m => ManParser m Blocks
540− continuation = do
540+continuation = do
541− mmacro "RS"
541+ mmacro "RS"
542− bs <- mconcat <$> many (notFollowedBy (mmacro "RE") >> parseBlock)
542+ bs <- mconcat <$> many (notFollowedBy (mmacro "RE") >> parseBlock)
543− mmacro "RE"
543+ mmacro "RE"
544− return bs
544+ return bs
545
545
546-- In case of weird man file it will be parsed succesfully
546-- In case of weird man file it will be parsed succesfully
547parseSkipMacro :: PandocMonad m => ManParser m Blocks
547parseSkipMacro :: PandocMonad m => ManParser m Blocks