From ecc206f7c3024db7bcf068e7af3df7bf71f1a327 Mon Sep 17 00:00:00 2001 From: John MacFarlane Date: Sun, 16 Sep 2012 10:29:35 -0700 Subject: RST reader: Small tweaks to raw field lists. * Don't allow line breaks in field names. * Strip off initial newline from 'raw' when field body begins on next line. --- src/Text/Pandoc/Readers/RST.hs | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) (limited to 'src/Text/Pandoc/Readers/RST.hs') diff --git a/src/Text/Pandoc/Readers/RST.hs b/src/Text/Pandoc/Readers/RST.hs index 74653efcf..1d64ff220 100644 --- a/src/Text/Pandoc/Readers/RST.hs +++ b/src/Text/Pandoc/Readers/RST.hs @@ -151,13 +151,12 @@ rawFieldListItem :: String -> Parser [Char] ParserState (String, String) rawFieldListItem indent = try $ do string indent char ':' - name <- many1 $ noneOf ":" - char ':' + name <- many1Till (noneOf "\n") (char ':') skipSpaces first <- manyTill anyChar newline rest <- option "" $ try $ do lookAhead (string indent >> spaceChar) indentedBlock - let raw = first ++ "\n" ++ rest ++ "\n" + let raw = (if null first then "" else (first ++ "\n")) ++ rest ++ "\n" return (name, raw) fieldListItem :: String -- cgit v1.2.3