aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn MacFarlane <jgm@berkeley.edu>2021-09-10 09:50:05 -0700
committerJohn MacFarlane <jgm@berkeley.edu>2021-09-10 09:50:05 -0700
commit0216a2f5047dd78ecc3c26659281a8b629a83de0 (patch)
treea6f6566678761d0d528094880586516e0502dab1
parent12b3ee3787043f4c072c338762a5928c84ce5b5f (diff)
downloadpandoc-0216a2f5047dd78ecc3c26659281a8b629a83de0.tar.gz
Org reader: don't parse a list as first item in a list item.
Closes #7557.
-rw-r--r--src/Text/Pandoc/Readers/Org/Blocks.hs5
-rw-r--r--test/command/7557.md7
2 files changed, 11 insertions, 1 deletions
diff --git a/src/Text/Pandoc/Readers/Org/Blocks.hs b/src/Text/Pandoc/Readers/Org/Blocks.hs
index f18d2f9a7..2ec97d903 100644
--- a/src/Text/Pandoc/Readers/Org/Blocks.hs
+++ b/src/Text/Pandoc/Readers/Org/Blocks.hs
@@ -889,7 +889,10 @@ listItem parseIndentedMarker = try . withContext ListItemState $ do
firstLine <- anyLineNewline
blank <- option "" ("\n" <$ blankline)
rest <- T.concat <$> many (listContinuation markerLength)
- contents <- parseFromString blocks $ firstLine <> blank <> rest
+ contents <- parseFromString (do initial <- paraOrPlain <|> pure mempty
+ subsequent <- blocks
+ return $ initial <> subsequent)
+ (firstLine <> blank <> rest)
return (maybe id (prependInlines . checkboxToInlines) box <$> contents)
-- | Prepend inlines to blocks, adding them to the first paragraph or
diff --git a/test/command/7557.md b/test/command/7557.md
new file mode 100644
index 000000000..a62a3f14b
--- /dev/null
+++ b/test/command/7557.md
@@ -0,0 +1,7 @@
+```
+% pandoc -f org -t native
+- 11. and 12. 09. meeting
+- ^D
+[BulletList
+ [[Plain [Str "11.",Space,Str "and",Space,Str "12.",Space,Str "09.",Space,Str "meeting"]]]]
+```