diff options
Diffstat (limited to 'src/Text')
| -rw-r--r-- | src/Text/Pandoc/Readers/RTF.hs | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/src/Text/Pandoc/Readers/RTF.hs b/src/Text/Pandoc/Readers/RTF.hs index 687296277..60880292c 100644 --- a/src/Text/Pandoc/Readers/RTF.hs +++ b/src/Text/Pandoc/Readers/RTF.hs @@ -216,7 +216,7 @@ parseRTF = do kvs <- sMetadata <$> getState pure $ foldr (uncurry B.setMeta) doc kvs -data Tok = Tok SourcePos TokContents +data Tok = Tok !SourcePos !TokContents deriving (Show, Eq) data TokContents = @@ -273,10 +273,10 @@ tok = do y <- hexDigit return $ hexToWord (T.pack [x,y]) letterSequence = T.pack <$> many1 (satisfy (\c -> isAscii c && isLetter c)) - unformattedText = - UnformattedText . T.pack . mconcat <$> - many1 ( many1 (satisfy (not . isSpecial)) - <|> ("" <$ nl)) + unformattedText = do + ts <- many1 ( many1 (satisfy (not . isSpecial)) + <|> ("" <$ nl)) + return $! UnformattedText $! T.pack $ mconcat ts grouped = Grouped <$> (char '{' *> skipMany nl *> manyTill tok (char '}')) nl :: PandocMonad m => RTFParser m () |
