After some experiments I am now fairly convinced that the entities are substituted BEFORE the typesettting actually starts. And thus changing the entity on the fly will have no effect. Is there a flag that can be set in order to delay the substitution until the actual moment of typesetting that part of the input? I examined files lxml-ent.lua and lxml-tex.lua but could not find how to this. dr. Hans van der Meer
On 17 Apr 2023, at 18:11, Hans van der Meer via ntg-context
wrote: I tried \directlua{xml.registerentity("DATE","NEWDATE")}
but neither does effect a change in the entity.
Why is that entry not set in the Lua-table entities? (file xml-ent.lua) has as that function:
function xml.registerentity(key,value) entities[key] = value if trace_entities then report_xml("registering entity %a as %a",key,value) end end
On 17 Apr 2023, at 12:32, Hans van der Meer
wrote: I would like to change an entity 'on the fly'. Example
\def\DATE{THEDATE}\expanded{\xmlsetentity{DATE}{\DATE}}
\startxmlsetups typ:event
\def\DATE{NEWDATE}\expanded{\xmlsetentity{DATE}{\DATE}}
Using &DATE; within the <event>.
\stopxmlsetups
However, using &DATE; inside an <event> always results in THEDATE and never in NEWDATE.
How can I change the value of the entity inside the xmlsetups?
dr. Hans van der Meer ___________________________________________________________________________________ If your question is of interest to others as well, please add an entry to the Wiki!
maillist : ntg-context@ntg.nl / https://www.ntg.nl/mailman/listinfo/ntg-context webpage : https://www.pragma-ade.nl / http://context.aanhet.net archive : https://bitbucket.org/phg/context-mirror/commits/ wiki : https://contextgarden.net ___________________________________________________________________________________