@@ -95,7 +95,14 @@ data RoffState = RoffState { fontKind :: Font
95 } deriving Show
95 } deriving Show
97instance Default RoffState where
97instance Default RoffState where
98− def = RoffState { customMacros = mempty
98+ def = RoffState { customMacros = M.fromList
101+ (MLine [RoffStr (s, mempty)])))
99 , fontKind = S.singleton Regular }
106 , fontKind = S.singleton Regular }
101data ManState = ManState { readerOptions :: ReaderOptions
108data ManState = ManState { readerOptions :: ReaderOptions
@@ -366,22 +373,15 @@ escStar :: PandocMonad m => ManLexer m [LinePart]
366escStar = try $ do
373escStar = try $ do
367 char '\\'
374 char '\\'
370− let retstr s = return [RoffStr (s, font)]
371 c <- anyChar
376 c <- anyChar
372 case c of
377 case c of
373 '(' -> do
378 '(' -> do
374 cs <- count 2 anyChar
379 cs <- count 2 anyChar
376− "Tm" -> retstr "\x2122"
377− "lq" -> retstr "\x201c"
378− "rq" -> retstr "\x201d"
379− _ -> resolveString cs
380+ resolveString cs
380 '[' -> do
381 '[' -> do
381− cs <- many (noneOf "\t\n\r ]")
382+ cs <- many (noneOf "\t\n\r ]")
382− char ']'
383+ char ']'
383− resolveString cs
384+ resolveString cs
384− 'R' -> retstr "\xae"
385 'S' -> return mempty -- switch back to default font size
385 'S' -> return mempty -- switch back to default font size
386 _ -> resolveString [c]
386 _ -> resolveString [c]