1
2
3
4
5
6
7
8
9
10
11
12
13
14\writestatus{loading}{ConTeXt Core Macros General}
15
16
17
18\unprotect
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36\installcorenamespace{dimensionnormal}
37
38\def\assign_dimension_direct#value#dimension#small#medium#big{#dimension=#value\relax}
39
40\immutable\setvalue{\??dimensionnormal \v!none }#value#dimension#small#medium#big{#dimension\zeropoint}
41\immutable\setvalue{\??dimensionnormal \empty }#value#dimension#small#medium#big{#dimension\zeropoint}
42\immutable\setvalue{\??dimensionnormal \v!small }#value#dimension#small#medium#big{#dimension=#small\relax}
43\immutable\setvalue{\??dimensionnormal \v!medium}#value#dimension#small#medium#big{#dimension=#medium\relax}
44\immutable\setvalue{\??dimensionnormal \v!big }#value#dimension#small#medium#big{#dimension=#big\relax}
45\immutable\setvalue{\??dimensionnormal\v!small }#value#dimension#small#medium#big{#dimension=#small\relax}
46\immutable\setvalue{\??dimensionnormal\v!medium}#value#dimension#small#medium#big{#dimension=#medium\relax}
47\immutable\setvalue{\??dimensionnormal\v!big }#value#dimension#small#medium#big{#dimension=#big\relax}
48\immutable\letvalue{\??dimensionnormal\s!unknown}\assign_dimension_direct
49
50\permanent\protected\def\assigndimension#value
51 {\ifcsname\??dimensionnormal#value\endcsname
52 \expandafter\lastnamedcs
53 \else
54 \expandafter\assign_dimension_direct
55 \fi{#value}}
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70\installcorenamespace{dimensionalfa}
71
72\def\assign_alpha_dimension_direct#value#macro#small#medium#big{\edef#macro{#value}}
73
74\immutable\setvalue{\??dimensionalfa\v!none }#value#macro#small#medium#big{\let #macro\!!zerocount}
75\immutable\setvalue{\??dimensionalfa\v!small }#value#macro#small#medium#big{\edef#macro{#small}}
76\immutable\setvalue{\??dimensionalfa\v!medium }#value#macro#small#medium#big{\edef#macro{#medium}}
77\immutable\setvalue{\??dimensionalfa\v!big }#value#macro#small#medium#big{\edef#macro{#big}}
78\immutable\letvalue{\??dimensionalfa\s!unknown}\assign_alpha_dimension_direct
79
80\permanent\protected\def\assignalfadimension#value
81 {\ifcsname\??dimensionalfa#value\endcsname
82 \expandafter\lastnamedcs
83 \else
84 \expandafter\assign_alpha_dimension_direct
85 \fi
86 {#value}}
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102\installcorenamespace{dimensionvalue}
103
104\def\assign_value_direct#value#macro#small#medium#big{\edef#macro{#value}}
105
106\immutable\setvalue{\??dimensionvalue\v!small }#value#macro#small#medium#big{\edef#macro{#small}}
107\immutable\setvalue{\??dimensionvalue\v!medium }#value#macro#small#medium#big{\edef#macro{#medium}}
108\immutable\setvalue{\??dimensionvalue\v!big }#value#macro#small#medium#big{\edef#macro{#big}}
109\immutable\letvalue{\??dimensionvalue\s!unknown}\assign_value_direct
110
111\permanent\protected\def\assignvalue#value
112 {\ifcsname\??dimensionvalue#value\endcsname
113 \expandafter\lastnamedcs
114 \else
115 \expandafter\assign_value_direct
116 \fi{#value}}
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131\installcorenamespace{dimensionwidth}
132
133\newbox\b_assign_width
134
135\def\assign_width_direct#value#dimension#content#extra{#dimension{#value}}
136
137
138
139\immutable\setvalue{\??dimensionwidth }#value#dimension#content#extra{\setbox\b_assign_width\hbox{#content}#dimension\wd\b_assign_width
140 \setbox\b_assign_width\emptybox}
141\immutable\setvalue{\??dimensionwidth\v!fit }#value#dimension#content#extra{\setbox\b_assign_width\hbox{#content}#dimension\wd\b_assign_width
142 \setbox\b_assign_width\emptybox}
143\immutable\setvalue{\??dimensionwidth\v!broad }#value#dimension#content#extra{\setbox\b_assign_width\hbox{#content}#dimension{\wd\b_assign_width#extra}
144 \setbox\b_assign_width\emptybox}
145\immutable\setvalue{\??dimensionwidth\v!line }#value#dimension#content#extra{\setbox\b_assign_width\hbox{#content}#dimension\wd\b_assign_width
146 \setbox\b_assign_width\emptybox}
147\immutable\letvalue{\??dimensionwidth\s!unknown}\assign_width_direct
148
149\permanent\protected\def\assignwidth#value
150 {\ifcsname\??dimensionwidth#value\endcsname
151 \expandafter\lastnamedcs
152 \else
153 \expandafter\assign_width_direct
154 \fi{#value}}
155
156\protect \endinput
157 |