From 2fcb60fa8843870d9f3a90987498e5b775402258 Mon Sep 17 00:00:00 2001 From: Norbert Preining Date: Wed, 24 Aug 2022 03:01:23 +0000 Subject: CTAN sync 202208240301 --- .../contrib/beamer-contrib/beamerswitch/README.md | 2 +- .../beamerswitch/beamerswitch-example-article.pdf | Bin 20112 -> 20110 bytes .../beamerswitch/beamerswitch-example-handout.pdf | Bin 22397 -> 22397 bytes .../beamerswitch/beamerswitch-example-trans.pdf | Bin 22998 -> 22994 bytes .../beamerswitch/beamerswitch-example.pdf | Bin 36629 -> 36621 bytes .../beamer-contrib/beamerswitch/beamerswitch.dtx | 76 +- .../beamer-contrib/beamerswitch/beamerswitch.pdf | Bin 200906 -> 208134 bytes macros/latex/contrib/biblatex-ms/CHANGES-ms.md | 983 + macros/latex/contrib/biblatex-ms/README | 165 + .../biber/bltxml/biblatex-examples-ms.bltxml | 2840 +++ .../bibtex/bib/biblatex/biblatex-examples-ms.bib | 1661 ++ .../contrib/biblatex-ms/bibtex/bst/biblatex-ms.bst | 2831 +++ .../latex/contrib/biblatex-ms/doc/biblatex-ms.pdf | Bin 0 -> 1770072 bytes .../latex/contrib/biblatex-ms/doc/biblatex-ms.tex | 17269 ++++++++++++++++++ .../doc/examples/01-introduction-biber-ms.pdf | Bin 0 -> 167962 bytes .../doc/examples/01-introduction-bibtex-ms.pdf | Bin 0 -> 167962 bytes .../doc/examples/01-introduction-ms.tex | 170 + .../doc/examples/01-introduction.run-ms.xml | 93 + .../doc/examples/02-annotations-biber-ms.pdf | Bin 0 -> 214456 bytes .../doc/examples/02-annotations-bibtex-ms.pdf | Bin 0 -> 207478 bytes .../biblatex-ms/doc/examples/02-annotations-ms.tex | 18 + .../doc/examples/03-localization-keys-biber-ms.pdf | Bin 0 -> 254414 bytes .../examples/03-localization-keys-bibtex-ms.pdf | Bin 0 -> 253881 bytes .../doc/examples/03-localization-keys-ms.tex | 725 + .../doc/examples/04-delimiters-biber-ms.pdf | Bin 0 -> 80156 bytes .../doc/examples/04-delimiters-bibtex-ms.pdf | Bin 0 -> 80152 bytes .../biblatex-ms/doc/examples/04-delimiters-ms.tex | 68 + .../10-references-per-section-biber-ms.pdf | Bin 0 -> 81705 bytes .../10-references-per-section-bibtex-ms.pdf | Bin 0 -> 81705 bytes .../doc/examples/10-references-per-section-ms.tex | 64 + .../examples/11-references-by-section-biber-ms.pdf | Bin 0 -> 98395 bytes .../11-references-by-section-bibtex-ms.pdf | Bin 0 -> 98390 bytes .../doc/examples/11-references-by-section-ms.tex | 68 + .../examples/12-references-by-segment-biber-ms.pdf | Bin 0 -> 98442 bytes .../12-references-by-segment-bibtex-ms.pdf | Bin 0 -> 98437 bytes .../doc/examples/12-references-by-segment-ms.tex | 49 + .../examples/13-references-by-keyword-biber-ms.pdf | Bin 0 -> 183623 bytes .../13-references-by-keyword-bibtex-ms.pdf | Bin 0 -> 175130 bytes .../doc/examples/13-references-by-keyword-ms.tex | 44 + .../14-references-by-category-biber-ms.pdf | Bin 0 -> 183127 bytes .../14-references-by-category-bibtex-ms.pdf | Bin 0 -> 174634 bytes .../doc/examples/14-references-by-category-ms.tex | 46 + .../examples/15-references-by-type-biber-ms.pdf | Bin 0 -> 119269 bytes .../examples/15-references-by-type-bibtex-ms.pdf | Bin 0 -> 119269 bytes .../doc/examples/15-references-by-type-ms.tex | 26 + .../examples/16-numeric-prefixed-1-biber-ms.pdf | Bin 0 -> 163360 bytes .../examples/16-numeric-prefixed-1-bibtex-ms.pdf | Bin 0 -> 156540 bytes .../doc/examples/16-numeric-prefixed-1-ms.tex | 58 + .../examples/17-numeric-prefixed-2-biber-ms.pdf | Bin 0 -> 163329 bytes .../examples/17-numeric-prefixed-2-bibtex-ms.pdf | Bin 0 -> 156540 bytes .../doc/examples/17-numeric-prefixed-2-ms.tex | 45 + .../doc/examples/18-numeric-hybrid-biber-ms.pdf | Bin 0 -> 112916 bytes .../doc/examples/18-numeric-hybrid-bibtex-ms.pdf | Bin 0 -> 112916 bytes .../doc/examples/18-numeric-hybrid-ms.tex | 87 + .../examples/19-alphabetic-prefixed-biber-ms.pdf | Bin 0 -> 163973 bytes .../examples/19-alphabetic-prefixed-bibtex-ms.pdf | Bin 0 -> 157616 bytes .../doc/examples/19-alphabetic-prefixed-ms.tex | 47 + .../doc/examples/20-indexing-single-biber-ms.pdf | Bin 0 -> 176169 bytes .../doc/examples/20-indexing-single-bibtex-ms.pdf | Bin 0 -> 169812 bytes .../doc/examples/20-indexing-single-ms.tex | 75 + .../doc/examples/21-indexing-multiple-biber-ms.pdf | Bin 0 -> 177358 bytes .../examples/21-indexing-multiple-bibtex-ms.pdf | Bin 0 -> 171031 bytes .../doc/examples/21-indexing-multiple-ms.tex | 151 + .../doc/examples/22-indexing-subentry-biber-ms.pdf | Bin 0 -> 88905 bytes .../examples/22-indexing-subentry-bibtex-ms.pdf | Bin 0 -> 88905 bytes .../doc/examples/22-indexing-subentry-ms.tex | 103 + .../doc/examples/30-style-numeric-biber-ms.pdf | Bin 0 -> 177233 bytes .../doc/examples/30-style-numeric-bibtex-ms.pdf | Bin 0 -> 177233 bytes .../doc/examples/30-style-numeric-ms.tex | 98 + .../examples/31-style-numeric-comp-biber-ms.pdf | Bin 0 -> 194914 bytes .../examples/31-style-numeric-comp-bibtex-ms.pdf | Bin 0 -> 196031 bytes .../doc/examples/31-style-numeric-comp-ms.tex | 92 + .../examples/32-style-numeric-verb-biber-ms.pdf | Bin 0 -> 181606 bytes .../examples/32-style-numeric-verb-bibtex-ms.pdf | Bin 0 -> 181606 bytes .../doc/examples/32-style-numeric-verb-ms.tex | 51 + .../doc/examples/40-style-alphabetic-biber-ms.pdf | Bin 0 -> 207609 bytes .../doc/examples/40-style-alphabetic-bibtex-ms.pdf | Bin 0 -> 199318 bytes .../doc/examples/40-style-alphabetic-ms.tex | 78 + .../examples/41-style-alphabetic-verb-biber-ms.pdf | Bin 0 -> 111947 bytes .../41-style-alphabetic-verb-bibtex-ms.pdf | Bin 0 -> 111947 bytes .../doc/examples/41-style-alphabetic-verb-ms.tex | 29 + .../42-style-alphabetic-template-biber-ms.pdf | Bin 0 -> 101002 bytes .../42-style-alphabetic-template-bibtex-ms.pdf | Bin 0 -> 101002 bytes .../examples/42-style-alphabetic-template-ms.tex | 29 + .../doc/examples/50-style-authoryear-biber-ms.pdf | Bin 0 -> 280070 bytes .../doc/examples/50-style-authoryear-bibtex-ms.pdf | Bin 0 -> 277799 bytes .../doc/examples/50-style-authoryear-ms.tex | 224 + .../examples/51-style-authoryear-ibid-biber-ms.pdf | Bin 0 -> 213637 bytes .../51-style-authoryear-ibid-bibtex-ms.pdf | Bin 0 -> 213637 bytes .../doc/examples/51-style-authoryear-ibid-ms.tex | 208 + .../examples/52-style-authoryear-comp-biber-ms.pdf | Bin 0 -> 147304 bytes .../52-style-authoryear-comp-bibtex-ms.pdf | Bin 0 -> 147304 bytes .../doc/examples/52-style-authoryear-comp-ms.tex | 146 + .../53-style-authoryear-icomp-biber-ms.pdf | Bin 0 -> 225925 bytes .../53-style-authoryear-icomp-bibtex-ms.pdf | Bin 0 -> 225925 bytes .../doc/examples/53-style-authoryear-icomp-ms.tex | 203 + .../doc/examples/60-style-authortitle-biber-ms.pdf | Bin 0 -> 290007 bytes .../examples/60-style-authortitle-bibtex-ms.pdf | Bin 0 -> 275259 bytes .../doc/examples/60-style-authortitle-ms.tex | 125 + .../61-style-authortitle-ibid-biber-ms.pdf | Bin 0 -> 203055 bytes .../61-style-authortitle-ibid-bibtex-ms.pdf | Bin 0 -> 203055 bytes .../doc/examples/61-style-authortitle-ibid-ms.tex | 106 + .../62-style-authortitle-comp-biber-ms.pdf | Bin 0 -> 126042 bytes .../62-style-authortitle-comp-bibtex-ms.pdf | Bin 0 -> 126042 bytes .../doc/examples/62-style-authortitle-comp-ms.tex | 43 + .../63-style-authortitle-icomp-biber-ms.pdf | Bin 0 -> 222705 bytes .../63-style-authortitle-icomp-bibtex-ms.pdf | Bin 0 -> 222705 bytes .../doc/examples/63-style-authortitle-icomp-ms.tex | 97 + .../64-style-authortitle-terse-biber-ms.pdf | Bin 0 -> 195323 bytes .../64-style-authortitle-terse-bibtex-ms.pdf | Bin 0 -> 195323 bytes .../doc/examples/64-style-authortitle-terse-ms.tex | 89 + .../65-style-authortitle-tcomp-biber-ms.pdf | Bin 0 -> 143176 bytes .../65-style-authortitle-tcomp-bibtex-ms.pdf | Bin 0 -> 143176 bytes .../doc/examples/65-style-authortitle-tcomp-ms.tex | 49 + .../66-style-authortitle-ticomp-biber-ms.pdf | Bin 0 -> 147776 bytes .../66-style-authortitle-ticomp-bibtex-ms.pdf | Bin 0 -> 147776 bytes .../examples/66-style-authortitle-ticomp-ms.tex | 95 + .../doc/examples/70-style-verbose-biber-ms.pdf | Bin 0 -> 268058 bytes .../doc/examples/70-style-verbose-bibtex-ms.pdf | Bin 0 -> 266542 bytes .../doc/examples/70-style-verbose-ms.tex | 153 + .../examples/71-style-verbose-ibid-biber-ms.pdf | Bin 0 -> 272059 bytes .../examples/71-style-verbose-ibid-bibtex-ms.pdf | Bin 0 -> 270652 bytes .../doc/examples/71-style-verbose-ibid-ms.tex | 217 + .../examples/72-style-verbose-note-biber-ms.pdf | Bin 0 -> 270384 bytes .../examples/72-style-verbose-note-bibtex-ms.pdf | Bin 0 -> 268908 bytes .../doc/examples/72-style-verbose-note-ms.tex | 169 + .../examples/73-style-verbose-inote-biber-ms.pdf | Bin 0 -> 274161 bytes .../examples/73-style-verbose-inote-bibtex-ms.pdf | Bin 0 -> 272786 bytes .../doc/examples/73-style-verbose-inote-ms.tex | 240 + .../examples/74-style-verbose-trad1-biber-ms.pdf | Bin 0 -> 328741 bytes .../examples/74-style-verbose-trad1-bibtex-ms.pdf | Bin 0 -> 327370 bytes .../doc/examples/74-style-verbose-trad1-ms.tex | 401 + .../examples/75-style-verbose-trad2-biber-ms.pdf | Bin 0 -> 273584 bytes .../examples/75-style-verbose-trad2-bibtex-ms.pdf | Bin 0 -> 272203 bytes .../doc/examples/75-style-verbose-trad2-ms.tex | 293 + .../examples/76-style-verbose-trad3-biber-ms.pdf | Bin 0 -> 270799 bytes .../examples/76-style-verbose-trad3-bibtex-ms.pdf | Bin 0 -> 269420 bytes .../doc/examples/76-style-verbose-trad3-ms.tex | 242 + .../doc/examples/80-style-reading-biber-ms.pdf | Bin 0 -> 244291 bytes .../doc/examples/80-style-reading-bibtex-ms.pdf | Bin 0 -> 244291 bytes .../doc/examples/80-style-reading-ms.tex | 77 + .../doc/examples/81-style-draft-biber-ms.pdf | Bin 0 -> 149733 bytes .../doc/examples/81-style-draft-bibtex-ms.pdf | Bin 0 -> 149733 bytes .../biblatex-ms/doc/examples/81-style-draft-ms.tex | 32 + .../doc/examples/82-style-debug-biber-ms.pdf | Bin 0 -> 149679 bytes .../doc/examples/82-style-debug-bibtex-ms.pdf | Bin 0 -> 148860 bytes .../biblatex-ms/doc/examples/82-style-debug-ms.tex | 35 + .../doc/examples/90-related-entries-biber-ms.pdf | Bin 0 -> 31281 bytes .../doc/examples/90-related-entries-ms.tex | 12 + .../doc/examples/91-sorting-schemes-biber-ms.pdf | Bin 0 -> 21707 bytes .../doc/examples/91-sorting-schemes-ms.tex | 18 + .../doc/examples/92-bibliographylists-biber-ms.pdf | Bin 0 -> 63347 bytes .../doc/examples/92-bibliographylists-ms.tex | 45 + .../doc/examples/93-nameparts-biber-ms.pdf | Bin 0 -> 38407 bytes .../biblatex-ms/doc/examples/93-nameparts-ms.dbx | 1 + .../biblatex-ms/doc/examples/93-nameparts-ms.tex | 429 + .../doc/examples/94-labelprefix-biber-ms.pdf | Bin 0 -> 24027 bytes .../biblatex-ms/doc/examples/94-labelprefix-ms.tex | 85 + .../doc/examples/95-customlists-biber-ms.pdf | Bin 0 -> 12296 bytes .../biblatex-ms/doc/examples/95-customlists-ms.bib | 23 + .../biblatex-ms/doc/examples/95-customlists-ms.dbx | 3 + .../biblatex-ms/doc/examples/95-customlists-ms.tex | 93 + .../biblatex-ms/doc/examples/96-dates-biber-ms.pdf | Bin 0 -> 25295 bytes .../biblatex-ms/doc/examples/96-dates-ms.tex | 197 + .../doc/examples/97-annotations-biber-ms.pdf | Bin 0 -> 16647 bytes .../biblatex-ms/doc/examples/97-annotations-ms.bib | 12 + .../biblatex-ms/doc/examples/97-annotations-ms.tex | 52 + .../doc/examples/98-multiscript-biber-ms.pdf | Bin 0 -> 14145 bytes .../biblatex-ms/doc/examples/98-multiscript-ms.tex | 120 + .../doc/examples/biblatex-examples-ms.bib | 1661 ++ .../doc/examples/biblatex-examples-ms.bltxml | 2840 +++ .../biblatex-ms/latex/bbx/alphabetic-ms.bbx | 60 + .../biblatex-ms/latex/bbx/alphabetic-verb-ms.bbx | 6 + .../biblatex-ms/latex/bbx/authortitle-comp-ms.bbx | 6 + .../biblatex-ms/latex/bbx/authortitle-ibid-ms.bbx | 6 + .../biblatex-ms/latex/bbx/authortitle-icomp-ms.bbx | 6 + .../biblatex-ms/latex/bbx/authortitle-ms.bbx | 134 + .../biblatex-ms/latex/bbx/authortitle-tcomp-ms.bbx | 6 + .../biblatex-ms/latex/bbx/authortitle-terse-ms.bbx | 6 + .../latex/bbx/authortitle-ticomp-ms.bbx | 6 + .../biblatex-ms/latex/bbx/authoryear-comp-ms.bbx | 6 + .../biblatex-ms/latex/bbx/authoryear-ibid-ms.bbx | 6 + .../biblatex-ms/latex/bbx/authoryear-icomp-ms.bbx | 6 + .../biblatex-ms/latex/bbx/authoryear-ms.bbx | 293 + .../contrib/biblatex-ms/latex/bbx/debug-ms.bbx | 111 + .../contrib/biblatex-ms/latex/bbx/draft-ms.bbx | 42 + .../biblatex-ms/latex/bbx/numeric-comp-ms.bbx | 6 + .../contrib/biblatex-ms/latex/bbx/numeric-ms.bbx | 63 + .../biblatex-ms/latex/bbx/numeric-verb-ms.bbx | 6 + .../contrib/biblatex-ms/latex/bbx/reading-ms.bbx | 177 + .../contrib/biblatex-ms/latex/bbx/standard-ms.bbx | 1000 ++ .../biblatex-ms/latex/bbx/verbose-ibid-ms.bbx | 6 + .../biblatex-ms/latex/bbx/verbose-inote-ms.bbx | 6 + .../contrib/biblatex-ms/latex/bbx/verbose-ms.bbx | 6 + .../biblatex-ms/latex/bbx/verbose-note-ms.bbx | 6 + .../biblatex-ms/latex/bbx/verbose-trad1-ms.bbx | 6 + .../biblatex-ms/latex/bbx/verbose-trad2-ms.bbx | 6 + .../biblatex-ms/latex/bbx/verbose-trad3-ms.bbx | 6 + .../contrib/biblatex-ms/latex/biblatex-ms.cfg | 5 + .../contrib/biblatex-ms/latex/biblatex-ms.def | 3206 ++++ .../contrib/biblatex-ms/latex/biblatex-ms.sty | 17802 +++++++++++++++++++ .../contrib/biblatex-ms/latex/blx-bibtex-ms.def | 835 + .../biblatex-ms/latex/blx-case-expl3-ms.sty | 289 + .../biblatex-ms/latex/blx-case-latex2e-ms.sty | 326 + .../contrib/biblatex-ms/latex/blx-compat-ms.def | 373 + .../latex/contrib/biblatex-ms/latex/blx-dm-ms.def | 1612 ++ .../contrib/biblatex-ms/latex/blx-mcite-ms.def | 78 + .../contrib/biblatex-ms/latex/blx-natbib-ms.def | 84 + .../contrib/biblatex-ms/latex/blx-unicode-ms.def | 129 + .../biblatex-ms/latex/cbx/alphabetic-ms.cbx | 148 + .../biblatex-ms/latex/cbx/alphabetic-verb-ms.cbx | 88 + .../biblatex-ms/latex/cbx/authortitle-comp-ms.cbx | 198 + .../biblatex-ms/latex/cbx/authortitle-ibid-ms.cbx | 143 + .../biblatex-ms/latex/cbx/authortitle-icomp-ms.cbx | 227 + .../biblatex-ms/latex/cbx/authortitle-ms.cbx | 115 + .../biblatex-ms/latex/cbx/authortitle-tcomp-ms.cbx | 90 + .../biblatex-ms/latex/cbx/authortitle-terse-ms.cbx | 40 + .../latex/cbx/authortitle-ticomp-ms.cbx | 100 + .../biblatex-ms/latex/cbx/authoryear-comp-ms.cbx | 270 + .../biblatex-ms/latex/cbx/authoryear-ibid-ms.cbx | 173 + .../biblatex-ms/latex/cbx/authoryear-icomp-ms.cbx | 299 + .../biblatex-ms/latex/cbx/authoryear-ms.cbx | 141 + .../contrib/biblatex-ms/latex/cbx/debug-ms.cbx | 93 + .../contrib/biblatex-ms/latex/cbx/draft-ms.cbx | 73 + .../biblatex-ms/latex/cbx/numeric-comp-ms.cbx | 324 + .../contrib/biblatex-ms/latex/cbx/numeric-ms.cbx | 159 + .../biblatex-ms/latex/cbx/numeric-verb-ms.cbx | 100 + .../contrib/biblatex-ms/latex/cbx/reading-ms.cbx | 6 + .../biblatex-ms/latex/cbx/verbose-ibid-ms.cbx | 262 + .../biblatex-ms/latex/cbx/verbose-inote-ms.cbx | 321 + .../contrib/biblatex-ms/latex/cbx/verbose-ms.cbx | 231 + .../biblatex-ms/latex/cbx/verbose-note-ms.cbx | 292 + .../biblatex-ms/latex/cbx/verbose-trad1-ms.cbx | 294 + .../biblatex-ms/latex/cbx/verbose-trad2-ms.cbx | 288 + .../biblatex-ms/latex/cbx/verbose-trad3-ms.cbx | 261 + .../contrib/biblatex-ms/latex/lbx/UKenglish-ms.lbx | 7 + .../contrib/biblatex-ms/latex/lbx/USenglish-ms.lbx | 7 + .../contrib/biblatex-ms/latex/lbx/american-ms.lbx | 8 + .../biblatex-ms/latex/lbx/australian-ms.lbx | 28 + .../contrib/biblatex-ms/latex/lbx/austrian-ms.lbx | 16 + .../contrib/biblatex-ms/latex/lbx/basque-ms.lbx | 497 + .../contrib/biblatex-ms/latex/lbx/brazil-ms.lbx | 7 + .../contrib/biblatex-ms/latex/lbx/brazilian-ms.lbx | 566 + .../contrib/biblatex-ms/latex/lbx/british-ms.lbx | 90 + .../contrib/biblatex-ms/latex/lbx/bulgarian-ms.lbx | 621 + .../contrib/biblatex-ms/latex/lbx/canadian-ms.lbx | 7 + .../contrib/biblatex-ms/latex/lbx/catalan-ms.lbx | 663 + .../contrib/biblatex-ms/latex/lbx/croatian-ms.lbx | 610 + .../contrib/biblatex-ms/latex/lbx/czech-ms.lbx | 553 + .../contrib/biblatex-ms/latex/lbx/danish-ms.lbx | 554 + .../contrib/biblatex-ms/latex/lbx/dutch-ms.lbx | 573 + .../contrib/biblatex-ms/latex/lbx/english-ms.lbx | 746 + .../contrib/biblatex-ms/latex/lbx/estonian-ms.lbx | 582 + .../contrib/biblatex-ms/latex/lbx/finnish-ms.lbx | 625 + .../contrib/biblatex-ms/latex/lbx/french-ms.lbx | 670 + .../contrib/biblatex-ms/latex/lbx/galician-ms.lbx | 555 + .../contrib/biblatex-ms/latex/lbx/german-ms.lbx | 582 + .../contrib/biblatex-ms/latex/lbx/greek-ms.lbx | 613 + .../contrib/biblatex-ms/latex/lbx/hungarian-ms.lbx | 7 + .../contrib/biblatex-ms/latex/lbx/icelandic-ms.lbx | 505 + .../contrib/biblatex-ms/latex/lbx/italian-ms.lbx | 486 + .../contrib/biblatex-ms/latex/lbx/latvian-ms.lbx | 794 + .../biblatex-ms/latex/lbx/lithuanian-ms.lbx | 855 + .../contrib/biblatex-ms/latex/lbx/magyar-ms.lbx | 741 + .../contrib/biblatex-ms/latex/lbx/marathi-ms.lbx | 557 + .../contrib/biblatex-ms/latex/lbx/naustrian-ms.lbx | 22 + .../biblatex-ms/latex/lbx/newzealand-ms.lbx | 30 + .../contrib/biblatex-ms/latex/lbx/ngerman-ms.lbx | 21 + .../contrib/biblatex-ms/latex/lbx/norsk-ms.lbx | 553 + .../biblatex-ms/latex/lbx/nswissgerman-ms.lbx | 30 + .../contrib/biblatex-ms/latex/lbx/nynorsk-ms.lbx | 334 + .../contrib/biblatex-ms/latex/lbx/polish-ms.lbx | 593 + .../contrib/biblatex-ms/latex/lbx/portuges-ms.lbx | 7 + .../biblatex-ms/latex/lbx/portuguese-ms.lbx | 558 + .../contrib/biblatex-ms/latex/lbx/romanian-ms.lbx | 683 + .../contrib/biblatex-ms/latex/lbx/russian-ms.lbx | 623 + .../contrib/biblatex-ms/latex/lbx/serbian-ms.lbx | 457 + .../contrib/biblatex-ms/latex/lbx/serbianc-ms.lbx | 466 + .../contrib/biblatex-ms/latex/lbx/slovak-ms.lbx | 554 + .../contrib/biblatex-ms/latex/lbx/slovene-ms.lbx | 553 + .../contrib/biblatex-ms/latex/lbx/slovenian-ms.lbx | 7 + .../contrib/biblatex-ms/latex/lbx/spanish-ms.lbx | 613 + .../contrib/biblatex-ms/latex/lbx/swedish-ms.lbx | 531 + .../biblatex-ms/latex/lbx/swissgerman-ms.lbx | 24 + .../contrib/biblatex-ms/latex/lbx/turkish-ms.lbx | 577 + .../contrib/biblatex-ms/latex/lbx/ukrainian-ms.lbx | 623 + macros/latex/contrib/hereapplies/ChangeLog.md | 14 + macros/latex/contrib/hereapplies/README.md | 84 +- .../contrib/hereapplies/hereapplies-example.pdf | Bin 49896 -> 49778 bytes macros/latex/contrib/hereapplies/hereapplies.sty | 98 +- .../hereapplies/lyx-module/hereapplies.module | 166 +- macros/latex/contrib/hereapplies/package.json | 4 +- macros/latex/contrib/l3backend/CHANGELOG.md | 8 +- macros/latex/contrib/l3backend/README.md | 2 +- .../latex/contrib/l3backend/l3backend-basics.dtx | 14 +- macros/latex/contrib/l3backend/l3backend-box.dtx | 2 +- macros/latex/contrib/l3backend/l3backend-code.pdf | Bin 933558 -> 932092 bytes macros/latex/contrib/l3backend/l3backend-color.dtx | 82 +- macros/latex/contrib/l3backend/l3backend-draw.dtx | 2 +- .../latex/contrib/l3backend/l3backend-graphics.dtx | 2 +- .../latex/contrib/l3backend/l3backend-header.dtx | 2 +- .../latex/contrib/l3backend/l3backend-opacity.dtx | 2 +- macros/latex/contrib/l3backend/l3backend-pdf.dtx | 2 +- macros/latex/contrib/l3kernel/CHANGELOG.md | 18 +- macros/latex/contrib/l3kernel/README.md | 2 +- macros/latex/contrib/l3kernel/expl3.dtx | 4 +- macros/latex/contrib/l3kernel/expl3.pdf | Bin 626225 -> 626173 bytes macros/latex/contrib/l3kernel/interface3.pdf | Bin 1769273 -> 1770652 bytes macros/latex/contrib/l3kernel/interface3.tex | 2 +- macros/latex/contrib/l3kernel/l3basics.dtx | 2 +- macros/latex/contrib/l3kernel/l3bootstrap.dtx | 2 +- macros/latex/contrib/l3kernel/l3box.dtx | 2 +- macros/latex/contrib/l3kernel/l3candidates.dtx | 2 +- macros/latex/contrib/l3kernel/l3cctab.dtx | 4 +- macros/latex/contrib/l3kernel/l3clist.dtx | 2 +- macros/latex/contrib/l3kernel/l3coffins.dtx | 2 +- macros/latex/contrib/l3kernel/l3color.dtx | 142 +- macros/latex/contrib/l3kernel/l3debug.dtx | 2 +- macros/latex/contrib/l3kernel/l3deprecation.dtx | 2 +- macros/latex/contrib/l3kernel/l3doc.dtx | 2 +- macros/latex/contrib/l3kernel/l3doc.pdf | Bin 558105 -> 557782 bytes macros/latex/contrib/l3kernel/l3docstrip.dtx | 2 +- macros/latex/contrib/l3kernel/l3docstrip.pdf | Bin 151843 -> 151820 bytes macros/latex/contrib/l3kernel/l3expan.dtx | 2 +- macros/latex/contrib/l3kernel/l3file.dtx | 2 +- macros/latex/contrib/l3kernel/l3flag.dtx | 2 +- macros/latex/contrib/l3kernel/l3fp-assign.dtx | 2 +- macros/latex/contrib/l3kernel/l3fp-aux.dtx | 4 +- macros/latex/contrib/l3kernel/l3fp-basics.dtx | 2 +- macros/latex/contrib/l3kernel/l3fp-convert.dtx | 2 +- macros/latex/contrib/l3kernel/l3fp-expo.dtx | 2 +- macros/latex/contrib/l3kernel/l3fp-extended.dtx | 2 +- macros/latex/contrib/l3kernel/l3fp-logic.dtx | 2 +- macros/latex/contrib/l3kernel/l3fp-parse.dtx | 2 +- macros/latex/contrib/l3kernel/l3fp-random.dtx | 2 +- macros/latex/contrib/l3kernel/l3fp-round.dtx | 2 +- macros/latex/contrib/l3kernel/l3fp-traps.dtx | 2 +- macros/latex/contrib/l3kernel/l3fp-trig.dtx | 2 +- macros/latex/contrib/l3kernel/l3fp.dtx | 2 +- macros/latex/contrib/l3kernel/l3fparray.dtx | 2 +- macros/latex/contrib/l3kernel/l3int.dtx | 2 +- macros/latex/contrib/l3kernel/l3intarray.dtx | 2 +- .../latex/contrib/l3kernel/l3kernel-functions.dtx | 2 +- macros/latex/contrib/l3kernel/l3keys.dtx | 6 +- macros/latex/contrib/l3kernel/l3legacy.dtx | 2 +- macros/latex/contrib/l3kernel/l3luatex.dtx | 4 +- macros/latex/contrib/l3kernel/l3msg.dtx | 16 +- macros/latex/contrib/l3kernel/l3names.dtx | 2 +- macros/latex/contrib/l3kernel/l3news.pdf | Bin 395879 -> 395879 bytes macros/latex/contrib/l3kernel/l3news01.pdf | Bin 122710 -> 122710 bytes macros/latex/contrib/l3kernel/l3news02.pdf | Bin 150676 -> 150676 bytes macros/latex/contrib/l3kernel/l3news03.pdf | Bin 148702 -> 148702 bytes macros/latex/contrib/l3kernel/l3news04.pdf | Bin 114588 -> 114588 bytes macros/latex/contrib/l3kernel/l3news05.pdf | Bin 112487 -> 112487 bytes macros/latex/contrib/l3kernel/l3news06.pdf | Bin 151573 -> 151573 bytes macros/latex/contrib/l3kernel/l3news07.pdf | Bin 128309 -> 128309 bytes macros/latex/contrib/l3kernel/l3news08.pdf | Bin 163454 -> 163454 bytes macros/latex/contrib/l3kernel/l3news09.pdf | Bin 250139 -> 250139 bytes macros/latex/contrib/l3kernel/l3news10.pdf | Bin 150279 -> 150279 bytes macros/latex/contrib/l3kernel/l3news11.pdf | Bin 170063 -> 170063 bytes macros/latex/contrib/l3kernel/l3news12.pdf | Bin 204990 -> 204990 bytes macros/latex/contrib/l3kernel/l3pdf.dtx | 2 +- macros/latex/contrib/l3kernel/l3prefixes.pdf | Bin 81567 -> 81567 bytes macros/latex/contrib/l3kernel/l3prg.dtx | 2 +- macros/latex/contrib/l3kernel/l3prop.dtx | 2 +- macros/latex/contrib/l3kernel/l3quark.dtx | 2 +- macros/latex/contrib/l3kernel/l3regex.dtx | 4 +- macros/latex/contrib/l3kernel/l3seq.dtx | 2 +- macros/latex/contrib/l3kernel/l3skip.dtx | 2 +- macros/latex/contrib/l3kernel/l3sort.dtx | 4 +- macros/latex/contrib/l3kernel/l3str-convert.dtx | 8 +- macros/latex/contrib/l3kernel/l3str.dtx | 2 +- macros/latex/contrib/l3kernel/l3styleguide.pdf | Bin 296294 -> 296239 bytes macros/latex/contrib/l3kernel/l3styleguide.tex | 2 +- macros/latex/contrib/l3kernel/l3syntax-changes.pdf | Bin 242959 -> 242906 bytes macros/latex/contrib/l3kernel/l3syntax-changes.tex | 2 +- macros/latex/contrib/l3kernel/l3sys.dtx | 2 +- macros/latex/contrib/l3kernel/l3term-glossary.pdf | Bin 231369 -> 231316 bytes macros/latex/contrib/l3kernel/l3term-glossary.tex | 2 +- macros/latex/contrib/l3kernel/l3text-case.dtx | 57 +- macros/latex/contrib/l3kernel/l3text-purify.dtx | 2 +- macros/latex/contrib/l3kernel/l3text.dtx | 2 +- macros/latex/contrib/l3kernel/l3tl-analysis.dtx | 2 +- macros/latex/contrib/l3kernel/l3tl.dtx | 2 +- macros/latex/contrib/l3kernel/l3token.dtx | 2 +- macros/latex/contrib/l3kernel/l3unicode.dtx | 2 +- macros/latex/contrib/l3kernel/source3.pdf | Bin 7251031 -> 7258705 bytes macros/latex/contrib/l3kernel/source3.tex | 2 +- macros/latex/contrib/pseudo/VERSION | 2 +- macros/latex/contrib/pseudo/doc/pseudo.pdf | Bin 949345 -> 950360 bytes macros/latex/contrib/pseudo/doc/pseudo.tex | 43 +- macros/latex/contrib/pseudo/pseudo.sty | 33 +- macros/latex/contrib/pseudo/test/overlaytest.tex | 12 + 393 files changed, 90016 insertions(+), 360 deletions(-) create mode 100644 macros/latex/contrib/biblatex-ms/CHANGES-ms.md create mode 100644 macros/latex/contrib/biblatex-ms/README create mode 100644 macros/latex/contrib/biblatex-ms/biber/bltxml/biblatex-examples-ms.bltxml create mode 100644 macros/latex/contrib/biblatex-ms/bibtex/bib/biblatex/biblatex-examples-ms.bib create mode 100644 macros/latex/contrib/biblatex-ms/bibtex/bst/biblatex-ms.bst create mode 100644 macros/latex/contrib/biblatex-ms/doc/biblatex-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/biblatex-ms.tex create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/01-introduction-biber-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/01-introduction-bibtex-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/01-introduction-ms.tex create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/01-introduction.run-ms.xml create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/02-annotations-biber-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/02-annotations-bibtex-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/02-annotations-ms.tex create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/03-localization-keys-biber-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/03-localization-keys-bibtex-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/03-localization-keys-ms.tex create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/04-delimiters-biber-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/04-delimiters-bibtex-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/04-delimiters-ms.tex create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/10-references-per-section-biber-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/10-references-per-section-bibtex-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/10-references-per-section-ms.tex create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/11-references-by-section-biber-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/11-references-by-section-bibtex-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/11-references-by-section-ms.tex create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/12-references-by-segment-biber-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/12-references-by-segment-bibtex-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/12-references-by-segment-ms.tex create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/13-references-by-keyword-biber-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/13-references-by-keyword-bibtex-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/13-references-by-keyword-ms.tex create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/14-references-by-category-biber-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/14-references-by-category-bibtex-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/14-references-by-category-ms.tex create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/15-references-by-type-biber-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/15-references-by-type-bibtex-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/15-references-by-type-ms.tex create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/16-numeric-prefixed-1-biber-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/16-numeric-prefixed-1-bibtex-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/16-numeric-prefixed-1-ms.tex create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/17-numeric-prefixed-2-biber-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/17-numeric-prefixed-2-bibtex-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/17-numeric-prefixed-2-ms.tex create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/18-numeric-hybrid-biber-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/18-numeric-hybrid-bibtex-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/18-numeric-hybrid-ms.tex create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/19-alphabetic-prefixed-biber-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/19-alphabetic-prefixed-bibtex-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/19-alphabetic-prefixed-ms.tex create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/20-indexing-single-biber-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/20-indexing-single-bibtex-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/20-indexing-single-ms.tex create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/21-indexing-multiple-biber-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/21-indexing-multiple-bibtex-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/21-indexing-multiple-ms.tex create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/22-indexing-subentry-biber-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/22-indexing-subentry-bibtex-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/22-indexing-subentry-ms.tex create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/30-style-numeric-biber-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/30-style-numeric-bibtex-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/30-style-numeric-ms.tex create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/31-style-numeric-comp-biber-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/31-style-numeric-comp-bibtex-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/31-style-numeric-comp-ms.tex create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/32-style-numeric-verb-biber-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/32-style-numeric-verb-bibtex-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/32-style-numeric-verb-ms.tex create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/40-style-alphabetic-biber-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/40-style-alphabetic-bibtex-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/40-style-alphabetic-ms.tex create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/41-style-alphabetic-verb-biber-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/41-style-alphabetic-verb-bibtex-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/41-style-alphabetic-verb-ms.tex create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/42-style-alphabetic-template-biber-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/42-style-alphabetic-template-bibtex-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/42-style-alphabetic-template-ms.tex create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/50-style-authoryear-biber-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/50-style-authoryear-bibtex-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/50-style-authoryear-ms.tex create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/51-style-authoryear-ibid-biber-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/51-style-authoryear-ibid-bibtex-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/51-style-authoryear-ibid-ms.tex create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/52-style-authoryear-comp-biber-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/52-style-authoryear-comp-bibtex-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/52-style-authoryear-comp-ms.tex create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/53-style-authoryear-icomp-biber-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/53-style-authoryear-icomp-bibtex-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/53-style-authoryear-icomp-ms.tex create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/60-style-authortitle-biber-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/60-style-authortitle-bibtex-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/60-style-authortitle-ms.tex create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/61-style-authortitle-ibid-biber-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/61-style-authortitle-ibid-bibtex-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/61-style-authortitle-ibid-ms.tex create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/62-style-authortitle-comp-biber-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/62-style-authortitle-comp-bibtex-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/62-style-authortitle-comp-ms.tex create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/63-style-authortitle-icomp-biber-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/63-style-authortitle-icomp-bibtex-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/63-style-authortitle-icomp-ms.tex create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/64-style-authortitle-terse-biber-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/64-style-authortitle-terse-bibtex-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/64-style-authortitle-terse-ms.tex create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/65-style-authortitle-tcomp-biber-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/65-style-authortitle-tcomp-bibtex-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/65-style-authortitle-tcomp-ms.tex create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/66-style-authortitle-ticomp-biber-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/66-style-authortitle-ticomp-bibtex-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/66-style-authortitle-ticomp-ms.tex create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/70-style-verbose-biber-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/70-style-verbose-bibtex-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/70-style-verbose-ms.tex create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/71-style-verbose-ibid-biber-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/71-style-verbose-ibid-bibtex-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/71-style-verbose-ibid-ms.tex create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/72-style-verbose-note-biber-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/72-style-verbose-note-bibtex-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/72-style-verbose-note-ms.tex create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/73-style-verbose-inote-biber-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/73-style-verbose-inote-bibtex-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/73-style-verbose-inote-ms.tex create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/74-style-verbose-trad1-biber-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/74-style-verbose-trad1-bibtex-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/74-style-verbose-trad1-ms.tex create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/75-style-verbose-trad2-biber-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/75-style-verbose-trad2-bibtex-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/75-style-verbose-trad2-ms.tex create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/76-style-verbose-trad3-biber-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/76-style-verbose-trad3-bibtex-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/76-style-verbose-trad3-ms.tex create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/80-style-reading-biber-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/80-style-reading-bibtex-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/80-style-reading-ms.tex create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/81-style-draft-biber-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/81-style-draft-bibtex-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/81-style-draft-ms.tex create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/82-style-debug-biber-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/82-style-debug-bibtex-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/82-style-debug-ms.tex create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/90-related-entries-biber-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/90-related-entries-ms.tex create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/91-sorting-schemes-biber-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/91-sorting-schemes-ms.tex create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/92-bibliographylists-biber-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/92-bibliographylists-ms.tex create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/93-nameparts-biber-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/93-nameparts-ms.dbx create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/93-nameparts-ms.tex create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/94-labelprefix-biber-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/94-labelprefix-ms.tex create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/95-customlists-biber-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/95-customlists-ms.bib create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/95-customlists-ms.dbx create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/95-customlists-ms.tex create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/96-dates-biber-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/96-dates-ms.tex create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/97-annotations-biber-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/97-annotations-ms.bib create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/97-annotations-ms.tex create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/98-multiscript-biber-ms.pdf create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/98-multiscript-ms.tex create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/biblatex-examples-ms.bib create mode 100644 macros/latex/contrib/biblatex-ms/doc/examples/biblatex-examples-ms.bltxml create mode 100644 macros/latex/contrib/biblatex-ms/latex/bbx/alphabetic-ms.bbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/bbx/alphabetic-verb-ms.bbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/bbx/authortitle-comp-ms.bbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/bbx/authortitle-ibid-ms.bbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/bbx/authortitle-icomp-ms.bbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/bbx/authortitle-ms.bbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/bbx/authortitle-tcomp-ms.bbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/bbx/authortitle-terse-ms.bbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/bbx/authortitle-ticomp-ms.bbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/bbx/authoryear-comp-ms.bbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/bbx/authoryear-ibid-ms.bbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/bbx/authoryear-icomp-ms.bbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/bbx/authoryear-ms.bbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/bbx/debug-ms.bbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/bbx/draft-ms.bbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/bbx/numeric-comp-ms.bbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/bbx/numeric-ms.bbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/bbx/numeric-verb-ms.bbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/bbx/reading-ms.bbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/bbx/standard-ms.bbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/bbx/verbose-ibid-ms.bbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/bbx/verbose-inote-ms.bbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/bbx/verbose-ms.bbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/bbx/verbose-note-ms.bbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/bbx/verbose-trad1-ms.bbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/bbx/verbose-trad2-ms.bbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/bbx/verbose-trad3-ms.bbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/biblatex-ms.cfg create mode 100644 macros/latex/contrib/biblatex-ms/latex/biblatex-ms.def create mode 100644 macros/latex/contrib/biblatex-ms/latex/biblatex-ms.sty create mode 100644 macros/latex/contrib/biblatex-ms/latex/blx-bibtex-ms.def create mode 100644 macros/latex/contrib/biblatex-ms/latex/blx-case-expl3-ms.sty create mode 100644 macros/latex/contrib/biblatex-ms/latex/blx-case-latex2e-ms.sty create mode 100644 macros/latex/contrib/biblatex-ms/latex/blx-compat-ms.def create mode 100644 macros/latex/contrib/biblatex-ms/latex/blx-dm-ms.def create mode 100644 macros/latex/contrib/biblatex-ms/latex/blx-mcite-ms.def create mode 100644 macros/latex/contrib/biblatex-ms/latex/blx-natbib-ms.def create mode 100644 macros/latex/contrib/biblatex-ms/latex/blx-unicode-ms.def create mode 100644 macros/latex/contrib/biblatex-ms/latex/cbx/alphabetic-ms.cbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/cbx/alphabetic-verb-ms.cbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/cbx/authortitle-comp-ms.cbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/cbx/authortitle-ibid-ms.cbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/cbx/authortitle-icomp-ms.cbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/cbx/authortitle-ms.cbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/cbx/authortitle-tcomp-ms.cbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/cbx/authortitle-terse-ms.cbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/cbx/authortitle-ticomp-ms.cbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/cbx/authoryear-comp-ms.cbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/cbx/authoryear-ibid-ms.cbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/cbx/authoryear-icomp-ms.cbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/cbx/authoryear-ms.cbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/cbx/debug-ms.cbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/cbx/draft-ms.cbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/cbx/numeric-comp-ms.cbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/cbx/numeric-ms.cbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/cbx/numeric-verb-ms.cbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/cbx/reading-ms.cbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/cbx/verbose-ibid-ms.cbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/cbx/verbose-inote-ms.cbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/cbx/verbose-ms.cbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/cbx/verbose-note-ms.cbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/cbx/verbose-trad1-ms.cbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/cbx/verbose-trad2-ms.cbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/cbx/verbose-trad3-ms.cbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/lbx/UKenglish-ms.lbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/lbx/USenglish-ms.lbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/lbx/american-ms.lbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/lbx/australian-ms.lbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/lbx/austrian-ms.lbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/lbx/basque-ms.lbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/lbx/brazil-ms.lbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/lbx/brazilian-ms.lbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/lbx/british-ms.lbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/lbx/bulgarian-ms.lbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/lbx/canadian-ms.lbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/lbx/catalan-ms.lbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/lbx/croatian-ms.lbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/lbx/czech-ms.lbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/lbx/danish-ms.lbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/lbx/dutch-ms.lbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/lbx/english-ms.lbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/lbx/estonian-ms.lbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/lbx/finnish-ms.lbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/lbx/french-ms.lbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/lbx/galician-ms.lbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/lbx/german-ms.lbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/lbx/greek-ms.lbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/lbx/hungarian-ms.lbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/lbx/icelandic-ms.lbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/lbx/italian-ms.lbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/lbx/latvian-ms.lbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/lbx/lithuanian-ms.lbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/lbx/magyar-ms.lbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/lbx/marathi-ms.lbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/lbx/naustrian-ms.lbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/lbx/newzealand-ms.lbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/lbx/ngerman-ms.lbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/lbx/norsk-ms.lbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/lbx/nswissgerman-ms.lbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/lbx/nynorsk-ms.lbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/lbx/polish-ms.lbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/lbx/portuges-ms.lbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/lbx/portuguese-ms.lbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/lbx/romanian-ms.lbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/lbx/russian-ms.lbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/lbx/serbian-ms.lbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/lbx/serbianc-ms.lbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/lbx/slovak-ms.lbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/lbx/slovene-ms.lbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/lbx/slovenian-ms.lbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/lbx/spanish-ms.lbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/lbx/swedish-ms.lbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/lbx/swissgerman-ms.lbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/lbx/turkish-ms.lbx create mode 100644 macros/latex/contrib/biblatex-ms/latex/lbx/ukrainian-ms.lbx create mode 100644 macros/latex/contrib/pseudo/test/overlaytest.tex (limited to 'macros/latex') diff --git a/macros/latex/contrib/beamer-contrib/beamerswitch/README.md b/macros/latex/contrib/beamer-contrib/beamerswitch/README.md index 732401540c..1ea04bbc08 100644 --- a/macros/latex/contrib/beamer-contrib/beamerswitch/README.md +++ b/macros/latex/contrib/beamer-contrib/beamerswitch/README.md @@ -88,7 +88,7 @@ first three steps. ## Licence -Copyright 2016–2021 Alex Ball. +Copyright 2016–2022 Alex Ball. This work consists of the file beamerswitch.dtx and a Makefile. diff --git a/macros/latex/contrib/beamer-contrib/beamerswitch/beamerswitch-example-article.pdf b/macros/latex/contrib/beamer-contrib/beamerswitch/beamerswitch-example-article.pdf index 79a6084f41..c57bf4c0b6 100644 Binary files a/macros/latex/contrib/beamer-contrib/beamerswitch/beamerswitch-example-article.pdf and b/macros/latex/contrib/beamer-contrib/beamerswitch/beamerswitch-example-article.pdf differ diff --git a/macros/latex/contrib/beamer-contrib/beamerswitch/beamerswitch-example-handout.pdf b/macros/latex/contrib/beamer-contrib/beamerswitch/beamerswitch-example-handout.pdf index 64cf18c023..3b7fde4ef0 100644 Binary files a/macros/latex/contrib/beamer-contrib/beamerswitch/beamerswitch-example-handout.pdf and b/macros/latex/contrib/beamer-contrib/beamerswitch/beamerswitch-example-handout.pdf differ diff --git a/macros/latex/contrib/beamer-contrib/beamerswitch/beamerswitch-example-trans.pdf b/macros/latex/contrib/beamer-contrib/beamerswitch/beamerswitch-example-trans.pdf index bd9bf2845b..bef605e9a1 100644 Binary files a/macros/latex/contrib/beamer-contrib/beamerswitch/beamerswitch-example-trans.pdf and b/macros/latex/contrib/beamer-contrib/beamerswitch/beamerswitch-example-trans.pdf differ diff --git a/macros/latex/contrib/beamer-contrib/beamerswitch/beamerswitch-example.pdf b/macros/latex/contrib/beamer-contrib/beamerswitch/beamerswitch-example.pdf index 9ef988115a..57e0903ee3 100644 Binary files a/macros/latex/contrib/beamer-contrib/beamerswitch/beamerswitch-example.pdf and b/macros/latex/contrib/beamer-contrib/beamerswitch/beamerswitch-example.pdf differ diff --git a/macros/latex/contrib/beamer-contrib/beamerswitch/beamerswitch.dtx b/macros/latex/contrib/beamer-contrib/beamerswitch/beamerswitch.dtx index ee8b3498ee..4dbfb3f6af 100644 --- a/macros/latex/contrib/beamer-contrib/beamerswitch/beamerswitch.dtx +++ b/macros/latex/contrib/beamer-contrib/beamerswitch/beamerswitch.dtx @@ -93,7 +93,7 @@ first three steps. ## Licence -Copyright 2016–2021 Alex Ball. +Copyright 2016–2022 Alex Ball. This work consists of the file beamerswitch.dtx and a Makefile. @@ -194,7 +194,7 @@ See: http://www.latex-project.org/lppl.txt \endpreamble \postamble -Copyright (C) 2016-2021 by Alex Ball +Copyright (C) 2016-2022 by Alex Ball \endpostamble \usedir{tex/latex/\jobname} @@ -229,7 +229,7 @@ Copyright (C) 2016-2021 by Alex Ball %\NeedsTeXFormat{LaTeX2e}[1999/12/01] %\ProvidesClass{beamerswitch} %<*class> - [2021/04/12 v1.8 Convenient mode selection in Beamer documents] + [2022/08/20 v1.9 Convenient mode selection in Beamer documents] % %<*driver> \documentclass[12pt]{article} @@ -723,9 +723,13 @@ The various options are described below. \subsection{Passing options to the underlying classes} +\begin{docKey}{articleclass}{=\meta{class}}{default and initially \val{article}} + Selects the \meta{class} to use when in \key{article} mode. +\end{docKey} + \begin{docKey}{articleoptions}{=\marg{options}}{default and initially empty} - Passes the \meta{options} to the \pkg{article} class when in \key{article} - mode. + Passes the \meta{options} to the underlying class (selected by \key{articleclass}) + when in \key{article} mode. \end{docKey} \begin{docKey}{beameroptions}{=\marg{options}}{default and initially \val{ignorenonframetext}} @@ -882,6 +886,7 @@ If you want to switch to using \texttt{rubber}, say, pre-define \begin{dispListing} \newcommand*{\SpawnedCompiler}{rubber -q --synctex} \newcommand*{\SpawnedPDFTeX}{\SpawnedCompiler -m pdftex} +\newcommand*{\SpawnedLuaTeX}{\SpawnedCompiler -m lualatex} % needs v1.6.0+ \newcommand*{\SpawnedXeTeX}{\SpawnedCompiler -m xelatex} \documentclass{beamerswitch} \end{dispListing} @@ -1266,10 +1271,12 @@ suggestions for improvements or new features to the % \pkg{shellesc} for running parallel compilations % \item % \pkg{iftex} for determining which engine to use +% \item +% \pkg{expl3} for cleaning options passed onward to underlying classes. % \end{itemize} % % \begin{macrocode} -\RequirePackage{xkeyval,xkvltxp,etoolbox,xstring,shellesc,iftex} +\RequirePackage{xkeyval,xkvltxp,etoolbox,xstring,shellesc,iftex,expl3} % \end{macrocode} % % \subsection{Class options} @@ -1376,10 +1383,22 @@ suggestions for improvements or new features to the % \end{macrocode} % \end{optionkey} % +% \changes{v1.9}{2022/08/20}{Add \key{articleclass} option.} +% \begin{optionkey}{articleclass} +% +% The \key{articleclass} option allows the class used for article mode +% to be customized. +% +% \begin{macrocode} +\define@cmdkey[DC]{beamerswitch}{articleclass}[article]{} +% \end{macrocode} +% \end{optionkey} +% % \changes{v1.8}{2021/04/12}{Add \key{articleoptions} option.} % \begin{optionkey}{articleoptions} % -% The \key{articleoptions} will passed to the \pkg{article} class. +% The \key{articleoptions} will passed to the class used for +% \key{article} mode. % % \begin{macrocode} \define@cmdkey[DC]{beamerswitch}{articleoptions}[]{} @@ -1409,7 +1428,8 @@ suggestions for improvements or new features to the % % \begin{macrocode} \setkeys[DC]{beamerswitch}{beamer=true,alsobeamer=false,alsotrans=false,% - alsohandout=false,alsoarticle=false,beameroptions,articleoptions} + alsohandout=false,alsoarticle=false,beameroptions,articleclass,% + articleoptions} % \end{macrocode} % % Now we process the options given by the user. @@ -1418,6 +1438,16 @@ suggestions for improvements or new features to the \ProcessOptionsX[DC] % \end{macrocode} % +% We remove problematic whitespace from \key{articleoptions} and +% \key{beameroptions}. +% +% \begin{macrocode} +\ExplSyntaxOn +\tl_replace_all:Nnn \cmdDC@beamerswitch@articleoptions { ,~ } { , } +\tl_replace_all:Nnn \cmdDC@beamerswitch@beameroptions { ,~ } { , } +\ExplSyntaxOff +% \end{macrocode} +% % \subsection{Jobname-based mode switching}\label{sec:switching} % % \begin{macro}{BeamerSuffix} @@ -1530,20 +1560,20 @@ suggestions for improvements or new features to the % % \subsection{Setting up modes} % -% For article mode, we load the \pkg{article} class and the \pkg{beamerarticle} -% support package. Apologies for anyone hoping for \pkg{scrartcl} or -% \pkg{memoir} alternatives. % \begin{macro}{beamer@insttitle} % \begin{macro}{beamer@andtitle} % \begin{macro}{beamer@instinst} % \begin{macro}{beamer@andinst} +% For article mode, we load the class selected by the \key{articleclass} +% option and require the \pkg{beamerarticle} support package. % We also add some beamer base macros that are needed for the -%\cs{insertinstitute} command. +% \cs{insertinstitute} command. % % \begin{macrocode} \ifbool{DC@beamerswitch@article}{% - \PassOptionsToClass{\cmdDC@beamerswitch@articleoptions}{article} - \LoadClass{article} + \PassOptionsToClass{\cmdDC@beamerswitch@articleoptions}{% + \cmdDC@beamerswitch@articleclass} + \LoadClass{\cmdDC@beamerswitch@articleclass} \RequirePackage{beamerarticle} \def\beamer@insttitle#1{\textsuperscript{#1}} \def\beamer@andtitle{\quad} @@ -1592,27 +1622,17 @@ suggestions for improvements or new features to the }{% % \end{macrocode} % +% For the presentation modes, we load the \pkg{beamer} class with the +% appropriate mode option as well those chosen using \key{beameroptions}. % -% For the presentation modes, we load the \pkg{beamer} class with appropriate -% options. Since we are targeting users wanting different versions of their -% presentations with the same code, we activate \key{ignorenonframetext}. +% Handout mode lays multiple slides out on a single page. For this we use +% \pkg{pgfpages}. The actual configuration is handled later. % % \begin{macrocode} \ifbool{DC@beamerswitch@handout}{% \PassOptionsToClass{\cmdDC@beamerswitch@beameroptions}{beamer} \LoadClass[handout]{beamer} -% \end{macrocode} -% -% Handout mode lays multiple slides out on a single page. For this we use -% \pkg{pgfpages}. The actual configuration is handled later. -% -% \begin{macrocode} \RequirePackage{pgfpages} -% \end{macrocode} -% -% We also activate \key{ignorenonframetext} for the other two modes. -% -% \begin{macrocode} }{% \ifbool{DC@beamerswitch@trans}{% \PassOptionsToClass{\cmdDC@beamerswitch@beameroptions}{beamer} diff --git a/macros/latex/contrib/beamer-contrib/beamerswitch/beamerswitch.pdf b/macros/latex/contrib/beamer-contrib/beamerswitch/beamerswitch.pdf index ebd182790b..c837e04832 100644 Binary files a/macros/latex/contrib/beamer-contrib/beamerswitch/beamerswitch.pdf and b/macros/latex/contrib/beamer-contrib/beamerswitch/beamerswitch.pdf differ diff --git a/macros/latex/contrib/biblatex-ms/CHANGES-ms.md b/macros/latex/contrib/biblatex-ms/CHANGES-ms.md new file mode 100644 index 0000000000..864e7304d1 --- /dev/null +++ b/macros/latex/contrib/biblatex-ms/CHANGES-ms.md @@ -0,0 +1,983 @@ +# RELEASE NOTES FOR VERSION 4.0 + - This is a major update with support for multiscript entryfields + - **INCOMPATIBLE CHANGE** Default name list and plain list formats declared + with \DeclareNameFormat and \DeclareListFormat respectively have been + modified to support per-item language switching via the macros: + + name:langswitchon/name:langswitchoff + list:langswitchon/list:langswitchoff + + If you use or provide custom name/list formats, you may want to look at + the format definitions in biblatex.def to see where to place these in + your custom formats in order to provide multiscript support for + per-item automatic language switching. Nothing will break if you don't + do this but there may be a loss of some aspects of multiscript + functionality. In general, you should place the "on" macros *after* + name:delim/list:delim and the "off" macros at the end of the format. +- **INCOMPATIBLE CHANGE** Data annotation test macros \if*annotation, + \has*annotation and \get*annotation now have multiscript form and + language as optional arguments in position 1 and 2, therefore, if you + are using these macros with any optional arguments, be sure to supply + the first two arguments (as "[][]"). For example: + + \getitemannotation[somefield] -> \getitemannotation[][][somefield] + \ifpartannotation[][someannotationname][2]{family}{someval} -> + \ifpartannotation[][][][someannotationname][2]{family}{someval} +- **INCOMPATIBLE CHANGE** Namelist-specific hashes of the form + namehash, bibnamehash or fullhash now must + contain a multiscript form and language in order to differentiate + between multiscript name alternates. The format is now + namehash, + bibnamehash or + fullhash and biber 4.0+ always generates specific + name hashes in this format. +# RELEASE NOTES FOR VERSION 3.18b +- Reenable `\MakeUppercase`/`\MakeLowercase` "patches" for `\bibstring` + based on `\CaseSwitch`. + +# RELEASE NOTES FOR VERSION 3.18a +- Disable `\MakeUppercase`/`\MakeLowercase` patches as emergency fix + for LaTeX 2022-06-01-PL4 compatibility. + +# RELEASE NOTES FOR VERSION 3.18 +- New sorting name key generation macro `\visibility` which allows + application of sorting name key generation to apply only to sorting + within citati + ons. +- New sorting macro `\intciteorder` which allows sorting by order internal + to a cite command like \cite{a,b,c}. +- New option `pluralothers` to force "et al." to be plural (i.e. only + replace two or more names). This is required for some styles (e.g. APA) +- Added `\localrefcontext` as a local alternative + to the global `\newrefcontext`. + `\localrefcontext` can be nested and is only active in the current group. + +# RELEASE NOTES FOR VERSION 3.17 +- **INCOMPATIBLE CHANGE** + The behaviour of index-less granular xdata references to list fields has + changed. Before, a reference to an XDATA list field would select the + first element in the XDATA field list if no index was given but now this + will splice in all elements of the XDATA list field. To ensure the + previous behaviour, simply add "-1" (assuming the default value of "-" + for the biber 'xdatasep' option) to the end of all granaular list + XDATA references. +- Added helper macros to enable calculations with non-ASCII numerals. + This is necessary to properly support languages like Marathi. + At the moment the 'translation' is very basic and uses a one-to-one + correspondence of US-ASCII (Arabic) digits and non-ASCII digits. + The translation also needs additional post-processing steps. + Use `\blx@defcomputableequivalent{}{}` to + make `` an equivalent of `` + (presumably this command will be used in `.lbx` files if the language + requires it). + `\hascomputableequivalent{}` can be used to check if `` + is a number that can be converted to a number with ASCII digits. + `\getcomputableequivalent{}{}` does the conversion + and saves the number in ``. + There is `\ifiscomputable{}` to check if a `` + is an ASCII number OR has a computable equivalent. + There are analogous macros for fields instead of strings. +- Added `\textouterlang` to select the last active language that + was not selected by `biblatex` itself. + This may help in multilingual setups where `biblatex` also changes the + language quite heavily. +- Added `\DeclareBibstringSet`, `\DeclareBibstringSetFormat` etc. + to allow injecting additional formatting for a set of bibstrings. + Sets can be defined arbitrarily. These commands are primarily + intended for use in localisation modules. +- Changed the definition of `\bibnamedelimi` to `\isdot\addnbspace`. + Previously the definition was just `\addnbspace`, which meant the `.` + would be treated as a period/full stop. +- **BREAKING CHANGE** + `\DeclareDelimFormat` no longer accepts a list of names as argument. + It only accepts a single delimiter name. + A list of contexts is still supported. + Note that previously the optional argument would not work correctly + with a list of names. +- **CRITICAL CHANGE** + `biblatex` no longer writes tracking and refsection initialisation code + to aux files. + Instead the `\...cite` commands are redefined locally to do that on demand. + This should keep the auxiliary files much cleaner of `biblatex` + intervention. +- **CRITICAL CHANGE** + Generalised `season` date part to `yeardivision`. It can now also + hold quarter, quadrimester, semestral or seasons with hemisphere + designation. + Helper macros have been renamed accordingly. Limited backwards + compatibility is in place. +- **(Possibly) CRITICAL CHANGE** + `\notecite` and friends no longer issue an explicit `\nocite`. + Since the commands are defined with `\DeclareCiteCommand`, they + already issue a normal cite request. + The additional `\nocite` from the loop code was superfluous + and would result in slightly instable `.bcf` files. + + +# RELEASE NOTES FOR VERSION 3.16 +- Fixed an infinite loop caused by excessive aliasing of the `volcitepages` + format. + Reverted the alias `\DeclareFieldAlias{volcitepages}{postnote}` + and again define + ``` + \DeclareFieldFormat{volcitepages}{\mkpageprefix[pagination][\mknormrange]{#1}} + ``` + explicitly. +# RELEASE NOTES FOR VERSION 3.15b +- Fixed `.lbx` file loading behaviour. All `.lbx` files are now loaded + `\AtBeginDocument`. Languages that were not requested explicitly by packages + are recorded in the `.aux` file and loaded on the next run. + This may require a further LaTeX run in some situations, but now we can be + sure when `.lbx` files are read. +- Added `label` option to `\printbibliography`. +- Added more name wrapper aliases to make name aliasing smoother. +- Deprecate `\mainlang` switch in favour of the text macro `\textmainlang`. +- Deprecate `\mkrelatedstring` (which is defined as `\mainlang`) + in favour of `\mkrelatestringtext` (defined as `\textmainlang`). + +# RELEASE NOTES FOR VERSION 3.15a +- Fixed bug with long argument for `\DeclareFieldFormat` and friends. + +# RELEASE NOTES FOR VERSION 3.15 +- Fixed a long-standing issue with `\intitlepunct`. + The old definition + ``` + \newbibmacro*{in:}{% + \printtext{% + \bibstring{in}\intitlepunct}} + ``` + would print `\intitlepunct` directly and not via the punctuation + buffer. Since the `\add...` punctuation macros guard against + undesired double punctuation, this would usually not show as an + issue (except in edge cases https://tex.stackexchange.com/q/175730/, + https://github.com/plk/biblatex/issues/943). + The new definition uses the punctuation tracker to print + `\intitlepunct`. + ``` + \newbibmacro*{in:}{% + \bibstring{in}% + \printunit{\intitlepunct}} + ``` + `\printunit` is needed instead of `\setunit` to stop subsequent + `\setunit`s from overriding `\intitlepunct` in case of missing + fields. +- Define `volcitepages` and `multipostnote` as a field alias of `postnote` + and `multiprenote` as an alias of `prenote`. + That should make it easier to change all post- and prenote formats at once. + A change to `postnote` will automatically apply to `multipostnote` + and `volcitepages` as well. Similarly for `multiprenote`. + In case that is not desired, the original definitions can be restored with + ``` + \DeclareFieldFormat{volcitepages}{\mkpageprefix[pagination][\mknormrange]{#1}} + \DeclareFieldFormat{multiprenote}{#1\isdot} + \DeclareFieldFormat{multipostnote}{\mkpageprefix[pagination][\mknormrange]{#1}} + ``` + + **NB** The definition of `volcitepages` caused an infinite loop and was + reverted in v3.15b. + This means that only `multiprenote` and `multipostnote` are aliased. +- Unified DOI, eprint and URL printing across all entry types. + The fields `doi`, `eprint`, `eprintclass`, `eprinttype` and `url` + are now valid for all entry types. + `@online` and `@unpublished` now also use the bibmacro + `doi+eprint+url`. + This means `@online` now responds to the `url` option. + That does not mean, however, that a global `url=false,` + suppresses URLs for `@online` entries, since `url=true,` + is set on a per-type level to ensure backwards compatibility + as far as possible. + In case eprint information should be suppressed for `@online` + and `@unpublished`, add + ``` + \ExecuteBibliographyOptions[online,unpublished]{eprint=false} + ``` +- Added `eid` to more entry types. + To avoid issues with backwards compatibility of widely used bibmacros, + the bibmacro `chapter+pages` was redefined from + ``` + \newbibmacro*{chapter+pages}{% + \printfield{chapter}% + \setunit{\bibpagespunct}% + \printfield{pages}% + \newunit} + ``` + to + ``` + \newbibmacro*{chapter+pages}{% + \printfield{chapter}% + \setunit{\bibeidpunct}% + \printfield{eid}% + \setunit{\bibpagespunct}% + \printfield{pages}% + \newunit} + ``` +- Added `\bibeidpunct` in analogy to `\bibpagespunct`. +- Added `issuetitleaddon` and `journaltitleaddon` fields. +- Added options `backreffloats` and `trackfloats` to enable/disable + citation tracking and back references in floats. + Note that citation tracking in floats can lead to undesirable + results in case the float objects floats too far from its "natural" + position. +- **INCOMPATIBLE CHANGE** `numeric-comp` compresses subentry set + references now. + This behaviour can be disabled with `subentrycomp=false`. +- Added `subentrycomp` option to `numeric-comp` citation style. + The option is only relevant with `subentry=true`. + With `subentrycomp=true` set citations will be compressed + to "1a-c" instead of "1a; 1b; 1c". + The option is mainly intended for backwards compatibility; + the behaviour of previous `biblatex` versions can be restored + with `subentrycomp=false`. +- Added `\multiciterangedelim`, `\multicitesubentrydelim`, + `\multicitesubentryrangedelim`, `\superciterangedelim`, + `\supercitesubentrydelim`, and `\supercitesubentryrangedelim` for + finer control over (compressed) subentry citations in `numeric-comp`. +- **CRITICAL CHANGE** + The structure of the bibmacros in `numeric-comp` + has been reworked to make it easier to customise the printed output. + Documents that relied on patching internal bibmacros or heavily + redefined them may have to adapt. +- **CRITICAL CHANGE** + Implemented better `@set` support for BibTeX, `@set`s should now + sort properly. + This is achieved with a two-pass structure and (hidden) copies of + the set entries. + The two-pass structure means that the compilation sequence becomes + LaTeX, BibTeX, LaTeX, BibTeX, LaTeX, LaTeX. +- **CRITICAL CHANGE** + The case change functions now make use of the `expl3` module `l3text` + if the available `expl3` version is recent enough. + If `expl3` is too old the old LaTeX2e implementation is used. + If desired the implementation of the case changing functions + can be selected at load-time with the `casechanger` option, which + accepts the values `expl3`, `latex2e` and `auto` (which selects + `expl3` if the `expl3` version not older than 2020-04-06, this + is the default). + + The `expl3` implementation of the case changer is slightly more + robust than the home-grown `latex2e` code. +- The option `bibtexcaseprotection` can be used to turn off the + case protection via curly braces. This allows for a saner approach + to case protection where text is protected solely via a macro + like `\NoCaseChange`, e.g. + ``` + title = {The Story of \NoCaseChange{HMS \emph{Erebus}} + in \emph{Really} Strong Wind}, + ``` + instead of + ``` + title = {The Story of {HMS} \emph{Erebus} + in {\emph{Really}} Strong Wind}, + ``` +- Added `\mautocite` and `\Mautocite`. +- Added `\NumsCheckSetup` and `\PagesCheckSetup` for finer control + of the `\ifnumerals` and `\ifpages` checks. +- Deprecate the starred `\DeclareDelimAlias*` in favour of + `\DeclareDelimAlias` with optional arguments. +- **INCOMPATIBLE CHANGE** + `biblatex` no longer falls back to English for unknown languages. + Warnings will be triggered if undefined language strings or extras + are used. +- **INCOMPATIBLE CHANGE** + Bibliography strings and bibliography extras can now be written + either to `\captions` or to `\extras` + (this is controlled with the `langhook` option). + Previously, they were written to `\extras`, but upon + reflection `\captions` appears to be a more sensible + place for these definitions. + The new default is to write to `\captions` + (i.e. `langhook=captions`). + The previous behaviour can be restored with `langhook=extras`. +- **INCOMPATIBLE CHANGE** Moved `\delimcontext{bib}` to `\AtUsedriver`, + this makes it easier to override the delimiter context in `\usedriver` + calls. `\AtUsedriver*` calls may have to be amended to include + `\delimcontext{bib}`. The new default is + ``` + \AtUsedriver{% + \delimcontext{bib}% + \let\finentry\blx@finentry@usedrv + \let\newblock\relax + \let\abx@macro@bibindex\@empty + \let\abx@macro@pageref\@empty} + ``` + Note that this definition is backwards compatible + and can be used in older versions as well (down to v3.4 2016-05-10). +- `biblatex` now tests if a requested backend (re)run happened by + comparing the MD5 hashes of the new and old `.bbl` files. +- Added file hooks `\blx@filehook@preload@`, + `\blx@filehook@postload@` + and `\blx@filehook@failure@` + to execute hooks before or after a file is loaded + or if the loading fails. + `\blx@lbxfilehook@simple@preload@`, + `\blx@lbxfilehook@simple@postload@` + and `\blx@lbxfilehook@simple@failure@` + as well as + `\blx@lbxfilehook@once@preload@`, + `\blx@lbxfilehook@once@postload@` + and `\blx@lbxfilehook@once@failure@` + are the equivalents for `.lbx` loading, where + files may be loaded several times in some situations. +- Added limited support for 'nodate' with BibTeX. +- Improved `babel` and `polyglossia` interfacing (avoids more or less + unsupported patches). + This should work with `babel` at least v3.9r (2016/04/23) + and polyglossia `polyglossia` v1.49 (2020/04/08) or later. +- **INCOMPATIBLE CHANGE** Removed list and name index wrappers + (`\DeclareIndexNameWrapperFormat`, `\DeclareIndexListWrapperFormat` + and friends). Those wrappers make no sense, since the indexed + names are not printed 'together' in any useful sense of the word + and were never working anyway. +- **CRITICAL CHANGE** Generalised some keyval macros. + `biblatex`-related uses of `\define@key` should ideally replaced with + `\blx@kv@defkey`. + Style authors are advised not to rely too much on the internal + implementation of certain keyval interfaces. + Users who want to experiment with using a different underlying + keyval parser need only provide replacements of the `\blx@kv@...` + macros (which are defined via `\provide...` so that they will + not overwrite existing definitions; in particular users can define + those replacements before loading `biblatex`). +- Deprecate `\ifkomabibtotoc` and `\ifkomabibtotocnumbered`. + With newer versions of KOMA-Script these tests are no longer used + and their implementation was always a bit shifty (they would only pick + up globally set options). + + +# RELEASE NOTES FOR VERSION 3.14 +- biber from version 2.14 has extended, granular XDATA functionality to + allow referencing from and to parts of fields. This makes XDATA entries into + more general data sharing containers. +- Biber applies Perl's Unicode case folding to normalise the + capitalisation of field names and entry types when reading from the + `.bib` file. The output in the `.bbl` (what comes out on the + `biblatex` side uses the capitalisation from the data model; the only + exception are unknown entry types which are passed on *exactly* + as they are given in the `.bib` file - of course it is strongly + recommended to define all entry types one intends to use in the + data model). +- `biblatex` now interfaces with `polyglossia` much better and can deal + with language variants. + Note that `polyglossia` v1.45 (2019/10/27) is required for this + to work properly, it is strongly recommended to update `polyglossia` + to this or a later (current) version. + +# RELEASE NOTES FOR VERSION 3.13 +- **INCOMPATIBLE CHANGE** Any custom per-entry options in datasources must + be defined with `\DeclareEntryOption` in order for biber to recognise + them and pass them out in the `.bbl`. + This should not adversely affect any code using the documented + `\Decalare...Option` interface, so should be uncritical for most users. +- Added `\DeclareBiblatexOption` as a convenient interface to declare the same + option in different scopes. This should help avoid code duplication. + For example + ``` + \DeclareBibliographyOption[boolean]{noroman}[true]{% + \settoggle{blx@noroman}{#1}} + \DeclareTypeOption[boolean]{noroman}[true]{% + \settoggle{blx@noroman}{#1}} + \DeclareEntryOption[boolean]{noroman}[true]{% + \settoggle{blx@noroman}{#1}} + ``` + can be replaced with + ``` + \DeclareBiblatexOption{global,type,entry}[boolean]{noroman}[true]{% + \settoggle{blx@noroman}{#1}} + ``` +- Following the introduction of `\DeclareBiblatexOption` extend the scope + of a few options (`abbreviate`, `citetracker`, `clearlang`, `dataonly`, + `dateabbrev`, `inits`, `ibidtracker`, `idemtracker`, `labelalpha`, + `labelnumber`, `labeltitle`, `labeltitleyear`, `labeldateparts`, + `loccittracker`, `opcittracker`, `singletitle`, `skipbib`, `skipbiblist`, + `skipbiblab` `terseinits`, `uniquelist`, `uniquename`, `uniquetitle`, + `uniquebaretitle`, `uniquework`, `uniqueprimaryauthor`). +- Furthermore, the standard style options `doi`, `eprint`, `isbn`, `url`, + `related` are now available also on a per-type and per-entry level. + The same holds for `mergedate`, `subentry` and the options of `reading.bbx`. + This change has the potential to clash with custom styles that already define + the standard options at these scopes. +- Promote `@software` to regular entry type and define `@dataset`. + `@software` is aliased to the `@misc` driver, + `@dataset` has a dedicated driver. +- Add `\ifvolcite` test to check if the current citation is in a `\volcite` + context. +- Add the special fields `volcitevolume` and `volcitepages` for finer control + over the `\volcite` postnote. +- Add `\AtVolcite` hook to initialise `\volcite` commands. +- Add `\mkbibcompletename` as well as `\mkbibcompletename` + to format complete names. + The commands are analogous to `\mkbibname` but apply to + the entire name printed in format order ``. + By default the predefined macros all expand to `\mkbibcompletename`. +- Add `multiprenotedelim` and `multipostnotedelim` and make all + `(pre|post)notedelim`-like commands context sensitive. +- Add rudimentary support for `labelprefix` with BibTeX backend. + Biber implements `labelprefix` via `refcontext`s, but BibTeX does not + actually support `refcontext`s. The user interface is retained, but BibTeX's + "`refcontext`s" support only the emulation of `labelprefix` and nothing more. + There might be subtle differences between Biber's and BibTeX's + `labelprefix` behaviour, but it should be better than nothing. + If you need full `labelprefix` support, please consider switching to Biber. +- Add `\thefirstlistitem`, `\strfirstlistitem` and `\usefirstlistitem` to + grab and use the first item of a field. +- Add `\isdot` to the format for `journaltitle` so that `.`s at the end of the + `journal(title)` field are automatically treated as abbreviation dots and not + sentence-ending periods. To restore the old behaviour add + ``` + \DeclareFieldFormat{journaltitle}{\mkbibemph{#1}} + ``` + to the preamble. +- Add second optional item post processing argument to `\mkcomprange`, + `\mknormrange` and `\mkfirstpage`. It can be used to post process + every number item in the formatted range separately. It can for + example turn cardinal ranges into ordinal ranges (this is done in + the Latvian localisation module). +- Add further customisation options for strings typeset with `url`'s `\url` + command (mainly URLs and DOIs). It is now possible to add a bit of + stretchable space after characters with `biburlnumskip`, `biburlucskip` + and `biburlucskip`. The previously hard-coded (stretacheble) space + `\biburlbigskip` as well as the penalties `biburlbigbreakpenalty` and + `biburlbreakpenalty` are also configurable now. +- Add `\DeclarePrintbibliographyDefaults` to set default values for some + option keys to `\printbibliography` and friends. +- `\nocite` is now enabled in the bibliography (previously it was + deactivated in the bibliography). + Please report any issues that this may cause. +- The internals macros `\abx@aux@cite`, `\abx@aux@refcontext` + and `\abx@aux@biblist` are now called every time an entry is cite + (and appears in a bibliography or biblist, respectively). + This helps to avoid unwanted side-effects when writing to aux files + is disabled. +- `\nohyphenation` and `\textnohyphenation` now rely on a (fake) + language without hyphenation patterns instead of `\lefthyphenmin`, + which means that the command can now be used anywhere in a paragraph, + see also . + Note that switching languages with `babel` *within* those commands + removes the hyphenation protection. +- Allow `doi` field for `@online` entries. This field was previously + not printed in the `@online` driver. In case DOIs appear where + they should not appear the output of earlier versions can be + recreated with + ``` + \ExecuteBibliographyOptions[online]{doi=false} + ``` + since the `doi` option is now available on a per-type level. + + +# RELEASE NOTES FOR VERSION 3.12 +- **INCOMPATIBLE CHANGE** The syntax for defining data annotations in the + BibLaTeXML data source format has changed to accommodate named + annotations. Annotations are no longer attributes but are fully-fledged + elements. It is not expected that this will impact any current users. +- **INCOMPATIBLE CHANGE** The field/fieldset argument to the `\translit` + command is now mandatory to allow for a new optional argument which + restricts transliteration to entries with particular `langid` fields. +- The field `sortyear` is an integer field now and not a literal. This is + because the `sortX` fields should be the same datatype as the `X` field + as sorting depends on this. This fixes an issue where years were not + sorted properly as integers. `sortyear` was sometimes used to tune date + sorting as in "1984-1", "1984-2" etc. for multi-volume collections with + the same year. However, this is really an abuse of the sorting template + system since this should be done by having a semantically more granular + sorting item to differentiate below the year level (typically, `volume` + does this for multi-volume works and this is already part of all default + sorting templates). The example .bib that comes with biblatex has been + changed to remove such `sortyear` abuses and the sorting is not impacted + as they examples using this already have either `volume` or `sorttitle` + which made this abuse of `sortyear` unnecessary anyway. +- The field `number` is a literal field now and not an integer. This allows for + a wider range of possible input such as "S1", "Suppl. 1", "1-3". + If you want to sort by `number` and only have integers in there, you should + consider using a custom data model to turn `number` back into an integer type + field, since sorting integers as literals has performance implications and + might lead to undesired sorting such as "1", "10", "2". +- **INCOMPATIBLE CHANGE** Removed the 'semi-hidden' option `noerroretextools`. + If you want to load `noerroretextools` now, you need to define the macro + `\blx@noerroretextools` instead. This can for example be done with + ``` + \usepackage{etoolbox} + \cslet{blx@noerroretextools}\empty + \usepackage{biblatex} + ``` + or + ``` + \makeatletter + \let\blx@noerroretextools\@empty + \makeatother + \usepackage{biblatex} + ``` + You still need to make sure that all macros used by `biblatex` are restored + to their `etoolbox` definitions before loading `biblatex`. +- New macro `\abx@missing@entry` to style missing entrykeys in citations. +- Added field format deprecation macros `\DeprecateFieldFormatWithReplacement` + and friends. +- Add `\ifdateyearsequal` to check if two dates have the same year and era + date part. Since `year`s are always non-negative integers and the 'sign' is + stored as the `era`, you should use `\ifdateyearsequal` instead of a simple + `\iffieldequals{#1year}{#2year}` to compare years. The latter can lead to + undesired results if the years have opposite signs, but are otherwise the + same. +- New values `part+`, `chapter+`, `section+` and `subsection+` for 'section'- + valued options `refsection`, `refsegment` and `citereset`. These options + are then executed at not only the specified level of sectioning, but also + all higher levels. +- Add second optional argument to `\DeclareDelimAlias*`. +- Allow keywords for dataonly/skipped entries as well. +- Added `maxcitecounter`. +- Deprecate `\labelnamepunct` in favour of the context-sensitive + `nametitledelim`. + For compatibility reasons `\labelnamepunct` still pops up in the code here + and there, but `nametitledelim` should be preferred now. +- The `xstring` package is not loaded by default any more. + Style developers whose styles make use of that package should load it + explicitly. +- `authoryear.bbx` now has a macro `bbx:ifmergeddate` that can be used to + check whether the date has been printed at the beginning of an entry + and can thus be suppressed later in the `date` and `issue+date` macros. + The macro works like a test and expands to the `` branch if the date + has been merged and can be suppressed, it expands to `` if the date + has not been merged. In practice `\printdate` should then be issued + if and only if the test yields false. + + This change means that the definition of the `date` macro can be the same for + all mergedate settings and that only `bbx:ifmergeddate` is redefined for + each different value. No backwards compatibility issues are expected, + but style authors are encouraged to test the changes and see if the new + macro could be useful for their styles. +- For a long time `biblatex` has defined `\enquote` if `csquotes` was not + loaded. This behaviour was not documented, the official command intended + for quotation marks was always `\mkbibquote`. Because `biblatex` should not + (re)define user-level commands that are not primarily associated with + citations or the bibliography, from this release on `\enquote` is not defined + any more, instead the internal command `\blx@enquote` is defined and used. + The same holds for `\initoquote`, `\initiquote`, `\textooquote`, + `\textcoquote`, `\textoiquote`, `\textciquote`. + `biblatex` still defines the internal commands `\@quotelevel`, `\@quotereset` + and `\@setquotesfcodes` if `csquotes` is not loaded. + + Users are encouraged to use `csquotes` for proper quotation marks, but can + get back the old behaviour with + ``` + \makeatletter + \providerobustcmd*{\enquote}{\blx@enquote} + \makeatother + ``` + or + ``` + \newrobustcmd*{\enquote}{\mkbibquote} + ``` +- Add new list wrapper and name wrapper formats (`\DeclareListWrapperFormat`, + `\DeclareNameWrapperFormat`) to style a (name) lists in its entirety. + This is useful because name and lists formats normally style only one + particular item of the list. The wrapper format can be used to easily format + the entire list in italics, for example. +- `\DeclareCitePunctuationPosition` can be used to configure the punctuation + position for citation commands similar to the optional `position` argument + of `\DeclareAutoCiteCommand`. +- If the `\pdfmdfivesum` primitive is available (via `pdftexcmds`' + `\pdf@mdfivesum`) the `labelprefix` value is hashed for internal use, making + it safer for construction of macro names and the like. If you don't like + that you can turn off the behaviour by redefining `\blx@mdfivesum`. The + fallback in case `\pdf@mdfivesum` is unavailable is + ``` + \let\blx@mdfivesum\@firstofone + ``` + + As before the labelprefix value is fully expanded before use. If its contents + are unexpandable you need to avoid expansion with `\detokenize`. + +# RELEASE NOTES FOR VERSION 3.11 +- `\printbiblist` now supports `driver` and `biblistfilter` options + to change the defaults set by the biblistname. +- Add `\mknormrange` to normalise page ranges without compressing them. +- **INCOMPATIBLE CHANGE** The format for `postnote` (`multipostnote`, + `volcitepages`) normalises page ranges with `\mknormrange`. + Since `\mknormrange` acts only on page ranges as detected by + `\ifpages`, this does not affect text other than page ranges. + Hyphens and dashes in page ranges will be transformed to + `\bibrangedash`, commas and semicolons to `\bibrangesep`. + This is analogous to Biber's treatment of page-like fields. + If you always separated page ranges with `--` or `\bibrangedash` + anyway, this should not change the output you get. + If you used a single hyphen to separate page ranges (e.g., `23-27`) + you will now get the arguably more aesthetically pleasing output + with `\bibrangedash`. + In case you want to restore the old behaviour where page ranges were + not normalised add the following three lines to your preamble. + ``` + \DeclareFieldFormat{postnote}{\mkpageprefix[pagination]{#1}} + \DeclareFieldFormat{volcitepages}{\mkpageprefix[pagination]{#1}} + \DeclareFieldFormat{multipostnote}{\mkpageprefix[pagination]{#1}} + ``` + Style developers may note that the field format for `pages` + was not changed to include `\mknormrange` because the contents + of that field are prepared by the backend and Biber already does + the page range normalisation out of the box. +- The standard definitions for headings were changed to be as close to the + defaults of the standard document classes or KOMA/memoir as possible. + **PLEASE CHECK** if your document headers relied on the behaviour of older + versions. +- The `@unpublished` entry type now also supports `type`, `eventtitle`, + `eventdate` and `venue`. +- A long-standing bug with punctuation before `eventdate` and `venue` was fixed. + Originally the round brackets were supposed to be preceded only by a space, + the addition of other fields caused this space to be replaced by new unit + punctuation. **PLEASE CHECK** if you can accept the changed output. +- Added `\ifdateannotation`. Added optional argument for field and item to + `\iffieldannotation`, `\ifitemannotation`, and `\ifpartannotation`. +- `\DeclareSourcemap` can now be used multiple times. +- **INCOMPATIBLE CHANGE** Language aliases are now also resolved when loading + localisation files, only infinite recursion is avoided. + Assuming `\DeclareLanguageMappingSuffix{-apa}`, loading `ngerman` localisation + causes `ngerman-apa.lbx` to be read. If that file inherits from `german`, + `german-apa.lbx` will be read. Previously only `german.lbx` would have been + read at that point. Of course if `german-apa.lbx` inherits from `german`, + `german.lbx` is loaded at that point, so infinite recursion is avoided. +- **CRITICAL CHANGE** The code to load localisation files was changed. + This is a an internal change and should not influence document output, + save for a few bug fixes. Style authors should check if the changes introduce + any bugs for their localisation handling and report them. +- Added `\begrelateddelim` and `\begrelateddelim` for punctuation + before the related block. **PLEASE CHECK** that this change does not interfere + with your punctuation settings. The change should be backwards compatible, + but might give different results if `\usebibmacro{related}` is used in + unusual positions. +- Added `locallabelwidth` option to control the label spacing in bibliographies, + if set to true, the label width will be calculated locally for the current + bibliography and not globally from a list of all citation. + +# RELEASE NOTES FOR VERSION 3.10 +- **INCOMPATIBLE CHANGE** The recent ISO8601:201x standard supersedes + the draft EDTF (Extended Date Time Format) extensions. Biblatex therefore + now supports the ISO8601-2 Clause 4, Level 1 Extended Format which is + equivalent to the draft EDTF standard but with different syntax. *This + syntax is in some cases not backwards compatible*. Biblatex will not + support backwards compatibility for the draft EDTF syntax because it is + too messy to do so and few people were using this anyway since it is a + relatively new and specialised feature. Please note these syntax changes + which effect only the formatting of DATE fields in bibliography datasources: + - The "unspecified" marker "u" is now "X" + - An approximate+uncertain date is now indicated with "%" rather than "?~" + - Open dates are now marked with ".." instead of "open" or blank + start/end dates. + - Unknown dates are now indicated by blank start/end dates rather than + "unknown" or "*" +- Unicode support code that is problematic for non-Unicode engines, + but useful for XeTeX and LuaTeX now resides in `blx-unicode.def`. + That file is only read by XeTeX and LuaTeX. +- The option `noerroretextools` demotes the incompatibility error for + `etextools` to a mere warning if set to `true`. Users still need + to make sure that `\forlistloop` has the definition from `etoolbox` + and not the completely incompatible definition from `etextools`. + This option is meant as a last resort for people who must at all + costs load `etextools` or a package that uses it. + `noerroretextools=true` will always cause a warning even if + `etextools` is not loaded. + +# RELEASE NOTES FOR VERSION 3.9 +## Bug fix release +- Fix `\mkpagetotal` +- Fix issue with refcontexts not appearing in some circumstances +- **DEPRECATION NOTICE** The coming update to the ISO8601 standard + supercedes the draft EDTF (Extended Date Time Format) extensions. + When the new ISO8601 standard is public, biblatex will therefore + support the ISO8601-2 Clause 4, Level 1 Extended Format which is + equivalent to the draft EDTF standard but with different syntax. This + syntax is in some cases not backwards compatible. Biblatex will not + support backwards compatibility for the draft EDTF syntax because it is + too messy to do so and few people were using this anyway since it is a + relatively new and specialised feature. Please note these syntax changes + which will effect only the formatting of DATE fields in bibliography + datasources: + - The "unspecified" marker `u` is now `X` + - An approximate+uncertain date is now indicated with `%` rather than `?~` + - Open dates are now marked with `..` instead of `open` or blank start/end dates. + - Unknown dates are now indicated by blank start/end dates rather than `unknown` or `*` + +# RELEASE NOTES FOR VERSION 3.8a +## Bug fix release +- Documentation version fix and loop fix in certain styles + +# RELEASE NOTES FOR VERSION 3.8 +## Requirements +Biber version 2.8 is required for biblatex 3.8 + +## In order to standardise terminology, some commands and options have dropped the "scheme" naming convention and switched to "template" +- `\DeclareSortingScheme` is now `\DeclareSortingTemplate` +- `\DeclareSortingNamekeyScheme` is now `\DeclareSortingNamekeyTemplate` +- The "sortingnamekeyscheme" option is now "sortingnamekeytemplate" + +## `\DeclareLabelalphaNameTemplate` no longer has entrytype scope +- **INCOMPATIBLE CHANGE** The optional first argument to + `\DeclareLabelalphaNameTemplate` was previously an entrytype but is now an + arbitrary template name, as with `\DeclareUniquenameTemplate`. This is to + allow multiple definitions which can be referred to at different scopes. + It is unlikely that anyone used this with entrytype scope anyway. + +## `origlanguage` is now a list instead of a field. +- **INCOMPATIBLE CHANGE** Since this is mostly used to generate localisation strings like + 'Translated from the ' via the internal macros `lbx@lfromlang` + and `\lbx@sfromlang`, users and style authors should not see any + differences. However, if your style prints `origlanguage` directly using + `\printfield`, this will need to be changed to `\printlist`. + +## Name handling enhancements +- Name handling is now fully generalised to cover arbitrary name parts. + The final few pieces have been completed to allow fully customisable + name handling, allowing for better internationalisation. The code for + name uniqueness calculation and label generation for names is now fully + abstracted: templates created with `\DeclareUniquenameTemplate` and + `\DeclareLabelalphaNameTemplate` may now be specified at per-refcontext, + per-entry, per-namelist and per-name scope, which allows complete + control over all aspects of name usage. See the comments in the enhanced + `93-nameparts.tex` example file. + +## `extrayear` is now `extradate` and the information used to track this can be customised +- **INCOMPATIBLE CHANGE** `extrayear` is called `extradate` now. + Limited backwards compatibility is + in place to allow a smooth transition, but style developers should use the new name. +- The new `\DeclareExtradate` command allows users to track authoryear + disambiguation in arbitrary ways now, for example allowing disambiguation + at month or day level instead of just year. See the PDF doc for details. +- **INCOMPATIBLE CHANGE** Some bibmacros from the `authoryear` style family + were renamed, `cite:labelyear+extrayear` becomes `cite:labeldate+extradate`, + `cite:extrayear` is `cite:extradate` now, and `date+extrayear` + is `date+extradate`. Some backwards compatibility code is present, + but developers should make sure their code works as expected. + +## Date formatting +- The `mergedate` output has been restored to its earlier form, + it has also been extended to cover all EDTF date parts. + In order to facilitate this, a few date-related tests were introduced + `\iflabeldateisdate`, `\ifdatehasyearonlyprecision`, `\ifdatehastime` + and `\ifdateshavedifferentprecision`. +- The `authoryear` citation styles now use `\printlabeldateextra` + instead of `\printfield{labelyear}\printfield{extrayear}`. + This should have no consequences for end users (except that + dates in citations and bibliography don't differ any more - + previously there were subtle differences when many EDTF features + were used), but style developers should check if they assume + anything about the bibmacros that have now changed. + Style developers are invited to have a look at the changes and + to get inspired to offer full EDTF format for their styles as well. + +## Set handling +- Static entry sets used to have the behaviour that when citing a member of + a set, the data for the citation came from the set parent which was in + turn taken from the first member of the set. In most use cases, the only + part of the set parent data that was actually used was the labels but in + certain edge cases, other data was used which results in confusing + citations for set members. This has been refactored so that when citing + set members, the member data is used along with some labelling data + injected from the set parent. This means that things like + `\citeauthor{somesetmember}` now give the expected results. + *PLEASE NOTE* that this means that citing sets directly in default styles *not* + based on labels (`authoryear`, `authortitle`, `verbose` etc.) will result + in blank citations as it is not envisaged that sets are useful in such + styles. +- The members of a set can now be sorted according to the active + sorting scheme, this is enabled via the `sortsets` option. + By default the option is set to false and set members appear + in the order given in the data source. +- The `alphabetic` style family now also supports the `subentry` + option. + +## Localisation and styles +- Styles which supply their own location strings in `.lbx` files typically + use `\DeclareLanguageMapping` to map a document language to the supplied + language files. This is not ideal because the mapping has to be done by + the user depending on the specific language. For example, for the APA + style, in a document using American English, this line is necessary in + every document: + ``` + \DeclareLanguageMapping{american}{american-apa} + ``` + so that the style supplied `america-apa.lbx` file is loaded. + In a document using the German language, the user would have to use: + ``` + \DeclareLanguageMapping{german}{german-apa} + ``` + A new macro `\DeclareLanguageMappingSuffix` is now supplied which allows + styles to register a global localisation file suffix which is appended to + any document language automatically. This removes the need for + `\DeclareLanguageMapping` in user documents as it ensures that the + correct localisation file will be read nomatter what the document language. + For example, the APA style (from version v7.5) now has this + in `apa.bbx`: + ``` + \DeclareLanguageMappingSuffix{-apa} + ``` + which means that for a given document language `` + the localisation file `-apa.lbx` will be loaded. + `\DeclareLanguageMapping`, if present, will override + `\DeclareLanguageMappingSuffix`. + +## Context-sensitive delimiters +- Several delimiter macros now use the context-sensitive delimiter interface + introduced in version 3.4 (`\DeclareDelimFormat`). This change is fully + backwards compatible, but style developers should feel encouraged to use the + new commands `\DeclareDelimFormat` and `\printdelim`. +- Three new delimiters are introduced. `authortypedelim`, `editortypedelim`, + and `translatortypedelim` control the delimiter between the respective name + and the following `` bibstring. + This together with `\DeclareFieldFormat{type}` allows one to go from + 'E. Ditor, ed.' to 'E. Ditor (ed.)' more easily without the need + to redefine entire bibmacros. +- `\DeclareDelimAlias` allows one to alias one delimiter to another. + E.g. `\DeclareDelimAlias{finalnamedelim}{multinamedelim}` + will make `finalnamedelim` an alias for `multinamedelim`. + The starred version `\DeclareDelimAlias*` is local to the + specified contexts. + +## Misc changes +- The initialisation code for `\usedriver` can now be modified via + `\AtUsedriver`, the code can be executed with `\UseUsedriverHook`. + The default settings retain backwards compatibility with earlier + versions. +- The field `urlraw` contains the unencoded, raw version of the URL. + If the URL includes Unicode characters, `urlraw` will show them + unencoded while the standard `url` field will contain them in + percent-encoded form. +- `\mkpagetotal` now has its own bibstrings `total(s)` + Previously it relied on the `(s)` bibstrings. +- `sortyear` is now a literal field and not an integer. +- The `etextools` package is now officially incompatible. +- `bidi`-support for footnotes was improved. +- `\ifentryseen`, `\ifentryinbib`, `\ifentrycategory` + and `\ifentrykeyword` can now be used outside of + `biblatex` macros directly in the document. +- `\letbibmacro` can be used to create bibmacro aliases as if + using `\let`. +- `\DeprecateFieldWithReplacement`, `\DeprecateListWithReplacement` + and `\DeprecateNameWithReplacement` can be used to deprecate a field, + name or list and replace it with a new one. + +# RELEASE NOTES FOR VERSION 3.7 +## Requirements +Biber version 2.7 is required for biblatex 3.7 + +Bugfix release. + +# RELEASE NOTES FOR VERSION 3.6 +## Requirements +Biber version 2.6 is required for biblatex 3.6 + +This is a minor bugfix release. + +# RELEASE NOTES FOR VERSION 3.5 +## Requirements +Biber version 2.6 is required for biblatex 3.5 + +## Name support +- **INCOMPATIBLE CHANGE** The labelling system has been generalised + to be able to deal better with names. `\DeclareLabelalphaTemplate` no + longer uses hard-coded name parts (prefix, family) when extracting label + parts from name fields. Name field label extraction now obeys the new + `\DeclareLabelalphaNameTemplate` specification which details how to extract + label information from each namepart known to the data model. The default + setting is backwards compatible with the old hard-coded behaviour. + However, if you have custom `\DeclareLabelalphaTemplate` specifications, + you should note that the "pcompound" and "pstrwidth" options to `\field` + are now gone and replaced with the relevant settings on `\namepart` in + `\DeclareLabelalphaNameTemplate`. The old options will generate warnings. + It is too complex to provide backwards compat for this, sorry - please + update your templates if necessary. This is one of the last changes + needed to fully generalise name handling. + +## Date input and output +Major enhancements to the dates parsed by biblatex and the output formats +available. Biblatex now supports [[http://www.loc.gov/standards/datetime/pre-submission.html][EDTF]] level 0 and 1. This is an enhanced +ISO8601v2004 format suitable for bibliographic data. The new support is a +superset of the previous limited ISO8601 support. Times are now fully +supported in various formats as online sources become more common and time +specifications for such sources are increasingly important. Tests and +localisation strings are provided to use EDTF information about date +uncertainty, era, approximation etc. in styles. A new example document +(96-dates.tex) is provided which demonstrates the new features. See the PDF +manual and its changelog for details of usage. The new date format +functionality is backwards compatible. The following changes are more +detailed and mostly of interest to style authors: + +- The `iso8601` date output format is now called `edtf`. The old name will + automatically use `edtf` and issue a deprecation warning. +- `\bibdatedash` is now `\bibdaterangesep` as this name is more + informative and more descriptive of how it is actually used. A backwards + compat alias is provided. +- Pre-biblatex 2.0 legacy sorting scheme definition macros `\name` and + `\list` are now deprecated with warnings. +- **INCOMPATIBLE CHANGE** The `labeldate` option is renamed to + `labeldateparts`. The `datelabel` option is renamed to `labeldate` to + provide consistency with all other date options. Backwards compatibility + is provided and warnings will be issued. +- The new date system necessitated changes to the default year printing + routine for citations in the default authoryear styles. If you wish to + take advantage of the new date features like circa, uncertainty and eras, + when printing citations in authoryear styles, see the enhanced + `cite:labelyear+extrayear` macros in any of the default authoryear + styles. +- The `labelyear` field was inconsistently implemented and in fact could + sometimes contain a date range which made handling it rather difficult. + It is now guaranteed to contain only one year, when it is a copy of an + existing datepart field found by `\DeclareLabeldate` (`labelyear` can + contain a literal/bibstring or non date field too). A new field + `labelendyear` will contain the end of the labeldate year range. The same + applies to labelmonth and labelday. +- The internal macros `\mkbibrange*` have all been changed to + `\mkdaterange*` to make the name more obvious (since they only deal with + dates) and for consistency with the new `\mktimerange*` macros. These + macros are usually only used in style .lbx files and the old names will + generate a deprecation warning. +- The option `datezeros` was inconsistent as it did not enforce zeros when + set to 'true', it merely preserved the field. In the new date internals, + leading zeros are not present after date parsing as this should always be + a formatting/style decision. Now, `datezeros` enforces leading zeros and + also handles all date parts. +- `\mkdatezeros` has been replaced with `\mkyearzeros`, `\mkmonthzeros` and + `\mkdayzeros` due to the date internals changes which are more consistent + about integer formats of date parts. `\mkdatezeros` now generates a + deprecation warning and calls `\mkmonthzeros` which is backwards compatible + with its old behaviour. +- **INCOMPATIBLE CHANGE** The .bbl field `datelabelsource` has been renamed to + `labeldatesource` to prevent confusion with other fields. In the unlikely + event that you referenced this field in a style, please change the name. +- **INCOMPATIBLE CHANGE** The macro `\printdatelabel` has been renamed to + `\printlabeldate` in line with the naming of all other date printing + macros. Please use the new name. The old one will issue a deprecation warning. +- **INCOMPATIBLE CHANGE** The macro `\printdatelabelextra` has been renamed to + `\printlabeldateextra` in line with the naming of all other date printing + macros. Please use the new name. The old one will issue a deprecation warning. + +## Misc changes +- The experimental RIS format support is no longer available as it was + rarely used and made biber maintenance more complicated. RIS is a very + primitive format and not much use anyway. +- **INCOMPATIBLE CHANGE** The `singletitle` option no longer considers the + presence of labeltitle if labelname does not exist. This has always been + potentially confusing. For several versions now, there has been a + separate test and option for labeltitle called "uniquetitle". +- **INCOMPATIBLE CHANGE** The `sortgiveninits` option has been deprecated and + the functionality generalised. It is replaced by the "inits" option to + `\namepart` in `\DeclareSortingNamekeyScheme`. Any nameparts may now + therefore be sorted using initials only. +- **INCOMPATIBLE CHANGE** The sorting subsystem in biber has been completely + re-engineered to support better sorting of different datatypes. + Previously, due to bibtex limitations, all sorting was lexical, even for + numbers. This is why the padding options for things like volume in the + default sorting specifications existed - so that lexical sorts for + numbers would work. With the enhancement of the date parsing routines to + include negative years, in order to sort these properly, it was time to + switch to a better sorting method. As a result, the datatypes of fields + is now a bit stricter, as it should be. Expect more changes in this + direction but for this release, the datatype of the following fields in + the default data model have been changed to 'integer': + + - number + - sortyear + - volume + - volumes + + Integer datatypes no longer need padding or literal fallbacks in the + sorting scheme definitions since they are now sorted properly as + integers. Such datatype changes only effect sorting. + + diff --git a/macros/latex/contrib/biblatex-ms/README b/macros/latex/contrib/biblatex-ms/README new file mode 100644 index 0000000000..6b3b1bf430 --- /dev/null +++ b/macros/latex/contrib/biblatex-ms/README @@ -0,0 +1,165 @@ +ABOUT + +The biblatex package is a complete reimplementation of the +bibliographic facilities provided by LaTeX. A custom backend "biber" +by default is used which processed the BibTeX format data files and +them performs all sorting, label generation (and a great deal +more). Legacy BibTeX is also supported as a backend, albeit with a +reduced feature set. Biblatex does not use the backend to format the +bibliography information as with traditional BibTeX: instead of being +implemented in BibTeX's style files, the formatting of the +bibliography is entirely controlled by TeX macros. Good working +knowledge in LaTeX should be sufficient to design new bibliography and +citation styles. There is no need to learn BibTeX's postfix stack +language. Just like the bibliography styles, all citation commands may +be freely (re)defined. + +Apart from the features unique to biblatex, the package also +incorporates core features of the following packages: babelbib, +backref, bibtopic, bibunits, chapterbib, cite, citeref, inlinebib, +mlbib, multibib, natbib, splitbib. There are also some conceptual +parallels to the amsrefs package. The biblatex package supports +split bibliographies, multiple bibliographies within one document, +and separate lists of bibliographic shorthands. Bibliographies may +be subdivided into parts (by chapter, by section, etc.) and/or +segmented by topics (by type, by keyword, etc.). With biber as the +backend, features such as customisable sorting, multiple bibliographies +with different sorting, customisable labels, dynamic data modification +are available. The package is fully localized and can interface with +the babel package. + +LICENSE + +Copyright (c) 2006-2012 Philipp Lehman, 2012-present Philip Lehman, +Joseph Wright, Audrey Boruvka, Philip Kime). Permission is granted to copy, +distribute and/or modify this software under the terms of the LaTeX +Project Public License (LPPL), version 1.3. This software is provided +'as is', without warranty of any kind, either expressed or implied, +including, but not limited to, the implied warranties of +merchantability and fitness for a particular purpose. + +FEEDBACK + +Please use the biblatex project page on github to report bugs +or submit feature requests: + + https://github.com/plk/biblatex + +REQUIREMENTS + +Strictly required: + +- e-TeX +- BibTeX, bibtex8, or Biber +- etoolbox 2.1 or later +- logreq 1.0 or later +- keyval +- ifthen +- url + +Strongly recommended: + +- Biber +- babel/polyglossia +- csquotes 4.4 or later + +Biber is available from CTAN, via TeXLive or from + +https://sourceforge.net/projects/biblatex-biber/ + +AUTOMATIC INSTALLATION + +TeX Live: The biblatex package is included in TeX Live. + Use the TeX Live package manager to install it. + Biber can also be installed with the package manager. + +MiKTeX: The biblatex package is included in MiKTeX. + Use the MiKTeX package manager to install it. + Biber can also be installed with the package manager. + +SEMI-AUTOMATIC INSTALLATION + +1. Get the file biblatex-.tds.zip from + + https://sourceforge.net/projects/biblatex/files/ + +2. Unpack the archive in the root directory of the local TeX + installation tree, for example + + /usr/local/share/texmf/ + or + /usr/share/texmf-local/ + or + C:\Local TeX Files\ + +3. Update the file hash tables (also known as the file name + database). + + On teTeX and TeX Live systems, run texhash as root ('sudo + texhash'). On MiKTeX, run 'initexmf --update-fndb' in a command + window or use the 'Refresh FNDB' button of the MiKTeX Options + window. + +MANUAL INSTALLATION + +1. Get the file biblatex-.tar.gz from + + https://sourceforge.net/projects/biblatex/files/ + + or download the file + + http://mirror.ctan.org/macros/latex/contrib/biblatex.zip + +2. Unpack the archive in a temporary working directory. + +3. Copy all files and subdirectories in the 'latex' directory to: + + /tex/latex/biblatex/ + + where denotes the root of the local TeX installation + tree, for example + + /usr/local/share/texmf/ + or + /usr/share/texmf-local/ + or + C:\Local TeX Files\ + +4. Copy all files in the 'bibtex/bst' subdirectory to: + + /bibtex/bst/biblatex/ + +5. Copy all files in the 'bibtex/bib' subdirectory to: + + /bibtex/bib/biblatex/ + +6. If you are using bibtex8, copy all files in the 'bibtex/csf' + subdirectory to: + + /bibtex/csf/biblatex/ + +7. The manual and example files in 'doc' subdirectory go to + + /doc/latex/biblatex/ + +8. Update the file hash tables (also known as the file name + database). + + On teTeX and TeX Live systems, run texhash as root ('sudo + texhash'). On MiKTeX, run 'initexmf --update-fndb' in a command + window or use the 'Refresh FNDB' button of the MiKTeX Options + window. + +Note that you may have to create some or all of the above +directories if this is the first package you're installing locally +(as opposed to via a package manager). + +USAGE + +Refer to biblatex.pdf for a systematic reference manual and to the +'doc/examples' subdirectory for usage examples. + +CHANGES + +A list of changes relevant to users of this package is included at +the end of 'biblatex.pdf'. See also the release notes in 'CHANGES.md'. diff --git a/macros/latex/contrib/biblatex-ms/biber/bltxml/biblatex-examples-ms.bltxml b/macros/latex/contrib/biblatex-ms/biber/bltxml/biblatex-examples-ms.bltxml new file mode 100644 index 0000000000..b1d49c2e1a --- /dev/null +++ b/macros/latex/contrib/biblatex-ms/biber/bltxml/biblatex-examples-ms.bltxml @@ -0,0 +1,2840 @@ + + + + + + + + + Михаи́л + Афана́сьевич + Булга́ков + + + Мастер и Маргарита + 1966 + + + westfahl:frontier + + + Westfahl + Gary + + + A cross-referenced article from a \texttt{collection}. This is an \texttt{incollection} entry with a \texttt{crossref} field. Note the \texttt{subtitle} and \texttt{indextitle} fields + westfahl:frontier + True Frontier, The + english + variant=american + Confronting and Avoiding the Realities of Space in {American} Science Fiction Films + The True Frontier + + + + 55 + 65 + + + + + + A \texttt{set} with three members. The \texttt{crossref} field in the \texttt{@set} entry and the \texttt{entryset} field in each set member entry is needed only when using BibTeX as the backend + + + A \texttt{set} with three members discussing the standard model of particle physics. The \texttt{crossref} field in the \texttt{@set} entry and the \texttt{entryset} field in each set member entry is needed only when using BibTeX as the backend + + + + + Aksın + Özge + + + Türkmen + Hayati + + + Artok + Levent + + + Çetinkaya + Bekir + + + Ni + Chaoying + + + Büyükgüngör + Orhan + + + Özkal + Erhan + + + Effect of immobilization on catalytic characteristics + J.~Organomet. Chem. + 13 + Effect of immobilization on catalytic characteristics of saturated {Pd-N}-heterocyclic carbenes in {Mizoroki-Heck} reactions + 691 + + + + 3027 + 3036 + + + + 2006 + + + + + Angenendt + Arnold + + + A German article in a French journal. Apart from that, a typical \texttt{article} entry. Note the \texttt{indextitle} field + In Honore Salvatoris + Revue d'Histoire Ecclésiastique + german + In Honore Salvatoris + In Honore Salvatoris~-- Vom Sinn und Unsinn der Patrozinienkunde + 97 + + + + 431 + 456 + + + 791 + 823 + + + + 2002 + + + + + Baez + + John + C. + + + + Lauda + + Aaron + D. + + + + An \texttt{article} with \texttt{eprint} and \texttt{eprinttype} fields. Note that the arXiv reference is transformed into a clickable link if \texttt{hyperref} support has been enabled. Compare \texttt{baez\slash online}, which is the same item given as an \texttt{online} entry + math/0307200v3 + arxiv + Theory and Applications of Categories + english + variant=american + Higher-Dimensional Algebra {V}: 2-Groups + 3 + 12 + + + + 423 + 491 + + + + 2004 + + + + + Bertram + Aaron + + + Wentworth + Richard + + + An \texttt{article} entry with a \texttt{volume} and a \texttt{number} field + J.~Amer. Math. Soc. + english + variant=american + 2 + Gromov invariants + Gromov invariants for holomorphic maps on {Riemann} surfaces + 9 + + + + 529 + 571 + + + + 1996 + + + + + Doody + Terrence + + + An \texttt{article} entry cited as an excerpt from a \texttt{collection} entry. Note the format of the \texttt{related} and \texttt{relatedstring} fields + The Journal of Narrative Technique + english + variant=american + 3 + \autocap{e}xcerpt in + Hemingway's Style and {Jake's} Narration + 4 + + + + 212 + 225 + + + + 1974 + + + + + Matuz + Roger + + + + Detroit + + + Gale + + A \texttt{collection} entry providing the excerpt information for the \texttt{doody} entry. Note the format of the \texttt{pages} field + english + variant=american + Contemporary Literary Criticism + 61 + + + + 204 + 208 + + + + 1990 + + + + + Gillies + Alexander + + + An \texttt{article} entry with a \texttt{series} and a \texttt{volume} field. Note that format of the \texttt{series} field in the database file + Publications of the English Goethe Society + english + variant=british + newseries + Herder and the Preparation of {Goethe's} Idea of World Literature + 9 + + + + 46 + 67 + + + + 1933 + + + + + Glashow + Sheldon + + + Nucl.~Phys. + Partial Symmetries of Weak Interactions + 22 + + + + 579 + 588 + + + + 1961 + + + + + Herrmann + + Wolfgang + A. + + + + Öfele + Karl + + + Schneider + + Sabine + K. + + + + Herdtweck + Eberhardt + + + Hoffmann + + Stephan + D. + + + + Carbocyclic carbene as an efficient catalyst, A + Angew.~Chem. Int.~Ed. + 23 + A carbocyclic carbene as an efficient catalyst ligand for {C--C} coupling reactions + 45 + + + + 3859 + 3862 + + + + 2006 + + + + + Kastenholz + + M. + A. + + + + Hünenberger + + Philippe + H. + + + + The computation of ionic solvation free energies from atomistic simulations is a surprisingly difficult problem that has found no satisfactory solution for more than 15 years. The reason is that the charging free energies evaluated from such simulations are affected by very large errors. One of these is related to the choice of a specific convention for summing up the contributions of solvent charges to the electrostatic potential in the ionic cavity, namely, on the basis of point charges within entire solvent molecules (M scheme) or on the basis of individual point charges (P scheme). The use of an inappropriate convention may lead to a charge-independent offset in the calculated potential, which depends on the details of the summation scheme, on the quadrupole-moment trace of the solvent molecule, and on the approximate form used to represent electrostatic interactions in the system. However, whether the M or P scheme (if any) represents the appropriate convention is still a matter of on-going debate. The goal of the present article is to settle this long-standing controversy by carefully analyzing (both analytically and numerically) the properties of the electrostatic potential in molecular liquids (and inside cavities within them). + An \texttt{article} entry with an \texttt{eid} and a \texttt{doi} field. Note that the \textsc{doi} is transformed into a clickable link if \texttt{hyperref} support has been enabled + 10.1063/1.2172593 + 124106 + Computation of ionic solvation free energies + J.~Chem. Phys. + english + variant=american + {I}. {The} electrostatic potential in molecular liquids + Computation of methodology\hyphen independent ionic solvation free energies from molecular simulations + 124 + 2006 + + + + + Hostetler + + Michael + J. + + + + Wingate + + Julia + E. + + + + Zhong + Chuan-Jian + + + Harris + + Jay + E. + + + + Vachet + + Richard + W. + + + + Clark + + Michael + R. + + + + Londono + + J. + David + + + + Green + + Stephen + J. + + + + Stokes + + Jennifer + J. + + + + Wignall + + George + D. + + + + Glish + + Gary + L. + + + + Porter + + Marc + D. + + + + Evans + + Neal + D. + + + + Murray + + Royce + W. + + + + An \texttt{article} entry with \arabic{author} authors. By default, long author and editor lists are automatically truncated. This is configurable + Alkanethiolate gold cluster molecules + Langmuir + english + variant=american + 1 + Alkanethiolate gold cluster molecules + Core and monolayer properties as a function of core size + Alkanethiolate gold cluster molecules with core diameters from 1.5 to 5.2~{nm} + 14 + + + + 17 + 30 + + + + 1998 + + + + + Reese + + Trevor + R. + + + + An \texttt{article} entry with a \texttt{series} and a \texttt{volume} field. Note the format of the series. If the value of the \texttt{series} field is an integer, this number is printed as an ordinal and the string \enquote*{series} is appended automatically + William and Mary Quarterly + english + variant=american + 3 + Georgia in {Anglo-Spanish} Diplomacy, 1736--1739 + 15 + + + + 168 + 190 + + + + 1958 + + + + + Sarfraz + M. + + + Razzak + + M. + F. + A. + + + + An \texttt{article} entry with an \texttt{issn} field + 0097-8493 + Computers and Graphics + 5 + Technical section: {An} algorithm for automatic capturing of the font outlines + 26 + + + + 795 + 804 + + + + 2002 + + + + + Shore + Bradd + + + An \texttt{article} entry with \texttt{series}, \texttt{volume}, and \texttt{number} fields. Note the format of the \texttt{series} which is a localization key + American Anthropologist + 1 + newseries + Meaning Construction and Cultural Cognition + Twice-Born, Once Conceived + 93 + + + + 9 + 27 + + + + 1991-03 + + + + + Sigfridsson + Emma + + + Ryde + Ulf + + + Four methods for deriving partial atomic charges from the quantum chemical electrostatic potential (CHELP, CHELPG, Merz-Kollman, and RESP) have been compared and critically evaluated. It is shown that charges strongly depend on how and where the potential points are selected. Two alternative methods are suggested to avoid the arbitrariness in the point-selection schemes and van der Waals exclusion radii: CHELP-BOW, which also estimates the charges from the electrostatic potential, but with potential points that are Boltzmann-weighted after their occurrence in actual simulations using the energy function of the program in which the charges will be used, and CHELMO, which estimates the charges directly from the electrostatic multipole moments. Different criteria for the quality of the charges are discussed. + An \texttt{article} entry with \texttt{volume}, \texttt{number}, and \texttt{doi} fields. Note that the \textsc{doi} is transformed into a clickable link if \texttt{hyperref} support has been enabled + 10.1002/(SICI)1096-987X(199803)19:4<377::AID-JCC1>3.0.CO;2-P + Methods for deriving atomic charges + Journal of Computational Chemistry + english + variant=american + 4 + Comparison of methods for deriving atomic charges from the electrostatic potential and moments + 19 + + + + 377 + 395 + + + + 1998 + + + + + Spiegelberg + Herbert + + + An \texttt{article} entry. Note the \texttt{sorttitle} and \texttt{indexsorttitle} fields and the markup of the quotes in the database file + Intention und Intentionalitat in der Scholastik, bei Brentano und Husserl + Studia Philosophica + german + Intention und Intentionalität + Intention und Intentionalitat in der Scholastik, bei Brentano und Husserl + \mkbibquote{Intention} und \mkbibquote{Intentionalität} in der Scholastik, bei Brentano und Husserl + 29 + + + + 189 + 216 + + + + 1969 + + + + + Springer + Otto + + + A plain \texttt{article} entry + Mediaeval Studies + english + variant=british + Mediaeval Pilgrim Routes + Mediaeval Pilgrim Routes from {Scandinavia} to {Rome} + 12 + + + + 92 + 122 + + + + 1950 + + + + + Weinberg + Steven + + + Phys.~Rev.~Lett. + A Model of Leptons + 19 + + + + 1264 + 1266 + + + + 1967 + + + + + Yoon + + Myeong + S. + + + + Ryu + Dowook + + + Kim + Jeongryul + + + Ahn + + Kyo + Han + + + + Palladium pincer complexes + Organometallics + 10 + Palladium pincer complexes with reduced bond angle strain: efficient catalysts for the {Heck} reaction + 25 + + + + 2409 + 2411 + + + + 2006 + + + + + Aristotle + + + + + Hicks + + Robert + Drew + + + + + Cambridge + + + Cambridge University Press + + A \texttt{book} entry with an \texttt{author} and an \texttt{editor} + english + variant=british + De Anima + 1907 + + + + + Aristotle + + + + + Wicksteed + + P. + H. + + + + Cornford + + F. + M. + + + + + New York + + + G. P. Putnam + + A \texttt{book} entry with a \texttt{translator} field + english + variant=american + Physics + Physics + 1929 + + + + + Aristotle + + + + + Lucas + + D. + W. + + + + + Oxford + + + Clarendon Press + + A \texttt{book} entry with an \texttt{author} and an \texttt{editor} as well as a \texttt{series} field + english + variant=british + Clarendon {Aristotle} + Poetics + Poetics + 1968 + + + + + Aristotle + + + + + Cope + + Edward + Meredith + + + + + + Cope + + Edward + Meredith + + + + + Cambridge University Press + + A commented edition. Note the concatenation of the \texttt{editor} and \texttt{commentator} fields as well as the \texttt{volumes}, \texttt{sorttitle}, and \texttt{indextitle} fields + Rhetoric of {Aristotle}, The + english + variant=british + Rhetoric + Rhetoric of Aristotle + The Rhetoric of {Aristotle} with a commentary by the late {Edward Meredith Cope} + 3 + 1877 + + + + + Augustine + + Robert + L. + + + + + New York + + + Marcel Dekker + + A plain \texttt{book} entry + english + variant=american + Heterogeneous catalysis + Heterogeneous catalysis for the synthetic chemist + 1995 + + + + + Averroes + + + + + Bland + + Kalman + P. + + + + + + Bland + + Kalman + P. + + + + + New York + + + Jewish Theological Seminary of America + + A \texttt{book} entry with a \texttt{series} and a \texttt{number}. Note the concatenation of the \texttt{editor} and \texttt{translator} fields as well as the \texttt{indextitle} field + Epistle on the Possibility of Conjunction, The + english + variant=american + 7 + Moreshet: Studies in {Jewish} History, Literature and Thought + Possibility of Conjunction + The Epistle on the Possibility of Conjunction with the Active Intellect by {Ibn Rushd} with the Commentary of {Moses Narboni} + 1982 + + + + + Hannes + Ludwig + + + + + Averroes + + + + + Hannes + Ludwig + + + + + Hannes + Ludwig + + + + Halle an der Saale + + + C.~A. Kaemmerer + + An annotated edition. Note the concatenation of the \texttt{editor}, \texttt{translator}, and \texttt{annotator} fields. Also note the \texttt{shorttitle}, \texttt{indextitle}, \texttt{sorttitle}, and \texttt{indexsorttitle} fields + Uber die Moglichkeit der Conjunktion + Über die Möglichkeit der Conjunktion + german + Über die Möglichkeit der Conjunktion + Uber die Moglichkeit der Conjunktion + Des Averroës Abhandlung: \mkbibquote{Über die Möglichkeit der Conjunktion} oder \mkbibquote{Über den materiellen Intellekt} + 1892 + + + + + Averroes + + + + + Hercz + J. + + + + + Hercz + J. + + + + Berlin + + + S.~Hermann + + A \texttt{book} entry. Note the concatenation of the \texttt{editor} and \texttt{translator} fields as well as the \texttt{indextitle} and \texttt{indexsorttitle} fields + Drei Abhandlungen uber die Conjunction + Drei Abhandlungen über die Conjunction + german + Drei Abhandlungen + Von Averroes (Vater und Sohn), aus dem Arabischen übersetzt von Samuel Ibn Tibbon + Drei Abhandlungen über die Conjunction des separaten Intellects mit dem Menschen + 1869 + + + + + Thraede + Klaus + + + + + Cicero + + Marcus + Tullius + + + + + + Blank-Sangmeister + Ursula + + + + + Blank-Sangmeister + Ursula + + + + langlatin + langgerman + + + Stuttgart + + + Reclam + + A bilingual edition of Cicero's \emph{De natura deorum}, with a German translation. Note the format of the \texttt{language} field in the database file, the concatenation of the \texttt{editor} and \texttt{translator} fields, and the \texttt{afterword} field + De natura deorum + german + De natura deorum + De natura deorum. Über das Wesen der Götter + 1995 + + + + + Coleridge + + Samuel + Taylor + + + + + + Coburn + Kathleen + + + Engell + James + + + Bate + + W. + Jackson + + + + + London + + + Routledge {and} Kegan Paul + + One (partial) volume of a multivolume book. This is a \texttt{book} entry with a \texttt{volume} and a \texttt{part} field which explicitly refers to the second (physical) part of the seventh (logical) volume. Also note the \texttt{series} and \texttt{number} fields + Biographia literaria + english + variant=british + The collected works of {Samuel Taylor Coleridge} + 75 + 2 + Bollingen Series + Biographia literaria + Biographia literaria, or {Biographical} sketches of my literary life and opinions + 7 + 1983 + + + + + Goossens + Michel + + + Mittelbach + Frank + + + Samarin + Alexander + + + + Reading, Mass. + + + Addison-Wesley + + A book with three authors. Note the formatting of the author list. By default, only the first name is reversed in the bibliography + 1 + LaTeX Companion, The + english + variant=american + 528 + LaTeX Companion + LaTeX Companion + The {LaTeX} Companion + 1994 + + + + + Cotton + + Frank + Albert + + + + Wilkinson + Geoffrey + + + Murillio + + Carlos + A. + + + + Bochmann + Manfred + + + + Chichester + + + Wiley + + A \texttt{book} entry with \arabic{author} authors and an \texttt{edition} field. By default, long \texttt{author} and \texttt{editor} lists are automatically truncated. This is configurable + 6 + english + variant=british + Advanced inorganic chemistry + 1999 + + + + + Gerhardt + + Michael + J. + + + + + Durham + London + + + Duke University Press + + This is a \texttt{book} entry. Note the format of the \texttt{location} field as well as the \texttt{sorttitle} and \texttt{indextitle} fields + Federal Appointments Process, The + english + variant=american + Federal Appointments Process + Federal Appointments Process + A Constitutional and Historical Analysis + The Federal Appointments Process + 2000 + + + + + Gonzalez + Ray + + + + Tucson + + + The University of Arizona Press + + A collection of short stories. This is a \texttt{book} entry. Note the \texttt{sorttitle} and \texttt{indextitle} fields in the database file. There's also an \texttt{isbn} field + Ghost of {John Wayne} and Other Stories, The + 0-816-52066-6 + english + variant=american + Ghost of {John Wayne} + Ghost of John Wayne and Other Stories + The Ghost of {John Wayne} and Other Stories + 2001 + + + + + Hammond + Christopher + + + + Oxford + + + International Union of Crystallography + Oxford University Press + + A \texttt{book} entry. Note the \texttt{sorttitle} and \texttt{indextitle} fields as well as the format of the \texttt{publisher} field + Basics of crystallography and diffraction, The + english + variant=british + Crystallography and diffraction + Basics of crystallography and diffraction + The basics of crystallography and diffraction + 1997 + + + + + Homer + + + + + Latacz + Joachim + + + + + Schadewaldt + Wolfgang + + + + Düsseldorf + Zürich + + + Artemis \& Winkler + + A German translation of the \emph{Iliad}. Note the \texttt{translator} and \texttt{introduction} fields and the format of the \texttt{location} field in the database file. Also note the \texttt{sorttitle} and \texttt{indextitle} fields + 3 + Ilias, Die + german + Ilias + Ilias + Die Ilias + 2004 + + + + + Knuth + + Donald + E. + + + + + Reading, Mass. + + + Addison-Wesley + + A five-volume book cited as a whole. This is a \texttt{book} entry, note the \texttt{volumes} field + Computers & Typesetting + english + variant=american + Computers & Typesetting + 1984-0 + Computers \& Typesetting + 5 + + 1984 + 1986 + + + + + + Knuth + + Donald + E. + + + + + Reading, Mass. + + + Addison-Wesley + + The first volume of a five-volume book. Note the \texttt{sorttitle} and \texttt{sortyear} fields. We want this volume to be listed after the entry referring to the entire five-volume set. Also note the \texttt{indextitle} and \texttt{indexsorttitle} fields. Indexing packages that don't generate robust index entries require some control sequences to be protected from expansion + The TeXbook + \protect\TeX book, The + english + variant=american + Computers \& Typesetting + \TeX book + Computers & Typesetting A + 1984-1 + The {\TeX} book + A + 1984 + + + + + Knuth + + Donald + E. + + + + + Reading, Mass. + + + Addison-Wesley + + The second volume of a five-volume book. Note the \texttt{sorttitle} and \texttt{sortyear} fields. Also note the \texttt{indexsorttitle} field + TeX: The Program + english + variant=american + Computers \& Typesetting + \TeX + Computers & Typesetting B + 1986-1 + \TeX: The Program + B + 1986 + + + + + Knuth + + Donald + E. + + + + + Reading, Mass. + + + Addison-Wesley + + The third volume of a five-volume book. Note the \texttt{sorttitle} and \texttt{sortyear} fields as well as the \texttt{indextitle} field + METAFONTbook, The + english + variant=american + Computers \& Typesetting + METAFONTbook + Computers & Typesetting C + 1986-2 + The {METAFONTbook} + C + 1986 + + + + + Knuth + + Donald + E. + + + + + Reading, Mass. + + + Addison-Wesley + + The fourth volume of a five-volume book. Note the \texttt{sorttitle} and \texttt{sortyear} fields + english + variant=american + Computers \& Typesetting + METAFONT + Computers & Typesetting D + 1986-3 + METAFONT: The Program + D + 1986 + + + + + Knuth + + Donald + E. + + + + + Reading, Mass. + + + Addison-Wesley + + The fifth volume of a five-volume book. Note the \texttt{sorttitle} and \texttt{sortyear} fields + english + variant=american + Computers \& Typesetting + Computers & Typesetting E + 1986-4 + {Computer Modern} Typefaces + E + 1986 + + + + + Knuth + + Donald + E. + + + + + Reading, Mass. + + + Addison-Wesley + + A five-volume book cited as a whole and related to its individual volumes. Note the \texttt{related} and \texttt{relatedtype} fields + Computers & Typesetting + english + variant=american + multivolume + Computers & Typesetting + 1984-0 + Computers \& Typesetting + 5 + + 1984 + 1986 + + + + + + Kullback + Solomon + + + + New York + + + John Wiley \& Sons + + english + variant=american + Information Theory and Statistics + 1959 + + + + + Kullback + Solomon + + + + New York + + + John Wiley \& Sons + + + Dover Publications + + A reprint of the \texttt{kullback} entry. Note the format of \texttt{origyear} and \texttt{origpublisher}. These fields are not used by the standard bibliography styles + english + variant=american + Information Theory and Statistics + 1997 + 1959 + + + + + Kullback + Solomon + + + + New York + + + Dover Publications + + A reprint of the \texttt{kullback} entry. Note the format of the \texttt{related} and \texttt{relatedtype} fields + english + variant=american + origpubin + Information Theory and Statistics + 1997 + + + + + Malinowski + Bronis{ł}aw + + + + London + + + Routledge {and} Kegan Paul + + This is a \texttt{book} entry. Note the format of the \texttt{publisher} and \texttt{edition} fields as well as the \texttt{subtitle} field + 8 + english + variant=british + Argonauts + An account of native enterprise and adventure in the Archipelagoes of {Melanesian New Guinea} + Argonauts of the {Western Pacific} + 1972 + + + + + Maron + Monika + + + + + Goldstein + Brigitte + + + + Lincoln + + + University of Nebraska Press + + An English translation of a German novel with a French title. In other words: a \texttt{book} entry with a \texttt{translator} field. Note the \texttt{origlanguage} field which is concatenated with the \texttt{translator} + english + variant=american + german + Animal Triste + Animal Triste + 2000 + + + + + Massa + Werner + + + + Berlin + + + Spinger + + A \texttt{book} entry with an \texttt{edition} field + 2 + english + variant=british + Crystal structure determination + 2004 + + + + + Moore + + Gordon + E. + + + + Electronics + english + variant=american + 8 + Cramming more components onto integrated circuits + 38 + + + + 114 + 117 + + + + 1965 + + + + + Moore + + Gordon + E. + + + + A reprint of Moore's law. Note the \texttt{related} and \texttt{relatedtype} fields + Proceedings of the {IEEE} + english + variant=american + 1 + reprintfrom + Cramming more components onto integrated circuits + 86 + + + + 82 + 85 + + + + 1998 + + + + + Nietzsche + Friedrich + + + + + Colli + Giorgio + + + Montinari + Mazzino + + + + München + Berlin + New York + + + Deutscher Taschenbuch-Verlag + Walter de Gruyter + + The critical edition of Nietzsche's works. This is a \texttt{book} entry referring to a 15-volume work as a whole. Note the \texttt{volumes} field and the format of the \texttt{publisher} and \texttt{location} fields in the database file. Also note the \texttt{sorttitle} and \texttt{sortyear} fields which are used to fine-tune the sorting order of the bibliography. We want this item listed first in the bibliography + 2 + Samtliche Werke + german + Werke-00-000 + 1988-0 + Kritische Studienausgabe + Sämtliche Werke + 15 + 1988 + + + + + Nietzsche + Friedrich + + + + + Nietzsche + Friedrich + + + + + Colli + Giorgio + + + Montinari + Mazzino + + + + München + Berlin + New York + + + Deutscher Taschenbuch-Verlag + Walter de Gruyter + + A single volume from the critical edition of Nietzsche's works. This \texttt{book} entry explicitly refers to the first volume only. Note the \texttt{title} and \texttt{maintitle} fields. Also note the \texttt{sorttitle} and \texttt{sortyear} fields. We want this entry to be listed after the entry referring to the entire edition + 2 + Samtliche Werke I + Sämtliche Werke I + german + Kritische Studienausgabe + Sämtliche Werke + Sämtliche Werke I + Werke-01-000 + 1988-1 + Die Geburt der Tragödie. Unzeitgemä{ß}e Betrachtungen I--IV. Nachgelassene Schriften 1870--1973 + 1 + 1988 + + + + + Nussbaum + Martha + + + + Princeton + + + Princeton University Press + + A \texttt{book} entry. Note the \texttt{sorttitle} and \texttt{indexsorttitle} fields and the markup of the quotes in the database file + Aristotle's De Motu Animalium + english + variant=american + Aristotle's De Motu Animalium + Aristotle's \mkbibquote{De Motu Animalium} + 1978 + + + + + Piccato + Pablo + + + + Durham + London + + + Duke University Press + + This is a \texttt{book} entry. Note the format of the \texttt{location} field in the database file + english + variant=american + City of Suspects + Crime in {Mexico City}, 1900--1931 + City of Suspects + 2001 + + + useprefix + + + Gennep + Arnold + van + + + + Paris + + + Nourry + + A \texttt{book} entry. Note the format of the printed name and compare the \texttt{useprefix} option in the \texttt{options} field as well as \texttt{brandt} and \texttt{geer} + Rites de passage, Les + french + Rites de passage + Rites de passage + Les rites de passage + 1909 + + + useprefix + + + Gennep + Arnold + van + + + + + Vizedom + + Monika + B. + + + + Caffee + + Gabrielle + L. + + + + + english + + + University of Chicago Press + + A translation of the \texttt{vangennep} entry. Note the \texttt{translator} and \texttt{origlanguage} fields. Compare with the \texttt{vangennep:related} entry. + Rites of Passage, The + english + variant=american + french + Rites of Passage + Rites of Passage + The Rites of Passage + 1960 + + + useprefix + + + Gennep + Arnold + van + + + + Paris + + + Nourry + + A variant of the \texttt{vangennep} entry related to its translation. Note the format of the \texttt{related} and \texttt{relatedtype} fields + Rites de passage, Les + french + bytranslator + Rites de passage + Rites de passage + Les rites de passage + 1909 + + + usetranslator + + + Vizedom + + Monika + B. + + + + Caffee + + Gabrielle + L. + + + + + english + + + University of Chicago Press + + A translated work from \texttt{vangennep}. Note the format of the \texttt{related} and \texttt{relatedtype} fields + Rites of Passage, The + english + variant=american + translationof + Rites of Passage + Rites of Passage + The Rites of Passage + 1960 + + + + + + Vázques{ + de + }Parga + + Luis + + + Lacarra + + José + María + + + + + Uría + Ríu + + Juan + + + + Pamplona + + + Iberdrola + + A multivolume book cited as a whole. This is a \texttt{book} entry with \texttt{volumes}, \texttt{note}, \texttt{sorttitle}, and \texttt{indextitle} fields + Peregrinaciones a Santiago de Compostela, Las + spanish + Ed. facs. de la realizada en 1948--49 + Peregrinaciones + Peregrinaciones a Santiago de Compostela + Las Peregrinaciones a Santiago de Compostela + 3 + 1993 + + + + + Wilde + Oscar + + + + Leonard Smithers {and} Company + + A \texttt{book} with \texttt{eprint} and \texttt{eprinttype} fields. + 4HIWAAAAYAAJ + googlebooks + English and {American} drama of the Nineteenth Century + The Importance of Being Earnest: A Trivial Comedy for Serious People + 1899 + + + + + Worman + Nancy + + + + Austin + + + University of Texas Press + + A \texttt{book} entry. Note the \texttt{sorttitle} and \texttt{indextitle} fields + Cast of Character, The + english + variant=american + Cast of Character + Cast of Character + Style in {Greek} Literature + The Cast of Character + 2002 + + + useeditor=false + + + Preece + + Warren + E. + + + + + Chicago, Ill. + + + Encyclop{æ}dia Britannica + + This is a \texttt{collection} entry for an encyclopedia. Note the \texttt{useeditor} option in the \texttt{options} field as well as the \texttt{sorttitle} field. We want this entry to be cited and alphabetized by title even though there is an editor. In addition to that, we want the title to be alphabetized under \enquote*{E} rather than \enquote*{T}. Also note the \texttt{label} field which is provided for author-year citation styles + 15 + {Encyclop{æ}dia Britannica}, The {New} + EB + english + variant=british + {Encyclop{æ}dia Britannica} + Encyclop{æ}dia Britannica + The {New Encyclop{æ}dia Britannica} + 32 + 2003 + + + + + Gaonkar + + Dilip + Parameshwar + + + + + Durham + London + + + Duke University Press + + This is a \texttt{collection} entry. Note the format of the \texttt{location} field in the database file as well as the \texttt{isbn} field + 0-822-32714-7 + english + variant=american + Alternative Modernities + 2001 + + + + + Gaonkar + + Dilip + Parameshwar + + + + + + Gaonkar + + Dilip + Parameshwar + + + + + Durham + London + + + Duke University Press + + Alternative Modernities + 0-822-32714-7 + On Alternative Modernities + + + + 1 + 23 + + + + 2001 + + + + + Jaffé + Philipp + + + + + Loewenfeld + Samuel + + + Kaltenbrunner + Ferdinand + + + Ewald + Paul + + + + Leipzig + + A \texttt{collection} entry with \texttt{edition} and \texttt{volumes} fields. Note the \texttt{editora} and \texttt{editoratype} fields + 2 + redactor + Regesta Pontificum Romanorum + latin + Regesta Pontificum Romanorum + Regesta Pontificum Romanorum ab condita ecclesia ad annum post Christum natum \textsc{mcxcviii} + 2 + + 1885 + 1888 + + + + + + Westfahl + Gary + + + + Westport, Conn. + London + + + Greenwood + + This is a \texttt{collection} entry. Note the format of the \texttt{location} field as well as the \texttt{subtitle} and \texttt{booksubtitle} fields + The Frontier Theme in Science Fiction + Space and Beyond + english + variant=american + The Frontier Theme in Science Fiction + Space and Beyond + 2000 + + + + + Kant + Immanuel + + + + + Kant + Immanuel + + + + Berlin + + + Walter de Gruyter + + An edition of Kant's \emph{Collected Works}, volume five. This is an \texttt{inbook} entry which explicitly refers to the \emph{Critique of Practical Reason} only, not to the entire fifth volume. Note the \texttt{author} and \texttt{bookauthor} fields in the database file. By default, the \texttt{bookauthor} is omitted if the values of the \texttt{author} and \texttt{bookauthor} fields are identical + Kritik der praktischen Vernunft. Kritik der Urtheilskraft + german + Kants Werke. Akademie Textausgabe + KpV + Kritik der praktischen Vernunft + Kritik der praktischen Vernunft + 5 + + + + 1 + 163 + + + + 1968 + + + + + Kant + Immanuel + + + + + Kant + Immanuel + + + + Berlin + + + Walter de Gruyter + + An edition of Kant's \emph{Collected Works}, volume five. This is an \texttt{inbook} entry which explicitly refers to the \emph{Critique of Judgment} only, not to the entire fifth volume + Kritik der praktischen Vernunft. Kritik der Urtheilskraft + german + Kants Werke. Akademie Textausgabe + KU + Kritik der Urtheilskraft + 5 + + + + 165 + 485 + + + + 1968 + + + + + Nietzsche + Friedrich + + + + + Nietzsche + Friedrich + + + + + Colli + Giorgio + + + Montinari + Mazzino + + + + München + Berlin + New York + + + Deutscher Taschenbuch-Verlag + Walter de Gruyter + + A single essay from the critical edition of Nietzsche's works. This \texttt{inbook} entry explicitly refers to an essay found in the first volume. Note the \texttt{title}, \texttt{booktitle}, and \texttt{maintitle} fields. Also note the \texttt{sorttitle} and \texttt{sortyear} fields. We want this entry to be listed after the entry referring to the entire first volume + Die Geburt der Tragödie. Unzeitgemä{ß}e Betrachtungen I--IV. Nachgelassene Schriften 1870--1973 + Vom Nutzen und Nachtheil der Historie fur das Leben + Vom Nutzen und Nachtheil der Historie für das Leben + german + Kritische Studienausgabe + Sämtliche Werke + Vom Nutzen und Nachtheil der Historie + Werke-01-243 + 1988-2 + Vom Nutzen und Nachtheil der Historie für das Leben + Unzeitgemässe Betrachtungen. Zweites Stück + 1 + + + + 243 + 334 + + + + 1988 + + + useprefix=false + + + Brandt + Ahasver + von + + + Hoffmann + Erich + + + + + Seibt + Ferdinand + + + + Stuttgart + + + Klett-Cotta + + An \texttt{incollection} entry with a \texttt{series} and a \texttt{number}. Note the format of the printed name and compare the \texttt{useprefix} option in the \texttt{options} field as well as \texttt{vangennep}. Also note the \texttt{indextitle, and \texttt{indexsorttitle} fields} + Europa im Hoch- und Spätmittelalter + Nordischen Lander von der Mitte des 11. Jahrhunderts bis 1448 + Nordischen Länder von der Mitte des 11.~Jahrhunderts bis 1448, Die + german + 2 + Handbuch der europäischen Geschichte + Die nordischen Länder + Die nordischen Länder von der Mitte des 11.~Jahrhunderts bis 1448 + + + + 884 + 917 + + + + 1987 + + + + + Hyman + Arthur + + + + + O'Meara + + Dominic + J. + + + + + Washington, D.C. + + + The Catholic University of America Press + + An \texttt{incollection} entry with a \texttt{series} and \texttt{number} field + Studies in {Aristotle} + Aristotle's Theory of the Intellect + english + variant=american + 9 + Studies in Philosophy and the History of Philosophy + Aristotle's Theory of the Intellect + Aristotle's Theory of the Intellect and its Interpretation by {Averroes} + + + + 161 + 191 + + + + 1981 + + + + + Pines + Shlomo + + + + + Twersky + Isadore + + + + Cambridge, Mass. + + + Harvard University Press + + A typical \texttt{incollection} entry. Note the \texttt{indextitle} field + Studies in Medieval {Jewish} History and Literature + Limitations of Human Knowledge According to {Al-Farabi}, {ibn Bajja}, and {Maimonides}, The + english + variant=american + Limitations of Human Knowledge + The Limitations of Human Knowledge According to {Al-Farabi}, {ibn Bajja}, and {Maimonides} + + + + 82 + 109 + + + + 1979 + + + + + Moraux + Paul + + + + + Lloyd + + G. + E. + R. + + + + Owen + + G. + E. + L. + + + + + Cambridge + + + Cambridge University Press + + This is a typical \texttt{inproceedings} entry. Note the \texttt{booksubtitle}, \texttt{shorttitle}, \texttt{indextitle}, and \texttt{indexsorttitle} fields. Also note the \texttt{eventdate} field. + Aristotle on Mind and the Senses + Proceedings of the Seventh Symposium Aristotelicum + De Anima dans la tradition grecque + \emph{De Anima} dans la tradition grècque, Le + french + \emph{De Anima} dans la tradition grècque + Quelques aspects de l'interpretation du traité, de Theophraste à Themistius + Le \emph{De Anima} dans la tradition grècque + + + + 281 + 324 + + + + 1979 + 1975 + + + + + Salam + Abdus + + + + + Svartholm + Nils + + + + Stockholm + + + Almquist \& Wiksell + + Relativistic groups and analyticity + Elementary particle theory + Proceedings of the {Eighth Nobel Symposium} + Weak and Electromagnetic Interactions + Aspenäsgarden, Lerum + + + + 367 + 377 + + + + 1968 + + 1968-05-19 + 1968-05-25 + + + + + Chicago, Ill. + + + University of Chicago Press + + This is a \texttt{manual} entry without an \texttt{author} or \texttt{editor}. Note the \texttt{label} field in the database file which is provided for author-year citation styles. Also note the \texttt{sorttitle} and \texttt{indextitle} fields. By default, all entries without an \texttt{author} or \texttt{editor} are alphabetized by \texttt{title} but we want this entry to be alphabetized under \enquote*{C} rather than \enquote*{T}. There's also an \texttt{isbn} field + 15 + Chicago Manual of Style, The + 0-226-10403-6 + CMS + english + variant=american + Chicago Manual of Style + Chicago Manual of Style + The Essential Guide for Writers, Editors, and Publishers + The {Chicago} Manual of Style + 2003 + + + + + Baez + + John + C. + + + + Lauda + + Aaron + D. + + + + An \texttt{online} reference from arXiv. Note the \texttt{eprint} and \texttt{eprinttype} fields. Compare \texttt{baez\slash article} which is the same item given as an \texttt{article} entry with eprint information + math/0307200v3 + arxiv + english + variant=american + Higher-Dimensional Algebra {V}: 2-Groups + 3 + 2004-10-27 + + + This is an \texttt{online} entry. The \textsc{url}, which is given in the \texttt{url} field, is transformed into a clickable link if \texttt{hyperref} support has been enabled. Note the format of the \texttt{urldate} field (\texttt{yyyy-mm-dd}) in the database file. Also note the \texttt{label} field which may be used as a fallback by citation styles which need an \texttt{author} and\slash or a \texttt{year} + CTAN + english + variant=american + The {Comprehensive TeX Archive Network} + CTAN + http://www.ctan.org + 2006 + 2006-10-01 + + + + + Itzhaki + Nissan + + + We discuss the limitations of 't Hooft's proposal for the black hole S-matrix. We find that the validity of the S-matrix implies violation of the semi-classical approximation at scales large compared to the Planck scale. We also show that the effect of the centrifugal barrier on the S-matrix is crucial even for large transverse distances. + An \texttt{online} reference from arXiv. Note the \texttt{eprint} and \texttt{eprinttype} fields. Also note that the arXiv reference is transformed into a clickable link if \texttt{hyperref} support has been enabled + hep-th/9603067 + arxiv + english + variant=american + Some remarks on {'t Hooft's} {S}-matrix for black holes + 1 + 1996-03-11 + + + + + Markey + Nicolas + + + An \texttt{online} entry for a tutorial. Note the format of the \texttt{date} field (\texttt{yyyy-mm-dd}) in the database file. + english + variant=american + Tame the Beast + The {B} to {X} of {BibTeX} + Tame the {BeaST} + http://mirror.ctan.org/info/bibtex/tamethebeast/ttb_en.pdf + 1.3 + 2005-10-16 + 2006-10-01 + + + + + Wassenberg + Jan + + + Sanders + Peter + + + Sorting algorithms are the deciding factor for the performance of common operations such as removal of duplicates or database sort-merge joins. This work focuses on 32-bit integer keys, optionally paired with a 32-bit value. We present a fast radix sorting algorithm that builds upon a microarchitecture-aware variant of counting sort + A recent \texttt{online} reference from arXiv using the new (April 2007 onward) identifier format. Note the \texttt{eprint}, \texttt{eprinttype}, and \texttt{eprintclass} fields. Also note that the arXiv reference is transformed into a clickable link if \texttt{hyperref} support has been enabled + 1008.2849v1 + cs.DS + arxiv + english + variant=american + Faster Radix Sort via Virtual Memory and Write-Combining + 1 + 2010-08-17 + + + + + Almendro + + José + L. + + + + Martín + Jacinto + + + Sánchez + Alberto + + + Nozal + Fernando + + + + countryfr + countryuk + countryde + + This is a \texttt{patent} entry with a \texttt{location} field. The number is given in the \texttt{number} field. Note the format of the \texttt{location} field in the database file. Compare \texttt{laufenberg}, \texttt{sorace}, and \texttt{kowalik} + german + EU-29702195U + Elektromagnetisches Signalhorn + 1998 + + + + + Kowalik + F. + + + Isard + M. + + + This is a \texttt{patent} entry for a French patent request with a full date. The number is given in the \texttt{number} field. Note the format of the \texttt{type} and \texttt{date} fields in the database file. Compare \texttt{almendro}, \texttt{laufenberg}, and \texttt{sorace} + Estimateur d'un défaut de fonctionnement + french + 9500261 + Estimateur d'un défaut de fonctionnement d'un modulateur en quadrature et étage de modulation l'utilisant + patreqfr + 1995-01-11 + + + + + Laufenberg + Xaver + + + Eynius + Dominique + + + Suelzle + Helmut + + + Usbeck + Stephan + + + Spaeth + Matthias + + + Neuser-Hoffmann + Miriam + + + Myrzik + Christian + + + Schmid + Manfred + + + Nietfeld + Franz + + + Thiel + Alexander + + + Braun + Harald + + + Ebner + Norbert + + + + + + Robert + Bosch + GmbH + + + + + Daimler + Chrysler + AG + + + + + Bayerische + Motoren + Werke + AG + + + + The invention relates to an electric device comprising a generator, in particular for use in the vehicle electric system of a motor vehicle and a controller for controlling the generator voltage. The device is equipped with a control zone, in which the voltage is controlled and zones, in which the torque is controlled. The invention also relates to methods for operating a device of this type. + This is a \texttt{patent} entry with a \texttt{holder} field. Note the format of the \texttt{type} and \texttt{location} fields in the database file. Compare \texttt{almendro}, \texttt{sorace}, and \texttt{kowalik} + http://v3.espacenet.com/textdoc?IDX=EP1700367 + german + 1700367 + Elektrische Einrichtung und Betriebsverfahren + patenteu + 2006-09-13 + + + + + Sorace + + Ronald + E. + + + + Reinhardt + + Victor + S. + + + + Vaughn + + Steven + A. + + + + + + + Hughes + Aircraft + Company + + + + This is a \texttt{patent} entry with a \texttt{holder} field. Note the format of the \texttt{type} and \texttt{date} fields in the database file. Compare \texttt{almendro}, \texttt{laufenberg}, and \texttt{kowalik} + english + variant=american + 5668842 + High-Speed Digital-to-{RF} Converter + patentus + 1997-09-16 + + + This is a \texttt{periodical} entry with an \texttt{issn} field. + 0097-8493 + Semantic {3D} Media and Content + 4 + Computers and Graphics + 35 + 2011 + + + + + Chiu + + Willy + W. + + + + Chow + + We + Min + + + + + IBM + + This is a \texttt{report} entry for a research report. Note the format of the \texttt{type} field in the database file which uses a localization key. The number of the report is given in the \texttt{number} field. Also note the \texttt{sorttitle} and \texttt{indextitle} fields + Hybrid Hierarchical Model, A + english + variant=american + RC-6947 + Hybrid Hierarchical Model of a Multiple Virtual Storage (MVS) Operating System + A Hybrid Hierarchical Model of a {Multiple Virtual Storage} ({MVS}) Operating System + resreport + 1978 + + + + + Padhye + Jitendra + + + Firoiu + Victor + + + Towsley + Don + + + + University of Massachusetts + + + Amherst, Mass. + + The steady state performance of a bulk transfer TCP flow (i.e. a flow with a large amount of data to send, such as FTP transfers) may be characterized by three quantities. The first is the send rate, which is the amount of data sent by the sender in unit time. The second is the throughput, which is the amount of data received by the receiver in unit time. Note that the throughput will always be less than or equal to the send rate due to losses. Finally, the number of non-duplicate packets received by the receiver in unit time gives us the goodput of the connection. The goodput is always less than or equal to the throughput, since the receiver may receive two copies of the same packet due to retransmissions by the sender. In a previous paper, we presented a simple model for predicting the steady state send rate of a bulk transfer TCP flow as a function of loss rate and round trip time. In this paper, we extend that work in two ways. First, we analyze the performance of bulk transfer TCP flows using more precise, stochastic analysis. Second, we build upon the previous analysis to provide both an approximate formula as well as a more accurate stochastic model for the steady state throughput of a bulk transfer TCP flow. + This is a \texttt{report} entry for a technical report. Note the format of the \texttt{type} field in the database file which uses a localization key. The number of the report is given in the \texttt{number} field. Also note the \texttt{sorttitle} and \texttt{indextitle} fields + ftp://gaia.cs.umass.edu/pub/Padhey99-markov.ps + Stochastic Model of {TCP Reno} Congestion Avoidance and Control, A + english + variant=american + 99-02 + A Stochastic Model of TCP Reno Congestion Avoidance and Control + A Stochastic Model of {TCP Reno} Congestion Avoidance and Control + techreport + 1999 + + + useprefix=false + + + Geer + Ingrid + de + + + + Uppsala Universitet + + + Uppsala + + This is a typical \texttt{thesis} entry for a PhD thesis. Note the \texttt{type} field in the database file which uses a localization key. Also note the format of the printed name and compare the \texttt{useprefix} option in the \texttt{options} field as well as \texttt{vangennep} + english + variant=british + The {Orkney Earldom} of the Twelfth Century. {A} Musicological Study + Earl, Saint, Bishop, Skald~-- and Music + phdthesis + 1985 + + + + + Loh + + Nin + C. + + + + + Massachusetts Institute of Technology + + + Cambridge, Mass. + + This is a typical \texttt{thesis} entry for an MA thesis. Note the \texttt{type} field in the database file which uses a localization key + english + variant=american + High-Resolution Micromachined Interferometric Accelerometer + mathesis + 1992 + + diff --git a/macros/latex/contrib/biblatex-ms/bibtex/bib/biblatex/biblatex-examples-ms.bib b/macros/latex/contrib/biblatex-ms/bibtex/bib/biblatex/biblatex-examples-ms.bib new file mode 100644 index 0000000000..5aaa9d2196 --- /dev/null +++ b/macros/latex/contrib/biblatex-ms/bibtex/bib/biblatex/biblatex-examples-ms.bib @@ -0,0 +1,1661 @@ +@string{anch-ie = {Angew.~Chem. Int.~Ed.}} +@string{cup = {Cambridge University Press}} +@string{dtv = {Deutscher Taschenbuch-Verlag}} +@string{hup = {Harvard University Press}} +@string{jams = {J.~Amer. Math. Soc.}} +@string{jchph = {J.~Chem. Phys.}} +@string{jomch = {J.~Organomet. Chem.}} +@string{pup = {Princeton University Press}} + +@incollection{westfahl:space, + author = {Westfahl, Gary}, + title = {The True Frontier}, + subtitle = {Confronting and Avoiding the Realities of Space in {American} + Science Fiction Films}, + pages = {55-65}, + crossref = {westfahl:frontier}, + langid = {english}, + langidopts = {variant=american}, + indextitle = {True Frontier, The}, + annotation = {A cross-referenced article from a \texttt{collection}. This is + an \texttt{incollection} entry with a \texttt{crossref} + field. Note the \texttt{subtitle} and \texttt{indextitle} + fields}, +} + +@set{set, + entryset = {herrmann,aksin,yoon}, + annotation = {A \texttt{set} with three members.}, +} + +@set{stdmodel, + entryset = {glashow,weinberg,salam}, + annotation = {A \texttt{set} with three members discussing the standard + model of particle physics.}, +} + +@article{aksin, + author = {Aks{\i}n, {\"O}zge and T{\"u}rkmen, Hayati and Artok, Levent + and {\c{C}}etinkaya, Bekir and Ni, Chaoying and + B{\"u}y{\"u}kg{\"u}ng{\"o}r, Orhan and {\"O}zkal, Erhan}, + title = {Effect of immobilization on catalytic characteristics of + saturated {Pd-N}-heterocyclic carbenes in {Mizoroki-Heck} + reactions}, + journaltitle = jomch, + date = 2006, + volume = 691, + number = 13, + pages = {3027-3036}, + indextitle = {Effect of immobilization on catalytic characteristics}, +} + +@article{angenendt, + author = {Angenendt, Arnold}, + title = {In Honore Salvatoris~-- Vom Sinn und Unsinn der + Patrozinienkunde}, + journaltitle = {Revue d'Histoire Eccl{\'e}siastique}, + date = 2002, + volume = 97, + pages = {431--456, 791--823}, + langid = {german}, + indextitle = {In Honore Salvatoris}, + shorttitle = {In Honore Salvatoris}, + annotation = {A German article in a French journal. Apart from that, a + typical \texttt{article} entry. Note the \texttt{indextitle} + field}, +} + +@article{baez/article, + author = {Baez, John C. and Lauda, Aaron D.}, + title = {Higher-Dimensional Algebra {V}: 2-Groups}, + journaltitle = {Theory and Applications of Categories}, + date = 2004, + volume = 12, + pages = {423-491}, + version = 3, + eprint = {math/0307200v3}, + eprinttype = {arxiv}, + langid = {english}, + langidopts = {variant=american}, + annotation = {An \texttt{article} with \texttt{eprint} and + \texttt{eprinttype} fields. Note that the arXiv reference is + transformed into a clickable link if \texttt{hyperref} support + has been enabled. Compare \texttt{baez\slash online}, which + is the same item given as an \texttt{online} entry}, +} + +@article{bertram, + author = {Bertram, Aaron and Wentworth, Richard}, + title = {Gromov invariants for holomorphic maps on {Riemann} surfaces}, + journaltitle = jams, + date = 1996, + volume = 9, + number = 2, + pages = {529-571}, + langid = {english}, + langidopts = {variant=american}, + shorttitle = {Gromov invariants}, + annotation = {An \texttt{article} entry with a \texttt{volume} and a + \texttt{number} field}, +} + +@article{doody, + author = {Doody, Terrence}, + title = {Hemingway's Style and {Jake's} Narration}, + year = 1974, + volume = 4, + number = 3, + pages = {212-225}, + langid = {english}, + langidopts = {variant=american}, + related = {matuz:doody}, + relatedstring= {\autocap{e}xcerpt in}, + journal = {The Journal of Narrative Technique}, + annotation = {An \texttt{article} entry cited as an excerpt from a + \texttt{collection} entry. Note the format of the + \texttt{related} and \texttt{relatedstring} fields}, +} + +@collection{matuz:doody, + editor = {Matuz, Roger}, + title = {Contemporary Literary Criticism}, + year = 1990, + volume = 61, + publisher = {Gale}, + location = {Detroit}, + pages = {204-208}, + langid = {english}, + langidopts = {variant=american}, + annotation = {A \texttt{collection} entry providing the excerpt information + for the \texttt{doody} entry. Note the format of the + \texttt{pages} field}, +} + +@article{gillies, + author = {Gillies, Alexander}, + title = {Herder and the Preparation of {Goethe's} Idea of World + Literature}, + journaltitle = {Publications of the English Goethe Society}, + date = 1933, + series = {newseries}, + volume = 9, + pages = {46-67}, + langid = {english}, + langidopts = {variant=british}, + annotation = {An \texttt{article} entry with a \texttt{series} and a + \texttt{volume} field. Note that format of the \texttt{series} + field in the database file}, +} + +@article{glashow, + author = {Glashow, Sheldon}, + title = {Partial Symmetries of Weak Interactions}, + journaltitle = {Nucl.~Phys.}, + date = 1961, + volume = 22, + pages = {579-588}, +} + +@article{herrmann, + author = {Herrmann, Wolfgang A. and {\"O}fele, Karl and Schneider, + Sabine K. and Herdtweck, Eberhardt and Hoffmann, Stephan D.}, + title = {A carbocyclic carbene as an efficient catalyst ligand for {C--C} + coupling reactions}, + journaltitle = anch-ie, + date = 2006, + volume = 45, + number = 23, + pages = {3859-3862}, + indextitle = {Carbocyclic carbene as an efficient catalyst, A}, +} + +@article{kastenholz, + author = {Kastenholz, M. A. and H{\"u}nenberger, Philippe H.}, + title = {Computation of methodology\hyphen independent ionic solvation + free energies from molecular simulations}, + journaltitle = jchph, + date = 2006, + subtitle = {{I}. {The} electrostatic potential in molecular liquids}, + volume = 124, + eid = 124106, + doi = {10.1063/1.2172593}, + langid = {english}, + langidopts = {variant=american}, + indextitle = {Computation of ionic solvation free energies}, + annotation = {An \texttt{article} entry with an \texttt{eid} and a + \texttt{doi} field. Note that the \textsc{doi} is transformed + into a clickable link if \texttt{hyperref} support has been + enabled}, + abstract = {The computation of ionic solvation free energies from + atomistic simulations is a surprisingly difficult problem that + has found no satisfactory solution for more than 15 years. The + reason is that the charging free energies evaluated from such + simulations are affected by very large errors. One of these is + related to the choice of a specific convention for summing up + the contributions of solvent charges to the electrostatic + potential in the ionic cavity, namely, on the basis of point + charges within entire solvent molecules (M scheme) or on the + basis of individual point charges (P scheme). The use of an + inappropriate convention may lead to a charge-independent + offset in the calculated potential, which depends on the + details of the summation scheme, on the quadrupole-moment + trace of the solvent molecule, and on the approximate form + used to represent electrostatic interactions in the + system. However, whether the M or P scheme (if any) represents + the appropriate convention is still a matter of on-going + debate. The goal of the present article is to settle this + long-standing controversy by carefully analyzing (both + analytically and numerically) the properties of the + electrostatic potential in molecular liquids (and inside + cavities within them).}, +} + +@article{murray, + author = {Hostetler, Michael J. and Wingate, Julia E. and Zhong, + Chuan-Jian and Harris, Jay E. and Vachet, Richard W. and + Clark, Michael R. and Londono, J. David and Green, Stephen + J. and Stokes, Jennifer J. and Wignall, George D. and Glish, + Gary L. and Porter, Marc D. and Evans, Neal D. and Murray, + Royce W.}, + title = {Alkanethiolate gold cluster molecules with core diameters from + 1.5 to 5.2~{nm}}, + journaltitle = {Langmuir}, + date = 1998, + subtitle = {Core and monolayer properties as a function of core size}, + volume = 14, + number = 1, + pages = {17-30}, + langid = {english}, + langidopts = {variant=american}, + indextitle = {Alkanethiolate gold cluster molecules}, + shorttitle = {Alkanethiolate gold cluster molecules}, + annotation = {An \texttt{article} entry with \arabic{author} authors. By + default, long author and editor lists are automatically + truncated. This is configurable}, +} + +@article{reese, + author = {Reese, Trevor R.}, + title = {Georgia in {Anglo-Spanish} Diplomacy, 1736--1739}, + journaltitle = {William and Mary Quarterly}, + date = 1958, + series = 3, + volume = 15, + pages = {168-190}, + langid = {english}, + langidopts = {variant=american}, + annotation = {An \texttt{article} entry with a \texttt{series} and a + \texttt{volume} field. Note the format of the series. If the + value of the \texttt{series} field is an integer, this number + is printed as an ordinal and the string \enquote*{series} is + appended automatically}, +} + +@article{sarfraz, + author = {M. Sarfraz and M. F. A. Razzak}, + title = {Technical section: {An} algorithm for automatic capturing of + the font outlines}, + year = 2002, + volume = 26, + number = 5, + pages = {795-804}, + issn = {0097-8493}, + journal = {Computers and Graphics}, + annotation = {An \texttt{article} entry with an \texttt{issn} field}, +} + +@article{shore, + author = {Shore, Bradd}, + title = {Twice-Born, Once Conceived}, + journaltitle = {American Anthropologist}, + date = {1991-03}, + subtitle = {Meaning Construction and Cultural Cognition}, + series = {newseries}, + volume = 93, + number = 1, + pages = {9-27}, + annotation = {An \texttt{article} entry with \texttt{series}, + \texttt{volume}, and \texttt{number} fields. Note the format + of the \texttt{series} which is a localization key}, +} + +@article{sigfridsson, + author = {Sigfridsson, Emma and Ryde, Ulf}, + title = {Comparison of methods for deriving atomic charges from the + electrostatic potential and moments}, + journaltitle = {Journal of Computational Chemistry}, + date = 1998, + volume = 19, + number = 4, + pages = {377-395}, + doi = {10.1002/(SICI)1096-987X(199803)19:4<377::AID-JCC1>3.0.CO;2-P}, + langid = {english}, + langidopts = {variant=american}, + indextitle = {Methods for deriving atomic charges}, + annotation = {An \texttt{article} entry with \texttt{volume}, + \texttt{number}, and \texttt{doi} fields. Note that the + \textsc{doi} is transformed into a clickable link if + \texttt{hyperref} support has been enabled}, + abstract = {Four methods for deriving partial atomic charges from the + quantum chemical electrostatic potential (CHELP, CHELPG, + Merz-Kollman, and RESP) have been compared and critically + evaluated. It is shown that charges strongly depend on how and + where the potential points are selected. Two alternative + methods are suggested to avoid the arbitrariness in the + point-selection schemes and van der Waals exclusion radii: + CHELP-BOW, which also estimates the charges from the + electrostatic potential, but with potential points that are + Boltzmann-weighted after their occurrence in actual + simulations using the energy function of the program in which + the charges will be used, and CHELMO, which estimates the + charges directly from the electrostatic multipole + moments. Different criteria for the quality of the charges are + discussed.}, +} + +@article{spiegelberg, + author = {Spiegelberg, Herbert}, + title = {\mkbibquote{Intention} und \mkbibquote{Intentionalit{\"a}t} in + der Scholastik, bei Brentano und Husserl}, + journaltitle = {Studia Philosophica}, + date = 1969, + volume = 29, + pages = {189-216}, + langid = {german}, + sorttitle = {Intention und Intentionalitat in der Scholastik, bei Brentano + und Husserl}, + indexsorttitle= {Intention und Intentionalitat in der Scholastik, bei Brentano + und Husserl}, + shorttitle = {Intention und Intentionalit{\"a}t}, + annotation = {An \texttt{article} entry. Note the \texttt{sorttitle} and + \texttt{indexsorttitle} fields and the markup of the quotes in + the database file}, +} + +@article{springer, + author = {Springer, Otto}, + title = {Mediaeval Pilgrim Routes from {Scandinavia} to {Rome}}, + journaltitle = {Mediaeval Studies}, + date = 1950, + volume = 12, + pages = {92-122}, + langid = {english}, + langidopts = {variant=british}, + shorttitle = {Mediaeval Pilgrim Routes}, + annotation = {A plain \texttt{article} entry}, +} + +@article{weinberg, + author = {Weinberg, Steven}, + title = {A Model of Leptons}, + journaltitle = {Phys.~Rev.~Lett.}, + date = 1967, + volume = 19, + pages = {1264-1266}, +} + +@article{yoon, + author = {Yoon, Myeong S. and Ryu, Dowook and Kim, Jeongryul and Ahn, + Kyo Han}, + title = {Palladium pincer complexes with reduced bond angle strain: + efficient catalysts for the {Heck} reaction}, + journaltitle = {Organometallics}, + date = 2006, + volume = 25, + number = 10, + pages = {2409-2411}, + indextitle = {Palladium pincer complexes}, +} + +@book{aristotle:anima, + author = {Aristotle}, + title = {De Anima}, + date = 1907, + editor = {Hicks, Robert Drew}, + publisher = cup, + location = {Cambridge}, + keywords = {primary}, + langid = {english}, + langidopts = {variant=british}, + annotation = {A \texttt{book} entry with an \texttt{author} and an + \texttt{editor}}, +} + +@book{aristotle:physics, + author = {Aristotle}, + title = {Physics}, + date = 1929, + translator = {Wicksteed, P. H. and Cornford, F. M.}, + publisher = {G. P. Putnam}, + location = {New York}, + keywords = {primary}, + langid = {english}, + langidopts = {variant=american}, + shorttitle = {Physics}, + annotation = {A \texttt{book} entry with a \texttt{translator} field}, +} + +@book{aristotle:poetics, + author = {Aristotle}, + title = {Poetics}, + date = 1968, + editor = {Lucas, D. W.}, + series = {Clarendon {Aristotle}}, + publisher = {Clarendon Press}, + location = {Oxford}, + keywords = {primary}, + langid = {english}, + langidopts = {variant=british}, + shorttitle = {Poetics}, + annotation = {A \texttt{book} entry with an \texttt{author} and an + \texttt{editor} as well as a \texttt{series} field}, +} + +@mvbook{aristotle:rhetoric, + author = {Aristotle}, + title = {The Rhetoric of {Aristotle} with a commentary by the late {Edward + Meredith Cope}}, + date = 1877, + editor = {Cope, Edward Meredith}, + commentator = {Cope, Edward Meredith}, + volumes = 3, + publisher = cup, + keywords = {primary}, + langid = {english}, + langidopts = {variant=british}, + sorttitle = {Rhetoric of Aristotle}, + indextitle = {Rhetoric of {Aristotle}, The}, + shorttitle = {Rhetoric}, + annotation = {A commented edition. Note the concatenation of the + \texttt{editor} and \texttt{commentator} fields as well as the + \texttt{volumes}, \texttt{sorttitle}, and \texttt{indextitle} + fields}, +} + +@book{augustine, + author = {Augustine, Robert L.}, + title = {Heterogeneous catalysis for the synthetic chemist}, + date = 1995, + publisher = {Marcel Dekker}, + location = {New York}, + langid = {english}, + langidopts = {variant=american}, + shorttitle = {Heterogeneous catalysis}, + annotation = {A plain \texttt{book} entry}, +} + +@book{averroes/bland, + author = {Averroes}, + title = {The Epistle on the Possibility of Conjunction with the Active + Intellect by {Ibn Rushd} with the Commentary of {Moses Narboni}}, + date = 1982, + editor = {Bland, Kalman P.}, + translator = {Bland, Kalman P.}, + series = {Moreshet: Studies in {Jewish} History, Literature and Thought}, + number = 7, + publisher = {Jewish Theological Seminary of America}, + location = {New York}, + keywords = {primary}, + langid = {english}, + langidopts = {variant=american}, + indextitle = {Epistle on the Possibility of Conjunction, The}, + shorttitle = {Possibility of Conjunction}, + annotation = {A \texttt{book} entry with a \texttt{series} and a + \texttt{number}. Note the concatenation of the \texttt{editor} + and \texttt{translator} fields as well as the + \texttt{indextitle} field}, +} + +@book{averroes/hannes, + author = {Averroes}, + title = {Des Averro{\"e}s Abhandlung: \mkbibquote{{\"U}ber die + M{\"o}glichkeit der Conjunktion} oder \mkbibquote{{\"U}ber den + materiellen Intellekt}}, + date = 1892, + editor = {Hannes, Ludwig}, + translator = {Hannes, Ludwig}, + annotator = {Hannes, Ludwig}, + publisher = {C.~A. Kaemmerer}, + location = {Halle an der Saale}, + keywords = {primary}, + langid = {german}, + sorttitle = {Uber die Moglichkeit der Conjunktion}, + indexsorttitle= {Uber die Moglichkeit der Conjunktion}, + indextitle = {{\"U}ber die M{\"o}glichkeit der Conjunktion}, + shorttitle = {{\"U}ber die M{\"o}glichkeit der Conjunktion}, + annotation = {An annotated edition. Note the concatenation of the + \texttt{editor}, \texttt{translator}, and \texttt{annotator} + fields. Also note the \texttt{shorttitle}, + \texttt{indextitle}, \texttt{sorttitle}, and + \texttt{indexsorttitle} fields}, +} + +@book{averroes/hercz, + author = {Averroes}, + title = {Drei Abhandlungen {\"u}ber die Conjunction des separaten + Intellects mit dem Menschen}, + date = 1869, + editor = {Hercz, J.}, + translator = {Hercz, J.}, + publisher = {S.~Hermann}, + location = {Berlin}, + keywords = {primary}, + langid = {german}, + indexsorttitle= {Drei Abhandlungen uber die Conjunction}, + indextitle = {Drei Abhandlungen {\"u}ber die Conjunction}, + subtitle = {Von Averroes (Vater und Sohn), aus dem Arabischen + {\"u}bersetzt von Samuel Ibn Tibbon}, + shorttitle = {Drei Abhandlungen}, + annotation = {A \texttt{book} entry. Note the concatenation of the + \texttt{editor} and \texttt{translator} fields as well as the + \texttt{indextitle} and \texttt{indexsorttitle} fields}, +} + +@book{cicero, + author = {Cicero, Marcus Tullius}, + title = {De natura deorum. {\"U}ber das Wesen der G{\"o}tter}, + date = 1995, + editor = {Blank-Sangmeister, Ursula}, + translator = {Blank-Sangmeister, Ursula}, + afterword = {Thraede, Klaus}, + language = {langlatin and langgerman}, + publisher = {Reclam}, + location = {Stuttgart}, + langid = {german}, + indextitle = {De natura deorum}, + shorttitle = {De natura deorum}, + annotation = {A bilingual edition of Cicero's \emph{De natura deorum}, with + a German translation. Note the format of the \texttt{language} + field in the database file, the concatenation of the + \texttt{editor} and \texttt{translator} fields, and the + \texttt{afterword} field}, +} + +@book{coleridge, + author = {Coleridge, Samuel Taylor}, + title = {Biographia literaria, or {Biographical} sketches of my literary + life and opinions}, + date = 1983, + editor = {Coburn, Kathleen and Engell, James and Bate, W. Jackson}, + maintitle = {The collected works of {Samuel Taylor Coleridge}}, + volume = 7, + part = 2, + series = {Bollingen Series}, + number = 75, + publisher = {Routledge {and} Kegan Paul}, + location = {London}, + langid = {english}, + langidopts = {variant=british}, + indextitle = {Biographia literaria}, + shorttitle = {Biographia literaria}, + annotation = {One (partial) volume of a multivolume book. This is a + \texttt{book} entry with a \texttt{volume} and a \texttt{part} + field which explicitly refers to the second (physical) part of + the seventh (logical) volume. Also note the \texttt{series} + and \texttt{number} fields}, +} + +@book{companion, + author = {Goossens, Michel and Mittelbach, Frank and Samarin, Alexander}, + title = {The {LaTeX} Companion}, + date = 1994, + edition = 1, + publisher = {Addison-Wesley}, + location = {Reading, Mass.}, + pagetotal = 528, + langid = {english}, + langidopts = {variant=american}, + sorttitle = {LaTeX Companion}, + indextitle = {LaTeX Companion, The}, + shorttitle = {LaTeX Companion}, + annotation = {A book with three authors. Note the formatting of the author + list. By default, only the first name is reversed in the + bibliography}, +} + +@book{cotton, + author = {Cotton, Frank Albert and Wilkinson, Geoffrey and Murillio, + Carlos A. and Bochmann, Manfred}, + title = {Advanced inorganic chemistry}, + date = 1999, + edition = 6, + publisher = {Wiley}, + location = {Chichester}, + langid = {english}, + langidopts = {variant=british}, + annotation = {A \texttt{book} entry with \arabic{author} authors and an + \texttt{edition} field. By default, long \texttt{author} and + \texttt{editor} lists are automatically truncated. This is + configurable}, +} + +@book{gerhardt, + author = {Gerhardt, Michael J.}, + title = {The Federal Appointments Process}, + date = 2000, + publisher = {Duke University Press}, + location = {Durham and London}, + langid = {english}, + langidopts = {variant=american}, + sorttitle = {Federal Appointments Process}, + indextitle = {Federal Appointments Process, The}, + subtitle = {A Constitutional and Historical Analysis}, + shorttitle = {Federal Appointments Process}, + annotation = {This is a \texttt{book} entry. Note the format of the + \texttt{location} field as well as the \texttt{sorttitle} and + \texttt{indextitle} fields}, +} + +@book{gonzalez, + author = {Gonzalez, Ray}, + title = {The Ghost of {John Wayne} and Other Stories}, + date = 2001, + publisher = {The University of Arizona Press}, + location = {Tucson}, + isbn = {0-816-52066-6}, + langid = {english}, + langidopts = {variant=american}, + sorttitle = {Ghost of John Wayne and Other Stories}, + indextitle = {Ghost of {John Wayne} and Other Stories, The}, + shorttitle = {Ghost of {John Wayne}}, + annotation = {A collection of short stories. This is a \texttt{book} entry. + Note the \texttt{sorttitle} and \texttt{indextitle} fields in + the database file. There's also an \texttt{isbn} field}, +} + +@book{hammond, + author = {Hammond, Christopher}, + title = {The basics of crystallography and diffraction}, + date = 1997, + publisher = {International Union of Crystallography and Oxford University + Press}, + location = {Oxford}, + langid = {english}, + langidopts = {variant=british}, + sorttitle = {Basics of crystallography and diffraction}, + indextitle = {Basics of crystallography and diffraction, The}, + shorttitle = {Crystallography and diffraction}, + annotation = {A \texttt{book} entry. Note the \texttt{sorttitle} and + \texttt{indextitle} fields as well as the format of the + \texttt{publisher} field}, +} + +@book{iliad, + author = {Homer}, + title = {Die Ilias}, + date = 2004, + translator = {Schadewaldt, Wolfgang}, + introduction = {Latacz, Joachim}, + edition = 3, + publisher = {Artemis \& Winkler}, + location = {D{\"u}sseldorf and Z{\"u}rich}, + langid = {german}, + sorttitle = {Ilias}, + indextitle = {Ilias, Die}, + shorttitle = {Ilias}, + annotation = {A German translation of the \emph{Iliad}. Note the + \texttt{translator} and \texttt{introduction} fields and the + format of the \texttt{location} field in the database + file. Also note the \texttt{sorttitle} and \texttt{indextitle} + fields}, +} + +@mvbook{knuth:ct, + author = {Knuth, Donald E.}, + title = {Computers \& Typesetting}, + date = {1984/1986}, + volumes = 5, + publisher = {Addison-Wesley}, + location = {Reading, Mass.}, + langid = {english}, + langidopts = {variant=american}, + sorttitle = {Computers & Typesetting}, + indexsorttitle= {Computers & Typesetting}, + annotation = {A five-volume book cited as a whole. This is a \texttt{mvbook} + entry, note the \texttt{volumes} field}, +} + +@book{knuth:ct:a, + author = {Knuth, Donald E.}, + title = {The {\TeX book}}, + date = 1984, + maintitle = {Computers \& Typesetting}, + volume = {A}, + publisher = {Addison-Wesley}, + location = {Reading, Mass.}, + langid = {english}, + langidopts = {variant=american}, + sorttitle = {Computers & Typesetting A}, + indexsorttitle= {The TeXbook}, + indextitle = {\protect\TeX book, The}, + shorttitle = {\TeX book}, + annotation = {The first volume of a five-volume book. Note the + \texttt{sorttitle} field. We want this + volume to be listed after the entry referring to the entire + five-volume set. Also note the \texttt{indextitle} and + \texttt{indexsorttitle} fields. Indexing packages that don't + generate robust index entries require some control sequences + to be protected from expansion}, +} + +@book{knuth:ct:b, + author = {Knuth, Donald E.}, + title = {{\TeX}: The Program}, + date = 1986, + maintitle = {Computers \& Typesetting}, + volume = {B}, + publisher = {Addison-Wesley}, + location = {Reading, Mass.}, + langid = {english}, + langidopts = {variant=american}, + sorttitle = {Computers & Typesetting B}, + indexsorttitle= {TeX: The Program}, + shorttitle = {\TeX}, + annotation = {The second volume of a five-volume book. Note the + \texttt{sorttitle} field. Also note the + \texttt{indexsorttitle} field}, +} + +@book{knuth:ct:c, + author = {Knuth, Donald E.}, + title = {The {METAFONTbook}}, + date = 1986, + maintitle = {Computers \& Typesetting}, + volume = {C}, + publisher = {Addison-Wesley}, + location = {Reading, Mass.}, + langid = {english}, + langidopts = {variant=american}, + sorttitle = {Computers & Typesetting C}, + indextitle = {METAFONTbook, The}, + shorttitle = {METAFONTbook}, + annotation = {The third volume of a five-volume book. Note the + \texttt{sorttitle} field as well as the + \texttt{indextitle} field}, +} + +@book{knuth:ct:d, + author = {Knuth, Donald E.}, + title = {{METAFONT}: The Program}, + date = 1986, + maintitle = {Computers \& Typesetting}, + volume = {D}, + publisher = {Addison-Wesley}, + location = {Reading, Mass.}, + langid = {english}, + langidopts = {variant=american}, + sorttitle = {Computers & Typesetting D}, + shorttitle = {METAFONT}, + annotation = {The fourth volume of a five-volume book. Note the + \texttt{sorttitle} field}, +} + +@book{knuth:ct:e, + author = {Knuth, Donald E.}, + title = {{Computer Modern} Typefaces}, + date = 1986, + maintitle = {Computers \& Typesetting}, + volume = {E}, + publisher = {Addison-Wesley}, + location = {Reading, Mass.}, + langid = {english}, + langidopts = {variant=american}, + sorttitle = {Computers & Typesetting E}, + annotation = {The fifth volume of a five-volume book. Note the + \texttt{sorttitle} field}, +} + +@mvbook{knuth:ct:related, + author = {Knuth, Donald E.}, + title = {Computers \& Typesetting}, + date = {1984/1986}, + volumes = 5, + publisher = {Addison-Wesley}, + location = {Reading, Mass.}, + langid = {english}, + langidopts = {variant=american}, + sorttitle = {Computers & Typesetting}, + indexsorttitle= {Computers & Typesetting}, + related = {knuth:ct:a,knuth:ct:b,knuth:ct:c,knuth:ct:d,knuth:ct:e}, + relatedtype = {multivolume}, + annotation = {A five-volume book cited as a whole and related to its + individual volumes. Note the \texttt{related} and + \texttt{relatedtype} fields}, +} + +@book{kullback, + author = {Kullback, Solomon}, + title = {Information Theory and Statistics}, + year = 1959, + publisher = {John Wiley \& Sons}, + location = {New York}, + langid = {english}, + langidopts = {variant=american}, +} + +@book{kullback:reprint, + author = {Kullback, Solomon}, + title = {Information Theory and Statistics}, + year = 1997, + publisher = {Dover Publications}, + location = {New York}, + origyear = 1959, + origpublisher= {John Wiley \& Sons}, + langid = {english}, + langidopts = {variant=american}, + annotation = {A reprint of the \texttt{kullback} entry. Note the format of + \texttt{origyear} and \texttt{origpublisher}. These fields are + not used by the standard bibliography styles}, +} + +@book{kullback:related, + author = {Kullback, Solomon}, + title = {Information Theory and Statistics}, + year = 1997, + publisher = {Dover Publications}, + location = {New York}, + langid = {english}, + langidopts = {variant=american}, + related = {kullback}, + relatedtype = {origpubin}, + annotation = {A reprint of the \texttt{kullback} entry. Note the format of + the \texttt{related} and \texttt{relatedtype} fields}, +} + +@book{malinowski, + author = {Malinowski, Bronis{\l}aw}, + title = {Argonauts of the {Western Pacific}}, + date = 1972, + edition = 8, + publisher = {Routledge {and} Kegan Paul}, + location = {London}, + langid = {english}, + langidopts = {variant=british}, + subtitle = {An account of native enterprise and adventure in the + Archipelagoes of {Melanesian New Guinea}}, + shorttitle = {Argonauts}, + annotation = {This is a \texttt{book} entry. Note the format of the + \texttt{publisher} and \texttt{edition} fields as well as the + \texttt{subtitle} field}, +} + +@book{maron, + author = {Maron, Monika}, + title = {Animal Triste}, + date = 2000, + translator = {Brigitte Goldstein}, + origlanguage = {german}, + publisher = {University of Nebraska Press}, + location = {Lincoln}, + langid = {english}, + langidopts = {variant=american}, + shorttitle = {Animal Triste}, + annotation = {An English translation of a German novel with a French title. + In other words: a \texttt{book} entry with a + \texttt{translator} field. Note the \texttt{origlanguage} + field which is concatenated with the \texttt{translator}}, +} + +@book{massa, + author = {Werner Massa}, + title = {Crystal structure determination}, + date = 2004, + edition = 2, + publisher = {Spinger}, + location = {Berlin}, + langid = {english}, + langidopts = {variant=british}, + annotation = {A \texttt{book} entry with an \texttt{edition} field}, +} + +@article{moore, + author = {Moore, Gordon E.}, + title = {Cramming more components onto integrated circuits}, + journaltitle = {Electronics}, + year = 1965, + volume = 38, + number = 8, + pages = {114-117}, + langid = {english}, + langidopts = {variant=american}, +} + +@article{moore:related, + author = {Moore, Gordon E.}, + title = {Cramming more components onto integrated circuits}, + journaltitle = {Proceedings of the {IEEE}}, + year = 1998, + volume = 86, + number = 1, + pages = {82-85}, + langid = {english}, + langidopts = {variant=american}, + related = {moore}, + relatedtype = {reprintfrom}, + annotation = {A reprint of Moore's law. Note the \texttt{related} and + \texttt{relatedtype} fields}, +} + +@mvbook{nietzsche:ksa, + author = {Nietzsche, Friedrich}, + title = {S{\"a}mtliche Werke}, + date = 1988, + editor = {Colli, Giorgio and Montinari, Mazzino}, + edition = 2, + volumes = 15, + publisher = dtv # { and Walter de Gruyter}, + location = {M{\"u}nchen and Berlin and New York}, + langid = {german}, + sorttitle = {Werke-00-000}, + indexsorttitle= {Samtliche Werke}, + subtitle = {Kritische Studienausgabe}, + annotation = {The critical edition of Nietzsche's works. This is a + \texttt{mvbook} entry referring to a 15-volume work as a + whole. Note the \texttt{volumes} field and the format of the + \texttt{publisher} and \texttt{location} fields in the + database file. Also note the \texttt{sorttitle} and + field which is used to fine-tune the + sorting order of the bibliography. We want this item listed + first in the bibliography}, +} + +@book{nietzsche:ksa1, + author = {Nietzsche, Friedrich}, + title = {Die Geburt der Trag{\"o}die. Unzeitgem{\"a}{\ss}e + Betrachtungen I--IV. Nachgelassene Schriften 1870--1973}, + date = 1988, + editor = {Colli, Giorgio and Montinari, Mazzino}, + maintitle = {S{\"a}mtliche Werke}, + mainsubtitle = {Kritische Studienausgabe}, + volume = 1, + edition = 2, + publisher = dtv # { and Walter de Gruyter}, + location = {M{\"u}nchen and Berlin and New York}, + langid = {german}, + sorttitle = {Werke-01-000}, + indexsorttitle= {Samtliche Werke I}, + bookauthor = {Nietzsche, Friedrich}, + indextitle = {S{\"a}mtliche Werke I}, + shorttitle = {S{\"a}mtliche Werke I}, + annotation = {A single volume from the critical edition of Nietzsche's + works. This \texttt{book} entry explicitly refers to the first + volume only. Note the \texttt{title} and \texttt{maintitle} + fields. Also note the \texttt{sorttitle} + field. We want this entry to be listed after the entry + referring to the entire edition}, +} + +@book{nussbaum, + author = {Nussbaum, Martha}, + title = {Aristotle's \mkbibquote{De Motu Animalium}}, + date = 1978, + publisher = pup, + location = {Princeton}, + keywords = {secondary}, + langid = {english}, + langidopts = {variant=american}, + sorttitle = {Aristotle's De Motu Animalium}, + indexsorttitle= {Aristotle's De Motu Animalium}, + annotation = {A \texttt{book} entry. Note the \texttt{sorttitle} and + \texttt{indexsorttitle} fields and the markup of the quotes in + the database file}, +} + +@book{piccato, + author = {Piccato, Pablo}, + title = {City of Suspects}, + date = 2001, + publisher = {Duke University Press}, + location = {Durham and London}, + langid = {english}, + langidopts = {variant=american}, + subtitle = {Crime in {Mexico City}, 1900--1931}, + shorttitle = {City of Suspects}, + annotation = {This is a \texttt{book} entry. Note the format of the + \texttt{location} field in the database file}, +} + +@book{vangennep, + author = {van Gennep, Arnold}, + title = {Les rites de passage}, + date = 1909, + publisher = {Nourry}, + location = {Paris}, + options = {useprefix}, + langid = {french}, + sorttitle = {Rites de passage}, + indextitle = {Rites de passage, Les}, + shorttitle = {Rites de passage}, + annotation = {A \texttt{book} entry. Note the format of the printed name and + compare the \texttt{useprefix} option in the \texttt{options} + field as well as \texttt{brandt} and \texttt{geer}}, +} + +@book{vangennep:trans, + author = {van Gennep, Arnold}, + title = {The Rites of Passage}, + year = 1960, + translator = {Vizedom, Monika B. and Caffee, Gabrielle L.}, + language = {english}, + origlanguage = {french}, + publisher = {University of Chicago Press}, + options = {useprefix}, + indextitle = {Rites of Passage, The}, + sorttitle = {Rites of Passage}, + shorttitle = {Rites of Passage}, + langid = {english}, + langidopts = {variant=american}, + annotation = {A translation of the \texttt{vangennep} entry. Note the + \texttt{translator} and \texttt{origlanguage} fields. Compare + with the \texttt{vangennep:related} entry.}, +} + +@book{vangennep:related, + author = {van Gennep, Arnold}, + title = {Les rites de passage}, + date = 1909, + publisher = {Nourry}, + location = {Paris}, + options = {useprefix}, + langid = {french}, + related = {vizedom:related}, + relatedtype = {bytranslator}, + sorttitle = {Rites de passage}, + indextitle = {Rites de passage, Les}, + shorttitle = {Rites de passage}, + annotation = {A variant of the \texttt{vangennep} entry related to its + translation. Note the format of the \texttt{related} and + \texttt{relatedtype} fields}, +} + +@book{vizedom:related, + title = {The Rites of Passage}, + year = 1960, + translator = {Vizedom, Monika B. and Caffee, Gabrielle L.}, + language = {english}, + publisher = {University of Chicago Press}, + langid = {english}, + langidopts = {variant=american}, + options = {usetranslator}, + related = {vangennep}, + relatedtype = {translationof}, + indextitle = {Rites of Passage, The}, + sorttitle = {Rites of Passage}, + shorttitle = {Rites of Passage}, + annotation = {A translated work from \texttt{vangennep}. Note the format of + the \texttt{related} and \texttt{relatedtype} fields}, +} + +@mvbook{vazques-de-parga, + author = {V{\'a}zques{ de }Parga, Luis and Lacarra, Jos{\'e} Mar{\'i}a + and Ur{\'i}a R{\'i}u, Juan}, + title = {Las Peregrinaciones a Santiago de Compostela}, + date = 1993, + volumes = 3, + note = {Ed. facs. de la realizada en 1948--49}, + publisher = {Iberdrola}, + location = {Pamplona}, + langid = {spanish}, + sorttitle = {Peregrinaciones a Santiago de Compostela}, + indextitle = {Peregrinaciones a Santiago de Compostela, Las}, + shorttitle = {Peregrinaciones}, + annotation = {A multivolume book cited as a whole. This is a \texttt{mvbook} + entry with \texttt{volumes}, \texttt{note}, + \texttt{sorttitle}, and \texttt{indextitle} fields}, +} + +@book{wilde, + author = {Wilde, Oscar}, + title = {The Importance of Being Earnest: A Trivial Comedy for Serious + People}, + year = 1899, + series = {English and {American} drama of the Nineteenth Century}, + publisher = {Leonard Smithers {and} Company}, + eprint = {4HIWAAAAYAAJ}, + eprinttype = {googlebooks}, + annotation = {A \texttt{book} with \texttt{eprint} and \texttt{eprinttype} + fields.}, +} + +@book{worman, + author = {Worman, Nancy}, + title = {The Cast of Character}, + date = 2002, + publisher = {University of Texas Press}, + location = {Austin}, + langid = {english}, + langidopts = {variant=american}, + sorttitle = {Cast of Character}, + indextitle = {Cast of Character, The}, + subtitle = {Style in {Greek} Literature}, + shorttitle = {Cast of Character}, + annotation = {A \texttt{book} entry. Note the \texttt{sorttitle} and + \texttt{indextitle} fields}, +} + +@mvcollection{britannica, + editor = {Preece, Warren E.}, + title = {The {New Encyclop{\ae}dia Britannica}}, + date = 2003, + edition = 15, + volumes = 32, + publisher = {Encyclop{\ae}dia Britannica}, + location = {Chicago, Ill.}, + options = {useeditor=false}, + label = {EB}, + langid = {english}, + langidopts = {variant=british}, + sorttitle = {Encyclop{\ae}dia Britannica}, + indextitle = {{Encyclop{\ae}dia Britannica}, The {New}}, + shorttitle = {{Encyclop{\ae}dia Britannica}}, + annotation = {This is a \texttt{mvcollection} entry for an encyclopedia. Note + the \texttt{useeditor} option in the \texttt{options} field as + well as the \texttt{sorttitle} field. We want this entry to be + cited and alphabetized by title even though there is an + editor. In addition to that, we want the title to be + alphabetized under \enquote*{E} rather than \enquote*{T}. Also + note the \texttt{label} field which is provided for + author-year citation styles}, +} + +@collection{gaonkar, + editor = {Gaonkar, Dilip Parameshwar}, + title = {Alternative Modernities}, + date = 2001, + publisher = {Duke University Press}, + location = {Durham and London}, + isbn = {0-822-32714-7}, + langid = {english}, + langidopts = {variant=american}, + annotation = {This is a \texttt{collection} entry. Note the format of the + \texttt{location} field in the database file as well as the + \texttt{isbn} field}, +} + +@incollection{gaonkar:in, + author = {Gaonkar, Dilip Parameshwar}, + editor = {Gaonkar, Dilip Parameshwar}, + title = {On Alternative Modernities}, + date = 2001, + booktitle = {Alternative Modernities}, + publisher = {Duke University Press}, + location = {Durham and London}, + isbn = {0-822-32714-7}, + pages = {1-23}, +} + +@mvcollection{jaffe, + editor = {Jaff{\'e}, Philipp}, + title = {Regesta Pontificum Romanorum ab condita ecclesia ad annum post + Christum natum \textsc{mcxcviii}}, + date = {1885/1888}, + editora = {Loewenfeld, Samuel and Kaltenbrunner, Ferdinand and Ewald, + Paul}, + edition = 2, + volumes = 2, + location = {Leipzig}, + langid = {latin}, + editoratype = {redactor}, + indextitle = {Regesta Pontificum Romanorum}, + shorttitle = {Regesta Pontificum Romanorum}, + annotation = {A \texttt{mvcollection} entry with \texttt{edition} and + \texttt{volumes} fields. Note the \texttt{editora} and + \texttt{editoratype} fields}, +} + +% booktitle and booksubtitle are only needed for BibTeX's less sophisticated +% inheritance set-up to make sure westfahl:space shows correctly. +% With Biber they are not needed. +@collection{westfahl:frontier, + editor = {Westfahl, Gary}, + title = {Space and Beyond}, + date = 2000, + subtitle = {The Frontier Theme in Science Fiction}, + publisher = {Greenwood}, + location = {Westport, Conn. and London}, + langid = {english}, + langidopts = {variant=american}, + booktitle = {Space and Beyond}, + booksubtitle = {The Frontier Theme in Science Fiction}, + annotation = {This is a \texttt{collection} entry. Note the format of the + \texttt{location} field as well as the \texttt{subtitle} + field}, +} + +@inbook{kant:kpv, + title = {Kritik der praktischen Vernunft}, + date = 1968, + author = {Kant, Immanuel}, + booktitle = {Kritik der praktischen Vernunft. Kritik der Urtheilskraft}, + bookauthor = {Kant, Immanuel}, + maintitle = {Kants Werke. Akademie Textausgabe}, + volume = 5, + publisher = {Walter de Gruyter}, + location = {Berlin}, + pages = {1-163}, + shorthand = {KpV}, + langid = {german}, + shorttitle = {Kritik der praktischen Vernunft}, + annotation = {An edition of Kant's \emph{Collected Works}, volume five. This + is an \texttt{inbook} entry which explicitly refers to the + \emph{Critique of Practical Reason} only, not to the entire + fifth volume. Note the \texttt{author} and \texttt{bookauthor} + fields in the database file. By default, the + \texttt{bookauthor} is omitted if the values of the + \texttt{author} and \texttt{bookauthor} fields are identical}, +} + +@inbook{kant:ku, + title = {Kritik der Urtheilskraft}, + date = 1968, + author = {Kant, Immanuel}, + booktitle = {Kritik der praktischen Vernunft. Kritik der Urtheilskraft}, + bookauthor = {Kant, Immanuel}, + maintitle = {Kants Werke. Akademie Textausgabe}, + volume = 5, + publisher = {Walter de Gruyter}, + location = {Berlin}, + pages = {165-485}, + shorthand = {KU}, + langid = {german}, + annotation = {An edition of Kant's \emph{Collected Works}, volume five. This + is an \texttt{inbook} entry which explicitly refers to the + \emph{Critique of Judgment} only, not to the entire fifth + volume}, +} + +@inbook{nietzsche:historie, + title = {Unzeitgem{\"a}sse Betrachtungen. Zweites St{\"u}ck}, + date = 1988, + author = {Nietzsche, Friedrich}, + booktitle = {Die Geburt der Trag{\"o}die. Unzeitgem{\"a}{\ss}e + Betrachtungen I--IV. Nachgelassene Schriften 1870--1973}, + bookauthor = {Nietzsche, Friedrich}, + editor = {Colli, Giorgio and Montinari, Mazzino}, + subtitle = {Vom Nutzen und Nachtheil der Historie f{\"u}r das Leben}, + maintitle = {S{\"a}mtliche Werke}, + mainsubtitle = {Kritische Studienausgabe}, + volume = 1, + publisher = dtv # { and Walter de Gruyter}, + location = {M{\"u}nchen and Berlin and New York}, + pages = {243-334}, + langid = {german}, + sorttitle = {Werke-01-243}, + indexsorttitle= {Vom Nutzen und Nachtheil der Historie fur das Leben}, + indextitle = {Vom Nutzen und Nachtheil der Historie f{\"u}r das Leben}, + shorttitle = {Vom Nutzen und Nachtheil der Historie}, + annotation = {A single essay from the critical edition of Nietzsche's works. + This \texttt{inbook} entry explicitly refers to an essay found + in the first volume. Note the \texttt{title}, + \texttt{booktitle}, and \texttt{maintitle} fields. Also note + the \texttt{sorttitle} field. We want + this entry to be listed after the entry referring to the + entire first volume}, +} + +@incollection{brandt, + author = {von Brandt, Ahasver and Erich Hoffmann}, + editor = {Ferdinand Seibt}, + title = {Die nordischen L{\"a}nder von der Mitte des 11.~Jahrhunderts + bis 1448}, + date = 1987, + booktitle = {Europa im Hoch- und Sp{\"a}tmittelalter}, + series = {Handbuch der europ{\"a}ischen Geschichte}, + number = 2, + publisher = {Klett-Cotta}, + location = {Stuttgart}, + pages = {884-917}, + options = {useprefix=false}, + langid = {german}, + indexsorttitle= {Nordischen Lander von der Mitte des 11. Jahrhunderts bis + 1448}, + indextitle = {Nordischen L{\"a}nder von der Mitte des 11.~Jahrhunderts bis + 1448, Die}, + shorttitle = {Die nordischen L{\"a}nder}, + annotation = {An \texttt{incollection} entry with a \texttt{series} and a + \texttt{number}. Note the format of the printed name and + compare the \texttt{useprefix} option in the \texttt{options} + field as well as \texttt{vangennep}. Also note the + \texttt{indextitle, and \texttt{indexsorttitle} fields}}, +} + +@incollection{hyman, + author = {Arthur Hyman}, + editor = {O'Meara, Dominic J.}, + title = {Aristotle's Theory of the Intellect and its Interpretation by + {Averroes}}, + date = 1981, + booktitle = {Studies in {Aristotle}}, + series = {Studies in Philosophy and the History of Philosophy}, + number = 9, + publisher = {The Catholic University of America Press}, + location = {Washington, D.C.}, + pages = {161-191}, + keywords = {secondary}, + langid = {english}, + langidopts = {variant=american}, + indextitle = {Aristotle's Theory of the Intellect}, + shorttitle = {Aristotle's Theory of the Intellect}, + annotation = {An \texttt{incollection} entry with a \texttt{series} and + \texttt{number} field}, +} + +@incollection{pines, + author = {Pines, Shlomo}, + editor = {Twersky, Isadore}, + title = {The Limitations of Human Knowledge According to {Al-Farabi}, {ibn + Bajja}, and {Maimonides}}, + date = 1979, + booktitle = {Studies in Medieval {Jewish} History and Literature}, + publisher = hup, + location = {Cambridge, Mass.}, + pages = {82-109}, + keywords = {secondary}, + langid = {english}, + langidopts = {variant=american}, + indextitle = {Limitations of Human Knowledge According to {Al-Farabi}, {ibn + Bajja}, and {Maimonides}, The}, + shorttitle = {Limitations of Human Knowledge}, + annotation = {A typical \texttt{incollection} entry. Note the + \texttt{indextitle} field}, +} + +@inproceedings{moraux, + author = {Moraux, Paul}, + editor = {Lloyd, G. E. R. and Owen, G. E. L.}, + title = {Le \emph{De Anima} dans la tradition gr{\`e}cque}, + date = 1979, + booktitle = {Aristotle on Mind and the Senses}, + subtitle = {Quelques aspects de l'interpretation du trait{\'e}, de + Theophraste {\`a} Themistius}, + booktitleaddon= {Proceedings of the Seventh Symposium Aristotelicum}, + eventdate = 1975, + publisher = cup, + location = {Cambridge}, + pages = {281-324}, + keywords = {secondary}, + langid = {french}, + indexsorttitle= {De Anima dans la tradition grecque}, + indextitle = {\emph{De Anima} dans la tradition gr{\`e}cque, Le}, + shorttitle = {\emph{De Anima} dans la tradition gr{\`e}cque}, + annotation = {This is a typical \texttt{inproceedings} entry. Note the + \texttt{booksubtitle}, \texttt{shorttitle}, + \texttt{indextitle}, and \texttt{indexsorttitle} fields. Also + note the \texttt{eventdate} field.}, +} + +@inproceedings{salam, + author = {Salam, Abdus}, + editor = {Svartholm, Nils}, + title = {Weak and Electromagnetic Interactions}, + date = 1968, + booktitle = {Elementary particle theory}, + booksubtitle = {Relativistic groups and analyticity}, + booktitleaddon= {Proceedings of the {Eighth Nobel Symposium}}, + eventdate = {1968-05-19/1968-05-25}, + venue = {Aspen{\"a}sgarden, Lerum}, + publisher = {Almquist \& Wiksell}, + location = {Stockholm}, + pages = {367-377}, +} + +@manual{cms, + title = {The {Chicago} Manual of Style}, + date = 2003, + subtitle = {The Essential Guide for Writers, Editors, and Publishers}, + edition = 15, + publisher = {University of Chicago Press}, + location = {Chicago, Ill.}, + isbn = {0-226-10403-6}, + label = {CMS}, + langid = {english}, + langidopts = {variant=american}, + sorttitle = {Chicago Manual of Style}, + indextitle = {Chicago Manual of Style, The}, + shorttitle = {Chicago Manual of Style}, + annotation = {This is a \texttt{manual} entry without an \texttt{author} or + \texttt{editor}. Note the \texttt{label} field in the database + file which is provided for author-year citation styles. Also + note the \texttt{sorttitle} and \texttt{indextitle} fields. By + default, all entries without an \texttt{author} or + \texttt{editor} are alphabetized by \texttt{title} but we want + this entry to be alphabetized under \enquote*{C} rather than + \enquote*{T}. There's also an \texttt{isbn} field}, +} + +@online{baez/online, + author = {Baez, John C. and Lauda, Aaron D.}, + title = {Higher-Dimensional Algebra {V}: 2-Groups}, + date = {2004-10-27}, + version = 3, + langid = {english}, + langidopts = {variant=american}, + eprinttype = {arxiv}, + eprint = {math/0307200v3}, + annotation = {An \texttt{online} reference from arXiv. Note the + \texttt{eprint} and \texttt{eprinttype} fields. Compare + \texttt{baez\slash article} which is the same item given as an + \texttt{article} entry with eprint information}, +} + +@online{ctan, + title = {CTAN}, + date = 2006, + url = {http://www.ctan.org}, + subtitle = {The {Comprehensive TeX Archive Network}}, + urldate = {2006-10-01}, + label = {CTAN}, + langid = {english}, + langidopts = {variant=american}, + annotation = {This is an \texttt{online} entry. The \textsc{url}, which is + given in the \texttt{url} field, is transformed into a + clickable link if \texttt{hyperref} support has been + enabled. Note the format of the \texttt{urldate} field + (\texttt{yyyy-mm-dd}) in the database file. Also note the + \texttt{label} field which may be used as a fallback by + citation styles which need an \texttt{author} and\slash or a + \texttt{year}}, +} + +@online{itzhaki, + author = {Itzhaki, Nissan}, + title = {Some remarks on {'t Hooft's} {S}-matrix for black holes}, + date = {1996-03-11}, + version = 1, + langid = {english}, + langidopts = {variant=american}, + eprinttype = {arxiv}, + eprint = {hep-th/9603067}, + annotation = {An \texttt{online} reference from arXiv. Note the + \texttt{eprint} and \texttt{eprinttype} fields. Also note that + the arXiv reference is transformed into a clickable link if + \texttt{hyperref} support has been enabled}, + abstract = {We discuss the limitations of 't Hooft's proposal for the + black hole S-matrix. We find that the validity of the S-matrix + implies violation of the semi-classical approximation at + scales large compared to the Planck scale. We also show that + the effect of the centrifugal barrier on the S-matrix is + crucial even for large transverse distances.}, +} + +@online{markey, + author = {Markey, Nicolas}, + title = {Tame the {BeaST}}, + date = {2005-10-16}, + url = {http://mirror.ctan.org/info/bibtex/tamethebeast/ttb_en.pdf}, + subtitle = {The {B} to {X} of {BibTeX}}, + version = {1.3}, + urldate = {2006-10-01}, + langid = {english}, + langidopts = {variant=american}, + sorttitle = {Tame the Beast}, + annotation = {An \texttt{online} entry for a tutorial. Note the format of + the \texttt{date} field (\texttt{yyyy-mm-dd}) in the database + file.}, +} + +@online{wassenberg, + author = {Wassenberg, Jan and Sanders, Peter}, + title = {Faster Radix Sort via Virtual Memory and Write-Combining}, + date = {2010-08-17}, + version = 1, + langid = {english}, + langidopts = {variant=american}, + eprinttype = {arxiv}, + eprintclass = {cs.DS}, + eprint = {1008.2849v1}, + annotation = {A recent \texttt{online} reference from arXiv using the new + (April 2007 onward) identifier format. Note the + \texttt{eprint}, \texttt{eprinttype}, and \texttt{eprintclass} + fields. Also note that the arXiv reference is transformed into + a clickable link if \texttt{hyperref} support has been + enabled}, + abstract = {Sorting algorithms are the deciding factor for the performance + of common operations such as removal of duplicates or database + sort-merge joins. This work focuses on 32-bit integer keys, + optionally paired with a 32-bit value. We present a fast radix + sorting algorithm that builds upon a microarchitecture-aware + variant of counting sort}, +} + +@patent{almendro, + author = {Almendro, Jos{\'e} L. and Mart{\'i}n, Jacinto and S{\'a}nchez, + Alberto and Nozal, Fernando}, + title = {Elektromagnetisches Signalhorn}, + number = {EU-29702195U}, + date = 1998, + location = {countryfr and countryuk and countryde}, + langid = {german}, + annotation = {This is a \texttt{patent} entry with a \texttt{location} + field. The number is given in the \texttt{number} field. Note + the format of the \texttt{location} field in the database + file. Compare \texttt{laufenberg}, \texttt{sorace}, and + \texttt{kowalik}}, +} + +@patent{kowalik, + author = {Kowalik, F. and Isard, M.}, + title = {Estimateur d'un d{\'e}faut de fonctionnement d'un modulateur + en quadrature et {\'e}tage de modulation l'utilisant}, + number = 9500261, + date = {1995-01-11}, + type = {patreqfr}, + langid = {french}, + indextitle = {Estimateur d'un d{\'e}faut de fonctionnement}, + annotation = {This is a \texttt{patent} entry for a French patent request + with a full date. The number is given in the \texttt{number} + field. Note the format of the \texttt{type} and \texttt{date} + fields in the database file. Compare \texttt{almendro}, + \texttt{laufenberg}, and \texttt{sorace}}, +} + +@patent{laufenberg, + author = {Laufenberg, Xaver and Eynius, Dominique and Suelzle, Helmut + and Usbeck, Stephan and Spaeth, Matthias and Neuser-Hoffmann, + Miriam and Myrzik, Christian and Schmid, Manfred and Nietfeld, + Franz and Thiel, Alexander and Braun, Harald and Ebner, + Norbert}, + title = {Elektrische Einrichtung und Betriebsverfahren}, + number = 1700367, + date = {2006-09-13}, + holder = {{Robert Bosch GmbH} and {Daimler Chrysler AG} and {Bayerische + Motoren Werke AG}}, + type = {patenteu}, + langid = {german}, + annotation = {This is a \texttt{patent} entry with a \texttt{holder} field. + Note the format of the \texttt{type} and \texttt{location} + fields in the database file. Compare \texttt{almendro}, + \texttt{sorace}, and \texttt{kowalik}}, + abstract = {The invention relates to an electric device comprising a + generator, in particular for use in the vehicle electric + system of a motor vehicle and a controller for controlling the + generator voltage. The device is equipped with a control zone, + in which the voltage is controlled and zones, in which the + torque is controlled. The invention also relates to methods + for operating a device of this type.}, + file = {http://v3.espacenet.com/textdoc?IDX=EP1700367}, +} + +@patent{sorace, + author = {Sorace, Ronald E. and Reinhardt, Victor S. and Vaughn, Steven + A.}, + title = {High-Speed Digital-to-{RF} Converter}, + number = 5668842, + date = {1997-09-16}, + holder = {{Hughes Aircraft Company}}, + type = {patentus}, + langid = {english}, + langidopts = {variant=american}, + annotation = {This is a \texttt{patent} entry with a \texttt{holder} field. + Note the format of the \texttt{type} and \texttt{date} fields + in the database file. Compare \texttt{almendro}, + \texttt{laufenberg}, and \texttt{kowalik}}, +} + +@periodical{jcg, + title = {Computers and Graphics}, + year = 2011, + issuetitle = {Semantic {3D} Media and Content}, + volume = 35, + number = 4, + issn = {0097-8493}, + annotation = {This is a \texttt{periodical} entry with an \texttt{issn} + field.}, +} + +@report{chiu, + author = {Chiu, Willy W. and Chow, We Min}, + title = {A Hybrid Hierarchical Model of a {Multiple Virtual Storage} + ({MVS}) Operating System}, + type = {resreport}, + institution = {IBM}, + date = 1978, + number = {RC-6947}, + langid = {english}, + langidopts = {variant=american}, + sorttitle = {Hybrid Hierarchical Model of a Multiple Virtual Storage (MVS) + Operating System}, + indextitle = {Hybrid Hierarchical Model, A}, + annotation = {This is a \texttt{report} entry for a research report. Note + the format of the \texttt{type} field in the database file + which uses a localization key. The number of the report is + given in the \texttt{number} field. Also note the + \texttt{sorttitle} and \texttt{indextitle} fields}, +} + +@report{padhye, + author = {Padhye, Jitendra and Firoiu, Victor and Towsley, Don}, + title = {A Stochastic Model of {TCP Reno} Congestion Avoidance and + Control}, + type = {techreport}, + institution = {University of Massachusetts}, + date = 1999, + number = {99-02}, + location = {Amherst, Mass.}, + langid = {english}, + langidopts = {variant=american}, + sorttitle = {A Stochastic Model of TCP Reno Congestion Avoidance and + Control}, + indextitle = {Stochastic Model of {TCP Reno} Congestion Avoidance and Control, + A}, + annotation = {This is a \texttt{report} entry for a technical report. Note + the format of the \texttt{type} field in the database file + which uses a localization key. The number of the report is + given in the \texttt{number} field. Also note the + \texttt{sorttitle} and \texttt{indextitle} fields}, + abstract = {The steady state performance of a bulk transfer TCP flow + (i.e. a flow with a large amount of data to send, such as FTP + transfers) may be characterized by three quantities. The first + is the send rate, which is the amount of data sent by the + sender in unit time. The second is the throughput, which is + the amount of data received by the receiver in unit time. Note + that the throughput will always be less than or equal to the + send rate due to losses. Finally, the number of non-duplicate + packets received by the receiver in unit time gives us the + goodput of the connection. The goodput is always less than or + equal to the throughput, since the receiver may receive two + copies of the same packet due to retransmissions by the + sender. In a previous paper, we presented a simple model for + predicting the steady state send rate of a bulk transfer TCP + flow as a function of loss rate and round trip time. In this + paper, we extend that work in two ways. First, we analyze the + performance of bulk transfer TCP flows using more precise, + stochastic analysis. Second, we build upon the previous + analysis to provide both an approximate formula as well as a + more accurate stochastic model for the steady state throughput + of a bulk transfer TCP flow.}, + file = {ftp://gaia.cs.umass.edu/pub/Padhey99-markov.ps}, +} + +@thesis{geer, + author = {de Geer, Ingrid}, + title = {Earl, Saint, Bishop, Skald~-- and Music}, + type = {phdthesis}, + institution = {Uppsala Universitet}, + date = 1985, + subtitle = {The {Orkney Earldom} of the Twelfth Century. {A} Musicological + Study}, + location = {Uppsala}, + options = {useprefix=false}, + langid = {english}, + langidopts = {variant=british}, + annotation = {This is a typical \texttt{thesis} entry for a PhD thesis. Note + the \texttt{type} field in the database file which uses a + localization key. Also note the format of the printed name and + compare the \texttt{useprefix} option in the \texttt{options} + field as well as \texttt{vangennep}}, +} + +@thesis{loh, + author = {Loh, Nin C.}, + title = {High-Resolution Micromachined Interferometric Accelerometer}, + type = {mathesis}, + institution = {Massachusetts Institute of Technology}, + date = 1992, + location = {Cambridge, Mass.}, + langid = {english}, + langidopts = {variant=american}, + annotation = {This is a typical \texttt{thesis} entry for an MA thesis. Note + the \texttt{type} field in the database file which uses a + localization key}, +} diff --git a/macros/latex/contrib/biblatex-ms/bibtex/bst/biblatex-ms.bst b/macros/latex/contrib/biblatex-ms/bibtex/bst/biblatex-ms.bst new file mode 100644 index 0000000000..3390dace61 --- /dev/null +++ b/macros/latex/contrib/biblatex-ms/bibtex/bst/biblatex-ms.bst @@ -0,0 +1,2831 @@ +% Copyright (c) 2006-2011 Philipp Lehman. +% 2012-2018 Philip Kime, Audrey Boruvka, Joseph Wright +% +% Permission is granted to copy, distribute and/or modify this +% software under the terms of the LaTeX Project Public License +% (LPPL), version 1.3c. +% +% This software is provided 'as is', without warranty of any kind, +% either expressed or implied, including, but not limited to, the +% implied warranties of merchantability and fitness for a +% particular purpose. + +% ------------------------------------------------------------------- +% Initialization +% ------------------------------------------------------------------- + +ENTRY { + % special fields + fakeset + entryset + entrysubtype + execute + hyphenation + keywords + label + langid + langidopts + options + presort + shorthand + sortkey + sortname + sorttitle + sortyear + xref + % data fields + abstract + addendum + address + afterword + annotation + annote + annotator + author + authortype + bookauthor + booksubtitle + booktitle + booktitleaddon + chapter + commentator + date + doi + edition + editor + editora + editorb + editorc + editortype + editoratype + editorbtype + editorctype + eid + eprint + eprintclass + eprinttype + eventdate + eventtitle + eventtitleaddon + file + foreword + gender + howpublished + indexsorttitle + indextitle + institution + introduction + isan + isbn + ismn + isrn + issn + issue + issuetitle + issuesubtitle + iswc + journal + journaltitle + journalsubtitle + language + library + location + bookpagination + mainsubtitle + maintitle + maintitleaddon + month + nameaddon + note + number + organization + origlanguage + origlocation + origpublisher + origtitle + origdate + pages + pagetotal + pagination + part + pdf + pubstate + reprinttitle + holder + publisher + school + series + shortauthor + shorteditor + shorthandintro + shortjournal + shortseries + shorttitle + subtitle + title + titleaddon + translator + type + url + urldate + venue + version + volume + volumes + year + % aliases + archiveprefix + primaryclass + % custom fields + namea + nameb + namec + nameatype + namebtype + namectype + lista + listb + listc + listd + liste + listf + usera + userb + userc + userd + usere + userf + verba + verbb + verbc + } + { skipbib skiplos skiplab + useauthor useeditor usetranslator useprefix + singletitle } + { entryoptions labelhash namehash fullhash + dateyear dateendyear extradate labelalpha extraalpha label.name label.year + sortinit sortkey.nosort sortkey.name sortkey.year + sortkey.title sortkey.alpha sort.year sort.alph + warningmsg } + +INTEGERS { ctrl.debug ctrl.bibtex8 ctrl.maxline ctrl.sorting ctrl.cssort + ctrl.maxcitenames ctrl.mincitenames + ctrl.maxsortnames ctrl.minsortnames + ctrl.nohashothers ctrl.nosortothers + ctrl.maxalphanames ctrl.minalphanames + ctrl.useauthor ctrl.useeditor ctrl.usetranslator + ctrl.useprefix ctrl.labelalpha ctrl.singletitle + ctrl.labeldate citecount + tempctra tempctrb tempctrc resvctra resvctrb resvctrc + last.extra.num } + +STRINGS { ctrl.alphaothers ctrl.sortalphaothers ctrl.sortstr + templist tempstrga tempstrgb resvstrga resvstrgb resvstrgc + last.name last.hash last.year last.extra } + +FUNCTION {initialize} { + "$Revision: 4.0 $" + #12 entry.max$ substring$ + #-3 entry.max$ substring$ + "Biblatex version: " swap$ * top$ + #0 'ctrl.debug := + #0 'ctrl.labelalpha := + #0 'ctrl.labeldate := + #0 'ctrl.singletitle := + #0 'ctrl.sorting := + #1 'ctrl.useauthor := + #1 'ctrl.useeditor := + #0 'ctrl.usetranslator := + #0 'ctrl.useprefix := + #99 'ctrl.maxcitenames := + #1 'ctrl.mincitenames := + #99 'ctrl.maxsortnames := + #1 'ctrl.minsortnames := + #0 'ctrl.nohashothers := + #0 'ctrl.nosortothers := + #1 'ctrl.minalphanames := + #3 'ctrl.maxalphanames := + #79 'ctrl.maxline := + "+" 'ctrl.alphaothers := + " " 'ctrl.sortalphaothers := + "nty" 'ctrl.sortstr := +} + +% ------------------------------------------------------------------- +% Strings +% ------------------------------------------------------------------- + +MACRO {jan} { "01" } +MACRO {feb} { "02" } +MACRO {mar} { "03" } +MACRO {apr} { "04" } +MACRO {may} { "05" } +MACRO {jun} { "06" } +MACRO {jul} { "07" } +MACRO {aug} { "08" } +MACRO {sep} { "09" } +MACRO {oct} { "10" } +MACRO {nov} { "11" } +MACRO {dec} { "12" } + +% ------------------------------------------------------------------- +% Generic functions +% ------------------------------------------------------------------- + +FUNCTION {and} { + 'skip$ + { pop$ #0 } + if$ +} + +FUNCTION {or} { + { pop$ #1 } + 'skip$ + if$ +} + +FUNCTION {not} { + { #0 } + { #1 } + if$ +} + +FUNCTION {ctrl:control} { + type$ "control" = +} + +FUNCTION {ctrl:set} { + type$ "set" = +} + + +FUNCTION {ctrl:skiplab} { + ctrl:control skiplab or + ctrl:set % fakeset empty$ and + or +} + +FUNCTION {ctrl:labelalpha} { + ctrl.labelalpha + ctrl:skiplab not + and +} + +FUNCTION {ctrl:labeldate} { + ctrl.labeldate + ctrl:skiplab not + and +} + +FUNCTION {wrap:braces} { + duplicate$ empty$ + { pop$ "{}" } + { "{" swap$ * "}" * } + if$ +} + +FUNCTION {combine:key:value} { + "=" * + swap$ + wrap:braces * + "," * +} + +FUNCTION {delimiter.1} { + ctrl.bibtex8 + { "0" } + { " " } + if$ +} + +FUNCTION {delimiter.2} { + ctrl.bibtex8 + { "1" } + { " " } + if$ +} + +FUNCTION {delimiter.3} { + ctrl.bibtex8 + { "2" } + { " " } + if$ +} + +FUNCTION {open.ended} { + "9999" +} + +FUNCTION {maxline} { + duplicate$ empty$ + 'skip$ + { #1 ctrl.maxline substring$ } + if$ +} + +FUNCTION {truncate} { + duplicate$ empty$ + { pop$ "" } + { #1 entry.max$ substring$ } + if$ +} + +FUNCTION {purify} { + duplicate$ empty$ + { pop$ "" } + { purify$ + ctrl.bibtex8 + ctrl.cssort + and + 'skip$ + { "l" change.case$ } + if$ + truncate + } + if$ +} + +FUNCTION {normalize} { + duplicate$ empty$ + { pop$ "" } + { ctrl.bibtex8 + ctrl.cssort + and + 'skip$ + { "l" change.case$ } + if$ + truncate + } + if$ +} + +FUNCTION {enquote} { + "'" swap$ * "'" * +} + +FUNCTION {str:length} { + #1 'resvctra := + { duplicate$ duplicate$ #1 resvctra substring$ = not } + { resvctra #1 + 'resvctra := } + while$ + pop$ + resvctra +} + +FUNCTION {str:replace} { + 'resvstrga := + 'resvstrgb := + 'resvstrgc := + resvstrgb str:length 'resvctra := + "" + { resvstrgc empty$ not } + { resvstrgc #1 resvctra substring$ resvstrgb = + { resvstrga * + resvstrgc #1 resvctra + global.max$ substring$ 'resvstrgc := + } + { resvstrgc #1 #1 substring$ * + resvstrgc #2 global.max$ substring$ 'resvstrgc := + } + if$ + } + while$ +} + +FUNCTION {bol.to.int} { + "true" = + { #1 } + { #0 } + if$ +} + +FUNCTION {str.to.int} { + 'resvstrga := + resvstrga text.length$ 'resvctra := + #1 'resvctrb := + #0 + { resvctrb resvctra > not } + { 'resvctrc := + resvstrga resvctrb #1 substring$ + chr.to.int$ "0" chr.to.int$ - + #0 + { resvctrc #0 > } + { resvctrc #1 - 'resvctrc := + #10 + + } + while$ + + + resvctrb #1 + 'resvctrb := + } + while$ +} + +FUNCTION {andothers} { + duplicate$ num.names$ "{ff}{vv}{ll}{jj}" format.name$ "others" = +} + +FUNCTION {push} { + duplicate$ empty$ + { pop$ "" } + { truncate } + if$ +} + +FUNCTION {push:cite} { + cite$ empty$ + { "Missing citation key" warning$ "" } + { cite$ } + if$ +} + +FUNCTION {push:presort} { + presort empty$ + { "mm" } + { presort purify + #1 #2 substring$ + "l" change.case$ } + if$ +} + +FUNCTION {push:fullname} { + author empty$ not + useauthor + and + { author } + { editor empty$ not + useeditor + and + { editor } + { translator empty$ not + usetranslator + and + { translator } + { "" } + if$ + } + if$ + } + if$ +} + +FUNCTION {push:labelname:translator} { + translator empty$ not + usetranslator + and + { "translator" } + { "" } + if$ +} + +FUNCTION {push:labelname:editor} { + useeditor + { shorteditor empty$ + { editor empty$ + { push:labelname:translator } + { "editor" } + if$ + } + { "shorteditor" } + if$ + } + { push:labelname:translator } + if$ +} + +FUNCTION {push:shortname:translator} { + translator empty$ not + usetranslator + and + { translator } + { "" } + if$ +} + +FUNCTION {push:shortname:editor} { + useeditor + { shorteditor empty$ + { editor empty$ + { push:shortname:translator } + { editor } + if$ + } + { shorteditor } + if$ + } + { push:shortname:translator } + if$ +} + +FUNCTION {push:shortname} { + useauthor + { shortauthor empty$ + { author empty$ + { push:shortname:editor } + { author } + if$ + } + { shortauthor } + if$ + } + { push:shortname:editor } + if$ +} + +FUNCTION {push:sorttitle} { + sorttitle empty$ + { title empty$ + { "" } + { title } + if$ + } + { sorttitle } + if$ + push +} + +FUNCTION {shortname:hash} { + 'tempctrc := + 'templist := + #1 'tempctra := + templist num.names$ 'tempctrb := + templist andothers + { tempctrb #1 - 'tempctrb := } + 'skip$ + if$ + tempctrc #0 = + { tempctrb 'tempctrc := } + { tempctrb tempctrc > + { ctrl.mincitenames 'tempctrc := } + { ctrl.maxcitenames 'tempctrc := } + if$ + } + if$ + "" + { tempctra tempctrc > not + tempctrb #0 > + and } + { templist tempctra "{vv{}}{ll{}}{ff{}}{jj{}}" format.name$ * + tempctra #1 + 'tempctra := + tempctrb #1 - 'tempctrb := + } + while$ + templist andothers + tempctrb #0 > + or + ctrl.nohashothers not + and + { "+" * } + 'skip$ + if$ +} + +FUNCTION {push:name:namehash} { + push:shortname duplicate$ empty$ + { pop$ push:sorttitle duplicate$ empty$ + { pop$ push:cite purify } + 'skip$ + if$ + } + { ctrl.maxcitenames shortname:hash } + if$ +} + +FUNCTION {push:name:fullhash} { + push:fullname duplicate$ empty$ + { pop$ push:sorttitle duplicate$ empty$ + { pop$ push:cite purify } + 'skip$ + if$ + } + { #0 shortname:hash } + if$ +} + +FUNCTION {push:labelname} { + useauthor + { shortauthor empty$ + { author empty$ + { push:labelname:editor } + { "author" } + if$ + } + { "shortauthor" } + if$ + } + { push:labelname:editor } + if$ +} + +FUNCTION {check:sortname} { + sortname empty$ + 'skip$ + { pop$ sortname } + if$ +} + +FUNCTION {warning} { + "\item " swap$ * + warningmsg empty$ + 'skip$ + { warningmsg " " * swap$ * } + if$ + 'warningmsg := +} + +FUNCTION {warning:invalid} { + "Invalid format of field " swap$ enquote * warning +} + +FUNCTION {warning:duplicate} { + "Can't use " swap$ enquote * " + " * swap$ enquote * warning +} + +FUNCTION {pad.number} { + 'tempctra := + duplicate$ empty$ + { pop$ "" } + 'skip$ + if$ + { duplicate$ text.length$ tempctra < } + { "0" swap$ * } + while$ +} + +FUNCTION {extract.number} { + purify$ 'tempstrga := + "" + { tempstrga empty$ not } + { tempstrga #1 #1 substring$ chr.to.int$ duplicate$ + #47 > swap$ + #58 < and + { tempstrga #1 #1 substring$ * } + 'skip$ + if$ + tempstrga #2 global.max$ substring$ 'tempstrga := + } + while$ + #1 #9 substring$ +} + +FUNCTION {format.range} +{ 'tempstrga := + "" + { tempstrga empty$ not } + { tempstrga #1 #1 substring$ "-" = + { "\bibrangedash " * + tempstrga #2 global.max$ substring$ 'tempstrga := + { tempstrga #1 #1 substring$ "-" = } + { tempstrga #2 global.max$ substring$ 'tempstrga := } + while$ + } + { tempstrga #1 #1 substring$ * + tempstrga #2 global.max$ substring$ 'tempstrga := + } + if$ + } + while$ +} + +FUNCTION {format:name:part} { + "\~" "[[[TILDE ACCENT]]]" str:replace + "~" "\bibnamedelima " str:replace + "[[[TILDE ACCENT]]]" "\~" str:replace +} + +FUNCTION {format:name:initials} { + "\." "[[[DOT ACCENT]]]" str:replace + ".-" "\bibinithyphendelim " str:replace + ".~" "\bibinitperiod\bibinitdelim " str:replace + ". " "\bibinitperiod\bibinitdelim " str:replace + "." "\bibinitperiod" str:replace + "[[[DOT ACCENT]]]" "\." str:replace +} + +FUNCTION {is.number} { + #1 + { #0 > } + { duplicate$ #1 #1 substring$ chr.to.int$ + duplicate$ #47 > + swap$ #58 < + and + { #2 global.max$ substring$ + duplicate$ empty$ + { #0 } + { #1 } + if$ + } + { #0 } + if$ + } + while$ + empty$ +} + +FUNCTION {split.date:invalid} { + #0 'tempctra := +} + +FUNCTION {split.date:check.day} { + duplicate$ empty$ + 'skip$ + { duplicate$ is.number + { duplicate$ str.to.int + duplicate$ #0 > + swap$ #32 < + and + { duplicate$ text.length$ #2 < + { "0" swap$ * } + 'skip$ + if$ + } + { pop$ "" split.date:invalid } + if$ + } + { pop$ "" split.date:invalid } + if$ + } + if$ +} + +FUNCTION {split.date:check.month} { + duplicate$ empty$ + 'skip$ + { duplicate$ is.number + { duplicate$ str.to.int + duplicate$ #0 > + swap$ #13 < + and + { duplicate$ text.length$ #2 < + { "0" swap$ * } + 'skip$ + if$ + } + { pop$ "" split.date:invalid } + if$ + } + { pop$ "" split.date:invalid } + if$ + } + if$ +} + +FUNCTION {split.date:check.year} { + duplicate$ empty$ + 'skip$ + { duplicate$ is.number + { duplicate$ "0" = + 'skip$ + { duplicate$ + duplicate$ str.to.int #0 > + swap$ text.length$ #5 < + and + 'skip$ + { pop$ "" split.date:invalid } + if$ + } + if$ + } + { pop$ "" split.date:invalid } + if$ + } + if$ +} + +FUNCTION {split.date:check.date} { + duplicate$ empty$ + 'skip$ + { duplicate$ + duplicate$ text.length$ #0 > + swap$ text.length$ #11 < + and + 'skip$ + { pop$ "" split.date:invalid } + if$ + } + if$ +} + +FUNCTION {split.date:check.range} { + duplicate$ empty$ + 'skip$ + { duplicate$ + duplicate$ text.length$ #0 > + swap$ text.length$ #22 < + and + 'skip$ + { pop$ "" split.date:invalid } + if$ + } + if$ +} + +FUNCTION {split.date:date:part} { + 'tempstrgb := + "" + { tempstrgb #1 #1 substring$ + duplicate$ empty$ + { pop$ #0 } + { "-" = not } + if$ + } + { tempstrgb #1 #1 substring$ * + tempstrgb #2 global.max$ substring$ 'tempstrgb := + } + while$ + tempstrgb #2 global.max$ substring$ +} + +FUNCTION {split.date:date} { + duplicate$ empty$ + { pop$ "" "" "" } + { split.date:date:part swap$ split.date:check.year swap$ + split.date:date:part swap$ split.date:check.month swap$ + split.date:date:part pop$ split.date:check.day + } + if$ +} + +FUNCTION {split.date:range} { + duplicate$ empty$ + { pop$ "" "" } + { 'tempstrgb := + "" + #0 'tempctrb := + { tempstrgb #1 #1 substring$ + duplicate$ empty$ + { pop$ #0 } + { "/" = + { #1 'tempctrb := + #0 + } + { #1 } + if$ + } + if$ + } + { tempstrgb #1 #1 substring$ * + tempstrgb #2 global.max$ substring$ 'tempstrgb := + } + while$ + split.date:check.date + tempstrgb #2 global.max$ substring$ + duplicate$ empty$ + tempctrb #1 = + and + { pop$ open.ended } + 'skip$ + if$ + split.date:check.date + } + if$ +} + +FUNCTION {split.date} { + duplicate$ empty$ + { pop$ pop$ "" "" "" "" "" "" } + { swap$ 'templist := + #1 'tempctra := + split.date:check.range + split.date:range swap$ 'tempstrga := + split.date:date tempstrga + split.date:date + tempctra + 'skip$ + { pop$ pop$ pop$ pop$ pop$ pop$ "" "" "" "" "" "" + templist warning:invalid + } + if$ + } + if$ +} + +% ------------------------------------------------------------------- +% Sorting +% ------------------------------------------------------------------- + +FUNCTION {sortkey:name:format} { + 'templist := + #1 'tempctra := + templist num.names$ 'tempctrb := + templist andothers + { tempctrb #1 - 'tempctrb := } + 'skip$ + if$ + tempctrb ctrl.maxsortnames > + { ctrl.minsortnames 'tempctrc := } + { ctrl.maxsortnames 'tempctrc := } + if$ + "" + { duplicate$ text.length$ entry.max$ #50 - < + tempctra tempctrc > not and + tempctrb #0 > and + } + { useprefix + { templist tempctra "{vv}" format.name$ + duplicate$ empty$ + { pop$ "" } + { "u" change.case$ "t" change.case$ + delimiter.3 * } + if$ + templist tempctra + "{ll}{" delimiter.3 * + "ff}{" delimiter.3 * * + "jj}" * + format.name$ * + } + { templist tempctra + "{ll}{" delimiter.3 * + "ff}{" delimiter.3 * * + "vv}{" delimiter.3 * * + "jj}" * + format.name$ } + if$ + tempctra #1 > + { delimiter.2 swap$ * } + 'skip$ + if$ + * + tempctra #1 + 'tempctra := + tempctrb #1 - 'tempctrb := + } + while$ + templist andothers + tempctrb #0 > + or + ctrl.nosortothers not + and + { delimiter.2 * "zzzz" * } + 'skip$ + if$ +} + +FUNCTION {sortkey:init:label} { + push:shortname duplicate$ empty$ + { pop$ push:sorttitle } + { check:sortname sortkey:name:format } + if$ + purify 'sortkey.name := + sortyear empty$ + { dateyear + dateendyear empty$ + 'skip$ + { dateyear dateendyear = + 'skip$ + { dateendyear open.ended = + 'skip$ + { "-" * dateendyear * } + if$ + } + if$ + } + if$ + } + { sortyear } + if$ + purify 'sortkey.year := + push:sorttitle purify 'sortkey.title := +} + +FUNCTION {sortkey:init:main} { + push:fullname duplicate$ empty$ + { pop$ push:sorttitle } + { check:sortname sortkey:name:format } + if$ + purify 'sortkey.name := +} + +FUNCTION {sortkey:main:string} { + duplicate$ #1 = + { pop$ + sortkey.name delimiter.1 * + sortkey.title * delimiter.1 * + sortkey.year * delimiter.1 * + volume purify #4 pad.number * delimiter.1 * + } + { duplicate$ #2 = + { pop$ + sortkey.name delimiter.1 * + sortkey.year * delimiter.1 * + sortkey.title * delimiter.1 * + volume purify #4 pad.number * delimiter.1 * + } + { #3 = + { sortkey.name delimiter.1 * + sortkey.year * delimiter.1 * + volume purify #4 pad.number * delimiter.1 * + sortkey.title * + } + { "" } + if$ + } + if$ + } + if$ +} + +FUNCTION {sortkey:main:date:year} { + duplicate$ empty$ + { pop$ } + { extract.number #1 #4 substring$ + duplicate$ empty$ + { pop$ } + { swap$ pop$ } + if$ + } + if$ +} + +FUNCTION {sortkey:main:date} { + duplicate$ #1 = + { pop$ + sortyear empty$ + { "9999" dateyear sortkey:main:date:year } + { sortyear purify } + if$ + } + { #2 = + { sortyear empty$ + { "0" dateyear sortkey:main:date:year } + { sortyear purify } + if$ + str.to.int #9999 swap$ - int.to.str$ + } + { "" } + if$ + } + if$ + sortkey.name * delimiter.1 * + sortkey.title * delimiter.1 * + volume purify #4 pad.number * delimiter.1 * +} + +FUNCTION {sortkey:main} { + ctrl.sorting #0 = + { sortkey.nosort } + { sortkey:init:main + "" + ctrl.sorting #10 < + { sortkey empty$ + { ctrl.sorting sortkey:main:string } + { sortkey } + if$ + } + { ctrl.sorting #20 < + { shorthand empty$ + { sortkey.alpha * } + { shorthand purify * } + if$ + duplicate$ empty$ + 'skip$ + { delimiter.1 * } + if$ + ctrl.sorting #10 - sortkey:main:string + } + { ctrl.sorting #30 < + { sortkey empty$ + { ctrl.sorting #20 - sortkey:main:date } + { sortkey } + if$ + } + { push:cite purify } + if$ + } + if$ + } + if$ + * + duplicate$ #1 text.prefix$ "u" change.case$ 'sortinit := + push:presort delimiter.1 * swap$ * + } + if$ + truncate +} + +% ------------------------------------------------------------------- +% Output +% ------------------------------------------------------------------- + +FUNCTION {output:indent:field} { + duplicate$ empty$ + 'skip$ + { " " swap$ * write$ newline$ } + if$ +} + +FUNCTION {output:indent:subfield} { + duplicate$ empty$ + 'skip$ + { " " swap$ * write$ newline$ } + if$ +} + +FUNCTION {output:indent:subfield:keyval} { + duplicate$ empty$ + 'skip$ + { " " swap$ * write$ newline$ } + if$ +} + +FUNCTION {output:write:field:maybeempty} { + swap$ "\field" swap$ wrap:braces * + swap$ wrap:braces * output:indent:field +} + +FUNCTION {output:write:fieldsource:maybeempty} { + swap$ "\fieldmssource" swap$ wrap:braces * + swap$ wrap:braces * "{}{}" * output:indent:field +} + +FUNCTION {output:write:field} { + duplicate$ empty$ + { pop$ pop$ } + { output:write:field:maybeempty } + if$ +} + +FUNCTION {output:write:fieldsource} { + duplicate$ empty$ + { pop$ pop$ } + { output:write:fieldsource:maybeempty } + if$ +} + +FUNCTION {output:write:year} { + duplicate$ empty$ + { pop$ pop$ } + { duplicate$ open.ended = + { pop$ "" } + 'skip$ + if$ + swap$ "\field" swap$ wrap:braces * + swap$ wrap:braces * output:indent:field + } + if$ +} + +FUNCTION {output:write:multi} { + duplicate$ empty$ + { pop$ pop$ } + { swap$ "\field" swap$ wrap:braces * "{%" * output:indent:field + "%" * output:indent:field + "}" output:indent:field + } + if$ +} + +FUNCTION {output:write:bool} { + #0 > + { "\true" } + { "\false" } + if$ + swap$ wrap:braces * output:indent:field +} + +FUNCTION {output:write:count} { + int.to.str$ swap$ "\count" swap$ wrap:braces * + swap$ wrap:braces * output:indent:field +} + +FUNCTION {output:write:string} { + duplicate$ empty$ + { pop$ pop$ } + { swap$ "\strng" swap$ wrap:braces * + swap$ wrap:braces * output:indent:field } + if$ +} + +FUNCTION {output:write:range} { + duplicate$ empty$ + { pop$ pop$ } + { format.range output:write:field } + if$ +} + +FUNCTION {output:write:number} { + duplicate$ empty$ + { pop$ pop$ } + { duplicate$ is.number + 'skip$ + { swap$ warning:invalid "" } + if$ + output:write:field + } + if$ +} + +FUNCTION {output:write:gender} { + duplicate$ empty$ + { pop$ pop$ } + { 'tempstrga := + tempstrga "sf" = + tempstrga "sm" = or + tempstrga "sn" = or + tempstrga "pf" = or + tempstrga "pm" = or + tempstrga "pn" = or + tempstrga "pp" = or + { tempstrga output:write:field } + { warning:invalid } + if$ + } + if$ +} + +FUNCTION {output:write:verb} { + duplicate$ empty$ + { pop$ pop$ } + { 'tempstrga := + "\verb" swap$ wrap:braces * output:indent:field + { tempstrga empty$ not } + { "\verb " tempstrga #1 ctrl.maxline #10 - substring$ * + output:indent:field + tempstrga ctrl.maxline #9 - global.max$ substring$ 'tempstrga := + } + while$ + "\endverb" output:indent:field } + if$ +} + +FUNCTION {output:write:name:hash} { + templist tempctra "{v{}}{l{}}{f{}}{j{}}" format.name$ purify$ +} + +FUNCTION {output:write:name:last} { + templist tempctra "{ll}" format.name$ + duplicate$ 'tempstrga := + duplicate$ empty$ + 'pop$ + { format:name:part + "family" combine:key:value output:indent:subfield:keyval + templist tempctra "{l.}" format.name$ + duplicate$ tempstrga "." * = + { duplicate$ text.length$ #1 - text.prefix$ } + 'skip$ + if$ + format:name:initials + "familyi" combine:key:value output:indent:subfield:keyval + } + if$ +} + +FUNCTION {output:write:name:first} { + templist tempctra "{ff}" format.name$ + duplicate$ 'tempstrga := + duplicate$ empty$ + 'pop$ + { format:name:part + "given" combine:key:value output:indent:subfield:keyval + templist tempctra "{f.}" format.name$ + duplicate$ tempstrga "." * = + { duplicate$ text.length$ #1 - text.prefix$ } + 'skip$ + if$ + format:name:initials + "giveni" combine:key:value output:indent:subfield:keyval + } + if$ +} + +FUNCTION {output:write:name:prefix} { + templist tempctra "{vv}" format.name$ + duplicate$ 'tempstrga := + duplicate$ duplicate$ text.length$ duplicate$ substring$ "'" = + { #1 'tempctrc := } + { #0 'tempctrc := } + if$ + duplicate$ empty$ + 'pop$ + { format:name:part + "prefix" combine:key:value output:indent:subfield:keyval + templist tempctra "{v.}" format.name$ + tempctrc + { duplicate$ text.length$ #1 - text.prefix$ "'" * } + { duplicate$ tempstrga "." * = + { duplicate$ text.length$ #1 - text.prefix$ } + 'skip$ + if$ + } + if$ + format:name:initials + "prefixi" combine:key:value output:indent:subfield:keyval + } + if$ +} + +FUNCTION {output:write:name:suffix} { + templist tempctra "{jj}" format.name$ + duplicate$ 'tempstrga := + duplicate$ empty$ + 'pop$ + { format:name:part + "suffix" combine:key:value output:indent:subfield:keyval + templist tempctra "{j.}" format.name$ + duplicate$ tempstrga "." * = + { duplicate$ text.length$ #1 - text.prefix$ } + 'skip$ + if$ + format:name:initials + "suffixi" combine:key:value output:indent:subfield:keyval + } + if$ +} + +FUNCTION {output:write:name} { + duplicate$ empty$ + { pop$ pop$ } + { 'templist := + 'tempstrga := + #1 'tempctra := + templist num.names$ 'tempctrb := + templist andothers + { tempctrb #1 - 'tempctrb := + "more" tempstrga * #1 output:write:bool + % not actually required, biblatex should resolve this + tempstrga push:labelname = + { "morelabelname" #1 output:write:bool } + 'skip$ + if$ + } + 'skip$ + if$ + "\name" tempstrga wrap:braces * + tempctrb int.to.str$ wrap:braces * + "" wrap:braces * + "{%" * output:indent:field + { tempctrb #0 > } + { "{{hash=" output:write:name:hash * "}{%" * output:indent:subfield + output:write:name:prefix + output:write:name:last + output:write:name:suffix + output:write:name:first + "}}%" output:indent:subfield + tempctra #1 + 'tempctra := + tempctrb #1 - 'tempctrb := + } + while$ + "}" output:indent:field + } + if$ +} + +FUNCTION {output:write:list} { + duplicate$ empty$ + { pop$ pop$ } + { 'templist := + 'tempstrga := + templist num.names$ 'tempctra := + templist andothers + { tempctra #1 - 'tempctra := + "more" tempstrga * #1 output:write:bool + } + 'skip$ + if$ + "\list" tempstrga wrap:braces * + tempctra int.to.str$ wrap:braces * + "{%" * output:indent:field + #1 'tempctra := + #1 'tempctrb := + #0 'tempctrc := + { templist purify tempctrb global.max$ substring$ num.names$ #0 > } + { templist tempctrb #1 substring$ "{" = + { tempctrc #1 + 'tempctrc := + tempctrb #1 + 'tempctrb := } + { templist tempctrb #1 substring$ "}" = + { tempctrc #1 - 'tempctrc := + tempctrb #1 + 'tempctrb := } + { templist tempctrb #5 substring$ + duplicate$ " AND " = + swap$ " and " = + or + tempctrc #1 < + and + { templist tempctra tempctrb tempctra - substring$ + wrap:braces "%" * output:indent:subfield + tempctrb #5 + duplicate$ + 'tempctra := + 'tempctrb := + } + { tempctrb #1 + 'tempctrb := } + if$ + } + if$ + } + if$ + } + while$ + templist tempctra global.max$ substring$ + duplicate$ "others" = + { pop$ } + { wrap:braces "%" * output:indent:subfield } + if$ + "}" output:indent:field + } + if$ +} + +FUNCTION {output:specials} { + fakeset empty$ + 'skip$ + { ctrl:set + { "\fakeset" fakeset wrap:braces * output:indent:field } + { "fakeset can only be used for @set entries" warning * } + if$ + } + if$ + entryset empty$ + 'skip$ + { ctrl:set + { "\set" } + { "\inset" } + if$ + entryset wrap:braces * output:indent:field + } + if$ + xref empty$ + 'skip$ + { "\xref" xref wrap:braces * output:indent:field } + if$ + keywords empty$ + 'skip$ + { "\keyw" keywords wrap:braces * output:indent:field } + if$ + "entrysubtype" entrysubtype output:write:field + "crossref" crossref output:write:string + "execute" execute output:write:field + "namehash" namehash output:write:string + "fullhash" fullhash output:write:string + "gender" gender output:write:gender + "shorthand" shorthand output:write:field + shorthand empty$ + { label } + { shorthand } + if$ + "label" swap$ output:write:field + "labelname" push:labelname output:write:fieldsource + shorttitle empty$ + { title empty$ + { "" } + { "title" } + if$ + } + { "shorttitle" } + if$ + "labeltitle" swap$ output:write:fieldsource + ctrl.labelalpha + { "labelalpha" labelalpha output:write:field + "extraalpha" extraalpha output:write:field + } + 'skip$ + if$ + ctrl:labeldate + { dateyear empty$ not + { "labelyear" dateyear output:write:field + dateendyear empty$ + 'skip$ + { dateyear dateendyear = + 'skip$ + { dateendyear open.ended = + 'skip$ + { "labelendyear" dateendyear output:write:field } + if$ + } + if$ + } + if$ + "extradate" extradate output:write:field + "labeldatesource" "" output:write:field:maybeempty + } + { "extradate" extradate output:write:field + "labeldatesource" "nodate" output:write:field + } + if$ + } + 'skip$ + if$ + "sortinit" sortinit output:write:field + "sortinithash" sortinit output:write:field + singletitle + { "singletitle" #1 output:write:bool } + 'skip$ + if$ +} + +FUNCTION {output:names} { + "author" author output:write:name + "authortype" authortype output:write:field + "shortauthor" shortauthor output:write:name + "bookauthor" bookauthor output:write:name + "editor" editor output:write:name + "editortype" editortype output:write:field + "editora" editora output:write:name + "editoratype" editoratype output:write:field + "editorb" editorb output:write:name + "editorbtype" editorbtype output:write:field + "editorc" editorc output:write:name + "editorctype" editorctype output:write:field + "shorteditor" shorteditor output:write:name + "translator" translator output:write:name + "annotator" annotator output:write:name + "commentator" commentator output:write:name + "introduction" introduction output:write:name + "foreword" foreword output:write:name + "afterword" afterword output:write:name + "holder" holder output:write:name +} + +FUNCTION {output:lists} { + "language" language output:write:list + "organization" organization output:write:list + "origlanguage" origlanguage output:write:list + "origlocation" origlocation output:write:list + "origpublisher" origpublisher output:write:list + "publisher" publisher output:write:list +} + +FUNCTION {output:fields.1} { + "abstract" abstract output:write:multi + "addendum" addendum output:write:field + "bookpagination" bookpagination output:write:field + "booksubtitle" booksubtitle output:write:field + "booktitleaddon" booktitleaddon output:write:field + "booktitle" booktitle output:write:field + "chapter" chapter output:write:field + "doi" doi output:write:verb + "edition" edition output:write:field + "eid" eid output:write:field + "eprint" eprint output:write:verb + "eventtitle" eventtitle output:write:field + "eventtitleaddon" eventtitleaddon output:write:field + "howpublished" howpublished output:write:field + "indexsorttitle" indexsorttitle output:write:field + "indextitle" indextitle output:write:field + "isan" isan output:write:field + "isbn" isbn output:write:field + "ismn" ismn output:write:field +} + +FUNCTION {output:fields.2} { + "isrn" isrn output:write:field + "issn" issn output:write:field + "issue" issue output:write:field + "issuesubtitle" issuesubtitle output:write:field + "issuetitle" issuetitle output:write:field + "iswc" iswc output:write:field + "journalsubtitle" journalsubtitle output:write:field + "langidopts" langidopts output:write:field + "library" library output:write:field + "mainsubtitle" mainsubtitle output:write:field + "maintitleaddon" maintitleaddon output:write:field + "maintitle" maintitle output:write:field + "nameaddon" nameaddon output:write:field + "note" note output:write:field + "number" number output:write:field + "origtitle" origtitle output:write:field + "pages" pages output:write:range + "pagetotal" pagetotal output:write:range + "pagination" pagination output:write:field + "part" part output:write:range +} + +FUNCTION {output:fields.3} { + "pubstate" pubstate output:write:field + "reprinttitle" reprinttitle output:write:field + "series" series output:write:field + "shorthandintro" shorthandintro output:write:field + "shortjournal" shortjournal output:write:field + "shortseries" shortseries output:write:field + "shorttitle" shorttitle output:write:field + "subtitle" subtitle output:write:field + "titleaddon" titleaddon output:write:field + "title" title output:write:field + "url" url output:write:verb + "venue" venue output:write:field + "version" version output:write:field + "volumes" volumes output:write:field + "volume" volume output:write:field +} + +FUNCTION {output:dates.1} { + "date" date split.date + "day" swap$ output:write:field + duplicate$ empty$ + { month empty$ + 'skip$ + { month is.number + { month str.to.int + duplicate$ #0 > + swap$ #13 < + and + { pop$ month #2 pad.number } + { "month" warning:invalid } + if$ + } + { "month" warning:invalid } + if$ + } + if$ + } + { month empty$ + 'skip$ + { "month" "date" warning:duplicate } + if$ + } + if$ + "month" swap$ output:write:field + duplicate$ empty$ + { year empty$ + 'skip$ + { pop$ year } + if$ + } + { year empty$ + 'skip$ + { "year" "date" warning:duplicate } + if$ + } + if$ + "year" swap$ output:write:field + "endday" swap$ output:write:field + "endmonth" swap$ output:write:field + "endyear" swap$ output:write:year +} + +FUNCTION {output:dates.2} { + "origdate" origdate split.date + "origday" swap$ output:write:field + "origmonth" swap$ output:write:field + "origyear" swap$ output:write:field + "origendday" swap$ output:write:field + "origendmonth" swap$ output:write:field + "origendyear" swap$ output:write:year + "eventdate" eventdate split.date + "eventday" swap$ output:write:field + "eventmonth" swap$ output:write:field + "eventyear" swap$ output:write:field + "eventendday" swap$ output:write:field + "eventendmonth" swap$ output:write:field + "eventendyear" swap$ output:write:year + "urldate" urldate split.date + "urlday" swap$ output:write:field + "urlmonth" swap$ output:write:field + "urlyear" swap$ output:write:field + "urlendday" swap$ output:write:field + "urlendmonth" swap$ output:write:field + "urlendyear" swap$ output:write:year +} + +FUNCTION {output:user} { + "namea" namea output:write:name + "nameatype" nameatype output:write:field + "nameb" nameb output:write:name + "namebtype" namebtype output:write:field + "namec" namec output:write:name + "namectype" namectype output:write:field + "lista" lista output:write:list + "listb" listb output:write:list + "listc" listc output:write:list + "listd" listd output:write:list + "liste" liste output:write:list + "listf" listf output:write:list + "usera" usera output:write:field + "userb" userb output:write:field + "userc" userc output:write:field + "userd" userd output:write:field + "usere" usere output:write:field + "userf" userf output:write:field + "verba" verba output:write:verb + "verbb" verbb output:write:verb + "verbc" verbc output:write:verb +} + +FUNCTION {output:warning} { + warningmsg empty$ + 'skip$ + { "\warn" warningmsg wrap:braces * output:indent:field } + if$ +} + +FUNCTION {output:compat.1} { + "langid" langid + duplicate$ empty$ + { pop$ hyphenation } + { hyphenation empty$ + 'skip$ + { "hyphenation" "langid" warning:duplicate } + if$ + } + if$ + output:write:field + "location" location + duplicate$ empty$ + { pop$ address } + { address empty$ + 'skip$ + { "address" "location" warning:duplicate } + if$ + } + if$ + output:write:list + "institution" institution + duplicate$ empty$ + { pop$ school } + { school empty$ + 'skip$ + { "school" "institution" warning:duplicate } + if$ + } + if$ + output:write:list + "file" file + duplicate$ empty$ + { pop$ pdf } + { pdf empty$ + 'skip$ + { "pdf" "file" warning:duplicate } + if$ + } + if$ + output:write:verb +} + +FUNCTION {output:compat.2} { + "type" type + duplicate$ empty$ + { type$ "patent" = + type$ "techreport" = or + type$ "phdthesis" = or + { pop$ type$ } + { type$ "mastersthesis" = + { pop$ "mathesis" } + 'skip$ + if$ + } + if$ + } + 'skip$ + if$ + output:write:field + "journaltitle" journaltitle + duplicate$ empty$ + { pop$ journal } + { journal empty$ + 'skip$ + { "journal" "journaltitle" warning:duplicate } + if$ + } + if$ + output:write:field + "annotation" annotation + duplicate$ empty$ + { pop$ annote } + { annote empty$ + 'skip$ + { "annote" "annotation" warning:duplicate } + if$ + } + if$ + output:write:multi +} + +FUNCTION {output:compat.3} { + "eprinttype" eprinttype + duplicate$ empty$ + { pop$ archiveprefix } + { archiveprefix empty$ + 'skip$ + { "archiveprefix" "eprinttype" warning:duplicate } + if$ + } + if$ + output:write:field + "eprintclass" eprintclass + duplicate$ empty$ + { pop$ primaryclass } + { primaryclass empty$ + 'skip$ + { "primaryclass" "eprintclass" warning:duplicate } + if$ + } + if$ + output:write:field +} + +FUNCTION {output:debug} { + "% sort.key$ = " sort.key$ * maxline write$ newline$ + sort.year empty$ + 'skip$ + { "% sort.year = " sort.year * maxline write$ newline$ } + if$ + sort.alph empty$ + 'skip$ + { "% sort.alph = " sort.alph * maxline write$ newline$ } + if$ +} + +FUNCTION {output:entry} { + 'tempstrga := + newline$ + ctrl.debug + { output:debug } + 'skip$ + if$ + " \entry" + push:cite wrap:braces * + tempstrga wrap:braces * + entryoptions wrap:braces * + write$ newline$ + output:names + output:lists + output:specials + output:fields.1 + output:fields.2 + output:fields.3 + output:compat.1 + output:compat.2 + output:compat.3 + output:dates.1 + output:dates.2 + output:user + output:warning + " \endentry" write$ newline$ +} + +FUNCTION {control} { skip$ } +FUNCTION {set} { type$ output:entry } + +FUNCTION {article} { type$ output:entry } +FUNCTION {bibnote} { type$ output:entry } +FUNCTION {book} { type$ output:entry } +FUNCTION {mvbook} { type$ output:entry } +FUNCTION {inbook} { type$ output:entry } +FUNCTION {bookinbook} { type$ output:entry } +FUNCTION {booklet} { type$ output:entry } +FUNCTION {collection} { type$ output:entry } +FUNCTION {mvcollection} { type$ output:entry } +FUNCTION {incollection} { type$ output:entry } +FUNCTION {manual} { type$ output:entry } +FUNCTION {misc} { type$ output:entry } +FUNCTION {online} { type$ output:entry } +FUNCTION {patent} { type$ output:entry } +FUNCTION {periodical} { type$ output:entry } +FUNCTION {proceedings} { type$ output:entry } +FUNCTION {mvproceedings} { type$ output:entry } +FUNCTION {inproceedings} { type$ output:entry } +FUNCTION {reference} { type$ output:entry } +FUNCTION {mvreference} { type$ output:entry } +FUNCTION {inreference} { type$ output:entry } +FUNCTION {report} { type$ output:entry } +FUNCTION {suppbook} { type$ output:entry } +FUNCTION {suppcollection} { type$ output:entry } +FUNCTION {suppperiodical} { type$ output:entry } +FUNCTION {thesis} { type$ output:entry } +FUNCTION {unpublished} { type$ output:entry } + +FUNCTION {artwork} { type$ output:entry } +FUNCTION {audio} { type$ output:entry } +FUNCTION {commentary} { type$ output:entry } +FUNCTION {image} { type$ output:entry } +FUNCTION {jurisdiction} { type$ output:entry } +FUNCTION {legal} { type$ output:entry } +FUNCTION {legislation} { type$ output:entry } +FUNCTION {letter} { type$ output:entry } +FUNCTION {movie} { type$ output:entry } +FUNCTION {music} { type$ output:entry } +FUNCTION {performance} { type$ output:entry } +FUNCTION {review} { type$ output:entry } +FUNCTION {software} { type$ output:entry } +FUNCTION {standard} { type$ output:entry } +FUNCTION {video} { type$ output:entry } + +FUNCTION {customa} { type$ output:entry } +FUNCTION {customb} { type$ output:entry } +FUNCTION {customc} { type$ output:entry } +FUNCTION {customd} { type$ output:entry } +FUNCTION {custome} { type$ output:entry } +FUNCTION {customf} { type$ output:entry } + +FUNCTION {conference} { "inproceedings" output:entry } +FUNCTION {electronic} { "online" output:entry } +FUNCTION {mastersthesis} { "thesis" output:entry } +FUNCTION {other} { "misc" output:entry } +FUNCTION {phdthesis} { "thesis" output:entry } +FUNCTION {techreport} { "report" output:entry } +FUNCTION {www} { "online" output:entry } +FUNCTION {default.type} { "misc" output:entry } + +% ------------------------------------------------------------------- +% Input +% ------------------------------------------------------------------- + +FUNCTION {input:control:parse} { + 'tempstrga := + "" 'tempstrgb := + #1 'tempctra := + { tempstrga empty$ not + tempctra and } + { tempstrga #1 #1 substring$ ":" = + { #0 'tempctra := } + { tempstrgb tempstrga #1 #1 substring$ * 'tempstrgb := } + if$ + tempstrga #2 global.max$ substring$ 'tempstrga := + } + while$ + tempstrga + tempstrgb +} + +FUNCTION {input:control:options} { + input:control:parse str.to.int +} + +% This version corresponds to the .bcf version, *not* the biblatex version! +FUNCTION {input:control:version} { + input:control:parse + "$Revision: 4.0 $" + #12 entry.max$ substring$ + #-3 entry.max$ substring$ + 'tempstrga := + duplicate$ tempstrga = + { pop$ } + { "bcf version mismatch: biblatex.bst has " tempstrga * + ", but biblatex.sty has " * swap$ * warning$ + " The bcf version need not be the same as the biblatex version." + top$ + pop$ "" } + if$ +} + +FUNCTION {input:control} { + options empty$ + 'skip$ + { options input:control:version + duplicate$ empty$ + { pop$ } + { input:control:options 'ctrl.debug := + input:control:options 'ctrl.bibtex8 := + input:control:options 'ctrl.cssort := + input:control:options 'ctrl.useprefix := + input:control:options 'ctrl.useauthor := + input:control:options 'ctrl.useeditor := + input:control:options 'ctrl.usetranslator := + input:control:options 'ctrl.labelalpha := + input:control:options 'ctrl.labeldate := + input:control:options 'ctrl.singletitle := + input:control:options 'ctrl.sorting := + input:control:options 'ctrl.maxcitenames := + input:control:options 'ctrl.mincitenames := + input:control:options 'ctrl.maxsortnames := + input:control:options 'ctrl.minsortnames := + input:control:options 'ctrl.nohashothers := + input:control:options 'ctrl.nosortothers := + input:control:options 'ctrl.maxalphanames := + input:control:options 'ctrl.minalphanames := + input:control:options 'ctrl.maxline := + input:control:parse 'ctrl.alphaothers := + input:control:parse 'ctrl.sortalphaothers := + 'ctrl.sortstr := + } + if$ + ctrl.maxline #49 < + { #49 'ctrl.maxline := } + { ctrl.maxline #79 > + { #79 'ctrl.maxline := } + 'skip$ + if$ + } + if$ + } + if$ +} + +FUNCTION {input:options:add} { + entryoptions empty$ + 'skip$ + { entryoptions ", " * 'entryoptions := } + if$ + entryoptions swap$ * 'entryoptions := + duplicate$ empty$ + { pop$ } + { "=" swap$ * entryoptions swap$ * 'entryoptions := } + if$ +} + +FUNCTION {input:options:known} { + duplicate$ empty$ + { tempstrgb input:options:add + #1 } + { duplicate$ "true" = + { pop$ "" tempstrgb input:options:add + #1 } + { duplicate$ tempstrgb input:options:add + bol.to.int + } + if$ + } + if$ +} + +FUNCTION {input:options:parse} { + 'tempstrgb := + tempstrgb "useprefix" = + { input:options:known 'useprefix := } + { tempstrgb "useauthor" = + { input:options:known 'useauthor := } + { tempstrgb "useeditor" = + { input:options:known 'useeditor := } + { tempstrgb "usetranslator" = + { input:options:known 'usetranslator := } + { tempstrgb "skipbib" = + { input:options:known 'skipbib := } + { tempstrgb "skiplos" = + { input:options:known 'skiplos := } + { tempstrgb "skiplab" = + { input:options:known 'skiplab := } + { tempstrgb "dataonly" = + { input:options:known + duplicate$ 'skipbib := + duplicate$ 'skiplos := + 'skiplab := + } + { tempstrgb input:options:add } + if$ + } + if$ + } + if$ + } + if$ + } + if$ + } + if$ + } + if$ + } + if$ +} + +FUNCTION {input:options:extract} { + 'tempstrgb := + #1 'tempctrb := + { tempstrgb text.length$ #0 > } + { tempstrgb tempctrb #1 substring$ "=" = + { tempstrgb tempctrb #1 + global.max$ substring$ + tempstrgb #1 tempctrb #1 - substring$ + input:options:parse + "" 'tempstrgb := + } + { tempstrgb text.length$ tempctrb = + { "" tempstrgb input:options:parse + "" 'tempstrgb := + } + { tempctrb #1 + 'tempctrb := } + if$ + } + if$ + } + while$ +} + +FUNCTION {input:options} { + options 'tempstrga := + #1 'tempctra := + { tempstrga text.length$ #0 > } + { tempstrga tempctra #1 substring$ "," = + { tempstrga #1 tempctra #1 - substring$ input:options:extract + tempctra #1 + 'tempctra := + { tempstrga tempctra #1 substring$ " " = + tempctra tempstrga text.length$ > not + and + } + { tempctra #1 + 'tempctra := } + while$ + tempstrga tempctra global.max$ substring$ 'tempstrga := + #1 'tempctra := + } + { tempstrga text.length$ tempctra = + { tempstrga input:options:extract + "" 'tempstrga := + } + { tempctra #1 + 'tempctra := } + if$ + } + if$ + } + while$ +} + +FUNCTION {input:iterate} { + ctrl:control + { input:control } + { citecount #1 + 'citecount := + citecount int.to.str$ #9 pad.number 'sortkey.nosort := + ctrl.useprefix 'useprefix := + ctrl.useauthor 'useauthor := + ctrl.useeditor 'useeditor := + ctrl.usetranslator 'usetranslator := + ctrl.singletitle + { #1 'singletitle := } + 'skip$ + if$ + options empty$ + 'skip$ + { input:options } + if$ + ctrl:set entryset empty$ or + 'skip$ + { #1 'skipbib := + #1 'skiplos := + #1 'skiplab := + } + if$ + "date" date split.date + pop$ pop$ 'dateyear := + pop$ pop$ 'dateendyear := + dateyear empty$ + { year empty$ + 'skip$ + { year 'dateyear := } + if$ + } + 'skip$ + if$ + } + if$ +} + +READ + +EXECUTE {initialize} + +ITERATE {input:iterate} + +% ------------------------------------------------------------------- +% Generate labels +% ------------------------------------------------------------------- + +FUNCTION {makelabel:name:format} { + 'templist := + #1 'tempctra := + templist num.names$ 'tempctrb := + templist andothers + { tempctrb #1 - 'tempctrb := } + 'skip$ + if$ + tempctrb ctrl.maxcitenames > + { ctrl.mincitenames 'tempctrc := } + { ctrl.maxcitenames 'tempctrc := } + if$ + "" + { duplicate$ text.length$ entry.max$ #50 - < + tempctra tempctrc > not and + tempctrb #0 > and + } + { useprefix + { templist tempctra "{vv}" format.name$ + duplicate$ empty$ + { pop$ "" } + { "u" change.case$ "t" change.case$ + delimiter.3 * } + if$ + } + { "" } + if$ + templist tempctra "{ll}" format.name$ * + tempctra #1 > + { delimiter.2 swap$ * } + 'skip$ + if$ + * + tempctra #1 + 'tempctra := + tempctrb #1 - 'tempctrb := + } + while$ + templist andothers + tempctrb #0 > + or + ctrl.nohashothers not + and + { delimiter.2 * "zzzz" * } + 'skip$ + if$ +} + + +FUNCTION {makelabel:name:full} { + duplicate$ num.names$ #1 = + { #1 + "{ll}{" delimiter.3 * + "ff}{" delimiter.3 * * + "vv}{" delimiter.3 * * + "jj}" * + format.name$ + } + { pop$ "" } + if$ +} + +FUNCTION {makelabel:alpha:format} { + duplicate$ empty$ + { pop$ "" } + { 'templist := + #1 'tempctra := + templist andothers + { templist num.names$ #1 - 'tempctrb := } + { templist num.names$ 'tempctrb := } + if$ + tempctrb ctrl.maxalphanames > + { ctrl.minalphanames 'tempctrb := } + 'skip$ + if$ + tempctrb #1 > + { "" + { tempctrb #0 > } + { templist tempctra "{l{}}" format.name$ * + tempctra #1 + 'tempctra := + tempctrb #1 - 'tempctrb := + } + while$ + } + { templist #1 "{l{}}" format.name$ } + if$ + duplicate$ text.length$ #2 < + { pop$ + useprefix + { templist #1 "{v{}}" format.name$ #2 text.prefix$ + templist #1 "{ll}" format.name$ * + } + { templist #1 "{ll}" format.name$ } + if$ + #3 text.prefix$ + } + 'skip$ + if$ + } + if$ + templist num.names$ ctrl.maxalphanames > + templist andothers + or + { ctrl.alphaothers * } + 'skip$ + if$ +} + +FUNCTION {makelabel:alpha:year} { + dateyear purify + #1 #4 substring$ + #-1 #2 substring$ +} + +FUNCTION {makelabel:hash:format} { + 'templist := + #1 'tempctra := + templist num.names$ 'tempctrb := + templist andothers + { tempctrb #1 - 'tempctrb := } + 'skip$ + if$ + tempctrb ctrl.maxcitenames > + { ctrl.mincitenames 'tempctrc := } + { ctrl.maxcitenames 'tempctrc := } + if$ + "" + { tempctra tempctrc > not + tempctrb #0 > + and } + { templist tempctra + useprefix + { "{v{}}{l{}}{j{}}{f{}}" } + { "{l{}}{j{}}{f{}}{v{}}" } + if$ + format.name$ purify$ * + tempctra #1 + 'tempctra := + tempctrb #1 - 'tempctrb := + } + while$ + templist andothers + tempctrb #0 > + or + ctrl.nohashothers not + and + { "+" * } + 'skip$ + if$ +} + +FUNCTION {makelabel:hash:format:full} { + 'templist := + #1 'tempctra := + templist num.names$ 'tempctrb := + templist andothers + { tempctrb #1 - 'tempctrb := } + 'skip$ + if$ + "" + { tempctrb #0 > } + { templist tempctra + useprefix + { "{v{}}{l{}}{j{}}{f{}}" } + { "{l{}}{j{}}{f{}}{v{}}" } + if$ + format.name$ purify$ * + tempctra #1 + 'tempctra := + tempctrb #1 - 'tempctrb := + } + while$ + templist andothers + ctrl.nohashothers not + and + { "+" * } + 'skip$ + if$ +} + +FUNCTION {makelabel:ctrl:alpha} { + ctrl:labelalpha + { shorthand empty$ + { label empty$ + { push:cite purify #1 #3 substring$ + "u" change.case$ "t" change.case$ } + { label makelabel:alpha:year * } + if$ + } + { shorthand } + if$ + } + { "" } + if$ +} + +FUNCTION {makelabel:ctrl:alpha:format} { + ctrl:labelalpha + { shorthand empty$ + { label empty$ + { makelabel:alpha:format } + { pop$ label } + if$ + makelabel:alpha:year * + } + { pop$ + shorthand + } + if$ + } + { pop$ + "" + } + if$ +} + +FUNCTION {makelabel:label} { + push:shortname empty$ + { push:sorttitle 'label.name := + makelabel:ctrl:alpha 'labelalpha := + } + { push:shortname + duplicate$ makelabel:name:format 'label.name := + duplicate$ makelabel:hash:format 'namehash := + makelabel:ctrl:alpha:format 'labelalpha := + } + if$ + push:fullname empty$ + 'skip$ + { push:fullname makelabel:hash:format:full 'fullhash := } + if$ +} + +% ------------------------------------------------------------------- +% Sort labels +% ------------------------------------------------------------------- + +FUNCTION {labelsort:label} { + sortkey:init:label + makelabel:label +} + +FUNCTION {labelsort:main} { + ctrl:skiplab not + ctrl.singletitle ctrl.labeldate or + and + { label.name purify delimiter.1 * + sortkey.year * delimiter.1 * + push:presort * delimiter.1 * + sortkey empty$ + { sortkey.name * delimiter.1 * sortkey.title } + { sortkey } + if$ + * + truncate + } + { "" } + if$ + duplicate$ + 'sort.key$ := + 'sort.year := +} + +FUNCTION {labelsort:alph} { + ctrl:labelalpha + { labelalpha ctrl.alphaothers ctrl.sortalphaothers str:replace + purify delimiter.1 * + push:presort * delimiter.1 * + sortkey empty$ + { ctrl.sorting #10 > + ctrl.sorting #20 < + and + { ctrl.sorting #10 - } + { #2 } + if$ + sortkey:main:string + } + { sortkey } + if$ + * + truncate + } + { "" } + if$ + duplicate$ + 'sort.key$ := + 'sort.alph := +} + +FUNCTION {labelsort:hash} { + ctrl:control + namehash empty$ + or + { "zzzz" 'sort.key$ := } + { namehash purify delimiter.1 * + push:shortname duplicate$ empty$ + { pop$ "zzzz" * } + { sortkey:name:format purify * } + if$ + truncate 'sort.key$ := + } + if$ +} + +FUNCTION {labelsort:fullhash} { + ctrl:control + fullhash empty$ + or + { "zzzz" 'sort.key$ := } + { fullhash purify delimiter.1 * + push:shortname duplicate$ empty$ + { pop$ "zzzz" * } + { sortkey:name:format purify * } + if$ + truncate 'sort.key$ := + } + if$ +} + +% ------------------------------------------------------------------- + +FUNCTION {labelsort:init} { + "" 'last.name := + "" 'last.year := + "" 'last.hash := + "" 'last.extra := + #1 'last.extra.num := +} + +FUNCTION {labelsort:main:init} { + "" 'last.name := +} + +FUNCTION {labelsort:hash:init} { + "" 'last.name := + #1 'last.extra.num := +} + +FUNCTION {labelsort:namehash:iterate} { + ctrl:control + namehash empty$ + or + 'skip$ + { namehash last.hash = + { push:name:namehash last.name = + 'skip$ + { last.extra.num #1 + 'last.extra.num := } + if$ + last.extra.num int.to.str$ 'labelhash := + } + { #1 'last.extra.num := + "1" 'labelhash := + } + if$ + namehash 'last.hash := + push:name:namehash 'last.name := + } + if$ +} + +FUNCTION {labelsort:namehash:reverse} { + ctrl:control + namehash empty$ + or + 'skip$ + { push:name:namehash last.name = + { last.extra "1" = + { "1" 'labelhash := } + 'skip$ + if$ + } + { last.extra "2" = + { "1" 'labelhash := } + 'skip$ + if$ + } + if$ + labelhash 'last.extra := + push:name:namehash 'last.name := + namehash labelhash * 'namehash := + } + if$ +} + +FUNCTION {labelsort:fullhash:iterate} { + ctrl:control + fullhash empty$ + or + 'skip$ + { fullhash last.hash = + { push:name:fullhash last.name = + 'skip$ + { last.extra.num #1 + 'last.extra.num := } + if$ + last.extra.num int.to.str$ 'labelhash := + } + { #1 'last.extra.num := + "1" 'labelhash := + } + if$ + fullhash 'last.hash := + push:name:fullhash 'last.name := + } + if$ +} + +FUNCTION {labelsort:fullhash:reverse} { + ctrl:control + fullhash empty$ + or + 'skip$ + { push:name:fullhash last.name = + { last.extra "1" = + { "1" 'labelhash := } + 'skip$ + if$ + } + { last.extra "2" = + { "1" 'labelhash := } + 'skip$ + if$ + } + if$ + labelhash 'last.extra := + push:name:fullhash 'last.name := + fullhash labelhash * 'fullhash := + } + if$ +} + +FUNCTION {labelsort:main:singletitle} { + ctrl.singletitle + { label.name last.name = + { #0 'singletitle := } + 'skip$ + if$ + label.name 'last.name := + } + 'skip$ + if$ +} + +FUNCTION {labelsort:main:year:iterate} { + ctrl:labeldate + { label.name + dateyear empty$ + 'skip$ + { " " * dateyear * + dateendyear empty$ + 'skip$ + { dateyear dateendyear = + 'skip$ + { dateendyear open.ended = + 'skip$ + { "-" * dateendyear * } + if$ + } + if$ + } + if$ + } + if$ + 'label.year := + label.year last.year = + { last.extra.num #1 + 'last.extra.num := + last.extra.num int.to.str$ 'extradate := + } + { #1 'last.extra.num := + "" 'extradate := + label.year 'last.year := + } + if$ + } + 'skip$ + if$ +} + +FUNCTION {labelsort:main:year:reverse} { + ctrl:labeldate + { last.extra "2" = + { "1" 'extradate := } + 'skip$ + if$ + extradate 'last.extra := + } + 'skip$ + if$ +} + +FUNCTION {labelsort:main:iterate} { + ctrl:skiplab + 'skip$ + { labelsort:main:singletitle + labelsort:main:year:iterate + } + if$ +} + +FUNCTION {labelsort:main:reverse} { + ctrl:skiplab + 'skip$ + { labelsort:main:singletitle + labelsort:main:year:reverse + } + if$ +} + +FUNCTION {labelsort:alph:iterate} { + ctrl:labelalpha + { labelalpha last.year = + { last.extra.num #1 + 'last.extra.num := + last.extra.num int.to.str$ 'extraalpha := + } + { #1 'last.extra.num := + "" 'extraalpha := + } + if$ + labelalpha 'last.year := + } + 'skip$ + if$ +} + +FUNCTION {labelsort:alph:reverse} { + ctrl:labelalpha + { last.extra "2" = + { "1" 'extraalpha := } + 'skip$ + if$ + extraalpha 'last.extra := + labelalpha empty$ + 'skip$ + { extraalpha empty$ + { labelalpha ctrl.alphaothers ctrl.sortalphaothers str:replace + purify + 'sortkey.alpha := } + { labelalpha ctrl.alphaothers ctrl.sortalphaothers str:replace + purify + extraalpha #4 pad.number * + 'sortkey.alpha := } + if$ + } + if$ + } + 'skip$ + if$ +} + +ITERATE {labelsort:label} + +EXECUTE {labelsort:init} + +ITERATE {labelsort:hash} + +SORT + +EXECUTE {labelsort:hash:init} + +ITERATE {labelsort:namehash:iterate} + +EXECUTE {labelsort:hash:init} + +REVERSE {labelsort:namehash:reverse} + +EXECUTE {labelsort:init} + +ITERATE {labelsort:fullhash} + +SORT + +EXECUTE {labelsort:hash:init} + +ITERATE {labelsort:fullhash:iterate} + +EXECUTE {labelsort:hash:init} + +REVERSE {labelsort:fullhash:reverse} + +EXECUTE {labelsort:init} + +ITERATE {labelsort:main} + +SORT + +EXECUTE {labelsort:init} + +EXECUTE {labelsort:main:init} + +ITERATE {labelsort:main:iterate} + +EXECUTE {labelsort:main:init} + +REVERSE {labelsort:main:reverse} + +EXECUTE {labelsort:init} + +ITERATE {labelsort:alph} + +SORT + +ITERATE {labelsort:alph:iterate} + +REVERSE {labelsort:alph:reverse} + +% ------------------------------------------------------------------- +% Sort bibliography, write .bbl file +% ------------------------------------------------------------------- + +FUNCTION {mainsort} { + ctrl:control + { "" } + { sortkey:main } + if$ + 'sort.key$ := +} + +ITERATE {mainsort} + +SORT + +% This version corresponds to the .bbl version, *not* the biblatex version! +FUNCTION {output:main:begin} { + "% $ biblatex auxiliary file $" write$ newline$ + "% $ biblatex bbl format version " "$Revision: 4.0 $" + #12 entry.max$ substring$ #-3 entry.max$ substring$ * " $" * write$ newline$ + "% Do not modify the above lines!" write$ newline$ + "%" write$ newline$ + "% This is an auxiliary file used by the 'biblatex-ms' package." write$ newline$ + "% This file may safely be deleted. It will be recreated as" write$ newline$ + "% required." write$ newline$ + "%" write$ newline$ + "\begingroup" write$ newline$ + "\makeatletter" write$ newline$ + "\@ifundefined{ver@biblatex-ms.sty}" write$ newline$ + " {\@latex@error" write$ newline$ + " {Missing 'biblatex-ms' package}" write$ newline$ + " {The bibliography requires the 'biblatex-ms' package.}" write$ newline$ + " \aftergroup\endinput}" write$ newline$ + " {}" write$ newline$ + "\endgroup" write$ newline$ + newline$ + "\datalist[entry]{" ctrl.sortstr * "/global//global/global}" * write$ +} + +FUNCTION {output:main:preamble} { + preamble$ empty$ + 'skip$ + { newline$ + "\preamble{%" write$ newline$ + preamble$ write$ newline$ + "}" write$ newline$ + } + if$ +} + +FUNCTION {output:main:end} { + "\enddatalist" write$ newline$ + "\endinput" write$ newline$ +} + +EXECUTE {output:main:begin} + +EXECUTE {output:main:preamble} + +ITERATE {call.type$} + +EXECUTE {output:main:end} + +% ------------------------------------------------------------------- diff --git a/macros/latex/contrib/biblatex-ms/doc/biblatex-ms.pdf b/macros/latex/contrib/biblatex-ms/doc/biblatex-ms.pdf new file mode 100644 index 0000000000..6e1fc932b5 Binary files /dev/null and b/macros/latex/contrib/biblatex-ms/doc/biblatex-ms.pdf differ diff --git a/macros/latex/contrib/biblatex-ms/doc/biblatex-ms.tex b/macros/latex/contrib/biblatex-ms/doc/biblatex-ms.tex new file mode 100644 index 0000000000..586aea9add --- /dev/null +++ b/macros/latex/contrib/biblatex-ms/doc/biblatex-ms.tex @@ -0,0 +1,17269 @@ +\documentclass{ltxdockit}[2011/03/25] +\usepackage{btxdockit} +\usepackage{fontspec} +\newfontfamily{\quickch}{MS PGothic} +\usepackage{hyperref} +\usepackage{zref-xr} + +\setmonofont{Courier New} +\setmainfont[Ligatures=TeX]{Linux Libertine O} +\setsansfont[Ligatures=TeX]{Linux Biolinum O} +\newfontfamily\devanagarifont{Shobhika}[% + Script=Devanagari, + Renderer=Harfbuzz] +\newcommand*{\textdevanagari}[1]{{\devanagarifont #1}} +\usepackage[american]{babel} +\usepackage[strict]{csquotes} +\usepackage{tabularx} +\usepackage{longtable} +\usepackage{booktabs} +\usepackage{shortvrb} +\usepackage{pifont} +\usepackage{microtype} +\usepackage{typearea} +\usepackage{mdframed} +\areaset[current]{370pt}{700pt} +\lstset{ + basicstyle=\ttfamily, + keepspaces=true, + upquote=true, + frame=single, + breaklines=true, + postbreak=\raisebox{0ex}[0ex][0ex]{\ensuremath{\color{red}\hookrightarrow\space}} +} +\KOMAoptions{numbers=noenddot} +\addtokomafont{title}{\sffamily} +\addtokomafont{disposition}{\spotcolor} +\addtokomafont{descriptionlabel}{\spotcolor} +\setkomafont{caption}{\bfseries\sffamily\spotcolor} +\setkomafont{captionlabel}{\bfseries\sffamily\spotcolor} +\pretocmd{\cmd}{\sloppy}{}{} +\pretocmd{\bibfield}{\sloppy}{}{} +\pretocmd{\bibtype}{\sloppy}{}{} +\makeatletter +\RedeclareSectionCommand[% + beforeskip=-3.25ex\@plus -1ex \@minus -.2ex,% + afterskip=1.5ex \@plus .2ex,% +]{paragraph} +\RedeclareSectionCommand[% + beforeskip=-3.25ex\@plus -1ex \@minus -.2ex,% + indent=\z@,% +]{subparagraph} +\makeatother + +\MakeAutoQuote{«}{»} +\MakeAutoQuote*{<}{>} +\MakeShortVerb{\|} + +\newcommand*{\allowbreakhere}{\discretionary{}{}{}} + +\newcommand*{\biber}{\sty{biber}\xspace} +\newcommand*{\biblatex}{\sty{biblatex}\xspace} +\newcommand*{\biblatexml}{\sty{biblatexml}\xspace} +\newcommand*{\biblatexhome}{https://sourceforge.net/projects/biblatex/} +\newcommand*{\biblatexctan}{https://ctan.org/pkg/biblatex/} + +\titlepage{% + title={The \biblatex Package}, + subtitle={Programmable Bibliographies and Citations}, + url={\biblatexhome}, + author={Philip Kime, Moritz Wemheuer, Philipp Lehman}, + email={}, + revision={4.0}, + date={\today}} + +\hypersetup{% + pdftitle={The \biblatex Package}, + pdfsubject={Programmable Bibliographies and Citations}, + pdfauthor={Philipp Lehman, Philip Kime, Moritz Wemheuer}, + pdfkeywords={tex, latex, bibtex, bibliography, references, citation}} + +% tables + +\newcolumntype{H}{>{\sffamily\bfseries\spotcolor}l} +\newcolumntype{L}{>{\raggedright\let\\=\tabularnewline}p} +\newcolumntype{R}{>{\raggedleft\let\\=\tabularnewline}p} +\newcolumntype{C}{>{\centering\let\\=\tabularnewline}p} +\newcolumntype{V}{>{\raggedright\let\\=\tabularnewline\ttfamily}p} + +\newcommand*{\sorttablesetup}{% + \tablesetup + \ttfamily + \def\new{\makebox[1.25em][r]{\ensuremath\rightarrow}\,}% + \def\alt{\par\makebox[1.25em][r]{\ensuremath\hookrightarrow}\,}% + \def\note##1{\textrm{##1}}} + +\newcommand{\tickmarkyes}{\Pisymbol{psy}{183}} +\newcommand{\tickmarkno}{\textendash} +\providecommand*{\textln}[1]{#1} +\providecommand*{\lnstyle}{} + +% markup and misc + +\setcounter{secnumdepth}{4} + +\makeatletter + +\newenvironment{nameparts} + {\trivlist\item + \tabular{@{}ll@{}}} + {\endtabular\endtrivlist} + +\newenvironment{namedelims} + {\trivlist\item + \tabularx{\textwidth}{@{}c@{=}l>{\raggedright\let\\=\tabularnewline}X@{}}} + {\endtabularx\endtrivlist} + +\newenvironment{namesample} + {\def\delim##1##2{\@delim{##1}{\normalfont\tiny\bfseries##2}}% + \def\@delim##1##2{{% + \setbox\@tempboxa\hbox{##1}% + \@tempdima=\wd\@tempboxa + \wd\@tempboxa=\z@ + \box\@tempboxa + \begingroup\spotcolor + \setbox\@tempboxa\hb@xt@\@tempdima{\hss##2\hss}% + \vrule\lower1.25ex\box\@tempboxa + \endgroup}}% + \ttfamily\trivlist + \setlength\itemsep{0.5\baselineskip}} + {\endtrivlist} + +\makeatother + +\newrobustcmd*{\Deprecated}{% + \textcolor{spot}{\margnotefont Deprecated}} +\newrobustcmd*{\DeprecatedMark}{% + \leavevmode\marginpar{\Deprecated}} +\newrobustcmd*{\LF}{% + \textcolor{spot}{\margnotefont Label field}} +\newrobustcmd*{\LFMark}{% + \leavevmode\marginpar{\LF}} +\newrobustcmd*{\CSdelim}{% + \textcolor{spot}{\margnotefont Context Sensitive}} +\newrobustcmd*{\CSdelimMark}{% + \leavevmode\marginpar{\CSdelim}} + + +\newcommand*{\seestyleexample}[1]{% + \leavevmode + \marginpar{% + \raggedright + \footnotesize + Style example:\\ + \href{file:examples/#1.pdf}{local}, + \href{http://mirrors.ctan.org/macros/latex/contrib/biblatex/doc/examples/#1.pdf} + {online}.}% + \ignorespaces} + +% following snippet is based on code by Michael Ummels (TeX Stack Exchange) +% +\makeatletter + \newcommand\fnurl@[1]{\footnote{\url@{#1}}} + \DeclareRobustCommand{\fnurl}{\hyper@normalise\fnurl@} +\makeatother + +\hyphenation{% + star-red + bib-lio-gra-phy + white-space +} + +\begin{document} + +\printtitlepage +\tableofcontents +\listoftables + +\section{Introduction} +\label{int} + +\textcolor{red}{\textbf{NOTE}: This is the documentation for the + version of \biblatex. The package name is + <\texttt{biblatex-ms}> and it requires the multiscript version of \biber + (\texttt{biber-ms}). This version is expected in the future to be the + default and only version of \biblatex but currently, in order to garner + feedback and testing, it is a separate package which can be installed in + parallel with the standard version. It should be fully backwards + compatible with the standard \biblatex package but is considered + experimental and feedback is encourage via the \biblatex github + repository\fnurl{https://github.com/plk/biblatex}.}\\ + +This document is a systematic reference manual for the \biblatex package. Look at the sample documents which come with \biblatex to get a first impression.\fnurl{https://ctan.org/tex-archive/macros/latex/contrib/biblatex/doc/examples} +For a quick start guide, browse \secref{int:abt, bib:typ, bib:fld, bib:use, use:opt, use:xbx, use:bib, use:cit, use:use}. + +\subsection[About]{About \biblatex} +\label{int:abt} + +This package provides advanced bibliographic facilities for use with \latex. The package is a complete reimplementation of the bibliographic facilities provided by \latex. The \biblatex\ package works with the \enquote{backend} (program) \biber, which is used to process \bibtex\ format data files and them performs all sorting, label generation (and a great deal more). Formatting of the bibliography is entirely controlled by \tex\ macros. Good working knowledge in \latex should be sufficient to design new bibliography and citation styles. This package also supports subdivided bibliographies, multiple bibliographies within one document, and separate lists of bibliographic information such as abbreviations of various fields. Bibliographies may be subdivided into parts and\slash or segmented by topics. Just like the bibliography styles, all citation commands may be freely defined. Features such as full Unicode support for bibliography data, customisable sorting, multiple bibliographies with different sorting, customisable labels and dynamic data modification are available. Please refer to \secref{int:pre:bibercompat} for information on \biber/\biblatex version compatibility. The package is completely localised and can interface with the \sty{babel} and \sty{polyglossia} packages. Please refer to \tabref{bib:fld:tab1} for a list of languages currently supported by this package. + +\subsection{License} + +Copyright \textcopyright\ 2006--2012 Philipp Lehman, 2012--2017 Philip Kime, Audrey Boruvka, Joseph Wright, 2018-- Philip Kime and Moritz Wemheuer. Permission is granted to copy, distribute and\slash or modify this software under the terms of the \lppl, version~1.3.\fnurl{https://www.latex-project.org/lppl.txt} + +\subsection{Feedback} +\label{int:feb} + +Please use the \biblatex project page on GitHub to report bugs and submit feature requests.\fnurl{https://github.com/plk/biblatex} Before making a feature request, please ensure that you have thoroughly studied this manual. If you do not want to report a bug or request a feature but are simply in need of assistance, you might want to consider posting your question on the \texttt{comp.text.tex} newsgroup or \tex-\latex Stack Exchange.\fnurl{https://tex.stackexchange.com/questions/tagged/biblatex} + +\subsection{Acknowledgements} + +The package was originally written by Philipp Lehman and much of his excellent +original code remains in the core. Philip Kime took over the package in +2012 with Moritz Wemheuer making regular and valuable contributions from 2017. +The main authors would like to acknowledge the valuable help of Audrey +Boruvka and Joseph Wright who helped with the transition of ownership in +2012 and following years. + +The language modules of this package are made possible thanks to the following contributors:\\ +Ander Zarketa-Astigarraga (Basque); +Augusto Ritter Stoffel, Mateus Araújo, Gustavo Barros (Brazilian); +Kaloyan Ganev (Bulgarian); +Sebastià Vila-Marta (Catalan); +Ivo Pletikosić (Croatian); +Michal Hoftich (Czech); +Christian Mondrup, Jonas Nyrup (Danish); +Johannes Wilm (Danish\slash Norwegian); +Alexander van Loon, Pieter Belmans, Hendrik Maryns (Dutch); +Kristian Kankainen, Benson Muite (Estonian); +Hannu Väisänen, Janne Kujanpää (Finnish); +Denis Bitouzé (French); +Apostolos Syropoulos, Prokopis (Greek); +Márton Marczell, Bence Ferdinandy (Hungarian); +Baldur Kristinsson (Icelandic); +Enrico Gregorio, Andrea Marchitelli (Italian); +Rihards Skuja (Latvian); +Valdemaras Klumbys (Lithuanian); +\textdevanagari{निरंजन} (Marathi); +Håkon Malmedal, Hans Fredrik Nordhaug (Norwegian); +Anastasia Kandulina, Yuriy Chernyshov (Polish); +José Carlos Santos (Portuguese); +Patrick Danilevici (Romanian); +Oleg Domanov (Russian); +Andrej Radović (Serbian); +Martin Vrábel, Dávid Lupták (Slovak); +Tea Tušar, Bogdan Filipič (Slovene); +Ignacio Fernández Galván (Spanish); +Per Starbäck, Carl-Gustav Werner, Filip Åsblom (Swedish); +Abdulkerim Gok (Turkish); +Sergiy M. Ponomarenko (Ukrainian). + +\subsection{Prerequisites} +\label{int:pre} + +This section gives an overview of all resources required by this package and discusses compatibility issues. + +\subsubsection{Requirements} +\label{int:pre:req} + +The resources listed in this section are strictly required for \biblatex to function. The package will not work if they are not available. + +\begin{marglist} + +\item[\etex] +The \biblatex package requires \etex. \tex distributions have been providing \etex binaries for quite some time, the popular distributions use them by default these days. The \biblatex package checks if it is running under \etex. Simply try compiling your documents as you usually do, the chances are that it just works. If you get an error message, try compiling the document with \bin{elatex} instead of \bin{latex} or \bin{pdfelatex} instead of \bin{pdflatex}, respectively. + +\item[\biber] +\biber is the backend of \biblatex used to transfer data from source files to the \latex code. \biber comes with TeX Live and is also available from SourceForge.\fnurl{https://biblatex-biber.sourceforge.net/}. \biber uses the \texttt{btparse} C library for \bibtex format file parsing which aimed to be compatible with \bibtex's parsing rules but also aimed at correcting some of the common problems. For details, see the manual page for the Perl \texttt{Text::BibTeX} module\fnurl{https://metacpan.org/release/Text-BibTeX}. + +\item[etoolbox] +This \latex package, which is loaded automatically, provides generic programming facilities required by \biblatex. It is available from \acr{CTAN}.\fnurl{https://ctan.org/pkg/etoolbox} + +\item[kvoptions] +This \latex package, which is also loaded automatically, is used for internal option handling. It is available from \acr{CTAN}.\fnurl{https://ctan.org/pkg/kvoptions} + +\item[logreq] +This \latex package, which is also loaded automatically, provides a frontend for writing machine-readable messages to an auxiliary log file. It is available from \acr{CTAN}.\fnurl{https://ctan.org/pkg/logreq/} + +\item[pdftexcmds] +This \latex package, which is loaded automatically, implements \pdftex primitives for \luatex, it also offers a unified interface for these primitives across engines. It is available from \acr{CTAN}.\fnurl{https://ctan.org/pkg/pdftexcmds/} + +\biblatex uses \sty{pdftexcmds} to access the MD5 hash primitives, so version~0.27 (2018/01/30) or above is strongly recommended. + +\end{marglist} + +Apart from the above resources, \biblatex also requires the standard \latex packages \sty{keyval} and \sty{ifthen} as well as the \sty{url} package. These package are included in all common \tex distributions and will be loaded automatically. + +\subsubsection{Recommended Packages} +\label{int:pre:rec} + +The packages listed in this section are not strictly required for \biblatex to function, but they provide recommended additional functions or enhance existing features. + +\begin{marglist} + +\item[babel/polyglossia] +The \sty{babel} and \sty{polyglossia} packages provides the core architecture for multilingual typesetting. If you are writing in a language other than American English, using one of these packages is strongly recommended. You should load \sty{babel} or \sty{polyglossia} before \biblatex and then \biblatex will detect \sty{babel} or \sty{polyglossia} automatically. (While \sty{babel} may be loaded after \biblatex if so desired, \sty{polyglossia} must always be loaded before \biblatex.) + +\biblatex has only limited support for \sty{polyglossia} versions prior to~v1.45 (2019/10/27). Additional useful features for \biblatex were added in version~1.49. If \sty{polyglossia} is used, it should be updated to version~1.49 (2020/04/08) or above. + +The minimum supported \sty{babel} version is~v3.9r (2016/04/23). + +\item[csquotes] +If this package is available, \biblatex will use its language sensitive quotation facilities to enclose certain titles in quotation marks. If not, \biblatex uses quotes suitable for American English as a fallback. When writing in a language other than American English, loading \sty{csquotes} is strongly recommended.\fnurl{https://ctan.org/pkg/csquotes/} + +\end{marglist} + +\subsubsection{Additional Useful Packages} +\label{int:pre:add} + +The packages listed in this section are not required for \biblatex to function, but provide additional specialist functions or enhance existing features. These packages generally only need to be loaded if their functionality is explicitly desired. The package loading order usually does not matter. + +\begin{marglist} + +\item[xpatch] +The \sty{xpatch} package extends the patching commands of \sty{etoolbox} to \biblatex bibliography macros, drivers and formatting directives.\fnurl{https://ctan.org/pkg/xpatch/} Its commands are useful to apply surgical-precision changes to bibliography macros, drivers or formatting directives without having to restate the whole definition to change it. The \biblatex core does not need or use these patching commands and styles that make use of them should load the package themselves. + +\end{marglist} + +\subsubsection{Compatible Classes and Packages} +\label{int:pre:cmp} + +The \biblatex package provides dedicated compatibility code for the classes and packages listed in this section. + +\begin{marglist} + +\item[hyperref] +The \sty{hyperref} package transforms citations into hyperlinks. See the \opt{hyperref} and \opt{backref} package options in \secref{use:opt:pre:gen} for further details. When using the \sty{hyperref} package, it is preferable to load it after \biblatex. + +\item[showkeys] +The \sty{showkeys} package prints the internal keys of, among other things, citations in the text and items in the bibliography. The package loading order does not matter. + +\item[memoir] +When using the \sty{memoir} class, the default bibliography headings are adapted such that they blend well with the default layout of this class. See \secref{use:cav:mem} for further usage hints. + +\item[\acr{KOMA}-Script] +When using any of the \sty{scrartcl}, \sty{scrbook}, or \sty{scrreprt} classes, the default bibliography headings are adapted such that they blend with the default layout of these classes. See \secref{use:cav:scr} for further usage hints. + +If available \biblatex makes use of some of the more recent of \acr{KOMA}-Script's \emph{do-hooks}. The relevant hooks are present from version~3.27 (2019/10/12) onwards, which is therefore the minimum version recommendation. + +\end{marglist} + +\subsubsection{Incompatible Packages} +\label{int:pre:inc} + +The packages listed in this section are not compatible with \biblatex. Since it reimplements the bibliographic facilities of \latex from the ground up, \biblatex naturally conflicts with all packages modifying the same facilities. This is not specific to \biblatex. Some of the packages listed below are also incompatible with each other for the same reason. + +\begin{marglist} + +\item[babelbib] +The \sty{babelbib} package provides support for multilingual bibliographies. This is a standard feature of \biblatex. Use the \bibfield{langid} field and the package option \opt{autolang} for similar functionality. Note that \biblatex automatically adjusts to the main document language if \sty{babel} or \sty{polyglossia} is loaded. You only need the above mentioned features if you want to switch languages on a per"=entry basis within the bibliography. See \secref{bib:fld:spc, use:opt:pre:gen} for details. Also see \secref{use:lng}. + +\item[backref] +The \sty{backref} package creates back references in the bibliography. See the package options \opt{hyperref} and \opt{backref} in \secref{use:opt:pre:gen} for comparable functionality. + +\item[bibtopic] +The \sty{bibtopic} package provides support for bibliographies subdivided by topic, type, or other criteria. For bibliographies subdivided by topic, see the category feature in \secref{use:bib:cat} and the corresponding filters in \secref{use:bib:bib}. Alternatively, you may use the \bibfield{keywords} field in conjunction with the \opt{keyword} and \opt{notkeyword} filters for comparable functionality, see \secref{bib:fld:spc, use:bib:bib} for details. For bibliographies subdivided by type, use the \opt{type} and \opt{nottype} filters. Also see \secref{use:use:div} for examples. + +\item[bibunits] +The \sty{bibunits} package provides support for multiple partial (\eg per chapter) bibliographies. See \sty{chapterbib}. + +\item[chapterbib] +The \sty{chapterbib} package provides support for multiple partial bibliographies. Use the \env{refsection} environment and the \opt{section} filter for comparable functionality. Alternatively, you might also want to use the \env{refsegment} environment and the \opt{segment} filter. See \secref{use:bib:sec, use:bib:seg, use:bib:bib} for details. Also see \secref{use:use:mlt} for examples. + +\item[cite] +The \sty{cite} package automatically sorts numeric citations and can compress a list of consecutive numbers to a range. It also makes the punctuation used in citations configurable. For sorted and compressed numeric citations, see the \opt{sortcites} package option in \secref{use:opt:pre:gen} and the \texttt{numeric-comp} citation style in \secref{use:xbx:cbx}. For configurable punctuation, see \secref{use:fmt}. + +\item[citeref] +Another package for creating back references in the bibliography. See \sty{backref}. + +\item[inlinebib] +The \sty{inlinebib} package is designed for traditional citations given in footnotes. For comparable functionality, see the verbose citation styles in \secref{use:xbx:cbx}. + +\item[jurabib] +Originally designed for citations in law studies and (mostly German) judicial documents, the \sty{jurabib} package also provides features aimed at users in the humanities. In terms of the features provided, there are some similarities between \sty{jurabib} and \biblatex but the approaches taken by both packages are quite different. Since both \sty{jurabib} and \biblatex are full"=featured packages, the list of similarities and differences is too long to be discussed here. + +\item[mcite] +The \sty{mcite} package provides support for grouped citations, \ie multiple items can be cited as a single reference and listed as a single block in the bibliography. The citation groups are defined as the items are cited. This only works with unsorted bibliographies. The \biblatex package also supports grouped citations, which are called or in this manual. See \secref{use:use:set,use:bib:set,use:cit:mct} for details. + +\item[mciteplus] +A significantly enhanced reimplementation of the \sty{mcite} package which supports grouping in sorted bibliographies. See \sty{mcite}. + +\item[multibib] +The \sty{multibib} package provides support for bibliographies subdivided by topic or other criteria. See \sty{bibtopic}. + +\item[natbib] +The \sty{natbib} package supports numeric and author"=year citation schemes, incorporating sorting and compression code found in the \sty{cite} package. It also provides additional citation commands and several configuration options. See the \texttt{numeric} and \texttt{author-year} citation styles and their variants in \secref{use:xbx:cbx}, the \opt{sortcites} package option in \secref{use:opt:pre:gen}, the citation commands in \secref{use:cit}, and the facilities discussed in \secref{use:bib:hdg, use:bib:nts, use:fmt} for comparable functionality. Also see \secref{use:cit:nat}. + +\item[splitbib] +The \sty{splitbib} package provides support for bibliographies subdivided by topic. See \sty{bibtopic}. + +\item[titlesec] +The \sty{titlesec} package redefines user-level document division commands such as \cmd{chapter} or \cmd{section}. This approach is not compatible with internal command changes applied by the \biblatex \opt{refsection}, \opt{refsegment} and \opt{citereset} option settings described in \secref{use:opt:pre:gen}. + +\item[ucs] +The \sty{ucs} package provides support for \utf encoded input, but it does so in a way incompatible with \biblatex. + +If you get an error about \sty{ucs} being loaded, but you don't load it explicitly in your preamble, check that you don't load \sty{inputenc}'s \file{utf8x} module: \verb|\usepackage[utf8x]{inputenc}| will also load \sty{ucs}. + +Instead of \sty{ucs}/\file{utf8x} use a Unicode engine such as \xetex or \luatex if you want full Unicode support. If you use \pdftex or \tex, the Unicode characters predefined by the \latex format are usually enough for many use cases (this is true for \latex from April 2018 or later, in older versions load \sty{inputenc} with the \file{utf8} module) and missing characters can be defined using \cmd{DeclareUnicodeCharacter} or \sty{newunicodechar}'s \cmd{newunicodechar}. + +\item[etextools] +The \sty{etextools} package provides enhancements to list macros defined by \sty{etoolbox} and a few other tools for command definitions. +The package redefines list handling macros in a way incompatible with \biblatex. + +If you must load the \sty{etextools} package at all costs, define the control sequence \cs{blx@noerroretextools} before you load \biblatex. +If \cs{blx@noerroretextools} is defined, no error will be issued if \sty{etextools} is loaded, the message is degraded to a warning instead. +In that case you need to make sure that all redefined macros used by \biblatex\ (currently only \cmd{forlistloop}) have their original \sty{etoolbox} definitions when \biblatex\ is loaded. + +\end{marglist} + +\subsubsection{Compatibility Matrix for \biber} +\label{int:pre:bibercompat} + +\biber\ versions are closely coupled with \biblatex\ versions. You +need to have the right combination of the two. \biber\ will throw a fatal error +during processing if it encounters information which comes from a +\biblatex\ version which is incompatible. \Tabref{tab:int:pre:bibercompat} shows a +compatibility matrix for the recent versions. + +\begin{table} +\caption{\biber/\biblatex\ compatibility matrix} +\label{tab:int:pre:bibercompat} +\tablesetup\centering +\begin{tabular}{cc} +\toprule +\sffamily\bfseries\spotcolor Biber version + & \sffamily\bfseries\spotcolor \biblatex\ version\\ +\midrule +2.18 & 3.18\\ +2.17 & 3.17\\ +2.16 & 3.16\\ +2.15 & 3.15\\ +2.14 & 3.14\\ +2.13 & 3.13\\ +2.12 & 3.12\\ +2.11 & 3.11\\ +2.10 & 3.10\\ +2.9 & 3.9\\ +2.8 & 3.8\\ +2.7 & 3.7\\ +2.6 & 3.5, 3.6\\ +2.5 & 3.4\\ +2.4 & 3.3\\ +2.3 & 3.2\\ +2.2 & 3.1\\ +2.1 & 3.0\\ +2.0 & 3.0\\ +1.9 & 2.9\\ +1.8 & 2.8\\ +1.7 & 2.7\\ +1.6 & 2.6\\ +1.5 & 2.5\\ +1.4 & 2.4\\ +1.3 & 2.3\\ +1.2 & 2.1, 2.2\\ +1.1 & 2.1\\ +1.0 & 2.0\\ +0.9.9 & 1.7x\\ +0.9.8 & 1.7x\\ +0.9.7 & 1.7x\\ +0.9.6 & 1.7x\\ +0.9.5 & 1.6x\\ +0.9.4 & 1.5x\\ +0.9.3 & 1.5x\\ +0.9.2 & 1.4x\\ +0.9.1 & 1.4x\\ +0.9 & 1.4x\\ +\bottomrule +\end{tabular} +\end{table} + +\section{Database Guide} +\label{bib} + +This section describes the default data model defined in the \file{blx-dm.def} file which is part of \path{biblatex}. The data model is defined using the macros documented in \secref{aut:ctm:dm}. It is possible to redefine the data model which both \biblatex and \biber use so that datasources can contain new entrytypes and fields (which of course will need style support). The data model specification also allows for constraints to be defined so that data sources can be validated against the data model (using \biber's \opt{--validate-datamodel} option). Users who want to customise the data model need to look at the \file{blx-dm.def} file and to read \secref{aut:ctm:dm}. + +All entry types and field names are given in all-lowercase form here. This is how the entry types and field names are given in the data model. While the \biber/\bibtex input side is case insensitive, the \latex side is case sensitive and uses the exact capitalisation from the data model. This means that the input in the \file{bib} file may use any capitalisation of entry types and field names, but when the fields are used in the \latex document---for example in \cmd{citefield}---the capitalisation must match the captalisation in the data model, for standard types and fields that would be all lowercase. + +\subsection{Entry Types} +\label{bib:typ} + +This section gives an overview of the entry types supported by the default \biblatex data model along with the fields supported by each type. + +\subsubsection{Regular Types} +\label{bib:typ:blx} + +The lists below indicate the fields supported by each entry type. Note that the mapping of fields to an entry type is ultimately at the discretion of the bibliography style. The lists below therefore serve two purposes. They indicate the fields supported by the standard styles which come with this package and they also serve as a model for custom styles. Note that the fields are not strictly required in all cases, see \secref{bib:use:key} for details. The fields marked as are optional in a technical sense. Bibliographical formatting rules usually require more than just the fields. The default data model defined a few constraints for the format of date fields, ISBNs and some special fields like \bibfield{gender} but the constraints are only used if validating against the data model with \biber's \opt{--validate-datamodel} option. Generic fields like \bibfield{abstract} and \bibfield{annotation} or \bibfield{label} and \bibfield{shorthand} are not included in the lists below because they are independent of the entry type. The special fields discussed in \secref{bib:fld:spc}, which are also independent of the entry type, are not included in the lists either. See the default data model specification in the file \file{blx-dm.def} which comes with \biblatex for a complete specification. + +The relation referred to in this subsection is the defined with \cmd{DeclareBibliographyAlias}. That means that the alias will use the same bibliography driver as the type it is aliased to, but that its type-specific formatting is still handled independently of the aliased type. + +\begin{typelist} + +\typeitem{article} + +An article in a journal, magazine, newspaper, or other periodical which forms a self"=contained unit with its own title. The title of the periodical is given in the \bibfield{journaltitle} field. If the issue has its own title in addition to the main title of the periodical, it goes in the \bibfield{issuetitle} field. Note that \bibfield{editor} and related fields refer to the journal while \bibfield{translator} and related fields refer to the article. + +\reqitem{author, title, journaltitle, year/date} +\optitem{translator, annotator, commentator, subtitle, titleaddon, editor, editora, editorb, editorc, journalsubtitle, journaltitleaddon, issuetitle, issuesubtitle, issuetitleaddon, language, origlanguage, series, volume, number, eid, issue, month, pages, version, note, issn, addendum, pubstate, doi, eprint, eprintclass, eprinttype, url, urldate} + +\typeitem{book} + +A single"=volume book with one or more authors where the authors share credit for the work as a whole. This entry type also covers the function of the \bibtype{inbook} type of traditional \bibtex, see \secref{bib:use:inb} for details. + +\reqitem{author, title, year/date} +\optitem{editor, editora, editorb, editorc, translator, annotator, commentator, introduction, foreword, afterword, subtitle, titleaddon, maintitle, mainsubtitle, maintitleaddon, language, origlanguage, volume, part, edition, volumes, series, number, note, publisher, location, isbn, eid, chapter, pages, pagetotal, addendum, pubstate, doi, eprint, eprintclass, eprinttype, url, urldate} + +\typeitem{mvbook} + +A multi"=volume \bibtype{book}. For backwards compatibility, multi"=volume books are also supported by the entry type \bibtype{book}. However, it is advisable to make use of the dedicated entry type \bibtype{mvbook}. + +\reqitem{author, title, year/date} +\optitem{editor, editora, editorb, editorc, translator, annotator, commentator, introduction, foreword, afterword, subtitle, titleaddon, language, origlanguage, edition, volumes, series, number, note, publisher, location, isbn, pagetotal, addendum, pubstate, doi, eprint, eprintclass, eprinttype, url, urldate} + +\typeitem{inbook} + +A part of a book which forms a self"=contained unit with its own title. Note that the profile of this entry type is different from standard \bibtex, see \secref{bib:use:inb}. + +\reqitem{author, title, booktitle, year/date} +\optitem{bookauthor, editor, editora, editorb, editorc, translator, annotator, commentator, introduction, foreword, afterword, subtitle, titleaddon, maintitle, mainsubtitle, maintitleaddon, booksubtitle, booktitleaddon, language, origlanguage, volume, part, edition, volumes, series, number, note, publisher, location, isbn, eid, chapter, pages, addendum, pubstate, doi, eprint, eprintclass, eprinttype, url, urldate} + +\typeitem{bookinbook} + +This type is similar to \bibtype{inbook} but intended for works originally published as a stand-alone book. A typical example are books reprinted in the collected works of an author. + +\typeitem{suppbook} + +Supplemental material in a \bibtype{book}. This type is closely related to the \bibtype{inbook} entry type. While \bibtype{inbook} is primarily intended for a part of a book with its own title (\eg a single essay in a collection of essays by the same author), this type is provided for elements such as prefaces, introductions, forewords, afterwords, etc. which often have a generic title only. Style guides may require such items to be formatted differently from other \bibtype{inbook} items. The standard styles will treat this entry type as an alias for \bibtype{inbook}. + +\typeitem{booklet} + +A book"=like work without a formal publisher or sponsoring institution. Use the field \bibfield{howpublished} to supply publishing information in free format, if applicable. The field \bibfield{type} may be useful as well. + +\reqitem{author/editor, title, year/date} +\optitem{subtitle, titleaddon, language, howpublished, type, note, location, eid, chapter, pages, pagetotal, addendum, pubstate, doi, eprint, eprintclass, eprinttype, url, urldate} + +\typeitem{collection} + +A single"=volume collection with multiple, self"=contained contributions by distinct authors which have their own title. The work as a whole has no overall author but it will usually have an editor. + +\reqitem{editor, title, year/date} +\optitem{editora, editorb, editorc, translator, annotator, commentator, introduction, foreword, afterword, subtitle, titleaddon, maintitle, mainsubtitle, maintitleaddon, language, origlanguage, volume, part, edition, volumes, series, number, note, publisher, location, isbn, eid, chapter, pages, pagetotal, addendum, pubstate, doi, eprint, eprintclass, eprinttype, url, urldate} + +\typeitem{mvcollection} + +A multi"=volume \bibtype{collection}. For backwards compatibility, multi"=volume collections are also supported by the entry type \bibtype{collection}. However, it is advisable to make use of the dedicated entry type \bibtype{mvcollection}. + +\reqitem{editor, title, year/date} +\optitem{editora, editorb, editorc, translator, annotator, commentator, introduction, foreword, afterword, subtitle, titleaddon, language, origlanguage, edition, volumes, series, number, note, publisher, location, isbn, pagetotal, addendum, pubstate, doi, eprint, eprintclass, eprinttype, url, urldate} + +\typeitem{incollection} + +A contribution to a collection which forms a self"=contained unit with a distinct author and title. The \bibfield{author} refers to the \bibfield{title}, the \bibfield{editor} to the \bibfield{booktitle}, \ie the title of the collection. + +\reqitem{author, title, editor, booktitle, year/date} +\optitem{editor, editora, editorb, editorc, translator, annotator, commentator, introduction, foreword, afterword, subtitle, titleaddon, maintitle, mainsubtitle, maintitleaddon, booksubtitle, booktitleaddon, language, origlanguage, volume, part, edition, volumes, series, number, note, publisher, location, isbn, eid, chapter, pages, addendum, pubstate, doi, eprint, eprintclass, eprinttype, url, urldate} + +\typeitem{suppcollection} + +Supplemental material in a \bibtype{collection}. This type is similar to \bibtype{suppbook} but related to the \bibtype{collection} entry type. The standard styles will treat this entry type as an alias for \bibtype{incollection}. + +\typeitem{dataset} + +A data set or a similar collection of (mostly) raw data. + +\reqitem{author/editor, title, year/date} +\optitem{subtitle, titleaddon, language, edition, type, series, number, version, note, organization, publisher, location, addendum, pubstate, doi, eprint, eprintclass, eprinttype, url, urldate} + +\typeitem{manual} + +Technical or other documentation, not necessarily in printed form. The \bibfield{author} or \bibfield{editor} is omissible in terms of \secref{bib:use:key}. + +\reqitem{author/editor, title, year/date} +\optitem{subtitle, titleaddon, language, edition, type, series, number, version, note, organization, publisher, location, isbn, eid, chapter, pages, pagetotal, addendum, pubstate, doi, eprint, eprintclass, eprinttype, url, urldate} + +\typeitem{misc} + +A fallback type for entries which do not fit into any other category. Use the field \bibfield{howpublished} to supply publishing information in free format, if applicable. The field \bibfield{type} may be useful as well. \bibfield{author}, \bibfield{editor}, and \bibfield{year} are omissible in terms of \secref{bib:use:key}. + +\reqitem{author/editor, title, year/date} +\optitem{subtitle, titleaddon, language, howpublished, type, version, note, organization, location, month, addendum, pubstate, doi, eprint, eprintclass, eprinttype, url, urldate} + +\typeitem{online} + +An online resource. \bibfield{author}, \bibfield{editor}, and \bibfield{year} are omissible in terms of \secref{bib:use:key}. This entry type is intended for sources such as web sites which are intrinsically online resources. Note that all entry types support the \bibfield{url} field. For example, when adding an article from an online journal, it may be preferable to use the \bibtype{article} type and its \bibfield{url} field. + +\reqitem{author/editor, title, year/date, doi/eprint/url} +\optitem{subtitle, titleaddon, language, version, note, organization, month, addendum, pubstate, eprintclass, eprinttype, urldate} + +\typeitem{patent} + +A patent or patent request. The number or record token is given in the \bibfield{number} field. Use the \bibfield{type} field to specify the type and the \bibfield{location} field to indicate the scope of the patent, if different from the scope implied by the \bibfield{type}. Note that the \bibfield{location} field is treated as a key list with this entry type, see \secref{bib:fld:typ} for details. + +\reqitem{author, title, number, year/date} +\optitem{holder, subtitle, titleaddon, type, version, location, note, month, addendum, pubstate, doi, eprint, eprintclass, eprinttype, url, urldate} + +\typeitem{periodical} + +An complete issue of a periodical, such as a special issue of a journal. The title of the periodical is given in the \bibfield{title} field. If the issue has its own title in addition to the main title of the periodical, it goes in the \bibfield{issuetitle} field. The \bibfield{editor} is omissible in terms of \secref{bib:use:key}. + +\reqitem{editor, title, year/date} +\optitem{editora, editorb, editorc, subtitle, titleaddon, issuetitle, issuesubtitle, issuetitleaddon, language, series, volume, number, issue, month, note, issn, addendum, pubstate, doi, eprint, eprintclass, eprinttype, url, urldate} + +\typeitem{suppperiodical} + +Supplemental material in a \bibtype{periodical}. This type is similar to \bibtype{suppbook} but related to the \bibtype{periodical} entry type. The role of this entry type may be more obvious if you bear in mind that the \bibtype{article} type could also be called \bibtype{inperiodical}. This type may be useful when referring to items such as regular columns, obituaries, letters to the editor, etc. which only have a generic title. Style guides may require such items to be formatted differently from articles in the strict sense of the word. The standard styles will treat this entry type as an alias for \bibtype{article}. + +\typeitem{proceedings} + +A single"=volume conference proceedings. This type is very similar to \bibtype{collection}. It supports an optional \bibfield{organization} field which holds the sponsoring institution. The \bibfield{editor} is omissible in terms of \secref{bib:use:key}. + +\reqitem{title, year/date} +\optitem{editor, subtitle, titleaddon, maintitle, mainsubtitle, maintitleaddon, eventtitle, eventtitleaddon, eventdate, venue, language, volume, part, volumes, series, number, note, organization, publisher, location, month, isbn, eid, chapter, pages, pagetotal, addendum, pubstate, doi, eprint, eprintclass, eprinttype, url, urldate} + +\typeitem{mvproceedings} + +A multi"=volume \bibtype{proceedings} entry. For backwards compatibility, multi"=volume proceedings are also supported by the entry type \bibtype{proceedings}. However, it is advisable to make use of the dedicated entry type \bibtype{mvproceedings} + +\reqitem{title, year/date} +\optitem{editor, subtitle, titleaddon, eventtitle, eventtitleaddon, eventdate, venue, language, volumes, series, number, note, organization, publisher, location, month, isbn, pagetotal, addendum, pubstate, doi, eprint, eprintclass, eprinttype, url, urldate} + +\typeitem{inproceedings} + +An article in a conference proceedings. This type is similar to \bibtype{incollection}. It supports an optional \bibfield{organization} field. + +\reqitem{author, title, booktitle, year/date} +\optitem{editor, subtitle, titleaddon, maintitle, mainsubtitle, maintitleaddon, booksubtitle, booktitleaddon, eventtitle, eventtitleaddon, eventdate, venue, language, volume, part, volumes, series, number, note, organization, publisher, location, month, isbn, eid, chapter, pages, addendum, pubstate, doi, eprint, eprintclass, eprinttype, url, urldate} + +\typeitem{reference} + +A single"=volume work of reference such as an encyclopedia or a dictionary. This is a more specific variant of the generic \bibtype{collection} entry type. The standard styles will treat this entry type as an alias for \bibtype{collection}. + +\typeitem{mvreference} + +A multi"=volume \bibtype{reference} entry. The standard styles will treat this entry type as an alias for \bibtype{mvcollection}. For backwards compatibility, multi"=volume references are also supported by the entry type \bibtype{reference}. However, it is advisable to make use of the dedicated entry type \bibtype{mvreference}. + +\typeitem{inreference} + +An article in a work of reference. This is a more specific variant of the generic \bibtype{incollection} entry type. The standard styles will treat this entry type as an alias for \bibtype{incollection}. + +\typeitem{report} + +A technical report, research report, or white paper published by a university or some other institution. Use the \bibfield{type} field to specify the type of report. The sponsoring institution goes in the \bibfield{institution} field. + +\reqitem{author, title, type, institution, year/date} +\optitem{subtitle, titleaddon, language, number, version, note, location, month, isrn, eid, chapter, pages, pagetotal, addendum, pubstate, doi, eprint, eprintclass, eprinttype, url, urldate} + +\typeitem{set} + +An entry set. This entry type is special, see \secref{use:use:set} for details. + +\typeitem{software} + +Computer software. The standard styles will treat this entry type as an alias for \bibtype{misc}. + +\typeitem{thesis} + +A thesis written for an educational institution to satisfy the requirements for a degree. Use the \bibfield{type} field to specify the type of thesis. + +\reqitem{author, title, type, institution, year/date} +\optitem{subtitle, titleaddon, language, note, location, month, isbn, eid, chapter, pages, pagetotal, addendum, pubstate, doi, eprint, eprintclass, eprinttype, url, urldate} + +\typeitem{unpublished} + +A work with an author and a title which has not been formally published, such as a manuscript or the script of a talk. Use the fields \bibfield{howpublished} and \bibfield{note} to supply additional information in free format, if applicable. + +\reqitem{author, title, year/date} +\optitem{subtitle, titleaddon, type, eventtitle, eventtitleaddon, eventdate, venue, language, howpublished, note, location, isbn, month, addendum, pubstate, doi, eprint, eprintclass, eprinttype, url, urldate} + +\typeitem{xdata} + +This entry type is special. \bibtype{xdata} entries hold data which may be inherited by other entries using the \bibfield{xdata} field. Entries of this type only serve as data containers; they may not be cited or added to the bibliography. See \secref{use:use:xdat} for details. + +\typeitem{custom[a--f]} + +Custom types for special bibliography styles. The standard styles defined no bibliography drivers for these types and will fall back to using the driver for \bibtype{misc}. + +\end{typelist} + +\subsubsection{Type Aliases} +\label{bib:typ:als} + +The entry types listed in this section are provided for backwards compatibility with traditional \bibtex styles. These aliases are resolved by the backend as the data is processed. \biblatex and the styles will see only the entry type the alias points to (the target), not the alias name (the source). In particular \biblatex-side per-type operations like type-specific formatting and filtering only work for the target type, not the source type. This is unlike the relation in the previous subsection. The relevant mappings for the \opt{bibtex} driver can be found in~\secref{apx:maps:bibtex}. + +\begin{typelist} + +\typeitem{conference} A legacy alias for \bibtype{inproceedings}. + +\typeitem{electronic} An alias for \bibtype{online}. + +\typeitem{mastersthesis} Similar to \bibtype{thesis} except that the \bibfield{type} field is optional and defaults to the localised term . You may still use the \bibfield{type} field to override that. + +\typeitem{phdthesis} Similar to \bibtype{thesis} except that the \bibfield{type} field is optional and defaults to the localised term . You may still use the \bibfield{type} field to override that. + +\typeitem{techreport} Similar to \bibtype{report} except that the \bibfield{type} field is optional and defaults to the localised term . You may still use the \bibfield{type} field to override that. + +\typeitem{www} + +An alias for \bibtype{online}, provided for \sty{jurabib} compatibility. + +\end{typelist} + +\subsubsection{Non-standard Types} +\label{bib:typ:ctm} + +The types in this section are similar to the custom types \bibtype{custom[a--f]}, \ie the standard bibliography styles provide no bibliography drivers for these types. In the standard styles they will use the bibliography driver for \bibtype{misc} entries---exceptions to this rule are noted in the descriptions below. The types are known to the default data model and will be happily accepted by \biber. + +\begin{typelist} + +\typeitem{artwork} + +Works of the visual arts such as paintings, sculpture, and installations. + +\typeitem{audio} + +Audio recordings, typically on audio \acr{CD}, \acr{DVD}, audio cassette, or similar media. See also \bibtype{music}. + +\typeitem{bibnote} + +This special entry type is not meant to be used in the \file{bib} file like other types. It is provided for third-party packages like \sty{notes2bib} which merge notes into the bibliography. The notes should go into the \bibfield{note} field. Be advised that the \bibtype{bibnote} type is not related to the \cmd{defbibnote} command in any way. \cmd{defbibnote} is for adding comments at the beginning or the end of the bibliography, whereas the \bibtype{bibnote} type is meant for packages which render endnotes as bibliography entries. + +\typeitem{commentary} + +Commentaries which have a status different from regular books, such as legal commentaries. + +\typeitem{image} + +Images, pictures, photographs, and similar media. + +\typeitem{jurisdiction} + +Court decisions, court recordings, and similar things. + +\typeitem{legislation} + +Laws, bills, legislative proposals, and similar things. + +\typeitem{legal} + +Legal documents such as treaties. + +\typeitem{letter} + +Personal correspondence such as letters, emails, memoranda, etc. + +\typeitem{movie} + +Motion pictures. See also \bibtype{video}. + +\typeitem{music} + +Musical recordings. This is a more specific variant of \bibtype{audio}. + +\typeitem{performance} + +Musical and theatrical performances as well as other works of the performing arts. This type refers to the event as opposed to a recording, a score, or a printed play. + +\typeitem{review} + +Reviews of some other work. This is a more specific variant of the \bibtype{article} type. The standard styles will treat this entry type as an alias for \bibtype{article}. + +\typeitem{standard} + +National and international standards issued by a standards body such as the International Organization for Standardization. + +\typeitem{video} + +Audiovisual recordings, typically on \acr{DVD}, \acr{VHS} cassette, or similar media. See also \bibtype{movie}. + +\end{typelist} + +\subsection{Entry Fields} +\label{bib:fld} + +This section gives an overview of the fields supported by the \biblatex default data model. See \secref{bib:fld:typ} for an introduction to the data types used by the data model specification and \secref{bib:fld:dat, bib:fld:spc} for the actual field listings. + +\subsubsection{Data Types} +\label{bib:fld:typ} + +In datasources such as a \file{bib} file, all bibliographic data is specified in fields. Some of those fields, for example \bibfield{author} and \bibfield{editor}, may contain a list of items. This list structure is implemented by the \bibtex file format via the keyword <|and|>, which is used to separate the individual items in the list. The \biblatex package implements three distinct data types to handle bibliographic data: name lists, literal lists, and fields. There are also several list and field subtypes and a content type which can be used to semantically distinguish fields which are otherwise not distinguishable on the basis of only their datatype (see \secref{aut:ctm:dm}). This section gives an overview of the data types supported by this package. See \secref{bib:fld:dat, bib:fld:spc} for information about the mapping of the \bibtex file format fields to \biblatex's data types. + +Entry fields of any data type may be multiscript entry fields which means that they can have multiple which are combinations of a multiscript
and . Multiscript entry fields must be declared to be such in the data model. See \ref{use:multiscript}. + +\begin{description} + +\item[Name lists] are parsed and split up into the individual items at the \texttt{and} delimiter. Each item in the list is then dissected into the name part components: by default the given name, the name prefix (von, van, of, da, de, della, \dots), the family name, and the name suffix (junior, senior, \dots). The valid name parts can be customised by changing the datamodel definition described in \secref{aut:bbx:drv}. Name lists may be truncated in the \file{bib} file with the keyword <\texttt{and others}>. Typical examples of name lists are \bibfield{author} and \bibfield{editor}. + +Name list fields automatically have an \cmd{ifuse*} test created as per the name lists in the default data model (see \secref{aut:aux:tst}). They are also automatically have a \opt{ifuse*} option created which controls labelling and sorting behaviour with the name (see \secref{use:opt:bib:hyb}). \biber supports a customisable set of name parts but currently this is defined to be the same set of parts as supported by traditional \bibtex: + +\begin{itemize} +\item Family name (also known as part) +\item Given name (also known as part) +\item Name prefix (also known as part) +\item Name suffix (also known as part) +\end{itemize} + +The supported list of name parts is defined as a constant list in the default data model using the \cmd{DeclareDatamodelConstant} command (see \secref{aut:ctm:dm}). However, it is not enough to simply add to this list in order to add support for another name part as name parts typically have to be hard coded into bibliography drivers and the backend processing. See the example file \file{93-nameparts.tex} for details on how to define and use custom name parts. Also see \cmd{DeclareUniquenameTemplate} in \secref{aut:cav:amb} for information on how to customise name disambiguation using custom name parts. + +\item[Literal lists] are parsed and split up into the individual items at the \texttt{and} delimiter but not dissected further. Literal lists may be truncated in the \file{bib} file with the keyword <\texttt{and others}>. There are two subtypes: + +\begin{description} + +\item[Literal lists] in the strict sense are handled as described above. The individual items are simply printed as is. Typical examples of such literal lists are \bibfield{publisher} and \bibfield{location}. + +\item[Key lists] are a variant of literal lists which may hold printable data or localisation keys. For each item in the list, styles should perform a test to determine whether it is a known localisation key (the localisation keys defined by default are listed in \secref{aut:lng:key}). If so, the localised string should be printed. If not, the item should be printed as is. The standard styles are set up to exhibit this behaviour for all key lists listed below. New key lists do not automatically perform this test, it has to be implemented explicitly via the list format. A typical example of a key list is \bibfield{language}. + +\end{description} +\end{description} + +\begin{description} + +\item[Fields] are usually printed as a whole. There are several subtypes: + +\begin{description} + +\item[Literal fields] are printed as is. Typical examples of literal fields are \bibfield{title} and \bibfield{note}. + +\item[Range fields] consist of one or more ranges where all dashes are normalized and replaced by the command \cmd{bibrangedash}. A range is something optionally followed by one or more dashes optionally followed by some non-dash (e.g. \texttt{5--7}). Any number of consecutive dashes will only yield a single range dash. A typical example of a range field is the \bibfield{pages} field. See also the \cmd{bibrangessep} command which can be used to customise the separator between multiple ranges. Range fields will be skipped and will generate a warning if they do not consist of one or more ranges. You can normalise messy range fields before they are parsed using \cmd{DeclareSourcemap} (see \secref{aut:ctm:map}). + +\item[Integer fields] hold integers which may be converted to ordinals or strings as they are printed. A typical example is the \bibfield{extradate} or \bibfield{volume} field. Such fields are sorted as integers. \biber makes a (quite serious) effort to map non-arabic representations (roman numerals for example) to integers for sorting purposes. See the \opt{noroman} option which can be used to suppress roman numeral parsing. This can help in cases where there is an ambiguity between parsing as roman numerals or alphanumeric (e.g. ), see \secref{use:opt:pre:int}. + +\item[Datepart fields] hold unformatted integers which may be converted to ordinals or strings as they are printed. A typical example is the \bibfield{month} field. For every field of datatype \bibfield{date} in the datamodel, datepart fields are automatically created with the following names: \bibfield{$<$datetype$>$year}, \bibfield{$<$datetype$>$endyear}, \bibfield{$<$datetype$>$month}, \bibfield{$<$datetype$>$endmonth}, \bibfield{$<$datetype$>$day}, \bibfield{$<$datetype$>$endday}, \bibfield{$<$datetype$>$hour}, \bibfield{$<$datetype$>$endhour}, \bibfield{$<$datetype$>$minute}, \bibfield{$<$datetype$>$endminute}, \bibfield{$<$datetype$>$second}, \bibfield{$<$datetype$>$endsecond}, \bibfield{$<$datetype$>$timezone}, \bibfield{$<$datetype$>$endtimezone}. $<$datetype$>$ is the string preceding for any datamodel field of \kvopt{datatype}{date}. For example, in the default datamodel, , , and the empty string <> for the date field \bibfield{date}. + +\item[Date fields] hold a date specification in \texttt{yyyy-mm-ddThh:nn[+|-][hh[:nn]|Z]} format or a date range in \texttt{yyyy-mm-ddThh:nn[+|-][hh[:nn]|Z]/yyyy-mm-ddThh:nn[+|-][hh[:nn]|Z]} format and other formats permitted by \acr{ISO8601-2} Clause 4, level 1, see \secref{bib:use:dat}. Date fields are special in that the date is parsed and split up into its datepart type components. The \bibfield{datepart} components (see above) are automatically defined and recognised when a field of datatype \bibfield{date} is defined in the datamodel. A typical example is the \bibfield{date} field. + +\item[Verbatim fields] are processed in verbatim mode and may contain special characters. Typical examples of verbatim fields are \bibfield{file} and \bibfield{doi}. + +\item[URI fields] are processed in verbatim mode and may contain special characters. They are also URL-escaped if they don't look like they already are. The typical example of a uri field is \bibfield{url}. + +\item[Separated value fields] A separated list of literal values. Examples are the \bibfield{keywords} and \bibfield{options} fields. The separator can be configured to be any Perl regular expression via the \opt{xsvsep} option which defaults to the usual \bibtex comma surrounded by optional whitespace. + +\item[Pattern fields] A literal field which must match a particular pattern. An example is the \bibfield{gender} field from \secref{bib:fld:spc}. + +\item[Key fields] May hold printable data or localisation keys. Styles should perform a test to determine whether the value of the field is a known localisation key (the localisation keys defined by default are listed in \secref{aut:lng:key}). If so, the localised string should be printed. If not, the value should be printed as is. The standard styles are set up to handle all key fields listed below in that way. New key fields do not automatically perform the test, it has to be enabled explicitly in the field format. A typical example is the \bibfield{type} field. + +\item[Code fields] Holds \tex code. + +\end{description} +\end{description} + +\subsubsection{Data Fields} +\label{bib:fld:dat} + +The fields listed in this section are the regular ones holding printable data in the default data model. The name on the left is the default data model name of the field as used by \biblatex and its backend. The \biblatex data type is given to the right of the name. See \secref{bib:fld:typ} for explanation of the various data types. + +Some fields are marked as