From 6740a9592a4cc20b501ea5c8d35c9fcb27203af0 Mon Sep 17 00:00:00 2001 From: mpickering Date: Thu, 25 Sep 2014 19:20:12 +0100 Subject: HTML Reader: Recognise
tags inside
 blocks

Closes #1620
---
 src/Text/Pandoc/Readers/HTML.hs | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

(limited to 'src/Text/Pandoc')

diff --git a/src/Text/Pandoc/Readers/HTML.hs b/src/Text/Pandoc/Readers/HTML.hs
index 4ea5f41d5..4e0bb375a 100644
--- a/src/Text/Pandoc/Readers/HTML.hs
+++ b/src/Text/Pandoc/Readers/HTML.hs
@@ -440,7 +440,7 @@ pCodeBlock :: TagParser Blocks
 pCodeBlock = try $ do
   TagOpen _ attr <- pSatisfy (~== TagOpen "pre" [])
   contents <- manyTill pAnyTag (pCloses "pre" <|> eof)
-  let rawText = concatMap fromTagText $ filter isTagText contents
+  let rawText = concatMap tagToString contents
   -- drop leading newline if any
   let result' = case rawText of
                      '\n':xs  -> xs
@@ -451,6 +451,11 @@ pCodeBlock = try $ do
                     _        -> result'
   return $ B.codeBlockWith (mkAttr attr) result
 
+tagToString :: Tag String -> String
+tagToString (TagText s) = s
+tagToString (TagOpen "br" _) = "\n"
+tagToString _ = ""
+
 inline :: TagParser Inlines
 inline = choice
            [ eNoteref
-- 
cgit v1.2.3