git.iko.soy/typeable/pandoc
on master help sign in
Muse reader: move end-of-line parsing to paraUntil
02cb6ebAlexander Krotov
src/Text/Pandoc/Readers/Muse.hs+3−3
@@ -259,7 +259,7 @@ parseBlocks =
259 blockStart = do first <- blockElements
259 blockStart = do first <- blockElements
260 rest <- parseBlocks
260 rest <- parseBlocks
261 return $ first B.<> rest
261 return $ first B.<> rest
262− paraStart = do (first, rest) <- paraUntil ((mempty <$ eof) <|> (blankline >> blockStart))
262+ paraStart = do (first, rest) <- paraUntil ((mempty <$ eof) <|> blockStart)
263 return $ first B.<> rest
263 return $ first B.<> rest
264
264
265parseBlock :: PandocMonad m => MuseParser m (F Blocks)
265parseBlock :: PandocMonad m => MuseParser m (F Blocks)
@@ -410,13 +410,13 @@ paraUntil end = do
410 indent <- length <$> many spaceChar
410 indent <- length <$> many spaceChar
411 st <- museInList <$> getState
411 st <- museInList <$> getState
412 let f = if not st && indent >= 2 && indent < 6 then B.blockQuote else id
412 let f = if not st && indent >= 2 && indent < 6 then B.blockQuote else id
413− (l, e) <- someUntil inline $ try end
413+ (l, e) <- someUntil inline $ try (manyTill spaceChar eol >> end)
414 let p = fmap (f . B.para) $ trimInlinesF $ mconcat l
414 let p = fmap (f . B.para) $ trimInlinesF $ mconcat l
415 return (p, e)
415 return (p, e)
416
416
417para :: PandocMonad m => MuseParser m (F Blocks)
417para :: PandocMonad m => MuseParser m (F Blocks)
418para =
418para =
419− fst <$> paraUntil (try (eof <|> (blankline >> void (lookAhead blockElements))))
419+ fst <$> paraUntil (try (eof <|> void (lookAhead blockElements)))
420
420
421noteMarker :: PandocMonad m => MuseParser m String
421noteMarker :: PandocMonad m => MuseParser m String
422noteMarker = try $ do
422noteMarker = try $ do