From cc5afbb8342458dea0eb5eb2c08b11b78220b831 Mon Sep 17 00:00:00 2001 From: John MacFarlane Date: Thu, 14 Nov 2019 07:58:50 -0800 Subject: [PATCH] Markdown reader: Use take1WhileP for str. This yields a small but measurable performance improvement. --- src/Text/Pandoc/Readers/Markdown.hs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/Text/Pandoc/Readers/Markdown.hs b/src/Text/Pandoc/Readers/Markdown.hs index 847c20706..1691c9ab4 100644 --- a/src/Text/Pandoc/Readers/Markdown.hs +++ b/src/Text/Pandoc/Readers/Markdown.hs @@ -1728,7 +1728,9 @@ nonEndline = satisfy (/='\n') str :: PandocMonad m => MarkdownParser m (F Inlines) str = do - result <- many1Char (alphaNum <|> try (char '.' <* notFollowedBy (char '.'))) + result <- mconcat <$> many1 + ( take1WhileP isAlphaNum + <|> "." <$ try (char '.' <* notFollowedBy (char '.')) ) updateLastStrPos (do guardEnabled Ext_smart abbrevs <- getOption readerAbbreviations