From 81881ce4708f06ca53088d95ff249b48f2b2e88d Mon Sep 17 00:00:00 2001 From: John MacFarlane Date: Wed, 9 May 2018 10:00:34 -0700 Subject: Parsing: Lookahead for non-whitespace after single/double quote start. Closes #4637. --- src/Text/Pandoc/Parsing.hs | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'src/Text/Pandoc') diff --git a/src/Text/Pandoc/Parsing.hs b/src/Text/Pandoc/Parsing.hs index fa6baf1c7..05f4f7d36 100644 --- a/src/Text/Pandoc/Parsing.hs +++ b/src/Text/Pandoc/Parsing.hs @@ -1366,7 +1366,9 @@ singleQuoteStart = do failIfInQuoteContext InSingleQuote -- single quote start can't be right after str guard =<< notAfterString - () <$ charOrRef "'\8216\145" + try $ do + charOrRef "'\8216\145" + notFollowedBy (oneOf [' ', '\t', '\n']) singleQuoteEnd :: Stream s m Char => ParserT s st m () @@ -1379,7 +1381,7 @@ doubleQuoteStart :: (HasQuoteContext st m, Stream s m Char) doubleQuoteStart = do failIfInQuoteContext InDoubleQuote try $ do charOrRef "\"\8220\147" - notFollowedBy . satisfy $ flip elem [' ', '\t', '\n'] + notFollowedBy (oneOf [' ', '\t', '\n']) doubleQuoteEnd :: Stream s m Char => ParserT s st m () -- cgit v1.2.3