Closed MurakamiShinyu closed 8 months ago
問題が起きるMarkdownの例:
# A ## A-1 <table> <tr> <td> P </td> </tr> </table> ## A-2
VFMのsection化で、"A-2" のセクションは "A-1" のセクションと同じレベルのはずなのにひとつ下のレベルになってしまう不具合がある。
前のバージョン v2.1.0 ではこの問題ではこの不具合は起きない。v2.2.0 での修正の副作用のようである。
次のように "A-2" のセクションは "A-1" のセクションと同レベルになるべき(vfm 2.1.0 での出力):
<section class="level1" aria-labelledby="a"> <h1 id="a">A</h1> <section class="level2" aria-labelledby="a-1"> <h2 id="a-1">A-1</h2> <table> <tbody> <tr> <td> <p>P</p> </td> </tr> </tbody> </table> </section> <section class="level2" aria-labelledby="a-2"> <h2 id="a-2">A-2</h2> </section> </section>
次のように "A-2" のセクションは "A-1" のセクションの下のレベルになる(vfm 2.2.0 での出力):
<section class="level1" aria-labelledby="a"> <h1 id="a">A</h1> <section class="level2" aria-labelledby="a-1"> <h2 id="a-1">A-1</h2> <table> <tbody> <tr> <td> <p>P</p> </td> </tr> </tbody> </table> <section class="level2" aria-labelledby="a-2"> <h2 id="a-2">A-2</h2> </section> </section> </section>
Run vfm with DEBUG=vfm to see detailed log.
vfm
DEBUG=vfm
DEBUG=vfm vfm TEST.md vfm vfm ### mdast ### +0ms vfm root[3] (1:1-16:1, 0-64) vfm ├─0 section[2] vfm │ │ data: {"hName":"section","hProperties":{"class":["level1"],"aria-labelledby":"a"}} vfm │ │ depth: 1 vfm │ ├─0 heading[1] (1:1-1:4, 0-3) vfm │ │ │ depth: 1 vfm │ │ │ data: {"hProperties":{"id":"a"},"id":"a"} vfm │ │ └─0 text "A" (1:3-1:4, 2-3) vfm │ └─1 section[3] vfm │ │ data: {"hName":"section","hProperties":{"class":["level2"],"aria-labelledby":"a-1"}} vfm │ │ depth: 2 vfm │ ├─0 heading[1] (3:1-3:7, 5-11) vfm │ │ │ depth: 2 vfm │ │ │ data: {"hProperties":{"id":"a-1"},"id":"a-1"} vfm │ │ └─0 text "A-1" (3:4-3:7, 8-11) vfm │ ├─1 html "<table>\n<tr>\n<td>" (5:1-7:5, 13-30) vfm │ └─2 paragraph[1] (9:1-9:2, 32-33) vfm │ └─0 text "P" (9:1-9:2, 32-33) vfm ├─1 html "</td>\n</tr>\n</table>" (11:1-13:9, 35-55) vfm └─2 section[1] vfm │ data: {"hName":"section","hProperties":{"class":["level2"],"aria-labelledby":"a-2"}} vfm │ depth: 2 vfm └─0 heading[1] (15:1-15:7, 57-63) vfm │ depth: 2 vfm │ data: {"hProperties":{"id":"a-2"},"id":"a-2"} vfm └─0 text "A-2" (15:4-15:7, 60-63) +1ms vfm vfm ### hast ### +6ms vfm root[1] (1:1-16:1, 0-64) vfm │ data: {"quirksMode":false} vfm └─0 element<section>[2] (13:1, 47) vfm │ properties: {"className":["level1"],"ariaLabelledBy":["a"]} vfm ├─0 element<h1>[1] (1:1-1:4, 0-3) vfm │ │ properties: {"id":"a"} vfm │ └─0 text "A" (1:3-1:4, 2-3) vfm └─1 element<section>[4] (13:1, 47) vfm │ properties: {"className":["level2"],"ariaLabelledBy":["a-1"]} vfm ├─0 element<h2>[1] (3:1-3:7, 5-11) vfm │ │ properties: {"id":"a-1"} vfm │ └─0 text "A-1" (3:4-3:7, 8-11) vfm ├─1 element<table>[2] (5:1-13:9, 13-55) vfm │ │ properties: {} vfm │ ├─0 text "\n" (5:8-6:1, 20-21) vfm │ └─1 element<tbody>[2] vfm │ │ properties: {} vfm │ ├─0 element<tr>[3] (6:1-12:6, 21-46) vfm │ │ │ properties: {} vfm │ │ ├─0 text "\n" (6:5-7:1, 25-26) vfm │ │ ├─1 element<td>[2] (7:1-11:6, 26-40) vfm │ │ │ │ properties: {} vfm │ │ │ ├─0 element<p>[1] (9:1-9:2, 32-33) vfm │ │ │ │ │ properties: {} vfm │ │ │ │ └─0 text "P" (9:1-9:2, 32-33) vfm │ │ │ └─1 text "\n" vfm │ │ └─2 text "\n" (11:6-12:1, 40-41) vfm │ └─1 text "\n" (12:6-13:1, 46-47) vfm ├─2 text "\n" vfm └─3 element<section>[1] vfm │ properties: {"className":["level2"],"ariaLabelledBy":["a-2"]} vfm └─0 element<h2>[1] (15:1-15:7, 57-63) vfm │ properties: {"id":"a-2"} vfm └─0 text "A-2" (15:4-15:7, 60-63) +0ms vfm {} +6ms
Issue Details
問題が起きるMarkdownの例:
VFMのsection化で、"A-2" のセクションは "A-1" のセクションと同じレベルのはずなのにひとつ下のレベルになってしまう不具合がある。
前のバージョン v2.1.0 ではこの問題ではこの不具合は起きない。v2.2.0 での修正の副作用のようである。
Expected Behavior
次のように "A-2" のセクションは "A-1" のセクションと同レベルになるべき(vfm 2.1.0 での出力):
Actual Behavior
次のように "A-2" のセクションは "A-1" のセクションの下のレベルになる(vfm 2.2.0 での出力):
Debug log (Any)
Run
vfm
withDEBUG=vfm
to see detailed log.