]> Lady’s Gitweb - LesML/commit
Enable nested tags of the same kind
authorLady <redacted>
Sat, 22 Mar 2025 01:45:20 +0000 (21:45 -0400)
committerLady <redacted>
Sat, 22 Mar 2025 02:44:39 +0000 (22:44 -0400)
commit440eeff8f1b198dc3028fd4573a0ce871a86fa52
treecaea2d8a47491f6e7b602c21b7d48d376b2f23bb
parent27fb10d1b6e7ce74d4af82888c0ef3fdc6870f8d
Enable nested tags of the same kind

Previously, the processing rules do not allow nesting an element inside
of itself: ‹ ☞︎nested ☞︎tags☜︎ like ☞︎this☜︎☜︎ › do not work as expected.
This design choice was to (at least) appropriately handle ‹ ☞︎⟨this☜︎
weird ⟨case☜︎⟩ ›, where each inline should stop at the first delimiter.
Correct processing starts by looking for end sigils first, not start
sigils, backtracking to the last start sigil which precedes it,
wrapping that text, and then reprocessing the entire set of nodes until
no more end sigils with matching start sigils are found.

This commit implements that behaviour, which is of course a fair bit
more complicated but should improve the results. It also changes
specifying characters by Unicode code·point to use curly braces rather
than angle brackets, as the latter conflicted with the angle brackets
used in links. Specifying by Unicode code·point still isn’t supported
in links, but the behaviour should be less surprising.

The old Unicode code·point behaviour was probably broken also, in the
case where the code·point was not the first character in a paragraph,
but it is fixed now.
README.markdown
parser.xslt
This page took 0.059211 seconds and 4 git commands to generate.