Update documentation for MD032/blanks-around-lists to correct an example and discuss lazy continuation lines (fixes #972).

This commit is contained in:
David Anson 2023-09-14 20:59:24 -07:00
parent d45d7ef5bb
commit 3e44e43ac4
3 changed files with 93 additions and 42 deletions

View file

@ -3,28 +3,45 @@ followed by a blank line:
```markdown
Some text
* Some
* List
* List item
* List item
1. Some
2. List
Some text
1. List item
2. List item
***
```
To fix this, ensure that all lists have a blank line both before and after
(except where the block is at the beginning or end of the document):
In the first case above, text immediately precedes the unordered list. In the
second case above, a thematic break immediately follows the ordered list. To fix
violations of this rule, ensure that all lists have a blank line both before and
after (except when the list is at the very beginning or end of the document):
```markdown
Some text
* Some
* List
* List item
* List item
1. Some
2. List
1. List item
2. List item
Some text
***
```
Rationale: Aside from aesthetic reasons, some parsers, including kramdown, will
not parse lists that don't have blank lines before and after them.
Note that the following case is **not** a violation of this rule:
```markdown
1. List item
More item 1
2. List item
More item 2
```
Although it is not indented, the text "More item 2" is referred to as a
[lazy continuation line][lazy-continuation] and considered part of the second
list item.
Rationale: In addition to aesthetic reasons, some parsers, including kramdown,
will not parse lists that don't have blank lines before and after them.
[lazy-continuation]: https://spec.commonmark.org/0.30/#lazy-continuation-line

View file

@ -1347,31 +1347,48 @@ followed by a blank line:
```markdown
Some text
* Some
* List
* List item
* List item
1. Some
2. List
Some text
1. List item
2. List item
***
```
To fix this, ensure that all lists have a blank line both before and after
(except where the block is at the beginning or end of the document):
In the first case above, text immediately precedes the unordered list. In the
second case above, a thematic break immediately follows the ordered list. To fix
violations of this rule, ensure that all lists have a blank line both before and
after (except when the list is at the very beginning or end of the document):
```markdown
Some text
* Some
* List
* List item
* List item
1. Some
2. List
1. List item
2. List item
Some text
***
```
Rationale: Aside from aesthetic reasons, some parsers, including kramdown, will
not parse lists that don't have blank lines before and after them.
Note that the following case is **not** a violation of this rule:
```markdown
1. List item
More item 1
2. List item
More item 2
```
Although it is not indented, the text "More item 2" is referred to as a
[lazy continuation line][lazy-continuation] and considered part of the second
list item.
Rationale: In addition to aesthetic reasons, some parsers, including kramdown,
will not parse lists that don't have blank lines before and after them.
[lazy-continuation]: https://spec.commonmark.org/0.30/#lazy-continuation-line
<a name="md033"></a>

View file

@ -11,28 +11,45 @@ followed by a blank line:
```markdown
Some text
* Some
* List
* List item
* List item
1. Some
2. List
Some text
1. List item
2. List item
***
```
To fix this, ensure that all lists have a blank line both before and after
(except where the block is at the beginning or end of the document):
In the first case above, text immediately precedes the unordered list. In the
second case above, a thematic break immediately follows the ordered list. To fix
violations of this rule, ensure that all lists have a blank line both before and
after (except when the list is at the very beginning or end of the document):
```markdown
Some text
* Some
* List
* List item
* List item
1. Some
2. List
1. List item
2. List item
Some text
***
```
Rationale: Aside from aesthetic reasons, some parsers, including kramdown, will
not parse lists that don't have blank lines before and after them.
Note that the following case is **not** a violation of this rule:
```markdown
1. List item
More item 1
2. List item
More item 2
```
Although it is not indented, the text "More item 2" is referred to as a
[lazy continuation line][lazy-continuation] and considered part of the second
list item.
Rationale: In addition to aesthetic reasons, some parsers, including kramdown,
will not parse lists that don't have blank lines before and after them.
[lazy-continuation]: https://spec.commonmark.org/0.30/#lazy-continuation-line