spaces and newlines before list markers (was: evolving the spec)
Michel Fortin
michel.fortin at michelf.com
Mon Mar 3 06:48:08 EST 2008
Le 2008-03-02 à 22:14, Seumas Mac Uilleachan a écrit :
> What's needed is a way to distinguish your edge case from the
> general case where it would be a list. Do you use two white spaces
> to preserve the line breaks? Perhaps that could be the trigger in
> this case - a line ending in two white spaces prevents the next line
> from being formatted as a new list.
I don't think that's a good idea. Two spaces at the end of a line
means a line break, not an end of the current paragraph.
> I just tested this edge case in PHP Markdown Extra and it does the
> same thing (both with and without the two white spaces for newlines).
Indeed. I'm not sure what could be done here however, but here is an
idea.
John changed things a long time ago now so that it doesn't pose a
problem for text at the root of the document by forcing a blank line
to be present before a list when not inside a list. I'm thinking that
we could do the same for the content of list item parsed as block-
level content. For instance, here you would have a nested ordered list:
* Blah blah blah
1. blah blah
* Blah blah blah
Here too:
* Blah blah blah
1. blah blah
* Blah blah blah
But not in the next examples. Here the "1." list marker wouldn't be
accepted because we're in a block-level list element (since there is a
blank line between the two items):
* Blah blah blah
1. blah blah
* Blah blah blah
Same here, because there is a blank line inside the list item:
* Blah blah blah
Blah blah blah
1. blah blah
* Blah blah blah
Perhaps that's a too subtle distinction, but it's my preferred
solution to date.
Michel Fortin
michel.fortin at michelf.com
http://michelf.com/
More information about the Markdown-Discuss
mailing list