git.iko.soy/typeable/pandoc
on master help sign in
Ensure proper nesting when we have long ordered list markers.

Closes #5705.

commit1c71bd1ff549737663ddf84e33276ddf8e926b39 authorJohn MacFarlane <jgm@berkeley.edu> dateFri 23 Aug 2019, 09:16 (7 years ago) parent9b5082b
2 files changed+16−2
src/Text/Pandoc/Writers/Markdown.hs+5−2 test/command/5705.md+11
src/Text/Pandoc/Writers/Markdown.hs+5−2
@@ -768,15 +768,18 @@ orderedListItemToMarkdown :: PandocMonad m
768768orderedListItemToMarkdown opts marker bs = do
769769 let exts = writerExtensions opts
770770 contents <- blockListToMarkdown opts $ taskListItemToAscii exts bs
771− let sps = case length marker - writerTabStop opts of
771+ let sps = case writerTabStop opts - length marker of
772772 n | n > 0 -> text $ replicate n ' '
773773 _ -> text " "
774+ let ind = if isEnabled Ext_four_space_rule opts
775+ then writerTabStop opts
776+ else max (writerTabStop opts) (length marker + 1)
774777 let start = text marker <> sps
775778 -- remove trailing blank line if item ends with a tight list
776779 let contents' = if itemEndsWithTightList bs
777780 then chomp contents <> cr
778781 else contents
779− return $ hang (writerTabStop opts) start $ contents' <> cr
782+ return $ hang ind start $ contents' <> cr
780783
781784-- | Convert definition list item (label, list of blocks) to markdown.
782785definitionListItemToMarkdown :: PandocMonad m
test/command/5705.mdnew file+11
@@ -0,0 +1,11 @@
1+```
2+% pandoc -f native -t markdown
3+[OrderedList (8,UpperRoman,Period)
4+ [[Plain [Str "Blah"]
5+ ,BulletList
6+ [[Plain [Str "Blah"]]]]]]
7+^D
8+VIII. Blah
9+ - Blah
10+```
11+