parent
3b710b6fa7
commit
f5704fac97
3 changed files with 37 additions and 37 deletions
|
@ -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
|
||||
|
|
|
@ -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"=:
|
||||
|
|
|
@ -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."]
|
||||
|
|
Loading…
Add table
Reference in a new issue