blob: 6c5bf17f1a149881412db67de8a84e77b5ea56a2 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
|
%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\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
|