diff options
Diffstat (limited to 'tex/context/base/lxml-aux.lua')
-rw-r--r-- | tex/context/base/lxml-aux.lua | 20 |
1 files changed, 18 insertions, 2 deletions
diff --git a/tex/context/base/lxml-aux.lua b/tex/context/base/lxml-aux.lua index f6816ccb6..8eedade39 100644 --- a/tex/context/base/lxml-aux.lua +++ b/tex/context/base/lxml-aux.lua @@ -427,6 +427,14 @@ local function include(xmldata,pattern,attribute,recursive,loaddata,level) else xmldata.settings.inclusions = { name } end + if child.er then + local badinclusions = xmldata.settings.badinclusions + if badinclusions then + badinclusions[#badinclusions+1] = name + else + xmldata.settings.badinclusions = { name } + end + end end end end @@ -447,11 +455,11 @@ function xml.inclusion(e,default) return default end -function xml.inclusions(e,sorted) +local function getinclusions(key,e,sorted) while e do local settings = e.settings if settings then - local inclusions = settings.inclusions + local inclusions = settings[key] if inclusions then inclusions = table.unique(inclusions) -- a copy if sorted then @@ -467,6 +475,14 @@ function xml.inclusions(e,sorted) end end +function xml.inclusions(e,sorted) + return getinclusions("inclusions",e,sorted) +end + +function xml.badinclusions(e,sorted) + return getinclusions("badinclusions",e,sorted) +end + local b_collapser = lpeg.patterns.b_collapser local m_collapser = lpeg.patterns.m_collapser local e_collapser = lpeg.patterns.e_collapser |