@@ -44,7 +44,7 @@ import Text.Pandoc.Readers.LaTeX ( rawLaTeXInline, rawLaTeXBlock )
4444import Text.Pandoc.Readers.HTML ( htmlTag, htmlInBalanced, isInlineTag, isBlockTag,
4545 isTextTag, isCommentTag )
4646import Text.Pandoc.XML ( fromEntities )
47−import Control.Monad (when, liftM, guard, mzero)
47+import Control.Monad (when, liftM, guard, mzero, unless )
4848import Text.HTML.TagSoup
4949import Text.HTML.TagSoup.Match (tagOpen)
5050
@@ -592,11 +592,15 @@ listItem start = try $ do
592592orderedList :: Parser [Char] ParserState Block
593593orderedList = try $ do
594594 (start, style, delim) <- lookAhead anyOrderedListStart
595+ unless ((style == DefaultStyle || style == Decimal) &&
596+ (delim == DefaultDelim || delim == Period)) $
597+ guardEnabled Ext_fancy_lists
595598 items <- many1 $ listItem $ try $
596599 do optional newline -- if preceded by a Plain block in a list context
597600 skipNonindentSpaces
598601 orderedListMarker style delim
599− return $ OrderedList (start, style, delim) $ compactify items
602+ start' <- option 1 $ guardEnabled Ext_startnum >> return start
603+ return $ OrderedList (start', style, delim) $ compactify items
600604
601605bulletList :: Parser [Char] ParserState Block
602606bulletList =