git.iko.soy/typeable/pandoc
on master help sign in
Markdown reader: Avoid parsing raw tex unless \ + letter seen.
a274e15John MacFarlane
src/Text/Pandoc/Readers/Markdown.hs+2−1
@@ -1120,6 +1120,7 @@ rawVerbatimBlock = htmlInBalanced isVerbTag
1120rawTeXBlock :: PandocMonad m => MarkdownParser m (F Blocks)
1120rawTeXBlock :: PandocMonad m => MarkdownParser m (F Blocks)
1121rawTeXBlock = do
1121rawTeXBlock = do
1122 guardEnabled Ext_raw_tex
1122 guardEnabled Ext_raw_tex
1123+ lookAhead $ try $ char '\\' >> letter
1123 result <- (B.rawBlock "context" . trim . concat <$>
1124 result <- (B.rawBlock "context" . trim . concat <$>
1124 many1 ((++) <$> (rawConTeXtEnvironment <|> conTeXtCommand)
1125 many1 ((++) <$> (rawConTeXtEnvironment <|> conTeXtCommand)
1125 <*> (blanklines <|> many spaceChar)))
1126 <*> (blanklines <|> many spaceChar)))
@@ -1906,7 +1907,7 @@ inlineNote = try $ do
1906rawLaTeXInline' :: PandocMonad m => MarkdownParser m (F Inlines)
1907rawLaTeXInline' :: PandocMonad m => MarkdownParser m (F Inlines)
1907rawLaTeXInline' = try $ do
1908rawLaTeXInline' = try $ do
1908 guardEnabled Ext_raw_tex
1909 guardEnabled Ext_raw_tex
1909− lookAhead (char '\\')
1910+ lookAhead $ try $ char '\\' >> letter
1910 notFollowedBy' rawConTeXtEnvironment
1911 notFollowedBy' rawConTeXtEnvironment
1911 s <- rawLaTeXInline
1912 s <- rawLaTeXInline
1912 return $ return $ B.rawInline "tex" s -- "tex" because it might be context
1913 return $ return $ B.rawInline "tex" s -- "tex" because it might be context