summaryrefslogtreecommitdiff
path: root/src/Text
diff options
context:
space:
mode:
authorJohn MacFarlane <jgm@berkeley.edu>2022-03-25 08:38:14 -0700
committerJohn MacFarlane <jgm@berkeley.edu>2022-03-25 08:38:50 -0700
commit672822cf981e9fc240e428930bb18bf1a7cc223d (patch)
treee32450018682a62682d44cb81a43be98330d6425 /src/Text
parentdafdd16e10b9c3d2a8f06090385c381ca02d66e3 (diff)
RTF reader: optimize parsing of unformatted text.
Diffstat (limited to 'src/Text')
-rw-r--r--src/Text/Pandoc/Readers/RTF.hs6
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 ()