I appreciate all of the good feedback I've seen here about Creole 0.1. I have added a few clarifications to the Creole 0.1 spec:
Bold and Italics: Bold and Italics should be able to embed in lists and one should be able to make links bold and italic. Bold and/or italics can span lines, but not span across lines in lists nor across different paragraphs.
Lists: Bold, italics, links, pre can be embedded in lists. Whitespace is optional before and after the * or # character, however a space is required afterwards if someone wishes to start a list element with bold text. It is recommended to have support for a depth of at least five levels.
About unordered lists and bold: a line starting with ** (including optional whitespace before and afterwards), immediately following an unordered list element a line above, will be treated as a nested unordered list element. Otherwise it will be treated as the beginning of bold text. Note that bold and/or italics cannot span lines in a list.
-
To see the changes in context, please view: http://www.wikicreole.org/wiki/Creole0.1
Again, we do not wish to require a space after a list element in general, because many users forget to do this and we wish to make Creole as forgiving and user-friendly as possible, even if it means making parsers a bit more complicated.
Chuck
On 14/09/06, Chuck Smith chuckssmith@gmail.com wrote:
we wish to make Creole as forgiving and user-friendly as possible, even if it means making parsers a bit more complicated.
Good to hear :-)
- d.
On Thu, Sep 14, 2006 at 12:47:49PM +0200, Chuck Smith wrote:
Lists: Bold, italics, links, pre can be embedded in lists. Whitespace is optional before and after the * or # character, however a space is required afterwards if someone wishes to start a list element with bold text. It is recommended to have support for a depth of at least five levels.
About unordered lists and bold: a line starting with ** (including optional whitespace before and afterwards), immediately following an unordered list element a line above, will be treated as a nested unordered list element. Otherwise it will be treated as the beginning of bold text. Note that bold and/or italics cannot span lines in a list.
Those implementations will, IMO, prove to be too difficlut for users to model mentally. If I were you, I'd *require* a space after bullet markers, as I suggested in another thread; it will be a much safer disambiguation method.
Your *number one* concern -- if you're really starting from scratch -- is "what can users figure out by looking, unambiguously, without reading the cheat-sheet". That overrides any concerns of "how hard is it to code?".
IMO.
Cheers, -- jra
About unordered lists and bold: a line starting with ** (including optional whitespace before and afterwards), immediately following an unordered list element a line above, will be treated as a nested unordered list element. Otherwise it will be treated as the beginning of bold text.
So if I'm understanding correctly, this means that: ====================== ** two *** three ======================
Will render as: "<p><strong> two </strong>* three</p>"
Not: "<ul><li><ul><li>two<ul><li>three</li></ul></li></ul></li></ul>"
(as MediaWiki currently does) ?
All the best, Nick.
On Fri, Sep 15, 2006 at 10:33:42AM +1000, Nick Jenkins wrote:
About unordered lists and bold: a line starting with ** (including optional whitespace before and afterwards), immediately following an unordered list element a line above, will be treated as a nested unordered list element. Otherwise it will be treated as the beginning of bold text.
So if I'm understanding correctly, this means that:
** two
*** three
Will render as: "<p><strong> two </strong>* three</p>"
Not: "<ul><li><ul><li>two<ul><li>three</li></ul></li></ul></li></ul>"
(as MediaWiki currently does) ?
See? See?? ;-)
Cheers, -- jra
wikitech-l@lists.wikimedia.org