1
2
3
4
5
6
7
8
9
10
11
12
13
14\unprotect
15
16
17
18\let \maybeyear \firstofoneargument
19\let \etalchar \firstofoneargument
20
21\setupbibtexcitationvariants
22 [ author , year ]
23 [ \c!andtext = { and } ,
24 \c!otherstext = { et al . } ,
25 \c!pubsep = { , } ,
26 \c!lastpubsep = { and } ,
27 \c!compress = \v!no ,
28 \c!inbetween = { } ,
29 \c!left = { ( } ,
30 \c!right = { ) } ]
31
32\setupbibtexcitationvariants
33 [ authoryear ]
34 [ \c!andtext = { and } ,
35 \c!otherstext = { et al . } ,
36 \c!pubsep = { , } ,
37 \c!lastpubsep = { and } ,
38 \c!compress = \v!yes ,
39 \c!inbetween = { } ,
40 \c!left = { ( } ,
41 \c!right = { ) } ]
42
43\setupbibtexcitationvariants
44 [ authoryears ]
45 [ \c!andtext = { and } ,
46 \c!otherstext = { et al . } ,
47 \c!pubsep = { , } ,
48 \c!lastpubsep = { and } ,
49 \c!compress = \v!yes ,
50 \c!inbetween = { , } ,
51 \c!left = { ( } ,
52 \c!right = { ) } ]
53
54\setupbibtexcitationvariants
55 [ key , serial , authornum , page , short , type , doi , url ]
56 [ \c!andtext = { and } ,
57 \c!otherstext = { et al . } ,
58 \c!pubsep = { , } ,
59 \c!lastpubsep = { and } ,
60 \c!compress = \v!no ,
61 \c!inbetween = { } ,
62 \c!left = { [ } ,
63 \c!right = { ] } ]
64
65\setupbibtexcitationvariants
66 [ num ]
67 [ \c!andtext = { and } ,
68 \c!otherstext = { et al . } ,
69 \c!pubsep = { , } ,
70 \c!lastpubsep = { and } ,
71 \c!compress = \v!yes ,
72 \c!inbetween = { } ,
73 \c!left = { [ } ,
74 \c!right = { ] } ]
75
76\setupbibtexpublications
77 [ \c!sorttype = ,
78 \c!criterium = ,
79 \c!refcommand = authoryears ,
80 \c!numbering = \v!no ,
81 \c!autohang = \v!no ]
82
83\setupbibtexpublications
84 [ \c!width = 2 em ,
85 \c!artauthor = invertedshort ,
86 \c!editor = invertedshort ,
87 \c!author = invertedshort ,
88 \c!namesep = { , } ,
89 \c!lastnamesep = { and } ,
90 \c!finalnamesep = { and } ,
91 \c!firstnamesep = { , } ,
92 \c!juniorsep = { } ,
93 \c!vonsep = { } ,
94 \c!surnamesep = { , } ,
95 \c!authoretallimit = 5 ,
96 \c!editoretallimit = 5 ,
97 \c!artauthoretallimit = 5 ,
98 \c!authoretaldisplay = 5 ,
99 \c!editoretaldisplay = 5 ,
100 \c!artauthoretaldisplay = 5 ,
101 \c!authoretaltext = { et al . } ,
102 \c!editoretaltext = { et al . } ,
103 \c!artauthoretaltext = { et al . } ]
104
105
106
107\startxmlsetups bibtex : apa : common : wherefrom
108 \bibxmldoifelse { address } {
109 \getvariable { bibtex : temp }{ left }
110 \bibxmldoifelse { country } {
111 \bibxmldoifelse { \getvariable { bibtex : temp }{ label }} {
112 \bibxmlflush { address } \bibtexcomma \bibxmlflush { country } : \bibxmlflush { \getvariable { bibtex : temp }{ label }}
113 } {
114 \bibxmlflush { address } \bibtexcomma \bibxmlflush { country }
115 }
116 } {
117 \bibxmldoifelse { \getvariable { bibtex : temp }{ label }} {
118 \bibxmlflush { address } \bibtexcomma \bibxmlflush { \getvariable { bibtex : temp }{ label }}
119 } {
120 \bibxmlflush { address }
121 }
122 }
123 \getvariable { bibtex : temp }{ right }
124 } {
125 \bibxmldoifelse { country } {
126 \getvariable { bibtex : temp }{ left }
127 \bibxmldoifelse { \getvariable { bibtex : temp }{ label }} {
128 \bibxmlflush { country } : \bibxmlflush { \getvariable { bibtex : temp }{ label }}
129 } {
130 \bibxmlflush { country }
131 }
132 \getvariable { bibtex : temp }{ right }
133 } {
134 \bibxmldoifelse { \getvariable { bibtex : temp }{ label }} {
135 \getvariable { bibtex : temp }{ left }
136 \bibxmlflush { \getvariable { bibtex : temp }{ label }}
137 \getvariable { bibtex : temp }{ right }
138 } {
139 \getvariable { bibtex : temp }{ otherwise }
140 }
141 }
142 }
143\stopxmlsetups
144
145
146
147\startxmlsetups bibtex : apa : common : publisher
148 \setvariables [ bibtex : temp ][ label = publisher , left = , right = , otherwise =] \relax
149 \bibxmlsetup { bibtex : apa : common : wherefrom }
150\stopxmlsetups
151\startxmlsetups bibtex : apa : common : organization
152 \setvariables [ bibtex : temp ][ label = organization , left = , right = , otherwise =] \relax
153 \bibxmlsetup { bibtex : apa : common : wherefrom }
154\stopxmlsetups
155\startxmlsetups bibtex : apa : common : school
156 \setvariables [ bibtex : temp ][ label = school , left = , right = , otherwise =] \relax
157 \bibxmlsetup { bibtex : apa : common : wherefrom }
158\stopxmlsetups
159\startxmlsetups bibtex : apa : common : institution
160 \setvariables [ bibtex : temp ][ label = institution , left = , right = , otherwise =] \relax
161 \bibxmlsetup { bibtex : apa : common : wherefrom }
162\stopxmlsetups
163
164\startxmlsetups bibtex : apa : common : school : subsentence
165 \setvariables [ bibtex : temp ][ label = school , left = \bibtexcomma , right = \bibtexperiod , otherwise = \bibtexperiod ] \relax
166 \bibxmlsetup { bibtex : apa : common : wherefrom }
167\stopxmlsetups
168\startxmlsetups bibtex : apa : common : institution : subsentence
169 \setvariables [ bibtex : temp ][ label = institution , left = \bibtexcomma , right = \bibtexperiod , otherwise = \bibtexperiod ] \relax
170 \bibxmlsetup { bibtex : apa : common : wherefrom }
171\stopxmlsetups
172\startxmlsetups bibtex : apa : common : publisher : sentence
173 \setvariables [ bibtex : temp ][ label = publisher , left = \bibtexspace , right = \bibtexperiod , otherwise =] \relax
174 \bibxmlsetup { bibtex : apa : common : wherefrom }
175\stopxmlsetups
176\startxmlsetups bibtex : apa : common : organization : sentence
177 \setvariables [ bibtex : temp ][ label = organization , left = \bibtexspace , right = \bibtexperiod , otherwise =] \relax
178 \bibxmlsetup { bibtex : apa : common : wherefrom }
179\stopxmlsetups
180
181\startxmlsetups bibtex : apa : common : title and series
182 \bibxmldoif { title } {
183 \bibxmlflush { title }
184 \bibxmldoif { series } {
185 \bibtexlparent \bibxmlflush { series } \bibtexrparent
186 }
187 \bibtexperiod
188 }
189\stopxmlsetups
190
191\startxmlsetups bibtex : apa : common : title it and series
192 \bibxmldoif { title } {
193 \bgroup \it \bibxmlflush { title } \/ \egroup
194 \bibxmldoif { series } {
195 \bibtexlparent \bibxmlflush { series } \bibtexrparent
196 }
197 \bibtexperiod
198 }
199\stopxmlsetups
200
201\disablemode [ bibtex : apa : edited book ]
202
203\startxmlsetups bibtex : apa : common : author and year
204 \bibxmldoif { author } {
205 \bibxmlsetup { bibtex : format : author }
206 }
207 \bibxmldoif { year } {
208 \bibtexlparent \bibxmlflush { year } \bibtexrparent
209 }
210 \bibtexperiod
211\stopxmlsetups
212
213\startxmlsetups bibtex : apa : common : author or key and year
214 \bibxmldoifelse { author } {
215 \bibxmlsetup { bibtex : format : author }
216 } {
217 \bibxmldoif { key } {
218 \bibtexlbracket \bibxmlsetup { bibtex : format : key } \bibtexrbracket
219 }
220 }
221 \bibxmldoif { year } {
222 \bibtexlparent \bibxmlflush { year } \bibtexrparent
223 }
224 \bibtexperiod
225\stopxmlsetups
226
227\startxmlsetups bibtex : apa : common : author editors crossref year
228 \bibxmldoif { author } {
229 \bibxmlsetup { bibtex : format : author }
230 } {
231 \bibxmldoifelse { editor } {
232 \enablemode [ bibtex : apa : edited book ]
233 \xmlsetup { # 1 }{ bibtex : format : editor }
234 \bibtexcomma \bibtexsingularplural { editor }{ editors }
235 } {
236
237 \bibxmldoif { crossref } {
238 \bibtexlbracket \bibxmlsetup { bibtex : format : crossref } \bibtexrbracket \bibtexperiod
239 }
240 }
241 }
242 \bibxmldoif { year } {
243 \bibtexlparent \bibxmlflush { year } \bibtexrparent
244 }
245 \bibtexperiod
246\stopxmlsetups
247
248\startxmlsetups bibtex : apa : common : editor or key and year
249 \bibxmldoifelse { editor } {
250 \enablemode [ bibtex : apa : edited book ]
251 \xmlsetup { # 1 }{ bibtex : format : editor }
252 \bibtexcomma \bibtexsingularplural { editor }{ editors }
253 } {
254 \bibxmldoif { key } {
255 \bibtexlbracket \bibxmlsetup { bibtex : format : key } \bibtexrbracket
256 }
257 }
258 \bibtexspace
259 \bibxmldoif { year } {
260 \bibtexlparent \bibxmlflush { year } \bibtexrparent
261 }
262 \bibtexperiod
263\stopxmlsetups
264
265\startxmlsetups bibtex : apa : common : note
266 \bibxmldoif { note } {
267 \bibtexspace \bibxmlflush { note } \bibtexperiod
268 }
269\stopxmlsetups
270
271\startxmlsetups bibtex : apa : common : comment
272 \bibxmldoif { comment } {
273 \bibtexspace \bibxmlflush { comment } \bibtexperiod
274 }
275\stopxmlsetups
276
277\startxmlsetups bibtex : apa : common : pages : p
278 \bibxmldoif { pages } {
279 \bibtexspace \bibxmlflush { pages } \bibtexspace p \bibtexperiod
280 }
281\stopxmlsetups
282
283\startxmlsetups bibtex : apa : common : pages : pp
284 \bibxmldoif { pages } {
285 \bibtexspace \bibxmlflush { pages } \bibtexspace pp \bibtexperiod
286 }
287\stopxmlsetups
288
289\startxmlsetups bibtex : apa : common : pages : pages
290 \bibxmldoif { pages } {
291 \bibtexcomma pages \bibxmlflush { pages }
292 }
293\stopxmlsetups
294
295\startxmlsetups bibtex : apa : common : edition : sentense
296 \bibxmldoif { edition } {
297 \bibtexspace \bibxmlflush { edition } \bibtexspace edition \bibtexperiod
298 }
299\stopxmlsetups
300
301
302
303
304
305
306
307
308
309
310
311
312
313\startxmlsetups bibtex : apa : article
314 \bibxmlsetup { bibtex : apa : common : author or key and year }
315 \bibxmldoif { title } {
316 \bibxmlflush { title } \bibtexperiod
317 }
318 \bibxmldoifelse { journal } {
319 \bgroup \it \bibxmlflush { journal } \/ \egroup
320 } {
321 \bibxmldoif { crossref } {
322 In \bibtexspace \bibxmlflush { crossref }
323 }
324 }
325 \bibxmldoifelse { volume } {
326 \bibtexcomma \bgroup \it \bibxmlflush { volume } \/ \egroup
327 \bibxmldoif { issue } {
328 \bibtexlparent \bibxmlflush { issue } \bibtexlparent
329 }
330 \bibxmldoif { pages } {
331 \bibtexcomma \bibxmlflush { pages }
332 }
333 \bibtexperiod
334 } {
335 \bibxmlsetup { bibtex : apa : common : pages : pp }
336 }
337 \bibxmlsetup { bibtex : apa : common : note }
338 \bibxmlsetup { bibtex : apa : common : comment }
339\stopxmlsetups
340
341\startxmlsetups bibtex : apa : book
342 \bibxmlsetup { bibtex : apa : common : author editors crossref year }
343 \bibxmldoif { title } {
344 \bgroup \it \bibxmlflush { title } \/ \egroup
345 \doifelsemode { bibtex : apa : edited book } {
346 \bibxmldoifelse { volume } {
347 \bibtexspace Number \nonbreakablespace \bibxmlflush { volume }
348 \bibxmldoifelse { series } {
349 \bibtexspace in \nonbreakablespace \bibxmlflush { series } \bibtexperiod
350 } {
351 \bibxmldoifelse { crossref } {
352 \bibtexspace in \bibtexlbracket \bibxmlsetup { bibtex : format : crossref } \bibtexrbracket
353 } {
354 \bibtexperiod
355 }
356 }
357 } {
358 \bibxmldoif { series } {
359 \bibtexspace \bibxmlflush { series }
360 }
361 \bibtexperiod
362 }
363 } {
364 \bibxmldoifelse { crossref } {
365 \bibxmldoif { chapter } {
366 \bibtexcomma \bibxmlflush { chapter }
367 }
368 \bibxmlsetup { bibtex : apa : common : pages : pages }
369 \bibtexperiod
370 \bibxmldoif { volume } {
371 Volume \nonbreakablespace \bibxmlflush { volume } \bibtexspace of \nonbreakablespace
372 }
373 } {
374 \bibxmldoif { volume } {
375 \bibtexcomma volume \nonbreakablespace \bibxmlflush { volume }
376 \bibxmldoif { series } {
377 \bibtexspace of \nonbreakablespace\bgroup \it \bibxmlflush { series } \/ \egroup
378 }
379 \bibxmldoif { chapter } {
380 \bibtexcomma \bibxmlflush { chapter }
381 }
382 \bibxmlsetup { bibtex : apa : common : pages : pages }
383 \bibtexperiod
384 }
385 }
386 }
387 }
388 \bibxmlsetup { bibtex : apa : common : edition : sentence }
389 \bibxmlsetup { bibtex : apa : common : publisher : sentence }
390 \bibxmlsetup { bibtex : apa : common : pages : p }
391 \bibxmlsetup { bibtex : apa : common : note }
392\stopxmlsetups
393
394\startxmlsetups bibtex : apa : inbook
395 \bibxmlsetup { bibtex : apa : common : author editors crossref year }
396 \bibxmldoifelse { title } {
397 \bgroup \it \bibxmlflush { title } \/ \egroup
398 } {
399 \doifelsemode { bibtex : apa : edited book } {
400 \bibxmldoifelse { volume } {
401 \bibtexspace number \nonbreakablespace \bibxmlflush { volume }
402 \bibxmldoifelse { series } {
403 \bibtexspace in \nonbreakablespace \bibxmlflush { series } \bibtexperiod
404 } {
405 \bibxmldoifelse { crossref } {
406 \bibtexspace in \bibtexlbracket \bibxmlsetup { bibtex : format : crossref } \bibtexrbracket
407 } {
408 \bibtexperiod
409 }
410 }
411 } {
412 \bibxmldoif { series } {
413 \bibtexspace \bibxmlflush { series } \bibtexperiod
414 }
415 }
416 } {
417 \bibxmldoifelse { crossref } {
418 \bibxmldoif { chapter } {
419 \bibtexcomma \bibxmlflush { chapter }
420 }
421 \bibxmlsetup { bibtex : apa : common : pages : pages }
422 \bibxmldoif { volume } {
423 Volume \nonbreakablespace \bibxmlflush { volume } \bibtexspace of \nonbreakablespace
424 }
425 \bibxmldoif { crossref } {
426 \bibtexlbracket \bibxmlsetup { bibtex : format : crossref } \bibtexrbracket
427 }
428 } {
429 \bibxmldoif { volume } {
430 \bibtexcomma volume \nonbreakablespace \bibxmlflush { volume }
431 \bibxmldoif { series } {
432 \bibtexspace of \nonbreakablespace\bgroup \it \bibxmlflush { series } \/ \egroup
433 }
434 \bibxmldoif { chapter } {
435 \bibtexcomma \bibxmlflush { chapter }
436 }
437 \bibxmlsetup { bibtex : apa : common : pages : pages }
438 \bibtexperiod
439 }
440 }
441 }
442 }
443 \bibtexspace
444 \bibxmlsetup { bibtex : apa : common : edition : sentence }
445 \bibxmlsetup { bibtex : apa : common : publisher }
446 \bibxmlsetup { bibtex : apa : common : note }
447\stopxmlsetups
448
449\startxmlsetups bibtex : apa : booklet
450 \bibxmlsetup { bibtex : apa : common : author or key and year }
451 \bibxmlsetup { bibtex : apa : common : title it and series }
452 \bibxmlsetup { bibtex : apa : common : edition : sentence }
453 \bibxmlsetup { bibtex : apa : common : publication : sentence }
454 \bibxmlsetup { bibtex : apa : common : pages : p }
455 \bibxmlsetup { bibtex : apa : common : note }
456\stopxmlsetups
457
458\startxmlsetups bibtex : apa : manual
459 \bibxmlsetup { bibtex : apa : common : author or key and year }
460 \bibxmlsetup { bibtex : apa : common : title it and series }
461 \bibxmlsetup { bibtex : apa : common : edition : sentence }
462 \bibxmlsetup { bibtex : apa : common : organization : sentence }
463 \bibxmlsetup { bibtex : apa : common : pages : p }
464 \bibxmlsetup { bibtex : apa : common : note }
465\stopxmlsetups
466
467\startxmlsetups bibtex : apa : incollection
468 \bibxmlsetup { bibtex : apa : common : author and year }
469 \bibxmldoif { arttitle } {
470 \bibxmlflush { arttitle } \bibtexperiod
471 }
472 In \bibtexspace
473 \bibxmldoifelse { title } {
474 \bibxmlsetup { bibtex : format : editors } \bibtexcomma
475 \bgroup \it \bibxmlflush { title } \/ \egroup
476 \bibxmldoif { series } {
477 \bibxmldoif { volume } {
478 \bibtexcomma number \bibtexspace \bibxmlflush { volume } \bibtexspace in
479 }
480 \bibtexspace \bibxmlflush { series }
481 }
482 \bibxmldoif { chapter } {
483 \bibtexcomma \bibxmlflush { chapter } \bibtexspace
484 }
485 \bibxmlsetup { bibtex : apa : common : pages : pages }
486 \bibxmldoif { edition } {
487 \bibtexspace \bibxmlflush { edition } \bibtexspace edition
488 }
489 \bibxmlsetup { bibtex : apa : common : publisher : sentence }
490 } {
491 \bibxmldoif { crossref } {
492 \bibtexlbracket \bibxmlsetup { bibtex : format : crossref } \bibtexrbracket
493 }
494 \bibxmldoif { chapter } {
495 \bibtexcomma \bibxmlflush { chapter }
496 }
497 \bibtexspace
498 \bibxmlsetup { bibtex : apa : common : pages : pages }
499 }
500 \bibxmlsetup { bibtex : apa : common : note }
501\stopxmlsetups
502
503\startxmlsetups bibtex : apa : inproceedings
504 \bibxmlsetup { bibtex : apa : common : author and year }
505 \bibxmldoif { arttitle } {
506 \bibxmlflush { arttitle } \bibtexperiod
507 }
508 In \bibtexspace
509 \bibxmldoifelse { title } {
510 \bibxmldoif { editors } {
511 \bibxmlflush { bibtex : apa : format : editors }
512 \bibtexcomma \bibtexsingularplural { editor }{ editors } \bibtexcomma
513 }
514 \bgroup \it \bibxmlflush { title } \/ \egroup
515 \bibxmldoif { series } {
516 \bibxmldoif { volume } {
517 \bibtexcomma number \bibxmlflush { volume } in
518 }
519 \bibtexspace
520 \bibxmlflush { series }
521 }
522 \bibxmldoif { chapter } {
523 \bibtexcomma \bibxmlflush { chapter } \bibtexspace
524 }
525 \bibxmlsetup { bibtex : apa : common : pages : pages }
526 \bibtexperiod
527 \bibxmlsetup { bibtex : apa : common : organization : sentence }
528 } {
529 \bibxmldoif { crossref } {
530 \bibtexlbracket \bibxmlsetup { bibtex : format : crossref } \bibtexrbracket
531 }
532 \bibxmldoif { chapter } {
533 \bibtexcomma \bibxmlflush { chapter } \bibtexspace
534 }
535 \bibxmlsetup { bibtex : apa : common : pages : pages }
536 \bibtexperiod
537 }
538 \bibxmlsetup { bibtex : apa : common : note }
539\stopxmlsetups
540
541\startxmlsetups bibtex : apa : proceedings
542 \bibxmlsetup { bibtex : apa : common : editor or key and year }
543 \bibxmldoif { title } {
544 \bgroup \it \bibxmlflush { title } \/ \egroup
545 \bibxmldoif { volume } {
546 \bibtexcomma number \bibtexspace \bibxmlflush { volume } \bibtexspace in \bibtexspace
547 }
548 \bibxmldoif { chapter } {
549 \bibtexcomma \bibxmlflush { chapter } \bibtexspace
550 }
551 \bibxmlsetup { bibtex : apa : common : pages : pages }
552 \bibtexperiod
553 \bibxmlsetup { bibtex : apa : common : organization : sentence }
554 }
555 \bibxmlsetup { bibtex : apa : common : note }
556\stopxmlsetups
557
558\startxmlsetups bibtex : apa : common : thesis
559 \bibxmlsetup { bibtex : apa : common : author and year }
560 \bibxmlsetup { bibtex : apa : common : title it and series }
561 \bibxmldoifelse { type } {
562 \bibxmlflush { type }
563 } {
564 \getvariable { bibtex : temp }{ label }
565 }
566 \bibxmlsetup { bibtex : apa : common : school : subsentence }
567 \bibxmlsetup { bibtex : apa : common : pages : p }
568 \bibxmlsetup { bibtex : apa : common : note }
569\stopxmlsetups
570
571\startxmlsetups bibtex : apa : mastersthesis
572 \setvariables [ bibtex : temp ][ label = Master s thesis ]
573 \bibxmlsetup { bibtex : apa : common : thesis }
574\stopxmlsetups
575
576\startxmlsetups bibtex : apa : phdthesis
577 \setvariables [ bibtex : temp ][ label = PhD thesis ]
578 \bibxmlsetup { bibtex : apa : common : thesis }
579\stopxmlsetups
580
581\startxmlsetups bibtex : apa : techreport
582 \bibxmlsetup { bibtex : apa : common : author and year }
583 \bibxmlsetup { bibtex : apa : common : title and series }
584 \bibxmldoifelse { type } {
585 \bibxmlflush { type }
586 \bibxmldoif { volume } {
587 \bibtexspace \bibxmlflush { volume }
588 }
589 } {
590 \bibtexspace Technical Report
591 }
592 \bibxmlsetup { bibtex : apa : common : institution : subsentence }
593 \bibxmlsetup { bibtex : apa : common : pages : p }
594 \bibxmlsetup { bibtex : apa : common : note }
595\stopxmlsetups
596
597\startxmlsetups bibtex : apa : misc
598 \bibxmlsetup { bibtex : apa : common : author and year }
599 \bibxmlsetup { bibtex : apa : common : title and series }
600 \bibxmlsetup { bibtex : apa : common : publisher : sentence }
601 \bibxmlsetup { bibtex : apa : common : pages : p }
602 \bibxmlsetup { bibtex : apa : common : note }
603\stopxmlsetups
604
605\startxmlsetups bibtex : apa : unpublished
606 \bibxmlsetup { bibtex : apa : common : author and year }
607 \bibxmlsetup { bibtex : apa : common : title and series }
608 \bibxmlsetup { bibtex : apa : common : pages : p }
609 \bibxmldoif { type } {
610 \bibtexlparent \bibxmlflush { type } \bibtexrparent
611 }
612 \bibxmlsetup { bibtex : apa : common : note }
613\stopxmlsetups
614
615\protect \endinput
616 |