%D \module %D [ file=attr-ini, %D version=2007.06.06, % probably a bit older %D title=\CONTEXT\ Node Macros, %D subtitle=Finalizing, %D author=Hans Hagen, %D date=\currentdate, %D copyright={PRAGMA ADE \& \CONTEXT\ Development Team}] %C %C This module is part of the \CONTEXT\ macro||package and is %C therefore copyrighted by \PRAGMA. See mreadme.pdf for %C details. \writestatus{loading}{ConTeXt Node Support / Finalizing} % Objects are processed indepently \unknown\ actually we may % need a proper callback. \unprotect \registerctxluafile{node-shp}{optimize} \registerctxluafile{node-fin}{optimize} % we might generalize this one % we might have two variants at some point (efficiency) \unexpanded\def\finalizeobjectbox #1{\clf_finalizebox#1\relax} \unexpanded\def\finalizeshipoutbox#1{\clf_finalizebox#1\relax} % Experimental (for Aditya): \unexpanded\def\cleanupbox#1{\clf_cleanupbox#1\relax} % Tricky stuff: this might become obsolete. \definesystemattribute[trigger][public] \newcount\c_syst_attr_trigger \edef\startinheritattributes{\attribute\triggerattribute\plusone} \edef\stopinheritattributes {\attribute\triggerattribute\attributeunsetvalue} \def\syst_attr_trigger_copy_yes{\afterassignment\syst_attr_trigger_copy_indeed\c_syst_attr_trigger} \def\syst_attr_trigger_dump_yes{\afterassignment\syst_attr_trigger_dump_indeed\c_syst_attr_trigger} \def\syst_attr_trigger_copy_indeed {\ifvbox\c_syst_attr_trigger \vpack attr \triggerattribute \plusone {\unvcopy\c_syst_attr_trigger}% \else \hpack attr \triggerattribute \plusone {\unhcopy\c_syst_attr_trigger}% \fi} \def\syst_attr_trigger_dump_indeed {\ifvbox\c_syst_attr_trigger \vpack attr \triggerattribute \plusone {\unvbox\c_syst_attr_trigger}% \else \hpack attr \triggerattribute \plusone {\unhbox\c_syst_attr_trigger}% \fi} \unexpanded\def\enableattributeinheritance {\clf_enablestatetriggering \let\attributedcopy\syst_attr_trigger_copy_yes \let\attributedbox \syst_attr_trigger_dump_yes} \unexpanded\def\disableattributeinheritance {\clf_disablestatetriggering \let\attributedcopy\copy \let\attributedbox \box} \disableattributeinheritance \installtexdirective {attributes.inheritance} {\enableattributeinheritance} {\disableattributeinheritance} % \appendtoks % \enableattributeinheritance % might become default % \to\everyjob \protect \endinput