From 0356ad4de6f19b3804b8a635e8ce8a5582ac2c5c Mon Sep 17 00:00:00 2001 From: John MacFarlane Date: Fri, 3 Dec 2010 22:42:18 -0800 Subject: Textile reader: drop leading, trailing newline in pre block. This is consistent with how the other readers work. --- src/Text/Pandoc/Readers/Textile.hs | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/Text/Pandoc/Readers/Textile.hs b/src/Text/Pandoc/Readers/Textile.hs index 52eebd07f..3465eebbe 100644 --- a/src/Text/Pandoc/Readers/Textile.hs +++ b/src/Text/Pandoc/Readers/Textile.hs @@ -120,8 +120,16 @@ block = choice blockParsers "block" codeBlock :: GenParser Char ParserState Block codeBlock = try $ do htmlTag False "pre" - content <- manyTill anyChar (try $ htmlEndTag "pre" >> blockBreak) - return $ CodeBlock ("",[],[]) content + result' <- manyTill anyChar (try $ htmlEndTag "pre" >> blockBreak) + -- drop leading newline if any + let result'' = case result' of + '\n':xs -> xs + _ -> result' + -- drop trailing newline if any + let result''' = case reverse result'' of + '\n':_ -> init result'' + _ -> result'' + return $ CodeBlock ("",[],[]) result''' -- | Header of the form "hN. content" with N in 1..6 header :: GenParser Char ParserState Block -- cgit v1.2.3