vivliostyle / vfm

⬇️ Open and extendable Markdown syntax and toolchain.
https://vivliostyle.github.io/vfm/#/vfm
Other
69 stars 12 forks source link

HTML block end condition with blank line that has space (U+0020) #135

Open MurakamiShinyu opened 2 years ago

MurakamiShinyu commented 2 years ago

Issue Details

VFMが準拠するCommonMark仕様で、HTML blockの終了条件として

End condition: line is followed by a blank line.

とあります。また、blank-line の定義として

A line containing no characters, or a line containing only spaces (U+0020) or tabs (U+0009), is called a blank line.

とあります。

したがって次のような HTML block の例で

<div class="custom">

  - List Item

</div>

- List Item の上の空白行に space (U+0020)があってもなくても結果は変わらないはずです。

しかし、vfmで試すとspaceがある場合、次の結果になります:

<div class="custom">- List Item</div>

spaceがない場合は次のように期待どおりの結果になります:

<div class="custom">
  <ul>
    <li>List Item</li>
  </ul>
</div>
akabekobeko commented 2 years ago

覚書。

remark 本体 (CommonMark/GFM ) かプラグインの組み合わせなのか切り分ける必要あり。remark の場合は VFM v1.x で採用する系の開発が終わっていて micromark 版へ移行 = VFM v2.x に持ち越すことになるかもしれない。低リスクな対処療法でゆけるなら v1.x で検討する。

akabekobeko commented 2 years ago

とりあえず 1.1.x としておく