diff options
-rw-r--r-- | src/Text/Pandoc/Readers/Man.hs | 12 | ||||
-rw-r--r-- | test/Tests/Readers/Man.hs | 8 | ||||
-rw-r--r-- | test/man-reader.native | 54 |
3 files changed, 37 insertions, 37 deletions
diff --git a/src/Text/Pandoc/Readers/Man.hs b/src/Text/Pandoc/Readers/Man.hs index 9ead84f3e..4eeeeb825 100644 --- a/src/Text/Pandoc/Readers/Man.hs +++ b/src/Text/Pandoc/Readers/Man.hs @@ -554,15 +554,15 @@ parseList = try $ do (MMacro _ args) <- mmacro "IP" let lbuilder = listKind args inls <- parseInlines - subls <- mconcat <$> many sublist - return $ (lbuilder, plain inls <> subls) + continuations <- mconcat <$> many continuation + return $ (lbuilder, para inls <> continuations) - sublist :: PandocMonad m => ManParser m Blocks - sublist = do + continuation :: PandocMonad m => ManParser m Blocks + continuation = do mmacro "RS" - bl <- parseList + bs <- mconcat <$> many (notFollowedBy (mmacro "RE") >> parseBlock) mmacro "RE" - return bl + return bs -- In case of weird man file it will be parsed succesfully parseSkipMacro :: PandocMonad m => ManParser m Blocks diff --git a/test/Tests/Readers/Man.hs b/test/Tests/Readers/Man.hs index a134c5813..974dd1cb9 100644 --- a/test/Tests/Readers/Man.hs +++ b/test/Tests/Readers/Man.hs @@ -75,16 +75,16 @@ tests = [ testGroup "Lists" [ "bullet" =: ".IP\nfirst\n.IP\nsecond" - =?> bulletList [plain $ str "first", plain $ str "second"] + =?> bulletList [para $ str "first", para $ str "second"] , "ordered" =: ".IP 1 a\nfirst\n.IP 2 a\nsecond" - =?> orderedListWith (1,Decimal,DefaultDelim) [plain $ str "first", plain $ str "second"] + =?> orderedListWith (1,Decimal,DefaultDelim) [para $ str "first", para $ str "second"] , "upper" =: ".IP A a\nfirst\n.IP B a\nsecond" - =?> orderedListWith (1,UpperAlpha,DefaultDelim) [plain $ str "first", plain $ str "second"] + =?> orderedListWith (1,UpperAlpha,DefaultDelim) [para $ str "first", para $ str "second"] , "nested" =: ".IP\nfirst\n.RS\n.IP\n1a\n.IP\n1b\n.RE" - =?> bulletList [(plain $ str "first") <> (bulletList [plain $ str "1a", plain $ str "1b"])] + =?> bulletList [(para $ str "first") <> (bulletList [para $ str "1a", para $ str "1b"])] ], testGroup "CodeBlocks" [ "cb1"=: diff --git a/test/man-reader.native b/test/man-reader.native index 042bd2386..1e10e2f11 100644 --- a/test/man-reader.native +++ b/test/man-reader.native @@ -17,8 +17,8 @@ Pandoc (Meta {unMeta = fromList [("title",MetaString "Pandoc Man tests")]}) ,CodeBlock ("",[],[]) "\nsub status {\n print \"working\";\n}" ,Para [Str "A",Space,Str "list:"] ,OrderedList (1,Decimal,Period) - [[Plain [Str "item",Space,Str "one"]] - ,[Plain [Str "item",Space,Str "two"]]] + [[Para [Str "item",Space,Str "one"]] + ,[Para [Str "item",Space,Str "two"]]] ,Header 2 ("",[],[]) [Str "Code",Space,Str "Blocks"] ,Para [Str "Code:"] ,CodeBlock ("",[],[]) "\n---- (should be four hyphens)\n\nsub status {\n print \"working\";\n}\n" @@ -29,48 +29,48 @@ Pandoc (Meta {unMeta = fromList [("title",MetaString "Pandoc Man tests")]}) ,Header 3 ("",[],[]) [Str "Unordered"] ,Para [Str "Asterisks:"] ,BulletList - [[Plain [Str "asterisk",Space,Str "1"]] - ,[Plain [Str "asterisk",Space,Str "2"]] - ,[Plain [Str "asterisk",Space,Str "3"]]] + [[Para [Str "asterisk",Space,Str "1"]] + ,[Para [Str "asterisk",Space,Str "2"]] + ,[Para [Str "asterisk",Space,Str "3"]]] ,Header 3 ("",[],[]) [Str "Ordered"] ,OrderedList (1,Decimal,Period) - [[Plain [Str "First"]] - ,[Plain [Str "Second"]] - ,[Plain [Str "Third"]]] + [[Para [Str "First"]] + ,[Para [Str "Second"]] + ,[Para [Str "Third"]]] ,Header 3 ("",[],[]) [Str "Nested"] ,BulletList - [[Plain [Str "Tab"] + [[Para [Str "Tab"] ,BulletList - [[Plain [Str "Tab"] + [[Para [Str "Tab"] ,BulletList - [[Plain [Str "Tab"]]]]]]] + [[Para [Str "Tab"]]]]]]] ,Para [Str "Here's",Space,Str "another:"] ,OrderedList (1,Decimal,Period) - [[Plain [Str "First"]] - ,[Plain [Str "Second:"] + [[Para [Str "First"]] + ,[Para [Str "Second:"] ,BulletList - [[Plain [Str "Fee"]] - ,[Plain [Str "Fie"]] - ,[Plain [Str "Foe"]]]] - ,[Plain [Str "Third"]]] + [[Para [Str "Fee"]] + ,[Para [Str "Fie"]] + ,[Para [Str "Foe"]]]] + ,[Para [Str "Third"]]] ,Para [Str "Same",Space,Str "thing:"] ,OrderedList (1,Decimal,Period) - [[Plain [Str "First"]] - ,[Plain [Str "Second:"] + [[Para [Str "First"]] + ,[Para [Str "Second:"] ,BulletList - [[Plain [Str "Fee"]] - ,[Plain [Str "Fie"]] - ,[Plain [Str "Foe"]]]] - ,[Plain [Str "Third"]]] + [[Para [Str "Fee"]] + ,[Para [Str "Fie"]] + ,[Para [Str "Foe"]]]] + ,[Para [Str "Third"]]] ,Header 3 ("",[],[]) [Str "different",Space,Str "styles:"] ,OrderedList (1,UpperAlpha,Period) - [[Plain [Str "Upper",Space,Str "Alpha"] + [[Para [Str "Upper",Space,Str "Alpha"] ,OrderedList (1,UpperRoman,Period) - [[Plain [Str "Upper",Space,Str "Roman."] + [[Para [Str "Upper",Space,Str "Roman."] ,OrderedList (6,Decimal,TwoParens) - [[Plain [Str "Decimal",Space,Str "start",Space,Str "with",Space,Str "6"] + [[Para [Str "Decimal",Space,Str "start",Space,Str "with",Space,Str "6"] ,OrderedList (3,LowerAlpha,OneParen) - [[Plain [Str "Lower",Space,Str "alpha",Space,Str "with",Space,Str "paren"]]]]]]]]] + [[Para [Str "Lower",Space,Str "alpha",Space,Str "with",Space,Str "paren"]]]]]]]]] ,Para [Str "*",Space,Str "*",Space,Str "*",Space,Str "*",Space,Str "*"] ,Header 2 ("",[],[]) [Str "Special",Space,Str "Characters"] ,Para [Str "AT&T",Space,Str "has",Space,Str "an",Space,Str "ampersand",Space,Str "in",Space,Str "their",Space,Str "name."] |