@@ -467,26 +467,25 @@ orderedList = try $ do
467467 rest <- many $ listItem (col - 1) (void (orderedListMarker style delim))
468468 return $ B.orderedListWith p <$> sequence (first : rest)
469469
470−definitionListItem :: PandocMonad m => MuseParser m (F (Inlines, [Blocks]))
471−definitionListItem = try $ do
472− many spaceChar
470+definitionListItem :: PandocMonad m => Int -> MuseParser m (F (Inlines, [Blocks]))
471+definitionListItem n = try $ do
472+ count n spaceChar
473473 pos <- getPosition
474− (guardDisabled Ext_amuse) <|> (guard (sourceColumn pos /= 1)) -- Initial space is required by Amusewiki, but not Emacs Muse
475474 term <- trimInlinesF . mconcat <$> manyTill (choice inlineList) (string "::")
476475 void spaceChar <|> lookAhead eol
477476 contents <- listItemContents' $ sourceColumn pos
478− optionMaybe blankline
479477 pure $ do lineContent' <- contents
480478 term' <- term
481479 pure (term', [lineContent'])
482480
483−definitionListItems :: PandocMonad m => MuseParser m (F [(Inlines, [Blocks])])
484−definitionListItems = sequence <$> many1 definitionListItem
485−
486481definitionList :: PandocMonad m => MuseParser m (F Blocks)
487−definitionList = do
488− items <- definitionListItems
489− return $ B.definitionList <$> items
482+definitionList = try $ do
483+ many spaceChar
484+ pos <- getPosition
485+ (guardDisabled Ext_amuse) <|> (guard (sourceColumn pos /= 1)) -- Initial space is required by Amusewiki, but not Emacs Muse
486+ first <- definitionListItem 0
487+ rest <- many $ try (optionMaybe blankline >> definitionListItem (sourceColumn pos - 1))
488+ return $ B.definitionList <$> sequence (first : rest)
490489
491490--
492491-- tables