yogthos / markdown-clj

Markdown parser in Clojure
Eclipse Public License 1.0
540 stars 120 forks source link

HR lines written with consecutive - characters are superseded by empty headings #190

Open kees- opened 1 year ago

kees- commented 1 year ago

Using 1.11.4

I would PR but I'm not sure the exact cause.

Behavior

This markup:


***

- - -

---

-----

that presumably should be output as

<hr>
<hr>
<hr>
<hr>

is instead transformed to:

<hr>
<hr>
<h2></h2>
<h2></h2>

I believe because empty-line comes before hr in the list of transformers? The h1? and h2? heading checks, present in empty-line, register true for = and - HRs. Or something else...

Would it be as simple as adding hr to the conditions of empty-line here? Or should checks be rewritten, transformers reordered etc. Thanks!

yogthos commented 1 year ago

That sounds like it might be an issue. Would need a bit of experimentation to make sure though. If adding a check for hr in the empty-line handler doesn't break existing tests then I think that would be fine to make the change. It's probably the easiest fix.