git.iko.soy/typeable/pandoc
on master help sign in
MediaWiki writer: Avoid extra blank lines after sublists.

Thanks to Gavin Beatty.

commitd320c2eac5d44392597f1d769568c7fae426e4b4 authorJohn MacFarlane <fiddlosopher@gmail.com> dateWed 27 Jun 2012, 14:46 (14 years ago) parente9f6366
2 files changed+6−10
src/Text/Pandoc/Writers/MediaWiki.hs+6−3 tests/writer.mediawiki−7
src/Text/Pandoc/Writers/MediaWiki.hs+6−3
@@ -149,6 +149,7 @@ blockToMediaWiki opts (Table capt aligns widths headers rows') = do
149149
150150blockToMediaWiki opts x@(BulletList items) = do
151151 oldUseTags <- get >>= return . stUseTags
152+ listLevel <- get >>= return . stListLevel
152153 let useTags = oldUseTags || not (isSimpleList x)
153154 if useTags
154155 then do
@@ -160,10 +161,11 @@ blockToMediaWiki opts x@(BulletList items) = do
160161 modify $ \s -> s { stListLevel = stListLevel s ++ "*" }
161162 contents <- mapM (listItemToMediaWiki opts) items
162163 modify $ \s -> s { stListLevel = init (stListLevel s) }
163− return $ vcat contents ++ "\n"
164+ return $ vcat contents ++ if null listLevel then "\n" else ""
164165
165166blockToMediaWiki opts x@(OrderedList attribs items) = do
166167 oldUseTags <- get >>= return . stUseTags
168+ listLevel <- get >>= return . stListLevel
167169 let useTags = oldUseTags || not (isSimpleList x)
168170 if useTags
169171 then do
@@ -175,10 +177,11 @@ blockToMediaWiki opts x@(OrderedList attribs items) = do
175177 modify $ \s -> s { stListLevel = stListLevel s ++ "#" }
176178 contents <- mapM (listItemToMediaWiki opts) items
177179 modify $ \s -> s { stListLevel = init (stListLevel s) }
178− return $ vcat contents ++ "\n"
180+ return $ vcat contents ++ if null listLevel then "\n" else ""
179181
180182blockToMediaWiki opts x@(DefinitionList items) = do
181183 oldUseTags <- get >>= return . stUseTags
184+ listLevel <- get >>= return . stListLevel
182185 let useTags = oldUseTags || not (isSimpleList x)
183186 if useTags
184187 then do
@@ -190,7 +193,7 @@ blockToMediaWiki opts x@(DefinitionList items) = do
190193 modify $ \s -> s { stListLevel = stListLevel s ++ ";" }
191194 contents <- mapM (definitionListItemToMediaWiki opts) items
192195 modify $ \s -> s { stListLevel = init (stListLevel s) }
193− return $ vcat contents ++ "\n"
196+ return $ vcat contents ++ if null listLevel then "\n" else ""
194197
195198-- Auxiliary functions for lists:
196199
tests/writer.mediawiki−7
@@ -170,8 +170,6 @@ Multiple paragraphs:
170170** Tab
171171*** Tab
172172
173−
174−
175173Here’s another:
176174
177175# First
@@ -179,7 +177,6 @@ Here’s another:
179177#* Fee
180178#* Fie
181179#* Foe
182−
183180# Third
184181
185182Same thing but with paragraphs:
@@ -189,7 +186,6 @@ Same thing but with paragraphs:
189186#* Fee
190187#* Fie
191188#* Foe
192−
193189# Third
194190
195191== Tabs and spaces ==
@@ -199,7 +195,6 @@ Same thing but with paragraphs:
199195** this is an example list item indented with tabs
200196** this is an example list item indented with spaces
201197
202−
203198== Fancy list markers ==
204199
205200<ol start="2" style="list-style-type: decimal;">
@@ -235,7 +230,6 @@ Autonumbering:
235230# More.
236231## Nested.
237232
238−
239233Should not be a list item:
240234
241235M.A. 2007
@@ -313,7 +307,6 @@ Blank line after term, indented marker, alternate markers:
313307;# sublist
314308;# sublist
315309
316−
317310= HTML Blocks =
318311
319312Simple block on one line: