diff options
| author | John MacFarlane <jgm@berkeley.edu> | 2022-03-25 08:38:14 -0700 |
|---|---|---|
| committer | John MacFarlane <jgm@berkeley.edu> | 2022-03-25 08:38:50 -0700 |
| commit | 672822cf981e9fc240e428930bb18bf1a7cc223d (patch) | |
| tree | e32450018682a62682d44cb81a43be98330d6425 /src | |
| parent | dafdd16e10b9c3d2a8f06090385c381ca02d66e3 (diff) | |
RTF reader: optimize parsing of unformatted text.
Diffstat (limited to 'src')
| -rw-r--r-- | src/Text/Pandoc/Readers/RTF.hs | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/Text/Pandoc/Readers/RTF.hs b/src/Text/Pandoc/Readers/RTF.hs index 60880292c..716f36324 100644 --- a/src/Text/Pandoc/Readers/RTF.hs +++ b/src/Text/Pandoc/Readers/RTF.hs @@ -274,9 +274,9 @@ tok = do return $ hexToWord (T.pack [x,y]) letterSequence = T.pack <$> many1 (satisfy (\c -> isAscii c && isLetter c)) unformattedText = do - ts <- many1 ( many1 (satisfy (not . isSpecial)) - <|> ("" <$ nl)) - return $! UnformattedText $! T.pack $ mconcat ts + ts <- filter (\c -> c /= '\r' && c /= '\n') <$> + ( many1 (satisfy (\c -> not (isSpecial c) || c == '\r' || c == '\n'))) + return $! UnformattedText $ T.pack ts grouped = Grouped <$> (char '{' *> skipMany nl *> manyTill tok (char '}')) nl :: PandocMonad m => RTFParser m () |
