diff options
author | John MacFarlane <jgm@berkeley.edu> | 2013-06-18 10:04:37 -0700 |
---|---|---|
committer | John MacFarlane <jgm@berkeley.edu> | 2013-06-18 10:04:37 -0700 |
commit | b04dfde403b4b43dbdf046f37c0b240e6f8af488 (patch) | |
tree | 264ba6d668c3a03b1754b362e789dc00a0cfc1f7 /src/Text/Pandoc | |
parent | a43e0ad5d683aec901622bd0cef8fa6fa47b7c59 (diff) | |
download | pandoc-b04dfde403b4b43dbdf046f37c0b240e6f8af488.tar.gz |
RST reader: don't insert paragraphs where docutils doesn't.
rst2html doesn't add `<p>` tags to list items (even when they are
separated by blank lines) unless there are multiple paragraphs in the
list. This commit changes the RST reader to conform more closely to
what docutils does.
Closes #880.
Diffstat (limited to 'src/Text/Pandoc')
-rw-r--r-- | src/Text/Pandoc/Readers/RST.hs | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/Text/Pandoc/Readers/RST.hs b/src/Text/Pandoc/Readers/RST.hs index 9bd832d14..4e0c0a277 100644 --- a/src/Text/Pandoc/Readers/RST.hs +++ b/src/Text/Pandoc/Readers/RST.hs @@ -441,7 +441,12 @@ listItem start = try $ do -- parse the extracted block, which may itself contain block elements parsed <- parseFromString parseBlocks $ concat (first:rest) ++ blanks updateState (\st -> st {stateParserContext = oldContext}) - return parsed + return $ case B.toList parsed of + [Para xs] -> B.singleton $ Plain xs + [Para xs, BulletList ys] -> B.fromList [Plain xs, BulletList ys] + [Para xs, OrderedList s ys] -> B.fromList [Plain xs, OrderedList s ys] + [Para xs, DefinitionList ys] -> B.fromList [Plain xs, DefinitionList ys] + _ -> parsed orderedList :: RSTParser Blocks orderedList = try $ do |