aboutsummaryrefslogtreecommitdiff
path: root/_extensions
diff options
context:
space:
mode:
Diffstat (limited to '_extensions')
-rw-r--r--_extensions/ruc-play/semantic-markdown/semantic-markdown.lua13
1 files changed, 10 insertions, 3 deletions
diff --git a/_extensions/ruc-play/semantic-markdown/semantic-markdown.lua b/_extensions/ruc-play/semantic-markdown/semantic-markdown.lua
index 5d5967f..f076950 100644
--- a/_extensions/ruc-play/semantic-markdown/semantic-markdown.lua
+++ b/_extensions/ruc-play/semantic-markdown/semantic-markdown.lua
@@ -326,7 +326,6 @@ local function Statements (block)
end
if encl == Enclosure.NONE then
- elems_enclosed:insert(el)
-- specific elements represent content enclosure
if ElementTypeIsEnclosure[el.t] then
@@ -343,13 +342,21 @@ local function Statements (block)
local _, nextpos, s = el.text:find("^([^%[\\]*)")
pos = nextpos and nextpos + 1 or pos + 1
chars_unenclosed = chars_unenclosed..s
- chars_enclosed = chars_unenclosed
-- entering bracketed enclosure
if el.text:sub(pos, pos) == "[" then
+
+ -- qualify unenclosed elements
+ elems:extend(elems_unenclosed)
+ elems_unenclosed = pandoc.List()
+ elems_enclosed = pandoc.List()
+ if chars_unenclosed:len() > 0 then
+ elems:insert(pandoc.Str(chars_unenclosed))
+ end
+
pos = pos + 1
- chars_enclosed = chars_unenclosed
chars_unenclosed = chars_unenclosed.."["
+ chars_enclosed = ""
encl = Enclosure.BRACKETED
end
end