diff --git a/md.bqn b/md.bqn index 12606caa..c84fa394 100644 --- a/md.bqn +++ b/md.bqn @@ -382,6 +382,9 @@ Markdown ← {filename𝕊𝕩: (1¨ <⊸∾ codeMask⊸GetMultiHighlights)⊸Modify 𝕩 }⟜JoinLines ProcHtmlBlock ← extensions◶JoinLines‿(<⟜2◶ProcComment‿ProcHtml) + + # Thematic Breaks + ProcBreak ← ∾("
"∾lf)¨ dig ← '0'+↕10 [lineChars,lineClas,procFns] ← ⍉[ @@ -392,6 +395,7 @@ Markdown ← {filename𝕊𝕩: "-+*" ‿ LenBullet ‿ ProcBullet # dig ‿ LenListNum ‿ ProcListNum "<" ‿ IsHtmlBlock ‿ ProcHtmlBlock + "" ‿ 0 ‿ ProcBreak ] ###### @@ -541,6 +545,10 @@ Markdown ← {filename𝕊𝕩: # part of a code block, it will be included in a paragraph. lineType -↩ codeMask ∧ 1 = lineType + # Lines that are thematic breaks + breakMask ← nonEmptyMask ∧ (blanks ≤ 3) ∧ {(3≤+´⊏0∾˜˘⌾⍉bw/nw)∧∨´bw←∧´˘(𝕩∊" ")⊸∨˘nw←"*-_"=⌜𝕩}¨𝕩 + lineType 6¨⌾(breakMask⊸/)↩ + # Tables are made up of rows that would otherwise be paragraph rows. # They are indicated by the delimiter row, consisting of only a few # allowed characters, preceded (!) by a header row with the same diff --git a/test/markdown.bqn b/test/markdown.bqn index e87b3f30..013b214d 100755 --- a/test/markdown.bqn +++ b/test/markdown.bqn @@ -15,7 +15,7 @@ UnEscape ← { } RunTest ← { in‿exp ← UnEscape∘(1↓¯1↓⊢)¨2↑𝕩 - out ← 0 Markdown (@+10) ((⊢-˜¬×+`)∘=⊔⊢) in + out ← 0 Markdown⎊("Runtime Error:"∾•Fmt∘⊢) (@+10) ((⊢-˜¬×+`)∘=⊔⊢) in ⟨exp≡out,in,exp,out,2⊑𝕩⟩ }