I'd like to propose the following logic for handling this element:
- If the first brace is on the first column, and there are no non-whitespace characters after the last brace, then this element starts a block-level element.
- Otherwise, start a <span>.
The point is that I've found that my users often want to escape markup within a sentence, and the above rules seem to work well in that case.
Whether there is whitespace before the first brace is a matter of taste, I believe.
-- Janne Jalkanen, 31-Aug-2006
like this?
this is an example {{ ==h1, **bold** }} that starts a span and this is an example as a block for sourcecode {{ println 'hello world'; }}
This way we would not need seperate syntaxes for monospaced and preformatted
-- Christoph, 31-Aug-2006
Well, monospace is different from preformatted which is different from monowiki. But essentially, yes.
I agree with Janne. I'd phrase the rules differently, however:
- If the opening triple braces start on the first column, open a pre block. It is closed by closing triple braces starting on the first column.
- Any other opening triple braces open a span. They are closed by tripple braces.
This has the benefit that you can include the markup for unprocessed text inside the markup for preformatted text. Something I have wanted to do on this wiki several times!
The desired result is:
To produce bold text, use {{{**bold**}}}.
And not:
To produce bold text, use {{{**bold**}}}.
Collision with MediaWiki format parameters#
Unfortunately {{{..}}} for preformatted text collides with MediaWiki template parameters, see Creole Markup Collision Analysis. Since MediaWiki is probably the most popular wiki of all this needs to be changed.
-- MartinBudden, 2006-12-23