@@ -120,7 +120,8 @@ anyEnvironment = try $ do
120-- | Process LaTeX preamble, extracting metadata.
120-- | Process LaTeX preamble, extracting metadata.
121processLaTeXPreamble :: GenParser Char ParserState ()
121processLaTeXPreamble :: GenParser Char ParserState ()
122processLaTeXPreamble =
122processLaTeXPreamble =
123− skipMany $ notFollowedBy' anyEnvironment >> block
123+ skipMany $ choice [ bibliographic, unknownCommand,
124+ commentBlock, skipToken ]
125-- | Parse LaTeX and return 'Pandoc'.
126-- | Parse LaTeX and return 'Pandoc'.
126parseLaTeX :: GenParser Char ParserState Pandoc
127parseLaTeX :: GenParser Char ParserState Pandoc
@@ -156,7 +157,9 @@ block = choice [ hrule
156 , itemBlock
157 , itemBlock
157 , unknownEnvironment
158 , unknownEnvironment
159− , unknownCommand ] <?> "block"
160+ , unknownCommand
162-- header blocks
165-- header blocks
@@ -435,6 +438,9 @@ unknownCommand = try $ do
435commandsToIgnore :: [String]
438commandsToIgnore :: [String]
436commandsToIgnore = ["special","pdfannot","pdfstringdef","bibliography"]
439commandsToIgnore = ["special","pdfannot","pdfstringdef","bibliography"]
441+skipToken :: GenParser Char ParserState Block
442+skipToken = satisfy (/='\\') >> spaces >> return Null
438commentBlock :: GenParser Char st Block
444commentBlock :: GenParser Char st Block
439commentBlock = comment >> return Null
445commentBlock = comment >> return Null