@@ -212,7 +212,7 @@ escapeNormal = do
212 'C' -> quoteArg >>= resolveGlyph '\''
212 'C' -> quoteArg >>= resolveGlyph '\''
213 'f' -> escFont
213 'f' -> escFont
214 's' -> escFontSize
214 's' -> escFontSize
215− '*' -> escStar
215+ '*' -> escString
216 '"' -> mempty <$ skipMany (satisfy (/='\n')) -- line comment
216 '"' -> mempty <$ skipMany (satisfy (/='\n')) -- line comment
217 '#' -> mempty <$ manyTill anyChar newline
217 '#' -> mempty <$ manyTill anyChar newline
218 '%' -> return mempty
218 '%' -> return mempty
@@ -568,23 +568,14 @@ lexArgs = do
569 return [RoffStr "\""]
569 return [RoffStr "\""]
571−escStar :: PandocMonad m => RoffLexer m [LinePart]
571+escString :: PandocMonad m => RoffLexer m [LinePart]
572−escStar = try $ do
572+escString = try $ do
573 pos <- getPosition
573 pos <- getPosition
574− c <- anyChar
574+ (do cs <- escapeArg
577− cs <- count 2 anyChar
578− resolveString cs pos
575+ resolveString cs pos)
580− cs <- many (noneOf "\t\n\r ]")
581− char ']'
576+ <|> mempty <$ char 'S'
582− resolveString cs pos
583− 'S' -> return mempty -- switch back to default font size
584− _ -> resolveString [c] pos
588 -- strings and macros share namespace
579 -- strings and macros share namespace
589 resolveString stringname pos = do
580 resolveString stringname pos = do
590 RoffTokens ts <- resolveMacro stringname [] pos
581 RoffTokens ts <- resolveMacro stringname [] pos