\startxmlsetups html \xmlsetsetup{#1}{{html|head}}{html:flush} \xmlsetsetup{#1}{{html head script}}{html:script:context} \xmlsetsetup{#1}{{html body}}{html:body} \xmlsetsetup{#1}{p}{html:p} \stopxmlsetups \startxmlsetups html:flush \xmlflush{#1} \stopxmlsetups \startluacode function xml.functions.parseScript(s) local mimetype = s and s.at and s.at.type if mimetype and mimetype == "text/vnd.context" then lxml.context(s) end end function xml.functions.flushBody(b) local xmlsetups = b and b.at and b.at["data-xmlsetups"] if xmlsetups then lxml.tobuffer(b, ".", "body") context("\\typebuffer[body]") context.xmlprocessbuffer("body", "body", xmlsetups) else lxml.flush(b) end end \stopluacode \startxmlsetups html:script:context \xmlfunction{#1}{parseScript} \stopxmlsetups \startxmlsetups html:body \starttext \xmlfunction{#1}{flushBody} \stoptext \stopxmlsetups \startxmlsetups html:p \dontleavehmode\xmlflush{#1}\par \stopxmlsetups \xmlregistersetup{html}