However, now asterisks have two behaviours (bolding
& unordered lists). Just to clarify what I think the spec is saying about the
precedence of these, and what happens when they intersect in weird and unbalanced ways,
this test input:
=============
A ** test** to ** see
**what ** bold *
and lists does ** *** **
** test ** end **
=============
Should render as:
"<p>A <strong> test</strong> to **
see</p><ul><li><ul><li>what ** bold
*</li></ul></li></ul><p>and lists does <strong>
</strong>*
**</p><ul><li><ul><li>test <strong> end
</strong></li></ul></li></ul>".
It is not necessary for a specification to specify the behaviour for
absolutely every possible conceivable input. In fact, the HTML and CSS
spec don't do that either. They first define that some inputs are
"valid" and some are "invalid", and then proceed to prescribe the
correct behaviour only for the "valid" ones.
Although a wiki engine must obviously produce some output for any given
input, it does not follow that this output must be strictly prescribed.
If you did that, then you could never introduce new wiki syntax features
without breaking existing behaviour.
Thus, even in wiki syntax, a specification must define what constitutes
"valid" markup, and then define the behaviour for that valid mark-up.
Your above example is invalid mark-up. :-)
Timwi