Markdown generates invalid html for a list immediately followed	by a quote
    John Fraser 
    john at attacklab.net
       
    Mon Jul  9 18:33:20 EDT 2007
    
    
  
On 7/9/07, John Gruber <gruber at fedora.net> wrote:
> My plan for lists is to simplify them as follows:
>
> *   A list is a series of list items.
>
> *   If any of the items in a list are separated by a *single*
>     blank line, the entire list is in paragraph mode, and the
>     contents of each item in the list will be wrapped in `<p>`
>     tags.
>
> *   Otherwise, the list is not in paragraph mode and none of the
>     items' contents get `<p>` tags.
>
> *   Two consecutive blank lines ends the current list, no exceptions.
On 7/9/07, A. Pagaltzis <pagaltzis at gmx.de> wrote:
> But tight inner lists should never go into paragraph
> mode just because the outer list has.
With AP's modification, I like this a lot.
While we're talking about whitespace in lists, it might be worth
looking at the other axis: indentation.  Right now Markdown uses
4-character tab stops to differentiate nesting levels, which can be
pretty confusing at first.  It's natural to indent a nested list two
spaces, and it seems to work when you're only one level deep:
- level 1
  - level 2
But things break down in weird ways when you try to go deeper with
2-character indentation:
- level 1
  - level 2
    - level 2
      - level 3
        - level 3
          - level 4
I think it makes sense to get rid of this invisible 4-character grain,
and just consider a list item to be the start of a nested list if it's
indented more than the previous list item.  So:
- level 1
  - level 2
    - level 3
      - level 4
        - level 5
          - level 6
Another problem is that Markdown doesn't degrade gracefully when the
indentation gets wacky:
 - level 1
       - level 2
    - level 3
      - level 3
- level 3
To handle bizarre indentation, the rule should probably be that an
outdented list item belongs to the most recent list item that's
indented less.  So:
 - level 1
       - level 2
    - level 2
      - level 3
- level 1
Still kind of odd, but no more odd than the input.
    
    
More information about the Markdown-Discuss
mailing list