commonmark.js icon indicating copy to clipboard operation
commonmark.js copied to clipboard

Type-4 HTML block does not interrupt a paragraph

Open lo48576 opened this issue 4 years ago • 0 comments

Description

<!a> is a type-4 HTML block.

  1. Start condition: line begins with the string <! followed by an ASCII letter. End condition: line contains the character >.

--- https://spec.commonmark.org/0.30/#html-blocks

And the same section says:

All types of HTML blocks except type 7 may interrupt a paragraph.

Thus, <!a> is expected to interrupt paragraphs, if I understand correctly. However, commonmark.js demo emits unexpected output.

Case 1

input:

> foo
<!a>
> bar

expected output:

<blockquote>
<p>foo</p>
</blockquote>
<!a>
<blockquote>
<p>bar</p>
</blockquote>

actual output: (https://spec.commonmark.org/dingus/?text=%3E%20foo%0A%3C!a%3E%0A%3E%20bar)

<blockquote>
<p>foo
&lt;!a&gt;
bar</p>
</blockquote>

Case 2

input:

foo
<!a>
bar

expected output:

<p>foo</p>
<!a>
<p>bar</p>

actual output: (https://spec.commonmark.org/dingus/?text=foo%0A%3C!a%3E%0Abar)

<p>foo
&lt;!a&gt;
bar</p>

lo48576 avatar Jul 26 '21 16:07 lo48576