%PDF-1.5
%ÐÔÅØ
1 0 obj
<< /S /GoTo /D (section.1) >>
endobj
4 0 obj
(1 Introduction)
endobj
5 0 obj
<< /S /GoTo /D (subsection.1.1) >>
endobj
8 0 obj
(1.1 Motivation)
endobj
9 0 obj
<< /S /GoTo /D (section.2) >>
endobj
12 0 obj
(2 Package options)
endobj
13 0 obj
<< /S /GoTo /D (section.3) >>
endobj
16 0 obj
(3 Defining keys)
endobj
17 0 obj
<< /S /GoTo /D (subsection.3.1) >>
endobj
20 0 obj
(3.1 Defining only definable keys)
endobj
21 0 obj
<< /S /GoTo /D (subsection.3.2) >>
endobj
24 0 obj
(3.2 Ordinary keys)
endobj
25 0 obj
<< /S /GoTo /D (subsubsection.3.2.1) >>
endobj
28 0 obj
(3.2.1 Ordinary keys that share the same attributes)
endobj
29 0 obj
<< /S /GoTo /D (subsection.3.3) >>
endobj
32 0 obj
(3.3 List keys \(liskeys\))
endobj
33 0 obj
<< /S /GoTo /D (subsection.3.4) >>
endobj
36 0 obj
(3.4 Command keys)
endobj
37 0 obj
<< /S /GoTo /D (subsubsection.3.4.1) >>
endobj
40 0 obj
(3.4.1 Command keys that share the same attributes)
endobj
41 0 obj
<< /S /GoTo /D (subsection.3.5) >>
endobj
44 0 obj
(3.5 Style keys)
endobj
45 0 obj
<< /S /GoTo /D (subsubsection.3.5.1) >>
endobj
48 0 obj
(3.5.1 Style keys that share the same attributes)
endobj
49 0 obj
<< /S /GoTo /D (subsection.3.6) >>
endobj
52 0 obj
(3.6 Boolean keys)
endobj
53 0 obj
<< /S /GoTo /D (subsubsection.3.6.1) >>
endobj
56 0 obj
(3.6.1 Boolean keys that share the same attributes)
endobj
57 0 obj
<< /S /GoTo /D (subsubsection.3.6.2) >>
endobj
60 0 obj
(3.6.2 Biboolean keys)
endobj
61 0 obj
<< /S /GoTo /D (subsection.3.7) >>
endobj
64 0 obj
(3.7 Switch keys)
endobj
65 0 obj
<< /S /GoTo /D (subsubsection.3.7.1) >>
endobj
68 0 obj
(3.7.1 Switch keys that share the same attributes)
endobj
69 0 obj
<< /S /GoTo /D (subsection.3.8) >>
endobj
72 0 obj
(3.8 Choice keys)
endobj
73 0 obj
<< /S /GoTo /D (subsubsection.3.8.1) >>
endobj
76 0 obj
(3.8.1 Choice keys that share the same attributes)
endobj
77 0 obj
<< /S /GoTo /D (subsection.3.9) >>
endobj
80 0 obj
(3.9 Every default value of a key)
endobj
81 0 obj
<< /S /GoTo /D (subsection.3.10) >>
endobj
84 0 obj
(3.10 Defining boolean and command keys with one command)
endobj
85 0 obj
<< /S /GoTo /D (subsection.3.11) >>
endobj
88 0 obj
(3.11 Defining all types of key with one command)
endobj
89 0 obj
<< /S /GoTo /D (subsubsection.3.11.1) >>
endobj
92 0 obj
(3.11.1 Defining keys of common type)
endobj
93 0 obj
<< /S /GoTo /D (subsection.3.12) >>
endobj
96 0 obj
(3.12 Need-value keys)
endobj
97 0 obj
<< /S /GoTo /D (subsection.3.13) >>
endobj
100 0 obj
(3.13 Cross-family keys)
endobj
101 0 obj
<< /S /GoTo /D (section.4) >>
endobj
104 0 obj
(4 Setting keys)
endobj
105 0 obj
<< /S /GoTo /D (subsection.4.1) >>
endobj
108 0 obj
(4.1 Setting defined keys)
endobj
109 0 obj
<< /S /GoTo /D (subsection.4.2) >>
endobj
112 0 obj
(4.2 Setting remaining keys)
endobj
113 0 obj
<< /S /GoTo /D (subsection.4.3) >>
endobj
116 0 obj
(4.3 Setting aliased keys)
endobj
117 0 obj
<< /S /GoTo /D (subsection.4.4) >>
endobj
120 0 obj
(4.4 Using key pointers)
endobj
121 0 obj
<< /S /GoTo /D (subsection.4.5) >>
endobj
124 0 obj
(4.5 Accessing the saved value of a key)
endobj
125 0 obj
<< /S /GoTo /D (subsection.4.6) >>
endobj
128 0 obj
(4.6 Pre-setting and post-setting keys)
endobj
129 0 obj
<< /S /GoTo /D (subsection.4.7) >>
endobj
132 0 obj
(4.7 Initializing keys)
endobj
133 0 obj
<< /S /GoTo /D (subsection.4.8) >>
endobj
136 0 obj
(4.8 Launching keys)
endobj
137 0 obj
<< /S /GoTo /D (subsubsection.4.8.1) >>
endobj
140 0 obj
(4.8.1 Noninitialize and nonlaunch keys)
endobj
141 0 obj
<< /S /GoTo /D (subsection.4.9) >>
endobj
144 0 obj
(4.9 Handling unknown keys and options)
endobj
145 0 obj
<< /S /GoTo /D (section.5) >>
endobj
148 0 obj
(5 Checking if a key is defined)
endobj
149 0 obj
<< /S /GoTo /D (section.6) >>
endobj
152 0 obj
(6 Disabling families and keys)
endobj
153 0 obj
<< /S /GoTo /D (subsection.6.1) >>
endobj
156 0 obj
(6.1 Disabling families)
endobj
157 0 obj
<< /S /GoTo /D (subsection.6.2) >>
endobj
160 0 obj
(6.2 Disabling keys)
endobj
161 0 obj
<< /S /GoTo /D (section.7) >>
endobj
164 0 obj
(7 Option and non-option keys)
endobj
165 0 obj
<< /S /GoTo /D (section.8) >>
endobj
168 0 obj
(8 Handled keys)
endobj
169 0 obj
<< /S /GoTo /D (section.9) >>
endobj
172 0 obj
(9 Reserving and unreserving key path or bases)
endobj
173 0 obj
<< /S /GoTo /D (section.10) >>
endobj
176 0 obj
(10 Bad key names)
endobj
177 0 obj
<< /S /GoTo /D (section.11) >>
endobj
180 0 obj
(11 Declaring options)
endobj
181 0 obj
<< /S /GoTo /D (subsection.11.1) >>
endobj
184 0 obj
(11.1 Options that share the same attributes)
endobj
185 0 obj
<< /S /GoTo /D (subsection.11.2) >>
endobj
188 0 obj
(11.2 Declaring all types of option with one command)
endobj
189 0 obj
<< /S /GoTo /D (section.12) >>
endobj
192 0 obj
(12 Executing options)
endobj
193 0 obj
<< /S /GoTo /D (section.13) >>
endobj
196 0 obj
(13 Processing options)
endobj
197 0 obj
<< /S /GoTo /D (subsection.13.1) >>
endobj
200 0 obj
(13.1 Hooks for `before' and `after' processing options)
endobj
201 0 obj
<< /S /GoTo /D (section.14) >>
endobj
204 0 obj
(14 Key commands and key environments)
endobj
205 0 obj
<< /S /GoTo /D (subsection.14.1) >>
endobj
208 0 obj
(14.1 Final tokens of every environment)
endobj
209 0 obj
<< /S /GoTo /D (subsection.14.2) >>
endobj
212 0 obj
(14.2 Examples of key command and environment)
endobj
213 0 obj
<< /S /GoTo /D (section.15) >>
endobj
216 0 obj
(15 Declaring variables)
endobj
217 0 obj
<< /S /GoTo /D (section.16) >>
endobj
220 0 obj
(16 The \040command)
endobj
221 0 obj
<< /S /GoTo /D (section.17) >>
endobj
224 0 obj
(17 Pathkeys)
endobj
225 0 obj
<< /S /GoTo /D (subsection.17.1) >>
endobj
228 0 obj
(17.1 Defining pathkeys of common type)
endobj
229 0 obj
<< /S /GoTo /D (subsection.17.2) >>
endobj
232 0 obj
(17.2 Shortened pathkeys commands)
endobj
233 0 obj
<< /S /GoTo /D (subsection.17.3) >>
endobj
236 0 obj
(17.3 Default and current paths)
endobj
237 0 obj
<< /S /GoTo /D (subsection.17.4) >>
endobj
240 0 obj
(17.4 Nested pathkeys)
endobj
241 0 obj
<< /S /GoTo /D (subsection.17.5) >>
endobj
244 0 obj
(17.5 Pathkeys as class or package options)
endobj
245 0 obj
<< /S /GoTo /D (subsection.17.6) >>
endobj
248 0 obj
(17.6 Classes in pathkeys command)
endobj
249 0 obj
<< /S /GoTo /D (section.18) >>
endobj
252 0 obj
(18 Keys with argument patterns)
endobj
253 0 obj
<< /S /GoTo /D (section.19) >>
endobj
256 0 obj
(19 Some miscellaneous commands)
endobj
257 0 obj
<< /S /GoTo /D (subsection.19.1) >>
endobj
260 0 obj
(19.1 Trimming leading and trailing spaces)
endobj
261 0 obj
<< /S /GoTo /D (subsection.19.2) >>
endobj
264 0 obj
(19.2 Checking user inputs)
endobj
265 0 obj
<< /S /GoTo /D (subsection.19.3) >>
endobj
268 0 obj
(19.3 Does a test string exist in a string?)
endobj
269 0 obj
<< /S /GoTo /D (subsection.19.4) >>
endobj
272 0 obj
(19.4 Does a given pattern exist in the meaning of a macro?)
endobj
273 0 obj
<< /S /GoTo /D (subsection.19.5) >>
endobj
276 0 obj
(19.5 texcolorifcase for arbitrary strings)
endobj
277 0 obj
<< /S /GoTo /D (subsection.19.6) >>
endobj
280 0 obj
(19.6 Is the number of elements from a sublist found in a csv list n?)
endobj
281 0 obj
<< /S /GoTo /D (subsection.19.7) >>
endobj
284 0 obj
(19.7 Is the number of elements from a sublist found in a tsv list n?)
endobj
285 0 obj
<< /S /GoTo /D (subsection.19.8) >>
endobj
288 0 obj
(19.8 Is the number of elements in a csv list n or n?)
endobj
289 0 obj
<< /S /GoTo /D (subsection.19.9) >>
endobj
292 0 obj
(19.9 What is the numerical order of an element in a csv list?)
endobj
293 0 obj
<< /S /GoTo /D (subsection.19.10) >>
endobj
296 0 obj
(19.10 List normalization)
endobj
297 0 obj
<< /S /GoTo /D (subsection.19.11) >>
endobj
300 0 obj
(19.11 Parsing arbitrary csv or kv list)
endobj
301 0 obj
<< /S /GoTo /D (subsection.19.12) >>
endobj
304 0 obj
(19.12 Expandable list parser)
endobj
305 0 obj
<< /S /GoTo /D (subsection.19.13) >>
endobj
308 0 obj
(19.13 Remove one or all occurrences of elements from a csv list)
endobj
309 0 obj
<< /S /GoTo /D (subsection.19.14) >>
endobj
312 0 obj
(19.14 Replace one or all occurrences of elements in a csv list)
endobj
313 0 obj
<< /S /GoTo /D (subsection.19.15) >>
endobj
316 0 obj
(19.15 Stripping outer braces)
endobj
317 0 obj
<< /S /GoTo /D (section.20) >>
endobj
320 0 obj
(20 To-do list)
endobj
321 0 obj
<< /S /GoTo /D (subsection.20.1) >>
endobj
324 0 obj
(20.1 Patching key macros)
endobj
325 0 obj
<< /S /GoTo /D (subsection.20.2) >>
endobj
328 0 obj
(20.2 Modifying the dependant keys of an existing style key)
endobj
329 0 obj
<< /S /GoTo /D (subsection.20.3) >>
endobj
332 0 obj
(20.3 Toggle keys)
endobj
333 0 obj
<< /S /GoTo /D (section.21) >>
endobj
336 0 obj
(21 Version history)
endobj
337 0 obj
<< /S /GoTo /D (0210000:0.0.3.2) >>
endobj
340 0 obj
(0.0.3 \(2011/12/17\))
endobj
341 0 obj
<< /S /GoTo /D (0210000:0.0.2.2) >>
endobj
344 0 obj
(0.0.2 \(2011/09/01\))
endobj
345 0 obj
<< /S /GoTo /D (0210000:0.0.1.2) >>
endobj
348 0 obj
(0.0.1 \(2011/07/30\))
endobj
349 0 obj
<< /S /GoTo /D [350 0 R /Fit] >>
endobj
402 0 obj <<
/Length 3385
/Filter /FlateDecode
>>
stream
xÚÝ[YsÛF~÷¯À[À*s4÷±Oë8ñÆk9ñÆJ•·’T"!+P
|