1
2
3
4
5
6
7
8
9
10
11
12
13
14\writestatus{loading}{ConTeXt Spacing Macros Passes}
15
16\registerctxluafile{spacpas}{autosuffix}
17
18
19
20
21
22\unprotect
23
24
25
26
27\integerdef\verylooseparpassclass "001
28\integerdef\looseparpassclass "002
29\integerdef\almostlooseparpassclass "004
30\integerdef\barelylooseparpassclass "008
31\integerdef\decentparpassclass "010
32\integerdef\barelytightparpassclass "020
33\integerdef\almosttightparpassclass "040
34\integerdef\tightparpassclass "080
35\integerdef\verytightparpassclass "100
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51\integerdef\allparpassclasses "FFFF
52
53\integerdef\indecentparpassclasses\numexpr
54 \allparpassclasses
55 \decentparpassclass
56\relax
57
58\integerdef\almostdecentparpassclasses\numexpr
59 \verylooseparpassclass
60 \looseparpassclass
61 \almostlooseparpassclass
62
63 \almosttightparpassclass
64 \tightparpassclass
65 \verytightparpassclass
66\relax
67
68\integerdef\looseparpassclasses\numexpr
69 \verylooseparpassclass
70 \looseparpassclass
71
72 \almostlooseparpassclass
73 \barelylooseparpassclass
74\relax
75
76\integerdef\tightparpassclasses\numexpr
77 \verytightparpassclass
78 \tightparpassclass
79
80 \almosttightparpassclass
81 \barelytightparpassclass
82\relax
83
84\appendtoks
85 \ifcase\linebreakpasses\else
86 \linebreakpasses\zerocount
87
88 \pretolerance \plushundred
89 \tolerance \plustwohundred
90 \fi
91\to \everyforgetall
92
93\startsetups align:pass:none
94 \pretolerance \plushundred
95 \tolerance \plustwohundred
96 \parpasses \zerocount
97 \linebreakpasses\zerocount
98
99\stopsetups
100
101
102
103\lettonothing\currentalignpass
104
105\permanent\protected\def\setupalignpass[#1]
106 {\cdef\tempstring{align:pass:#1}
107 \ifx\tempstring\currentalignpass\else
108 \linebreakpasses\plusone
109 \let\currentalignpass\tempstring
110 \fastsetup\currentalignpass
111 \relax
112 \fi}
113
114\appendtoks
115 \ifcase\linebreakpasses\else
116 \fastsetup\currentalignpass
117 \fi
118\to \everybodyfont
119
120
121
122\permanent\protected\def\optionalword#1
123 {\removeunwantedspaces\wordboundary\discretionary{}{}{#1}}
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166\protect
167 |