!! wikitext
;name :Definition
!! html
-<dl><dt>name </dt>
+<dl><dt>name</dt>
<dd>Definition</dd></dl>
!! end
!! wikitext
;http://example.com/ :definition
!! html
-<dl><dt><a rel="nofollow" class="external free" href="http://example.com/">http://example.com/</a> </dt>
+<dl><dt><a rel="nofollow" class="external free" href="http://example.com/">http://example.com/</a></dt>
<dd>definition</dd></dl>
!! end
!! wikitext
;news:alt.wikipedia.rox :This isn't even a real newsgroup!
!! html/php
-<dl><dt><a rel="nofollow" class="external free" href="news:alt.wikipedia.rox">news:alt.wikipedia.rox</a> </dt>
+<dl><dt><a rel="nofollow" class="external free" href="news:alt.wikipedia.rox">news:alt.wikipedia.rox</a></dt>
<dd>This isn't even a real newsgroup!</dd></dl>
!! html/parsoid
!! wikitext
;[http://www.wikipedia2.org/ Wikipedia :The Next Generation] :OK, I made that up
!! html
-<dl><dt><a rel="nofollow" class="external text" href="http://www.wikipedia2.org/">Wikipedia :The Next Generation</a> </dt>
+<dl><dt><a rel="nofollow" class="external text" href="http://www.wikipedia2.org/">Wikipedia :The Next Generation</a></dt>
<dd>OK, I made that up</dd></dl>
!! end
!! wikitext
;one<br/>two :two-line fun
!! html
-<dl><dt>one<br />two </dt>
+<dl><dt>one<br />two</dt>
<dd>two-line fun</dd></dl>
!! end
!! wikitext
;one</b>two :bad tag fun
!! html/php+tidy
-<dl><dt>onetwo </dt>
+<dl><dt>onetwo</dt>
<dd>bad tag fun</dd></dl>
!! html/parsoid
<dl>
</li></ul>
!! html
<ul><li>
-<dl><dt>term </dt>
+<dl><dt>term</dt>
<dd>description</dd></dl>
<ul><li>unordered</li></ul>
</li></ul>
*;d1 :d2
*;d3 :d4
!! html
-<ul><li><dl><dt>d1 </dt>
+<ul><li><dl><dt>d1</dt>
<dd>d2</dd>
-<dt>d3 </dt>
+<dt>d3</dt>
<dd>d4</dd></dl></li></ul>
!! end
!! wikitext
*;foo :bar
!! html
-<ul><li><dl><dt>foo </dt>
+<ul><li><dl><dt>foo</dt>
<dd>bar</dd></dl></li></ul>
!! end
!! wikitext
*#;foo :bar
!! html
-<ul><li><ol><li><dl><dt>foo </dt>
+<ul><li><ol><li><dl><dt>foo</dt>
<dd>bar</dd></dl></li></ol></li></ul>
!! end
*#*#;*;;foo :bar
*#*#;boo :baz
!! html/php
-<ul><li><ol><li><ul><li><ol><li><dl><dt>foo </dt>
+<ul><li><ol><li><ul><li><ol><li><dl><dt>foo</dt>
<dd><ul><li><dl><dt><dl><dt>bar</dt></dl></dd></dl></li></ul></dd></dl>
-<dl><dt>boo </dt>
+<dl><dt>boo</dt>
<dd>baz</dd></dl></li></ol></li></ul></li></ol></li></ul>
!! html/php+tidy
-<ul><li><ol><li><ul><li><ol><li><dl><dt>foo </dt>
+<ul><li><ol><li><ul><li><ol><li><dl><dt>foo</dt>
<dd><ul><li><dl><dt><dl><dt>bar</dt></dl></dt></dl></li></ul></dd></dl></li></ol></li></ul>
-<dl><dt>boo </dt>
+<dl><dt>boo</dt>
<dd>baz</dd></dl></li></ol></li></ul>
!! html/parsoid
<ul>
<dl>
<dt>
<dl>
-<dt>foo<span typeof="mw:Placeholder" data-parsoid='{"src":" "}'> </span></dt>
+<dt>foo</dt>
<dd data-parsoid='{"stx":"row"}'>bar</dd>
</dl></dt>
</dl></li>
</ul></dt>
-<dt>boo<span typeof="mw:Placeholder" data-parsoid='{"src":" "}'> </span></dt>
+<dt>boo</dt>
<dd data-parsoid='{"stx":"row"}'>baz</dd>
</dl></li>
</ol></li>
</ul>
!! end
+!! test
+Definition Lists: Mixed Lists: Test 13
+!! wikitext
+*#*#;*;;foo : bar
+*#*#;boo : baz
+!! html+tidy
+<ul><li><ol><li><ul><li><ol><li><dl><dt>foo </dt>
+<dd><ul><li><dl><dt><dl><dt>bar</dt></dl></dt></dl></li></ul></dd></dl></li></ol></li></ul>
+<dl><dt>boo </dt>
+<dd>baz</dd></dl></li></ol></li></ul>
+!! end
+
# FIXME: Maybe get rid of this test?
# From whitelist:
# * The test is wrong, there are two colons where there should be :;
!! wikitext
*#;*::;;foo :bar (who uses this?)
!! html/php+tidy
-<ul><li><ol><li><dl><dt>foo </dt>
+<ul><li><ol><li><dl><dt>foo</dt>
<dd><ul><li><dl><dd><dl><dd><dl><dt><dl><dt>bar (who uses this?)</dt></dl></dt></dl></dd></dl></dd></dl></li></ul></dd></dl></li></ol></li></ul>
!! html/parsoid
<ul>
<dl>
<dt>
<dl>
-<dt>foo<span typeof="mw:DisplaySpace mw:Placeholder" data-parsoid='{"src":" ","isDisplayHack":true}'> </span></dt>
+<dt>foo</dt>
<dd data-parsoid='{"stx":"row"}'>bar (who uses this?)</dd>
</dl></dt>
</dl></dd>
!! html/php
<table>
<tr>
-<td><div style="color: red !important;" data-contrived="put this here ||">hi</div>
+<td><div style="color: red !important;" data-contrived="put this here ||">hi</div>
</td></tr></table>
!! html/parsoid
!! html/php
<table>
<tr>
-<td>style="color: red !important;" data-contrived="put this here</td>
+<td>style="color: red !important;" data-contrived="put this here</td>
<td>foo
</td></tr></table>
!! wikitext
<div style="width:50% !important">important</div>
!! html
-<div style="width:50% !important">important</div>
+<div style="width:50% !important">important</div>
!!end
;title :def
;title:def
!! html/php
-<dl><dt>title  </dt>
+<dl><dt>title</dt>
<dd>def</dd>
-<dt>title </dt>
+<dt>title</dt>
<dd>def</dd>
<dt>title</dt>
<dd>def</dd></dl>
!! html/parsoid
-<dl><dt>title <span typeof="mw:Placeholder"> </span></dt><dd>def</dd>
-<dt>title<span typeof="mw:Placeholder"> </span></dt><dd>def</dd>
+<dl><dt>title </dt><dd>def</dd>
+<dt>title </dt><dd>def</dd>
<dt>title</dt><dd>def</dd></dl>
!! end
<div style="width:50% !important"> </div>
<div style="border : solid;"> </div>
!! html/php
-<div style="width:50% !important"> </div>
+<div style="width:50% !important"> </div>
<div style="width:50% !important"> </div>
<div style="width:50% !important"> </div>
<div style="border : solid;"> </div>
!! end
+!! test
+French spaces in wikitext
+!! wikitext
+foo ! bar ? bat 50 % is less than 75 %.
+
+Hello : this ; is « something ‹ else › again »
+!! html
+<p>foo ! bar ? bat 50 % is less than 75 %.
+</p><p>Hello : this ; is « something ‹ else › again »
+</p>
+!! end
+
+# It would be reasonable for Parsoid and PHP to differ here.
+# The PHP behavior is arguably a bug.
+!! test
+Corner case: french spaces in definition list
+!! wikitext
+;foo : bar
+!! html+tidy
+<dl><dt>foo </dt>
+<dd>bar</dd></dl>
+!! end
+
!! test
T5158: Test for French spaces in attributes
!! wikitext