diff options
Diffstat (limited to 'tex/context/base/mkiv/node-fin.mkiv')
-rw-r--r-- | tex/context/base/mkiv/node-fin.mkiv | 79 |
1 files changed, 79 insertions, 0 deletions
diff --git a/tex/context/base/mkiv/node-fin.mkiv b/tex/context/base/mkiv/node-fin.mkiv new file mode 100644 index 000000000..413a00722 --- /dev/null +++ b/tex/context/base/mkiv/node-fin.mkiv @@ -0,0 +1,79 @@ +%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}{1.001} +\registerctxluafile{node-fin}{1.001} % 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\attributeboxcount + +\edef\startinheritattributes{\attribute\triggerattribute\plusone} +\edef\stopinheritattributes {\attribute\triggerattribute\attributeunsetvalue} + +\def\doattributedcopy{\afterassignment\dodoattributedcopy\attributeboxcount} +\def\doattributedbox {\afterassignment\dodoattributedbox \attributeboxcount} + +\def\dodoattributedcopy + {\startinheritattributes + \ifvbox\attributeboxcount + \vpack{\unvcopy\attributeboxcount}% + \else + \hpack{\unhcopy\attributeboxcount}% + \fi + \stopinheritattributes} + +\def\dodoattributedbox + {\startinheritattributes + \ifvbox\attributeboxcount + \vpack{\unvbox\attributeboxcount}% + \else + \hpack{\unhbox\attributeboxcount}% + \fi + \stopinheritattributes} + +\def\enableattributeinheritance + {\clf_enablestatetriggering + \let\attributedcopy\doattributedcopy + \let\attributedbox \doattributedbox} + +\def\disableattributeinheritance + {\clf_disablestatetriggering + \let\attributedcopy\copy + \let\attributedbox \box} + +\disableattributeinheritance + +% \appendtoks +% \enableattributeinheritance % will become default +% \to\everyjob + +\protect \endinput |