git.iko.soy/typeable/pandoc
on master help sign in
Roff tokenizer: allow eof in some places we allowed only newline.
9defc25John MacFarlane
src/Text/Pandoc/Readers/Roff.hs+3−3
@@ -308,7 +308,7 @@ lexComment = do
308 try $ string ".\\\""
308 try $ string ".\\\""
309 many Parsec.space
309 many Parsec.space
310 skipMany $ noneOf "\n"
310 skipMany $ noneOf "\n"
311− char '\n'
311+ eofline
312 return mempty
312 return mempty
313
313
314lexMacro :: PandocMonad m => RoffLexer m RoffTokens
314lexMacro :: PandocMonad m => RoffLexer m RoffTokens
@@ -451,7 +451,7 @@ lexConditional = do
451-- n means nroff mode
451-- n means nroff mode
452lexNCond :: PandocMonad m => RoffLexer m RoffTokens
452lexNCond :: PandocMonad m => RoffLexer m RoffTokens
453lexNCond = do
453lexNCond = do
454− char '\n'
454+ newline
455 many1 spacetab
455 many1 spacetab
456 lexGroup <|> manToken
456 lexGroup <|> manToken
457
457
@@ -631,7 +631,7 @@ spaceTabChar = do
631 return [RoffStr [c]]
631 return [RoffStr [c]]
632
632
633lexEmptyLine :: PandocMonad m => RoffLexer m RoffTokens
633lexEmptyLine :: PandocMonad m => RoffLexer m RoffTokens
634−lexEmptyLine = char '\n' >> return (singleTok MEmptyLine)
634+lexEmptyLine = newline >> return (singleTok MEmptyLine)
635
635
636manToken :: PandocMonad m => RoffLexer m RoffTokens
636manToken :: PandocMonad m => RoffLexer m RoffTokens
637manToken = lexComment <|> lexMacro <|> lexLine <|> lexEmptyLine
637manToken = lexComment <|> lexMacro <|> lexLine <|> lexEmptyLine