aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/Text/Pandoc/Writers/MediaWiki.hs5
-rw-r--r--test/command/3531.md19
2 files changed, 23 insertions, 1 deletions
diff --git a/src/Text/Pandoc/Writers/MediaWiki.hs b/src/Text/Pandoc/Writers/MediaWiki.hs
index 594e31e95..def245e38 100644
--- a/src/Text/Pandoc/Writers/MediaWiki.hs
+++ b/src/Text/Pandoc/Writers/MediaWiki.hs
@@ -409,10 +409,13 @@ inlineToMediaWiki LineBreak = return "<br />\n"
inlineToMediaWiki SoftBreak = do
wrapText <- gets (writerWrapText . stOptions)
+ listlevel <- asks listLevel
case wrapText of
WrapAuto -> return " "
WrapNone -> return " "
- WrapPreserve -> return "\n"
+ WrapPreserve -> if null listlevel
+ then return "\n"
+ else return " "
inlineToMediaWiki Space = return " "
diff --git a/test/command/3531.md b/test/command/3531.md
new file mode 100644
index 000000000..d71cbadbd
--- /dev/null
+++ b/test/command/3531.md
@@ -0,0 +1,19 @@
+```
+% pandoc -t mediawiki --wrap=preserve
+* This is a list item.
+* This is a list item in Markdown. It is
+ continued in the next line.
+ * It has a sub-item.
+* This is the next list item.
+
+A paragraph can span multiple lines
+without being broken into pieces.
+^D
+* This is a list item.
+* This is a list item in Markdown. It is continued in the next line.
+** It has a sub-item.
+* This is the next list item.
+
+A paragraph can span multiple lines
+without being broken into pieces.
+```