git.iko.soy/typeable/pandoc
on master help sign in
Fixed markdown inline code parsing so it better accords with
845a658fiddlosopher
src/Text/Pandoc/Readers/Markdown.hs+6−4
@@ -666,10 +666,12 @@ symbol = do
666-- parses inline code, between n `s and n `s
666-- parses inline code, between n `s and n `s
667code = try $ do
667code = try $ do
668 starts <- many1 (char '`')
668 starts <- many1 (char '`')
669− let num = length starts
669+ skipSpaces
670− result <- many1Till anyChar (try (count num (char '`')))
670+ result <- many1Till (many1 (noneOf "`\n") <|> many1 (char '`') <|>
671− -- get rid of any internal newlines
671+ (char '\n' >> return " "))
672+ (try (skipSpaces >> count (length starts) (char '`') >>
673+ notFollowedBy (char '`')))
672− return $ Code $ removeLeadingTrailingSpace $ joinWithSep " " $ lines result
674+ return $ Code $ removeLeadingTrailingSpace $ concat result
673
675
674mathWord = many1 ((noneOf " \t\n\\$") <|>
676mathWord = many1 ((noneOf " \t\n\\$") <|>
675 (try (char '\\') >>~ notFollowedBy (char '$')))
677 (try (char '\\') >>~ notFollowedBy (char '$')))