List of the commands to work with cached boxes:
<texcode>\{{cmd|putboxincache }} <tt>{category} {name} number</tt>\{{cmd|getboxfromcache }} <tt>{category} {name} number</tt> \{{cmd|doifelseboxincache }} <tt>{category} {name}</tt>\{{cmd|copyboxfromcache }} <tt>{category} {name} number</tt> \{{cmd|directboxfromcache }} <tt>{category} {name}</tt>\{{cmd|directcopyboxfromcache }} <tt>{category} {name}</tt> \{{cmd|resetboxesincache }} <tt>{category}</tt> \{{cmd|putnextboxincache }} <tt>{category} {name} box</tt>\{{cmd|getboxwdfromcache }} <tt>{category} {name}</tt> \{{cmd|getboxhtfromcache }} <tt>{category} {name}</tt>\{{cmd|getboxdpfromcache }} <tt>{category} {name}</texcodett>
All these commands can be used on Lua side with the usual syntax <tt>context.<command>(<params>)</tt>
Boxed are stored in user defined '''categories''' (namespaces) and every box has its unique '''name''' inside its the category.
If the boxes are not to be cached for the subsequent runs, one needs to clear the category cache at the beginning of the document.
<texcode>
\resetboxesincache{category}
</texcode>
=Tracing= One can trace the creation of cached boxes in log or console with
<texcode>
\enabletrackers[nodes.boxes]
</texcode>
To visualize boxes (hbox, vbox) in PDF use
<texcode>
\showmakeup[boxes]
</texcode>
Tracing in general is explained in [[Debugging]].
[[Category:ConTeXt]] [[Category:Basics]] [[Category:Boxes]]