From 10c8b9f4bbd78de75ebd134547445e9f1df13248 Mon Sep 17 00:00:00 2001 From: Alexander Krotov Date: Mon, 12 Feb 2018 14:56:39 +0300 Subject: Muse reader: move indentation parsing from definitionListItem to definitionList --- src/Text/Pandoc/Readers/Muse.hs | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/Text/Pandoc/Readers/Muse.hs b/src/Text/Pandoc/Readers/Muse.hs index 32be9018f..1385533b3 100644 --- a/src/Text/Pandoc/Readers/Muse.hs +++ b/src/Text/Pandoc/Readers/Muse.hs @@ -529,9 +529,8 @@ orderedList = try $ do rest <- many $ listItem (col - 1) (museOrderedListMarker style) return $ B.orderedListWith p <$> sequence (first : rest) -definitionListItem :: PandocMonad m => Int -> MuseParser m (F (Inlines, [Blocks])) -definitionListItem n = try $ do - count n spaceChar +definitionListItem :: PandocMonad m => MuseParser m (F (Inlines, [Blocks])) +definitionListItem = try $ do pos <- getPosition term <- trimInlinesF . mconcat <$> manyTill (choice inlineList) (string "::") void spaceChar <|> lookAhead eol @@ -544,9 +543,10 @@ definitionList :: PandocMonad m => MuseParser m (F Blocks) definitionList = try $ do many spaceChar pos <- getPosition - guardDisabled Ext_amuse <|> guard (sourceColumn pos /= 1) -- Initial space is required by Amusewiki, but not Emacs Muse - first <- definitionListItem 0 - rest <- many $ try (optional blankline >> definitionListItem (sourceColumn pos - 1)) + let indent = sourceColumn pos - 1 + guardDisabled Ext_amuse <|> guard (indent /= 0) -- Initial space is required by Amusewiki, but not Emacs Muse + first <- definitionListItem + rest <- many $ try (optional blankline >> count indent spaceChar >> definitionListItem) return $ B.definitionList <$> sequence (first : rest) -- -- cgit v1.2.3