git.iko.soy/typeable/pandoc
on master help sign in
LaTeX reader: withVerbatimMode now does nothing if already in
252398aJohn MacFarlane
src/Text/Pandoc/Readers/LaTeX/Parsing.hs+8−4
@@ -216,10 +216,14 @@ type LP m = ParserT [Tok] LaTeXState m
216
216
217withVerbatimMode :: PandocMonad m => LP m a -> LP m a
217withVerbatimMode :: PandocMonad m => LP m a -> LP m a
218withVerbatimMode parser = do
218withVerbatimMode parser = do
219+ alreadyVerbatimMode <- sVerbatimMode <$> getState
220+ if alreadyVerbatimMode
221+ then parser
222+ else do
219− updateState $ \st -> st{ sVerbatimMode = True }
223+ updateState $ \st -> st{ sVerbatimMode = True }
220− result <- parser
224+ result <- parser
221− updateState $ \st -> st{ sVerbatimMode = False }
225+ updateState $ \st -> st{ sVerbatimMode = False }
222− return result
226+ return result
223
227
224rawLaTeXParser :: (PandocMonad m, HasMacros s, HasReaderOptions s)
228rawLaTeXParser :: (PandocMonad m, HasMacros s, HasReaderOptions s)
225 => Bool -> LP m a -> LP m a -> ParserT String s m (a, String)
229 => Bool -> LP m a -> LP m a -> ParserT String s m (a, String)