git.iko.soy/typeable/pandoc
on master help sign in
MediaWiki reader: Fixed bug in certain nested lists.
4ee92dcJohn MacFarlane
src/Text/Pandoc/Readers/MediaWiki.hs+2−1
@@ -438,7 +438,8 @@ listItem c = try $ do
438 skipMany spaceChar
438 skipMany spaceChar
439 first <- concat <$> manyTill listChunk newline
439 first <- concat <$> manyTill listChunk newline
440 rest <- many
440 rest <- many
441+ (try $ string extras *> lookAhead listStartChar *>
441− (try $ string extras *> (concat <$> manyTill listChunk newline))
442+ (concat <$> manyTill listChunk newline))
442 contents <- parseFromString (many1 $ listItem' c)
443 contents <- parseFromString (many1 $ listItem' c)
443 (unlines (first : rest))
444 (unlines (first : rest))
444 case c of
445 case c of
tests/mediawiki-reader.native+4
@@ -102,6 +102,10 @@ Pandoc (Meta {unMeta = fromList []})
102 [[BulletList
102 [[BulletList
103 [[Plain [Str "But",Space,Str "jumping",Space,Str "levels",Space,Str "creates",Space,Str "empty",Space,Str "space."]]]]]]]
103 [[Plain [Str "But",Space,Str "jumping",Space,Str "levels",Space,Str "creates",Space,Str "empty",Space,Str "space."]]]]]]]
104,Para [Str "Any",Space,Str "other",Space,Str "start",Space,Str "ends",Space,Str "the",Space,Str "list."]
104,Para [Str "Any",Space,Str "other",Space,Str "start",Space,Str "ends",Space,Str "the",Space,Str "list."]
105+,BulletList
106+ [[BulletList
107+ [[Plain [Str "two"]]]]
108+ ,[Plain [Str "one"]]]
105,OrderedList (1,DefaultStyle,DefaultDelim)
109,OrderedList (1,DefaultStyle,DefaultDelim)
106 [[Plain [Str "Start",Space,Str "each",Space,Str "line"]]
110 [[Plain [Str "Start",Space,Str "each",Space,Str "line"]]
107 ,[Plain [Str "with",Space,Str "a",Space,Str "number",Space,Str "sign",Space,Str "(#)."]
111 ,[Plain [Str "with",Space,Str "a",Space,Str "number",Space,Str "sign",Space,Str "(#)."]
tests/mediawiki-reader.wiki+3
@@ -185,6 +185,9 @@ http://johnmacfarlane.net/pandoc/
185*** But jumping levels creates empty space.
185*** But jumping levels creates empty space.
186Any other start ends the list.
186Any other start ends the list.
187
187
188+** two
189+* one
190+
188# Start each line
191# Start each line
189# with a number sign (#).
192# with a number sign (#).
190## More number signs gives deeper
193## More number signs gives deeper