Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

blockquote inside list breaks list, unlike markdown.pl #172

Closed
jgm opened this issue Jun 10, 2011 · 2 comments

Comments

Projects
None yet
1 participant
@jgm
Copy link
Owner

commented Jun 10, 2011

Input:

  • list item

    blockquote in list item

    continuation of list item

  • list item 2

Markdown.pl does what I want, putting the blockquote in the list item:

  • list item

    blockquote in list item

    continuation of list item

  • list item 2

pandoc mangles it, closing and reopening the list for the blockquote.

  • Google Code Info:
    Issue #: 190
    Author: evan.mar...@gmail.com
    Created On: 2009-12-26T16:58:53.000Z
    Closed On: 2009-12-27T00:20:28.000Z

@ghost ghost assigned jgm Jun 10, 2011

@jgm jgm closed this Jun 10, 2011

@jgm

This comment has been minimized.

Copy link
Owner Author

commented Jun 10, 2011

Looking further, even this is handled differently:

  • foo

    bar

According to the markdown docs, you need 4 spaces for continued paragraphs, but
markdown.pl accepts 2. Not sure what the resolution of this bug should be...

Google Code Info:
Author: evan.mar...@gmail.com
Created On: 2009-12-26T17:16:45.000Z

@jgm

This comment has been minimized.

Copy link
Owner Author

commented Jun 10, 2011

Yes, according to the markdown spec:

List items may consist of multiple paragraphs. Each subsequent paragraph in a list
item must be indented by either 4 spaces or one tab...

Apparently markdown.pl isn't consistent about this, but I'm content if pandoc
satisfies the markdown syntax description. (Search the markdown-discuss list for
"four space rule" to see some relevant discussion of the pros and cons.)

It helps if you just make a habit of starting list items in column 5:

  • list item

blockquote in list item

continuation of list item

  • list item 2

Google Code Info:
Author: fiddloso...@gmail.com
Created On: 2009-12-27T00:20:28.000Z

jgm added a commit that referenced this issue Feb 27, 2017

Merge pull request #172 from twsh/parskip
Use parskip.sty when the 'indent' option isn't set

jgm added a commit that referenced this issue Aug 19, 2017

Markdown reader: use CommonMark rules for list item nesting.
Closes #3511.

Previously pandoc used the four-space rule: continuation paragraphs,
sublists, and other block level content had to be indented 4
spaces.  Now the indentation required is determined by the
first line of the list item:  to be included in the list item,
blocks must be indented to the level of the first non-space
content after the list marker. Exception: if are 5 or more spaces
after the list marker, then the content is interpreted as an
indented code block, and continuation paragraphs must be indented
two spaces beyond the end of the list marker.  See the CommonMark
spec for more details and examples.

Documents that adhere to the four-space rule should, in most cases,
be parsed the same way by the new rules.  Here are some examples
of texts that will be parsed differently:

    - a
      - b

will be parsed as a list item with a sublist; under the four-space
rule, it would be a list with two items.

    - a

          code

Here we have an indented code block under the list item, even though it
is only indented six spaces from the margin, because it is four spaces
past the point where a continuation paragraph could begin.  With the
four-space rule, this would be a regular paragraph rather than a code
block.

    - a

            code

Here the code block will start with two spaces, whereas under
the four-space rule, it would start with `code`.  With the four-space
rule, indented code under a list item always must be indented eight
spaces from the margin, while the new rules require only that it
be indented four spaces from the beginning of the first non-space
text after the list marker (here, `a`).

This change was motivated by a slew of bug reports from people
who expected lists to work differently (#3125, #2367, #2575, #2210,
 #1990, #1137, #744, #172, #137, #128) and by the growing prevalance
of CommonMark (now used by GitHub, for example).

Users who want to use the old rules can select the `four_space_rule`
extension.

* Added `four_space_rule` extension.
* Added `Ext_four_space_rule` to `Extensions`.
* `Parsing` now exports `gobbleAtMostSpaces`, and the type
  of `gobbleSpaces` has been changed so that a `ReaderOptions`
  parameter is not needed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.