summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDr. Clea F. Rees <cfrees@imapmail.org>2008-12-10 20:50:19 +0000
committerDr. Clea F. Rees <cfrees@imapmail.org>2008-12-10 20:50:19 +0000
commit2e59afec9907d090fa6cb3d54066333df8826741 (patch)
tree65a9eda4eb7208bd2ddd1a3bc1f5f9db3da55077
parenta5debc181fdd5c81cbc800cf5d469b204c51e042 (diff)
multibib update 2008/12/10
git-svn-id: svn://tug.org/texlive/trunk@11585 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r--Master/texmf-dist/bibtex/bst/multibib/mbunsrtdin.bst1333
-rw-r--r--Master/texmf-dist/doc/latex/multibib/README28
-rwxr-xr-xMaster/texmf-dist/doc/latex/multibib/bibtexall18
-rw-r--r--Master/texmf-dist/doc/latex/multibib/multibib.pdfbin329634 -> 215343 bytes
-rw-r--r--Master/texmf-dist/source/latex/multibib/multibib.dtx267
-rw-r--r--Master/texmf-dist/source/latex/multibib/multibib.ins42
-rw-r--r--Master/texmf-dist/tex/latex/multibib/multibib.sty140
7 files changed, 1720 insertions, 108 deletions
diff --git a/Master/texmf-dist/bibtex/bst/multibib/mbunsrtdin.bst b/Master/texmf-dist/bibtex/bst/multibib/mbunsrtdin.bst
new file mode 100644
index 00000000000..8d5a3fb2896
--- /dev/null
+++ b/Master/texmf-dist/bibtex/bst/multibib/mbunsrtdin.bst
@@ -0,0 +1,1333 @@
+%% UNSRTDIN.BST Ausgabe [8] 10/10/00
+%% (C) Klaus F. Lorenzen, Hamburg email: lorenzen.marxen@t-online.de
+%% ersetzt UNSRTDIN.BST Ausgabe [7,1] 23/11/99
+%% ersetzt DINUNSRT.BST
+%% ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+%% UNSRTDIN.BST wurde entwickelt aus BibTeX standard bibliography style
+%% `unsrt'.Mit UNSRTDIN.BST werden Literaturverzeichnisse gemaess der deutschen
+%% Zitiernorm DIN 1505 Teil 2 formatiert.
+%% Analog zu den 4 US standard styles wird ein vollstaendiger Satz von
+%% 4 DIN-gerechten bst-style Dateien veroeffentlicht (alphadin.bst,
+%% plaindin.bst, unsrtdin.bst, abbrvdin.bst). Die gueltige Version
+%% ist am schnellsten aus dem WWW ueber folgende URL zu beziehen
+%% http://www.fh-hamburg.de/pers/Lorenzen/bibtex/
+%% Stand: 16/6/99
+%% ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+%
+%% WAS IST UNSRTDIN.BST ?
+%% Dieser style produziert Literaturzitate in Literaturverzeichnissen
+%% gemaess der deutschen Norm DIN 1505, Teil 2 vom Jan. 1984.
+%% Die Reihenfolge der Zitate im Literaturverzeichnis entspricht der Zitierung
+%% im Text. Form und Gestaltung entsprechen der von plaindin.bst.
+%% Es gibt Unterschiede zwischen der US- und der deutschen Zitierkonvention,
+%% was die bibliographischen Typen und die verschiedenen Trennzeichen zwischen
+%% den Feldern angeht. Daher ist auch keine 100%ige Abbildung der beiden
+%% Regelwerke aufeinander moeglich. Dies ist aber immer durch eine achtsame
+%% Erfassung beherrschbar! Die vorliegenden DIN-styles versuchen einige
+%% bibliographische Beschraenkungen der Originalstyles zu ueberwinden.
+%% Es laesst sich in fast allen Faellen problemlos ein Original-bib-file
+%% (d.i. die Datenbank, die die bibliographischen Informationen enthaelt)
+%% wahlweise nach US-Norm oder deutscher DIN-Norm verarbeiten.
+%% [Beispiel: Produzieren Sie mit der XAMPL.bib-Datenbank aus dem Original-
+%% paket 2 verschiedene Literaturverzeichnisse.] Zu Gunsten
+%% der Allgemeingueltigkeit von bib-files ist bei den Publikationstypen
+%% (entry-types) und den bibliographischen Kategorien (fields) in Zweifels-
+%% faellen immer (ja, mit endlichen Ausnahmen) die originale US-Bedeutung
+%% beibehalten worden. Bei der Erfassung von Literaturquellen in bib-files
+%% gelten folglich die in der TEX-Literatur veroeffentlichten Regeln.
+%% Kommt es dennoch zu kleineren "Schoenheitsfehlern" im fertig gesetzten
+%% output, so koennen diese so gut wie immer durch eine leicht veraenderte
+%% Erfassung im bib-inputfile beseitigt werden. Last but not least koennen
+%% Sie im output-file < *.bbl > noch letzte Hand zur Korrektur ansetzen.
+%
+%% UMGANG MIT FEHLERMELDUNGEN
+%% Noch nicht alle ueberfluessigen Fehlermeldungen des Original-style sind
+%% ausgemerzt. Die meisten Warnmeldungen beruhen auf
+%% den andersartigen bibliographischen Regeln nach DIN 1505 und dem damit
+%% verbundenen Ermessensspielraum, sind also in Wahrheit keine "Fehler".
+%% Dennoch sollten Sie diese Warnungen beachten, um heraus zu finden, ob
+%% evtl. eine unzulaessige Kombination von Publikationstyp (=entry-type) und
+%% "fields" vorgenommen worden ist. Das fuehrt mitunter zu Wasserfallartigen
+%% Fehlermeldungen: meistens duerfen Sie das einfach ignorieren.
+%%
+%% DANKSAGUNG
+%% Hartmut Lueddecke, FH Hamburg habe ich fuer viele Verbesserungsvorschlaege
+%% und stete Unterstuetzung zu danken. Vielen an dieser Stelle ungenannt
+%% bleibenden Anwendern gilt mein Dank, die in den vergangenen Jahren durch
+%% ihre Aufmerksamkeit dazu beigetragen haben, Fehler auszumerzen und
+%% Verbesserungen vorzunehmen.
+%%
+%% HINWEIS: es gibt eine Kombination von ALPHADIN.BST mit dem NATBIB-Stil
+%% von Patrick W.Daly), womit Literaturverzeichnisse komplett nach
+%% DIN 1505 Teil 2 UND Teil 3 formatiert werden koennen. Naeheres
+%% per URL http://www.fh-hamburg.de/pers/Lorenzen/bibtex/
+%%
+%% ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+%% Eine ausfuehrliches Internet-Tutorial mit Beispielen ist in Vorbereitung.
+%% Fuer den Anfang ist diese Datei schon etwas kommentiert!
+%% Kritik, Vorschlaege usw. bitte an :
+%% FH Hamburg, Klaus F. Lorenzen, Grindelhof 30, 20146 Hamburg
+%% e-mail: lorenzen.marxen@t-online.de
+%% 16/6/99
+%% ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+% version 0.99c for BibTeX versions 0.99c or later, LaTeX2e
+% Copyright (C) 1985, all rights reserved.
+% Copying of this file is authorized only if either
+% (1) you make absolutely no changes to your copy, including name, or
+% (2) if you do make changes, you name it something other than
+% bstdin.doc, plaindin.bst, unsrtdin.bst, alphadin.bst, and abbrvdin.bst.
+% This restriction helps ensure that all standard styles are identical.
+%% ==> The file btxbst.doc has the original documentation for style 'alpha'.
+%%
+
+ENTRY
+ { address %% Verlagsort
+ author %% persoenlicher Urheber eines Werkes
+ booktitle %% a) Gesamttitel eines mehrbaendigen Werkes
+% %% b) Titel des Sammelwerks, das einzelne selbstaendige
+% %% Beitraege mit eigenem Titel enthaelt (->incollection)
+ chapter %% Kapitel in einem Buch (Monographie)
+ edition %% Auflagevermerk
+ editor %% Persoenl.Herausgeber oder Koerperschaftlicher Herausgeber
+ howpublished %% beliebiger Verlegervermerk: von wem, wo
+ institution %% Institution, die e.Verlagsfreie Veroeffentlichung betreibt
+ isbn %% Standardnr fuer Buecher
+ issn %% - " - : Zeitschriften u. Serien
+ journal %% Titel einer Zeitschrift
+ key %% Zusaetzlich vergebener Sortierschluessel, mitunter notwend.
+ month %% naehere Bestimmung des Erscheinungsjahres (-> macro 's)
+ note %% freies Eingabefeld fuer zusaetzliche Informationen
+ number %% Mehrfachbedeutung in Abhaengigkeit vom Eingabetyp
+ organization %% a) Name der Organisation/des Organisators e. Tagung,Konferenz
+% %% b) Name einer Firma/Gesellschaft, die ein ->manual herausgab
+ pages %% Umfangsangaben, meist Seitenzahlen
+ publisher %% Verlag
+ school %% Hochschule/Universitaet, die eine Dipl.-Arb./Dissertation veroeff.
+ series %% Titel e.Reihe, in der ein best. Buchtitel erschienen ist
+ title %% Titel einer (namentlich gekennzeichneten) Veroeffentlichung
+ type %% Zusatzfeld z.Kennzeichnung e.besonderen Publikationstyps
+ volume %% a) Zaehlung bei einem mehrbaendigen Werk (-> book)
+% %% b) Jahrgang einer Zeitschrift (-> article
+ year %% Erscheinungsjahr
+ }
+ {}
+ { label extra.label sort.label }
+
+INTEGERS { output.state before.all mid.sentence after.sentence after.block }
+
+%% die folg. BOOLE'sche VAR steuern d. Ausg. ": " nach Urheber-Feldern
+%% und ". - " vor ISBN oder Anmerkungen (NOTE)
+
+INTEGERS { colon.after period.dash }
+
+FUNCTION {init.state.consts}
+{ #0 'before.all :=
+ #1 'mid.sentence :=
+ #2 'after.sentence :=
+ #3 'after.block :=
+ #4 'colon.after :=
+ #5 'period.dash :=
+}
+INTEGERS { zahl lang }
+
+STRINGS { h s t u v }
+
+%% neue DIN-Funktion, 16/2/94
+
+FUNCTION {output.nonnull}
+{ 's :=
+ output.state after.block =
+ { add.period$ write$
+ newline$
+ "\newblock " write$
+ }
+ { output.state before.all =
+ { write$ }
+ { output.state colon.after =
+ { ": " * write$
+ newline$
+ "\newblock " write$
+ }
+ { output.state period.dash =
+ { ". -- " * write$
+ newline$
+ "\newblock " write$
+ }
+ { output.state mid.sentence =
+ { ", " * write$ }
+ { write$
+ newline$
+ "\newblock " write$
+ }
+ if$
+ }
+ if$
+ }
+ if$
+ }
+ if$
+ after.block 'output.state :=
+ }
+ if$
+ s
+}
+
+FUNCTION {output}
+{ duplicate$ empty$
+ 'pop$
+ 'output.nonnull
+ if$
+}
+
+FUNCTION {output.check}
+{ 't :=
+ duplicate$ empty$
+ { pop$ "empty " t * " in " * cite$ * warning$ }
+ 'output.nonnull
+ if$
+}
+
+FUNCTION {output.bibitem}
+{ newline$
+% Do no write label; incompatible with multibib and continous labels TH 2008-11-05
+% "\bibitem[" write$
+% label write$
+% "]{" write$
+ "\bibitem{" write$
+ cite$ write$
+ "}" write$
+ newline$
+ ""
+ before.all 'output.state :=
+}
+
+FUNCTION {fin.entry} %%$$$ nach DIN neu 16/2/94
+{ write$
+ newline$
+}
+
+FUNCTION {set.period.dash} %% Wenn ein ". - " die Satzteile trennen soll.!
+{ output.state before.all =
+ 'skip$
+ { period.dash 'output.state := }
+ if$
+}
+
+%% neu 16/2/94
+%% prueft, ob PAGES, ISBN- oder NOTE-Feld vh. ist und setzt dann ". - " davor.
+
+FUNCTION {set.period.dash.check}
+{ empty$
+ 'skip$
+ 'set.period.dash
+ if$
+}
+
+FUNCTION {set.colon.after} %%$$$ Wenn ein ": " d. Satzteile trennen soll!
+{ output.state before.all =
+ 'skip$
+ { colon.after 'output.state := }
+ if$
+}
+
+%% neu / alt 17/2/94 Wenn ein " " die Satzteile trennen soll.!
+FUNCTION {new.sentence}
+{ output.state before.all =
+ 'skip$
+ { after.sentence 'output.state := }
+ if$
+}
+
+%% neu 17/2/94 Wenn ein ", " die Satzteile trennen soll.!
+FUNCTION { part.of.sentence }
+{ output.state before.all =
+ 'skip$
+ { mid.sentence 'output.state := }
+ if$
+}
+
+
+FUNCTION {not}
+{ { #0 }
+ { #1 }
+ if$
+}
+
+FUNCTION {and}
+{ 'skip$
+ { pop$ #0 }
+ if$
+}
+
+FUNCTION {or}
+{ { pop$ #1 }
+ 'skip$
+ if$
+}
+
+FUNCTION {new.sentence.checka}
+{ empty$
+ 'skip$
+ 'new.sentence
+ if$
+}
+
+FUNCTION {field.or.null}
+{ duplicate$ empty$
+ { pop$ "" }
+ 'skip$
+ if$
+}
+
+INTEGERS { nameptr namesleft numnames }
+
+STRINGS { fkt }
+
+FUNCTION {emphasize}
+{ duplicate$ empty$
+ { pop$ "" }
+ { "\emph{" swap$ * "}" * }
+ if$
+}
+
+%% neu, setzt Autor/Hrsg. in Kapitaelchen 9/3/94
+FUNCTION { capitalize }
+ { duplicate$ empty$
+ { pop$ "" }
+ { "\textsc{" swap$ * "}" * }
+ if$
+}
+
+%%$$$ DIN-Quellenangabe : spezieller unselbst. Teil ist erschienen "In: "
+%% dem bibliogr. selbst. Werk, z.B. Zeitschrift, Buch
+
+%% 1/4/96
+FUNCTION {article.in.journal}
+{ duplicate$ empty$
+ { pop$ "" }
+ { author missing$
+ { title missing$
+ { emphasize " " * * }%% wenn ein Zs-Heft als ganzes zitiert wird
+ { emphasize "{In: }" swap$ " " * * }
+ if$
+ }
+ { emphasize "{In: }" swap$ " " * * }
+ if$
+ }
+ if$
+}
+
+%% nach Vorschlag von H.Lueddecke, um Adelspraedikate beim Sortieren
+%% nach den(m) Vornamen aufzufuehren. Lo, 2/11/94
+FUNCTION {format.names}
+{ 's :=
+ "" 'u :=
+ #1 'nameptr :=
+ s num.names$ 'numnames :=
+ numnames 'namesleft :=
+ { namesleft #0 > }
+ {
+ s nameptr "{vv~}{ll}" format.name$ 't :=%% das ergibt DIN-Ansetzung
+ %% Lue's Vorschlag s nameptr "{ll}" format.name$ 't :=
+ t capitalize 't :=
+ s nameptr "{, ff}" format.name$ 'u :=
+ %% Lue's Vorschlag s nameptr "{, ff}{ vv}" format.name$ 'u :=
+ u text.length$ 'lang :=
+ #1 'zahl :=
+ "" 'v :=
+ { zahl lang < }
+ { u zahl #1 substring$ "~" =
+ { v "" =
+ { u #1 zahl #1 - substring$ 'v := }
+ 'skip$
+ if$
+ v u zahl #2 substring$ * "." * 'v := }
+ 'skip$
+ if$
+ zahl #1 + 'zahl := }
+ while$
+ v "" =
+ { u 'v := }
+ 'skip$
+ if$
+%% der string fkt enthaelt " (Hrsg.)", wenn Editorfeld nicht leer ist
+ t v * fkt * 't := %% Komma nach Nachnamen wird oben erledigt!
+ %% t enthaelt nun d. formatierten Nnamen, Vnamen
+ nameptr #1 >
+ { namesleft #1 >
+ { " ; " * t * }
+ { numnames #2 >
+ { " " * }
+ 'skip$
+ if$
+%% %% n. schindle's hinweis 12/1/96 erweitert
+ t "\textsc{others}" = t "\textsc{others} (Hrsg.)" = or
+ { " [u.~a.]" * }%% 13/2/94
+%%%% { "et~al." * } %% Geschmackssache, waehle eins von beiden
+ { " ; " * t * }
+ if$
+ }
+ if$ %% Ende der namesleft-Pruefung
+ }
+ 't
+ %% hierdurch wird bei jed. Schleifendurchgang das sich komplet-
+ %% tierende Zwischen-Namensergebnis wieder auf den stack gelegt
+
+ if$ %% Ende der nameptr-Pruefung
+
+ nameptr #1 + 'nameptr :=
+ namesleft #1 - 'namesleft :=
+ }
+ while$ %% Ende von { namesleft #0 > } ganz oben
+ "" 'fkt := %% fkt wird zurueckgesetzt
+}
+
+%%$$$ geaendert 14/2/94
+
+FUNCTION {format.authors}
+{ author empty$
+ { "" }
+ { author format.names }
+ if$
+}
+
+%%$$$ geaend. 20/2/94 Anpassung an DIN, wonach Autor + Hrsg. zusammen vorkom-
+%% men duerfen.!!
+
+FUNCTION {format.editors}
+{ editor empty$
+ { author empty$
+ { "Weder Verfasser noch Hrsg. in " cite$ * warning$ }
+ 'skip$
+ if$
+ }
+ { author empty$
+ { " (Hrsg.)" 'fkt :=
+ editor format.names
+ }
+ { " (Hrsg.)" 'fkt :=
+ " ; " * editor format.names *
+ }
+ if$
+ }
+ if$
+ }
+
+%% Lo, 12/5/99 neue Funktion fuer proceedings, misc usw.
+
+FUNCTION { format.editors.organization }
+{ organization empty$
+ 'skip$
+ { type$ "misc" =
+ { organization }
+ { " ; " * organization " (Veranst.)" *}
+ if$
+ }
+ if$
+}
+
+%%$$$ Sonderfall: Herausgeber bei Typ incollection, 21/2/94
+FUNCTION {format.ed.incoll}
+{ editor empty$
+ { "" }
+ { " (Hrsg.)" 'fkt :=
+ editor format.names
+ }
+ if$
+}
+
+FUNCTION {format.title}
+{ title empty$
+ { "" }
+ { title } %% Text so wie er dasteht im Feld title
+ if$
+}
+
+FUNCTION {n.dashify}
+{ 't :=
+ ""
+ { t empty$ not }
+ { t #1 #1 substring$ "-" =
+ { t #1 #2 substring$ "--" = not
+ { "--" *
+ t #2 global.max$ substring$ 't :=
+ }
+ { { t #1 #1 substring$ "-" = }
+ { "-" *
+ t #2 global.max$ substring$ 't :=
+ }
+ while$
+ }
+ if$
+ }
+ { t #1 #1 substring$ *
+ t #2 global.max$ substring$ 't :=
+ }
+ if$
+ }
+ while$
+}
+
+%% geaendert 24/2/94
+FUNCTION {format.date}
+{ year empty$
+ { month empty$
+ { "" }
+ { "there's a month but no year in " cite$ * warning$
+ month
+ }
+ if$
+ }
+ { month empty$ %% b. Buechern nur Jahr, ohne Monat ausgeb. im Impressum
+ 'year
+ { month " " * year * }
+ if$
+ }
+ if$
+}
+
+%%
+%%$$$ neue Fkt., 16/2/94 u. 14/3/94 das sog. Impressum
+FUNCTION {format.address.publisher.year}
+{ publisher empty$
+ { address empty$
+ { year empty$
+ { "" }
+ { year }
+ if$
+ }
+ { "Es gibt einen Verlagsort, aber keinen Verlag in " cite$ * warning$
+ address ", " * format.date *
+ }
+ if$
+ }
+ { address empty$
+ { year empty$
+ { "Es gibt nur eine Verlagsangabe in " cite$ * warning$
+ publisher
+ }
+ { publisher ", " * format.date * }
+ if$
+ }
+ { year empty$
+ { address " : " * publisher * }
+ { address " : " * publisher * ", " * format.date * }
+ if$
+ }
+ if$
+ }
+ if$
+}
+
+FUNCTION {format.btitle}
+{ title emphasize
+}
+
+
+FUNCTION {tie.or.space.connect}
+{ duplicate$ text.length$ #3 <
+ { "~" }
+ { " " }
+ if$
+ swap$ * *
+}
+
+FUNCTION {either.or.check}
+{ empty$
+ 'pop$
+ { "can't use both " swap$ * " fields in " * cite$ * warning$ }
+ if$
+}
+
+%% neu 8/3/94 in dieser Funkt. steckt im volume empty-Teil noch ein bug, der
+%% aber ignoriert werden kann; das Ergebnis ist ok.
+FUNCTION {format.btitle.vol}
+{ number empty$
+ { series empty$
+ { volume empty$
+ { title emphasize }
+ { title emphasize ". Bd." * volume tie.or.space.connect }
+ if$
+ }
+ { volume empty$
+ { title emphasize }%% ein Buch, das zusaetzl. SERIES=Reihentitel besitzt
+ %% jetzt kommt d. Fall des mehrbaendigen Werkes mit Gesamttitel=SERIES
+ %% Zaehlung=VOLUME und Bandtitel=TITLE;
+ { series emphasize ". Bd." * volume tie.or.space.connect
+ ": " * "{\emph{" * title * "}}" * }
+ if$
+ }
+ if$%% series-test
+ }
+ { title emphasize }%% wenn number ex., dann immer title-Feld
+ if$%% Ende number-test
+}
+
+%%$$$ neu 16/2/94
+%% Serien- / Reihentitel werden im Feld series gespeichert. Weist die
+%% Serie eine Zaehlung der Einzeltitel auf, gibt man entweder nach DIN alles
+%% in das Feld series so ein: ---> TITEL DER SERIE NR. (der Vorlage) <---
+%% z. B. SERIES= { Mensch und Computer 12 }.
+%% [ Die Nummer der Vorlage darf auch durch " ; " abgesetzt werden. ]
+%% oder:
+%% man gibt die Zaehlung in das Feld NUMBER ein, z.B. NUMBER = {12}.
+%% Achtung!!
+%% Bei mehrbaendigen Werken steht d. Gesamttitel im Feld SERIES und die
+%% Bandzaehlung im Feld VOLUME; NUMBER darf dann nicht besetzt sein!
+%% Anderenfalls liegt ein Erfassungsfehler vor, da sich Reihe u. mehrbd.
+%% Werk gegenseitig ausschliessen.
+
+FUNCTION {format.series.number.din}
+{ volume empty$
+ { number empty$
+ { series empty$
+ { "" }%% Ausstieg mit Nullstring
+ { "(" series * ")" * } %% d. Seriennr koennte auch gleich hier
+ %% im SERIES-Feld miterfasst werden
+ if$
+ }
+ { series empty$
+ { "(" number tie.or.space.connect ")" *
+ "there's a number but no series in " cite$ * warning$
+ }
+ { "(" series * number tie.or.space.connect ")" * }
+ if$
+ }
+ if$
+ }
+ { series empty$
+ { "" }
+ { type$ "proceedings" = %% Sonderfall, es darf VOLUME und NUMBER ex. !
+ { number empty$
+ { "(" series * ")" * }
+ { "(" series * number tie.or.space.connect ")" * }
+ if$
+ }
+ { "" }%% Ausstieg mit Nullstring, s. Kommentar
+ if$
+ }%% bei gezaehlten Reihen MUSS die Reihennr. im Feld NUMBER stehen!
+ if$ %% wenn also d. Feld VOLUME nicht leer ist, dann liegt ausser bei
+ %% Typ PROCEEDINGS falsche
+ } %% Erfassung vor und es erfolgt d. Ausstieg mit d. Nullstring!
+ if$
+}
+
+%% seltener Fall bei MISC: Ausgabe einer Serie; die Nummer der Serie muss
+%% in SERIES miterfasst werden 16/6/99
+
+FUNCTION {format.misc.series}
+{ series empty$
+ { "" }
+ { "(" series * ")" * }
+ if$
+}
+
+
+%%$$$ 16/2/94
+%% Auflagenvermerke gibt man komplett, einschliesslich Abkuerzungen in
+%% das Feld edition ein: ---> EDITION= { 3., erw. und verb. Aufl. }
+%% oder fremdsprachlich: EDITION= { 2nd edition }
+
+FUNCTION {format.edition}
+{ edition empty$
+ { "" }
+ { edition }
+ if$
+}
+
+%%$$$ neu, 18/3/94
+FUNCTION { format.isbn.issn }
+{ isbn empty$
+ { issn empty$
+ { "" }
+ { "ISSN" issn n.dashify tie.or.space.connect }
+ if$
+ }
+ { "ISBN" isbn n.dashify tie.or.space.connect }
+ if$
+}
+
+%%$$$ geaendert, 21/2/94 gibt Seitenzahl bei BOOK-Typ und verwandten T. aus
+FUNCTION {format.pages.book}
+{ pages empty$
+ { "" }
+ { "" pages n.dashify tie.or.space.connect " S" *} %% 17/12/95
+ if$
+}
+
+%%$$$ alle anderen Seitenang. zB. Zeitschrft., INBOOK usw. a la Orig., 9/3/94
+FUNCTION {format.pages}
+{ pages empty$
+ { "" }
+ { "S." pages n.dashify tie.or.space.connect }
+ if$
+}
+
+%% Angaben v. Jahrgang, Jahr, Heftnr., Seiten bei Artikel-Typ
+%% 14/3/94, 26/2/97
+
+FUNCTION {format.vol.year.num.pages}
+{ volume field.or.null
+ year empty$
+ { "Es gibt einen Jahrgang, aber kein Jahr in " cite$ * warning$ }
+ { " (" year * ")" * * }
+ if$
+ month empty$
+ 'skip$
+ { ", " month * * }
+ if$
+ number empty$
+ 'skip$
+ { ", Nr. " number * * }
+ if$
+ pages empty$%% Lo, 26/2/97
+ 'skip$
+ { ", " format.pages * *}%%
+ if$
+
+%% pages empty$%% das war die Fass. Nov. 96, die auch ging
+%% 'skip$
+%% { duplicate$ empty$
+%% { pop$ format.pages }%% da pages leer, wird nur "" auf stack gelegt
+%% { ", " format.pages * *}
+%% if$
+%% }
+%% if$
+
+}
+
+%% geaendert 21/2/94
+FUNCTION {format.chapter.pages}
+{ chapter empty$
+ 'format.pages
+ { type empty$
+ { "Kapitel " }
+ { type }
+ if$
+ chapter tie.or.space.connect
+ pages empty$
+ 'skip$
+ { ", " * format.pages * }
+ if$
+ }
+ if$
+}
+
+%%$$$ geaendert 21/2/94
+FUNCTION {format.in.ed.booktitle.din}
+{ booktitle empty$
+ { "" }
+ { editor empty$
+ { volume empty$
+ { "{In: }" booktitle emphasize * }%% n. Belieben fettes In:
+ { "{In: }" booktitle emphasize * %% - " -
+ " Bd." volume tie.or.space.connect *
+ }
+ if$
+ }
+ { volume empty$
+ { "{In: }" format.ed.incoll * ": " * booktitle emphasize * }
+ { "{In: }" format.ed.incoll * ": " * booktitle emphasize *
+ " Bd." volume tie.or.space.connect *
+ }
+ if$
+ }
+ if$
+ }
+ if$
+}
+
+%% geaendert 1/3/94
+FUNCTION {format.thesis.type}
+{ type empty$
+ 'skip$
+ { pop$
+ type
+ }
+ if$
+}
+
+%% geaendert 23/2/94 i.Orig. wird zuerst die number, dann der type getestet
+FUNCTION {format.tr.number.din}
+{ type empty$
+ { number empty$
+ { " -- Forschungsbericht" } %% bei Minimalangaben besser ohne "."!
+ { "(" number tie.or.space.connect "). -- Forschungsbericht" * }
+ if$
+ }
+ { number empty$
+ { " -- " type * } %% bei Minimalangaben besser ohne "."!
+ { "(" number tie.or.space.connect "). -- " * type * }
+ if$
+ }
+ if$
+}
+
+
+FUNCTION {format.article.crossref}
+{ key empty$
+ { journal empty$
+ { "need key or journal for " cite$ * " to crossref " * crossref *
+ warning$
+ ""
+ }
+ { "{In: }{\em " journal * "\/}" * }%%
+ if$
+ }
+ { "{In: }" key * }%%
+ if$
+ "{\cite{" * crossref * "}" * "}" * ", " * format.pages *
+%% " (siehe \cite{" * crossref * "}" * "), " * format.pages *
+}
+
+%%geaendert 7/3/94 und noch einmal nach Lueddecke, s.o.
+FUNCTION {format.crossref.editor}
+%vorher,Lue { editor #1 "{vv~}{ll}" format.name$ " (Hrsg.)" *
+ { editor #1 "{ll}" format.name$ " (Hrsg.)" *
+ editor num.names$ duplicate$
+ #2 >
+ { pop$ " [u.~a.]" * }
+%% { pop$ " et~al." * }
+ { #2 <
+ 'skip$
+ { editor #2 "{ff }{vv }{ll}{ jj}" format.name$ "others" =
+ { " [u.~a.]" }
+%% { " et~al." * }
+ { " ; " * editor #2 "{vv~}{ll}" format.name$ * " (Hrsg.)" * }
+ if$
+ }
+ if$
+ }
+ if$
+}
+
+
+FUNCTION {format.book.crossref}
+{ volume empty$
+ { "empty volume in " cite$ * "'s crossref of " * crossref * warning$
+ "{\texttt{siehe}} "
+%% "(siehe "
+ }
+ { ". -- Bd." volume tie.or.space.connect
+ " von " *
+ }
+ if$
+ editor empty$
+ editor field.or.null author field.or.null =
+ or
+ { key empty$
+ { series empty$
+ { "need editor, key, or series for " cite$ * " to crossref " *
+ crossref * warning$
+ "" *
+ }
+ { "" * }%% dadurch kommt nach der Bandzaehl. gleich das label 2/6/99
+%% { "{\emph{" * series * "}} {\texttt{siehe}}" * }
+ if$
+ }
+ { key * }
+ if$
+ }
+ { "" * }%% nach der Bandzaehlung kommt gleich das label; Lo 2/6/99
+%% { format.crossref.editor * }
+ if$
+ "{\cite{" * crossref * "}" * "}" *
+%% "{\cite{" * crossref * "}" * "}" * %%"), " * format.pages *
+}
+
+FUNCTION {format.incoll.inproc.crossref}
+{ editor empty$
+ editor field.or.null author field.or.null =
+ or
+ { key empty$
+ { booktitle empty$
+ { "need editor, key, or booktitle for " cite$ * " to crossref " *
+ crossref * warning$
+ ""
+ }
+ { "{In: }{\emph " booktitle * "}" * }%% fettes In: n. Belieben
+ if$
+ }
+ { "{In: }" }%% 26/5/99
+%% { "{In: }" key * }
+ if$
+ }
+%% { "{In: }{\em " booktitle * "\/}" * }%%
+ { "{In: }" }%% Lo, 10/2/99 es sieht der reine Bezug (Referenz) besser aus!
+ if$
+%% " (siehe \cite{" * crossref * "}" * "), " * format.pages *
+ "{\cite{" * crossref * "}" * "}" * ", " * format.pages *%% das fette label, Lo 23/2/99
+%% alte Vers. bis 27/2/97 " (siehe \cite{" * crossref * "}" * ")" *
+}
+
+%%geaendert
+FUNCTION {article}
+{ output.bibitem
+ format.authors "author" output.check
+ set.colon.after
+ format.title "title" output.check
+ crossref missing$
+ { journal article.in.journal output.nonnull % 26/2/97
+ new.sentence
+ format.vol.year.num.pages output
+ }
+ { format.article.crossref output.nonnull }
+ if$
+ note set.period.dash.check
+ note output
+ issn set.period.dash.check
+ format.isbn.issn output
+ fin.entry
+}
+
+%%$$$ geaendert, 20/2/94
+FUNCTION {book}
+{ output.bibitem
+ author empty$
+ { format.editors "author and editor" output.check }
+ { format.authors format.editors output.nonnull }
+ if$
+ set.colon.after
+ crossref missing$
+ { format.btitle.vol "title" output.check }
+ { format.btitle "title" output.check }
+ if$
+ format.edition "edition" output.check
+ format.address.publisher.year "publisher" output.check
+ new.sentence
+ crossref missing$
+ { format.series.number.din output
+ pages set.period.dash.check%% 19/5/99 wie bei adinat.bst
+ format.pages.book output
+ }
+ { format.book.crossref output.nonnull
+ pages set.period.dash.check
+ format.pages.book output
+ }
+ if$
+ note set.period.dash.check
+ note output
+ isbn set.period.dash.check
+ format.isbn.issn output
+ fin.entry
+}
+
+%% geaendert 23/2/94
+FUNCTION {inbook}
+{ output.bibitem
+%% unselbst. Teile eines Buches werden am Anf. genannt, dann d selbst. Quelle
+ chapter empty$
+ { "Es fehlen die Kapitelangaben in " cite$ * warning$ }
+ { type empty$
+ { "Kap. " }%% d.i. die Standardvorgabe
+ { type }%% wenn man keine bes. Typform angeben will, koennte ein kl.
+%% Zwischenraum gewaehlt werden, z.B. " \, "
+ if$
+ chapter tie.or.space.connect " {In: }" * *%% n. Belieben fettes "In:"
+ %% diese Plazierung und der 2. * stammt v. N. Zacharias, Oldenburg, Juli 2000
+ }
+ if$
+
+%% -------- jetzt kommt der bibliogr. selbst. Teil
+ author empty$
+ { format.editors "author and editor" output.check }
+ { format.authors output.nonnull
+ }
+ if$
+ set.colon.after
+ format.btitle.vol "title" output.check
+ crossref missing$
+ { format.edition output
+ format.address.publisher.year "publisher" output.check
+ new.sentence
+ format.series.number.din output
+%% vorher note ...
+ part.of.sentence
+ format.pages "pages" output.check
+ note set.period.dash.check
+ note output
+ }
+ { format.book.crossref output.nonnull
+ note set.period.dash.check
+ note output
+ }
+ if$
+ isbn set.period.dash.check
+ format.isbn.issn output
+ fin.entry
+}
+
+%% geaenderte Seitenzahlausgabe, wenn crossref-Feld benutzt wird, 27/2/97
+FUNCTION {incollection}
+{ output.bibitem
+ format.authors "author" output.check
+ set.colon.after
+ format.title "title" output.check
+ crossref missing$
+ { format.in.ed.booktitle.din "booktitle" output.check
+ format.edition output
+ format.address.publisher.year "publisher" output.check
+ new.sentence
+ format.series.number.din output
+ note set.period.dash.check
+ note output
+ isbn set.period.dash.check
+ issn set.period.dash.check
+ format.isbn.issn output
+ part.of.sentence
+ format.chapter.pages "pages" output.check
+ }
+ { format.incoll.inproc.crossref output.nonnull
+ note set.period.dash.check
+ note output
+ isbn set.period.dash.check
+ issn set.period.dash.check
+ format.isbn.issn output
+ }
+ if$
+ fin.entry
+}
+
+%% geaendert 22/2/94, 15/11/96 (Hinweis v. Alin Shindun, Uni Siegen)
+FUNCTION {inproceedings}
+{ output.bibitem
+ format.authors "author" output.check
+ set.colon.after
+ format.title "title" output.check
+ crossref missing$
+ { format.in.ed.booktitle.din "booktitle" output.check
+ address empty$
+ { organization new.sentence.checka
+ organization output
+ part.of.sentence
+ format.address.publisher.year output
+ }
+ { format.address.publisher.year "publisher" output.check }
+ if$
+ new.sentence
+ series empty$ %%neu nach Hinweis v. Alin Shindun, 15/11/96
+ 'skip$
+ { format.series.number.din output }
+ if$
+ note set.period.dash.check
+ note output
+ isbn set.period.dash.check
+ issn set.period.dash.check
+ format.isbn.issn output
+ part.of.sentence
+ format.pages output
+ }
+ { format.incoll.inproc.crossref output.nonnull
+ note set.period.dash.check
+ note output
+ isbn set.period.dash.check
+ issn set.period.dash.check
+ format.isbn.issn output
+ }
+ if$
+ fin.entry
+}
+
+FUNCTION {conference} { inproceedings }%% nach Patashnik, wg US-Kompatibilitaet
+
+%% geaendert, 11/6/99
+FUNCTION {manual}
+{ output.bibitem
+ author empty$
+ { organization empty$
+ { title empty$
+ 'skip$
+ {format.btitle "title" output.check }
+ if$
+ }
+ { organization output.nonnull
+ set.colon.after
+ format.btitle "title" output.check
+ }
+ if$
+ }
+ { format.authors output.nonnull
+ set.colon.after
+ format.btitle "title" output.check
+ }
+ if$
+ format.edition "edition" output.check
+ author empty$
+ { organization empty$
+ { address output
+ part.of.sentence
+ }
+ 'skip$
+ if$
+ }
+ { address ": " * organization * output
+ part.of.sentence
+ }
+ if$
+ format.date output
+ pages set.period.dash.check
+ format.pages.book output
+ note set.period.dash.check
+ note output
+ fin.entry
+}
+
+%% MASTERSTHESIS ersetzt zugleich PHDTHESIS !! KFL, 17/2/94
+%% Ausgabe-Standard ist "Diplomarbeit", fuer andere Abschlussarbeiten
+%% bei der Erfassung TYPE="anderer Typ" eingeben.
+%% z.B. TYPE={Dissertation}, TYPE={Diss.}, TYPE={Habil.}, TYPE={Magisterarb.}
+%%
+FUNCTION {mastersthesis}
+{ output.bibitem
+ format.authors "author" output.check
+ set.colon.after
+ format.btitle "title" output.check
+ address output
+ part.of.sentence
+ school "school" output.check
+ part.of.sentence
+ "Diplomarbeit" format.thesis.type output.nonnull
+ part.of.sentence
+ format.date "year" output.check
+%% pages new.sentence.checka
+ pages set.period.dash.check
+ format.pages.book output
+ note set.period.dash.check
+ note output
+ fin.entry
+}
+
+FUNCTION {phdthesis} %% {mastersthesis}% ist identisch bis auf Standardwert, s.o.
+{ output.bibitem
+ format.authors "author" output.check
+ set.colon.after
+ format.btitle "title" output.check
+ address output
+ part.of.sentence
+ school "school" output.check
+ part.of.sentence
+ "Diss." format.thesis.type output.nonnull % koennte auch `Dissertation' sein
+ part.of.sentence
+ format.date "year" output.check
+ pages set.period.dash.check
+ format.pages.book output
+ note set.period.dash.check
+ note output
+ fin.entry
+}
+
+%% hiermit werden u.a. Normen erfasst
+FUNCTION {misc}
+{ output.bibitem
+ note empty$
+ { title empty$
+ { "" }
+ { format.authors format.editors output.nonnull
+ format.btitle output
+ howpublished output
+ format.date output
+ }
+ if$
+ }
+ { note duplicate$ #1 #4 substring$ "Norm" =
+ { output new.sentence
+ format.date output
+ format.title output
+ }
+ { pop$ ""
+ author empty$
+ { editor empty$
+ { organization empty$
+ { 'skip$ }
+ { format.editors.organization output.nonnull
+ set.colon.after }
+ if$
+ }
+ { format.editors format.editors.organization output.nonnull
+ set.colon.after }
+ if$
+ }
+ { format.authors format.editors output.nonnull
+ set.colon.after }
+ if$
+ format.btitle output
+ howpublished output
+ format.date output
+ new.sentence
+ format.misc.series output%% neu 16/6/99
+ note set.period.dash.check
+ note output
+ }
+ if$
+ }
+ if$
+ fin.entry
+}
+
+FUNCTION {booklet} {misc}%% booklet ist nach dt. Vorgehensweise oft ueberfluessig
+
+%% geaendert 21/5/99
+FUNCTION {proceedings}
+{ output.bibitem
+ editor empty$
+ { organization empty$
+ { "" }
+ { organization " (Veranst.)" * output }
+ if$
+ }
+ { format.editors format.editors.organization output.nonnull }
+ if$
+ set.colon.after
+ format.btitle "title" output.check
+ volume empty$
+ { "" output.nonnull }
+ { "{\textnormal{Bd.}}" volume tie.or.space.connect emphasize "volume" output.check }
+ if$
+ format.address.publisher.year "publisher" output.check
+ new.sentence
+ format.series.number.din output.nonnull
+ pages set.period.dash.check
+ format.pages.book output
+ note set.period.dash.check
+ note output
+ isbn set.period.dash.check
+ issn set.period.dash.check
+ format.isbn.issn output
+ fin.entry
+}
+
+%% geaendert 23/2/94 auch fuer Firmenschriften u."a. zu benutzen
+FUNCTION {techreport}
+{ output.bibitem
+ author empty$
+ { format.editors "author and editor" output.check }
+ { format.authors format.editors output.nonnull }
+ if$
+ set.colon.after
+ format.title "title" output.check
+ institution new.sentence.checka
+ institution empty$
+ 'skip$
+ { " / " institution * output.nonnull }
+ if$
+ format.address.publisher.year output
+ number new.sentence.checka
+ format.tr.number.din "number" output.check
+%% new.sentence
+ pages set.period.dash.check
+ format.pages.book output
+ note "note" output.check
+ isbn set.period.dash.check
+ issn set.period.dash.check
+ format.isbn.issn output
+ fin.entry
+}
+
+FUNCTION {unpublished} {misc}%% author, title, note muessen sein! howpublished
+%% %% entfaellt natuerlich
+FUNCTION {default.type} { misc }
+
+MACRO {jan} {"Januar"}
+
+MACRO {feb} {"Februar"}
+
+MACRO {mar} {"M{\^^b a}rz"}
+%% nach Bernd Raichle, Febr. 1999
+
+MACRO {apr} {"April"}
+
+MACRO {mai} {"Mai"}
+
+MACRO {may} {"Mai"}
+
+MACRO {jun} {"Juni"}
+
+MACRO {jul} {"Juli"}
+
+MACRO {aug} {"August"}
+
+MACRO {sep} {"September"}
+
+MACRO {okt} {"Oktober"}
+
+MACRO {oct} {"Oktober"}
+
+MACRO {nov} {"November"}
+
+MACRO {dez} {"Dezember"}
+
+MACRO {dec} {"Dezember"}
+
+
+%%$$$ stillgelegte Beispiele fr den Gebrauch von Krzeln (hier Zs-Titel).
+
+%%MACRO {acmcs} {"ACM Computing Surveys"}
+
+%%MACRO {acta} {"Acta Informatica"}
+
+%%MACRO {cacm} {"Communications of the ACM"}
+
+%%MACRO {ibmjrd} {"IBM Journal of Research and Development"}
+
+%%MACRO {ibmsj} {"IBM Systems Journal"}
+
+%%MACRO {ieeese} {"IEEE Transactions on Software Engineering"}
+
+%%MACRO {ieeetc} {"IEEE Transactions on Computers"}
+
+%%MACRO {ieeetcad}
+%% {"IEEE Transactions on Computer-Aided Design of Integrated Circuits"}
+
+%%MACRO {ipl} {"Information Processing Letters"}
+
+%%MACRO {jacm} {"Journal of the ACM"}
+
+READ
+
+STRINGS { longest.label }
+
+INTEGERS { number.label longest.label.width }
+
+FUNCTION {initialize.longest.label}
+{ "" 'longest.label :=
+ #1 'number.label :=
+ #0 'longest.label.width :=
+}
+
+FUNCTION {longest.label.pass}
+{ number.label int.to.str$ 'label :=
+ number.label #1 + 'number.label :=
+ label width$ longest.label.width >
+ { label 'longest.label :=
+ label width$ 'longest.label.width :=
+ }
+ 'skip$
+ if$
+}
+
+EXECUTE {initialize.longest.label}
+
+ITERATE {longest.label.pass}
+
+FUNCTION {begin.bib}
+{ preamble$ empty$
+ 'skip$
+ { preamble$ write$ newline$ }
+ if$
+ "\begin{thebibliography}{" longest.label * "}" * write$ newline$
+}
+
+EXECUTE {begin.bib}
+
+EXECUTE {init.state.consts}
+
+ITERATE {call.type$}
+
+FUNCTION {end.bib}
+{ newline$
+ "\end{thebibliography}" write$ newline$
+}
+
+EXECUTE {end.bib}
+
+%% Ende von UNSRTDIN.BST, Stand: 23/11/99 KFL
diff --git a/Master/texmf-dist/doc/latex/multibib/README b/Master/texmf-dist/doc/latex/multibib/README
index 21aaa09913b..3239ef99918 100644
--- a/Master/texmf-dist/doc/latex/multibib/README
+++ b/Master/texmf-dist/doc/latex/multibib/README
@@ -17,7 +17,7 @@ To produce the documentation
latex multibib.dtx
- If you do not want to include the macro section in the documentation,
+ If you do not want to exclude the macro section from the documentation,
remove the comment sign before \OnlyDescription.
To produce an index for the documentation:
@@ -31,20 +31,24 @@ To produce the documentation
Contents:
- 00Readme this file ;-)
- multibib.dtx documented source file for the multibib package
- multibib.ins installation file
- mbgglo.ist modification of gglo.ist to produce a change history for
- the documentation of multibib
- mbgind.ist modification of gind.ist to produce an index for
- the documentation of multibib
+ README this file ;-)
+
+ multibib.dtx documented source file for the multibib package
+ multibib.ins installation file
+ multibib.pdf documentation
+
+ mbgglo.ist modification of gglo.ist to produce a change history for
+ the documentation of multibib
+ mbgind.ist modification of gind.ist to produce an index for
+ the documentation of multibib
- bibtexall shell script to run bibtex on each .aux file in the
- present directory
- mbplain.bst modification of plain.bst to be used together with multibib
+ bibtexall shell script to run bibtex on each .aux file in the
+ present directory
+ mbplain.bst modification of plain.bst to be used together with multibib
+ mbunsrtdin.bst modification of unsrtdin.bst to be used together with multibib
Happy TeXing
- Thorsten Hansen, thorsten.hansen@psychol.uni-giessen.de
+ Thorsten Hansen, Thorsten.Hansen@psychol.uni-giessen.de
diff --git a/Master/texmf-dist/doc/latex/multibib/bibtexall b/Master/texmf-dist/doc/latex/multibib/bibtexall
index 6a0e58ec474..3b2849486aa 100755
--- a/Master/texmf-dist/doc/latex/multibib/bibtexall
+++ b/Master/texmf-dist/doc/latex/multibib/bibtexall
@@ -2,8 +2,20 @@
#
# Evoke bibtex for each .aux file in the present directory.
#
-# Thorsten Hansen, 2003-03-24
-
+# Usage:
+# Change to the directory where you want to bibtex all .aux files which
+# have a citation command and type
+#
+# bibtexall
+#
+# Thorsten Hansen, 2003-03-24 (first entry)
+# 2005-10-26 do not evoke bibtex on .aux files w/o \citation's
+# 2008-11-06 no message for files w/o citations
for file in *.aux ; do
- bibtex `basename $file .aux`
+ if grep -c -q '\\citation' $file; then
+ echo "process $file"
+ bibtex `basename $file .aux`
+# else
+# echo "ignore file $file which has no \citation command"
+ fi
done
diff --git a/Master/texmf-dist/doc/latex/multibib/multibib.pdf b/Master/texmf-dist/doc/latex/multibib/multibib.pdf
index 74585637375..2e230e21648 100644
--- a/Master/texmf-dist/doc/latex/multibib/multibib.pdf
+++ b/Master/texmf-dist/doc/latex/multibib/multibib.pdf
Binary files differ
diff --git a/Master/texmf-dist/source/latex/multibib/multibib.dtx b/Master/texmf-dist/source/latex/multibib/multibib.dtx
index a4a387ce815..8c6c0ecbe19 100644
--- a/Master/texmf-dist/source/latex/multibib/multibib.dtx
+++ b/Master/texmf-dist/source/latex/multibib/multibib.dtx
@@ -1,9 +1,23 @@
-% \CheckSum{394}
+% \CheckSum{538}
%
% \iffalse
%% Package `multibib' to use with LaTeX2e.
-%% Copyright (C) 2003 by Thorsten Hansen. All rights reserved.
%%
+%% Copyright (C) 2008 by Thorsten Hansen
+%%
+%
+% This work may be distributed and/or modified under the conditions of
+% the LaTeX Project Public License, either version 1.3 of this license
+% or any later version. The latest version of this license is in
+% http://www.latex-project.org/lppl.txt and version 1.3 or later is
+% part of all distributions of LaTeX version 2003/12/01 or
+% later.
+%
+% This work has the LPPL maintenance status "maintained". The Current
+% Maintainer of this work is Thorsten Hansen.
+%
+% This is a contributed file to the LaTeX2e system.
+%
%
%<*dtx>
\ProvidesFile{multibib.dtx}
@@ -13,7 +27,7 @@
%<driver>\ProvidesFile{multibib.drv}
% \fi
% \ProvidesFile{multibib.dtx}
- [2004/01/28 v1.3 Multiple bibliographies for one document.]
+ [2008/12/10 v1.4 Multiple bibliographies for one document.]
%
% \iffalse
%<*driver>
@@ -85,7 +99,7 @@
% \GetFileInfo{multibib.dtx}
% \title{The \textsf{multibib} Package}
% \author{Thorsten Hansen\\
-% \normalsize thorsten.hansen@psychol.uni-giessen.de}
+% \normalsize Thorsten.Hansen@psychol.uni-giessen.de}
% \date{\fileversion\quad \filedate}
% \maketitle
%
@@ -117,8 +131,16 @@
% \changes{v1.2b}{2003/09/22}{General compatibility mechanism for packages
% which define their own cite commands, motivated by
% compatibility to \package{jurabib}.}
-% \changes{v1.2c}{2004/01/23}{Streamline code.}
+% \changes{v1.2c}{2004/01/23}{Code streamlined.}
% \changes{v1.3}{2004/01/24}{Documentation.}
+% \changes{v1.3a}{2004/02/09}{Continuous numerical labels with natbib.}
+% \changes{v1.3b}{2004/02/10}{\macrott{isnumber} changed to accept
+% arguments with \macrott{fi}, e.g.,
+% {\macrott{iffalse}{bjko}\macrott{fi}}.}
+% \changes{v1.3c}{2004/02/10}{Allow \macrott{bibliographystyle<s>} to
+% be used in the preamble.}
+% \changes{v1.3d}{2005/10/25}{New option \option{labeled}.}
+% \changes{v1.4}{2008/12/10}{Documentation.}
%
%
%
@@ -150,7 +172,7 @@
% Suppose, you have to separate your citations into two bibliographies,
% one for primary literature and one for secondary literature. The
% \package{multibib} package defines the |\newcite| command which
-% introduces a new new family of cite and bibliography commands.
+% introduces a new family of cite and bibliography commands.
% \begin{verbatim}
% \newcites{sec}{Secondary Literature}
% \end{verbatim}
@@ -243,6 +265,24 @@
%
% \subsection{Package Options}
% \begin{description}
+% \item[labeled] Add the internal suffixes for each
+% bibliography as prefixes to the labels to the bibliography. For
+% example, if you define
+% \begin{verbatim}\newcites{A,B,C}%
+% {Own \LaTeX\ Work,%
+% Submitted,%
+% {Habilitations, Dissertations and Diploma Thesis}}
+% \end{verbatim}
+% and specify a numerical bibstyle
+% \verb+\bibliographystyleA{plain}+, the labels in the
+% bibliography and the cited references will be [A1], [A2], [A3],
+% \dots; analogously, \verb+\bibliographystyleB{plain}+ results
+% in labels and cited references [B1], [B2], [B3],\dots; and
+% \verb+\bibliographystyleC{plain}+ results in labels and cited
+% references [C1], [C2], [C3], \dots . This option is useful
+% together with option \option{resetlabels} and numerical
+% reference schemes.
+%
% \item[resetlabels] When using numerical reference schemes,
% start each bibliography with~`[1]'. Default is continuous numbering,
% such that labels are created unambiguously.
@@ -267,7 +307,7 @@
% \subsection{Limitations}
%
% \begin{itemize}
-% \item When using numerical reference schemes and references to the
+% \item When numerical reference schemes are used and references to the
% same item appear in different bibliographies, the labels
% cannot be resolved properly. Rather, the replacement text
% (i.e, the number) is used which is defined in the auxiliary
@@ -395,7 +435,7 @@
% internal macro |\@citex| called from |\cite| by, e.g., changing
% the number of arguments, and/or define new variants of |\cite|, such as
% \package{natbib}'s |\citep|, deserve a special handling to ensure
-% combatibility to \package{multibib}. In the first case, the problem
+% compatibility to \package{multibib}. In the first case, the problem
% arise because \package{multibib}'s redefinition of |\@citex| to write to
% a new auxiliary file |\@newciteauxhandle| instead of writing to
% |\@auxout| is overwritten. In the second case, the problem arise
@@ -430,7 +470,7 @@
% |\@restoreauxhandle|.
% \end{enumerate}
% At present, packages \package{cite} and \package{jurabib} use this
-% combatibility mechanism.
+% compatibility mechanism.
%
%
%
@@ -447,7 +487,7 @@
% \begin{verbatim}
% \def\@mb@citenamelist{cite,citep,citet,citealp,citealt,footcite}
% \end{verbatim}
-% At present, package \package{jurabib} use this combatibility mechanism.
+% At present, package \package{jurabib} use this compatibility mechanism.
%
%
%
@@ -552,7 +592,7 @@
%
% \section{The Macros}
%
-% One paradigm with guided the development of the code was to use
+% One paradigm which guided the development of the code was to use
% standard \LaTeX\ commands as much as possible, and to customize their
% behavior using |\let|.
%
@@ -573,9 +613,29 @@
\newif\ifcontinuouslabels
\continuouslabelstrue
\DeclareOption{resetlabels}{\continuouslabelsfalse}
-\ProcessOptions
% \end{macrocode}
% \end{macro}
+%
+%
+% \begin{macro}{labeled}
+% \changes{v1.3d}{2005/10/25}{Define option \option{labeled}.}
+%
+% Define a new option to add the internal suffixes for each
+% bibliography as labels to the bibitems.
+% \begin{macrocode}
+\newif\iflabeled
+\labeledfalse
+\DeclareOption{labeled}{\labeledtrue}
+% \end{macrocode}
+% \end{macro}
+%
+%
+%
+% \noindent Finally, process all package options.
+%
+% \begin{macrocode}
+\ProcessOptions
+% \end{macrocode}
%
%
% \subsection{Preliminaries}
@@ -596,13 +656,12 @@
% \begin{macro}{\@newciteauxhandle}
% \changes{v1.1b}{2001/10/10}{Handle removed.}
%
-% Define a new handle of the auxiliary file for
-% all |\cite| and |\nocite| commands, standard as well as newly
-% defined. For the standard commands, this handle is let to
-% |\auxout|. Since version 1.1b the definition
-% |\let\@newciteauxhandle\@auxout| is no longer needed since
-% below we reset |\@citex| to its standard value after each call of
-% |\mb@@citex|.
+% Define a new handle of the auxiliary file for all |\cite| and
+% |\nocite| commands, standard as well as newly defined. For the
+% standard commands, this handle is let to |\auxout|. Since version
+% 1.1b the definition |\let\@newciteauxhandle\@auxout| is no longer
+% needed since below we reset |\@citex| to its standard value
+% after each call of |\mb@@citex|.
% \end{macro}
%
%
@@ -726,6 +785,8 @@
% \changes{v1.0i}{2000/01/14}{No change of label width for option
% \option{resetlabels}.}
% \changes{v1.0k}{1999/01/14}{\package{suthesis} compatibility.}
+% \changes{v1.3a}{2004/02/09}{Natbib specific definition of
+% thebibliography, modified to use \macrott{usecounter}.}
%
% The argument of |\thebibliography| determines the width of the
% labels in the bibliography. First it is checked if the parameter
@@ -748,21 +809,62 @@
\addcontentsline{toc}{chapter}{\bibname}%
\@ldthebibliography{#1}}}%
{}%
- \let\std@thebibliography\thebibliography
- \def\thebibliography#1{%
- \@isnumber{#1}%
- {\ifnum\mb@biblabelwidth=0
- \@tempcnta\c@enumiv
- \ifcontinuouslabels
- \advance\@tempcnta#1%
- \fi
- \std@thebibliography{\@arabic\@tempcnta}%
- \else
- \std@thebibliography{\@arabic\mb@biblabelwidth}%
+ \@ifpackageloaded{natbib}%
+ {%
+
+
+\renewenvironment{thebibliography}[1]{%
+ \bibsection\parindent \z@\bibpreamble\bibfont\list
+ {\@biblabel{\arabic{NAT@ctr}}}{\@bibsetup{#1}%
+ \usecounter{NAT@ctr}}% %% only changed here to usecounter
+ \ifNAT@openbib
+ \renewcommand\newblock{\par}
+ \else
+ \renewcommand\newblock{\hskip .11em \@plus.33em \@minus.07em}%
+ \fi
+ \sloppy\clubpenalty4000\widowpenalty4000
+ \sfcode`\.=1000\relax
+ \let\citeN\cite \let\shortcite\cite
+ \let\citeasnoun\cite
+ }{\def\@noitemerr{%
+ \PackageWarning{natbib}
+ {Empty `thebibliography' environment}}%
+ \endlist\vskip-\lastskip}
+
+ \let\std@thebibliography\thebibliography
+ \def\thebibliography#1{%
+ \@isnumber{#1}%
+ {\ifnum\mb@biblabelwidth=0
+ \@tempcnta\c@NAT@ctr %% changed here to c@NAT@ctr
+ \ifcontinuouslabels
+ \advance\@tempcnta#1%
+ \fi
+ \std@thebibliography{\@arabic\@tempcnta}%
+ \else
+ \std@thebibliography{\@arabic\mb@biblabelwidth}%
\global\mb@biblabelwidth 0
- \fi}%
- {\std@thebibliography{#1}}%
- }%
+ \fi}%
+ {\std@thebibliography{#1}}%
+ }%
+ }%
+ {% else, natbib not loaded
+ \let\std@thebibliography\thebibliography
+
+ \def\thebibliography#1{%
+ \@isnumber{#1}%
+ {\ifnum\mb@biblabelwidth=0
+ \@tempcnta\c@enumiv
+ \ifcontinuouslabels
+ \advance\@tempcnta#1%
+ \fi
+ \std@thebibliography{\@arabic\@tempcnta}%
+ \else
+ \std@thebibliography{\@arabic\mb@biblabelwidth}%
+ \global\mb@biblabelwidth 0
+ \fi}%
+ {\std@thebibliography{#1}}%
+ }%
+ }%
}
% \end{macrocode}
% \end{macro}
@@ -773,6 +875,9 @@
% \changes{v1.0g}{2000/01/10}{Empty string is not handled as number.}
% \changes{v1.1d}{2001/01/04}{Execute \macrott{@scannumber} in
% \macrott{hbox}.}
+% \changes{v1.3b}{2004/02/10}{\macrott{isnumber} changed to accept
+% arguments with \macrott{fi}, e.g.,
+% {\macrott{iffalse}{bjko}\macrott{fi}}.}
%
% Macro |\@isnumber| behaves as follows: If |#1| is a number (which
% may contain blanks at arbitrary positions), |#2| is executed,
@@ -780,13 +885,18 @@
%
% \begin{macrocode}
\newcommand{\@isnumber}[3]{%
- \def\argi{#1}%
- \ifx\argi\empty
+ \def\argdef{#1}%
+ \edef\argedef{#1}%
+ \ifx\argedef\empty
#3
\else
- \global\@tempswafalse
- \setbox\@tempboxa=\hbox{\@scannumber#1\plugh}%
- \if@tempswa#2\else#3\fi
+ \ifx\argdef\argedef
+ \global\@tempswafalse
+ \setbox\@tempboxa=\hbox{\@scannumber#1\plugh}%
+ \if@tempswa#2\else#3\fi
+ \else
+ #3
+ \fi
\fi}
% \end{macrocode}
% \end{macro}
@@ -993,29 +1103,55 @@
% \end{macro}
%
%
+% \begin{macro}{\bibitem<s>}
+%
+% \changes{v1.3d}{2005/10/25}{Define a bibliography specific
+% version of \macrott{@bibitem} and
+% \macrott{@biblabel} if \option{labeled} is
+% active.}
+%
+% \begin{macrocode}
+ \iflabeled % if option labeled
+ \expandafter\edef\csname @bibitem\@suffix\endcsname##1{%
+ \noexpand\item
+ \noexpand\if@filesw \noexpand\immediate\noexpand\write\noexpand\@auxout
+ {\noexpand\string\noexpand\bibcite{##1}%
+ {\@suffix\noexpand\the\noexpand\value{\noexpand\@listctr}}}%
+ \noexpand\fi
+ \noexpand\ignorespaces}%
+ \expandafter\edef\csname @biblabel\@suffix\endcsname##1{[\@suffix##1]}%
+ \fi % end if option labeled
+% \end{macrocode}
+% \end{macro}
+%
+%
% \begin{macro}{\bibliography<s>}
% \changes{v1.0i}{2000/01/12}{Remove setting of \macrott{usecounter} and
% \macrott{newusecounter} which is done
% in redefined \macrott{bibliography}.}
% \changes{v1.1e}{2001/01/04}{Definition of \macrott{bibname} analogously
% to \macrott{refname}.}
-%
-% Define new |\bibliography|\meta{s} equivalents.
-% The standard |\bibliography| macro does
-% two things: The bibdata file is written to the auxiliary file
-% |\@auxout| and the |.bbl| file |\jobname.bbl| is inputed. For
-% |\bibliography|\meta{s}, we thus let both |\@auxout|
-% and |\jobname| refer to the new auxiliary file \meta{s}|.aux|.
-% Since some styles and classes write the heading
-% of the bibliography to the table of contents, the old meaning of
-% |\@auxout| is saved in |\temp@auxout| and |\addtocontents| is locally
-% replaced by \package{multibib}s variant |\mb@addtocontents|
-% (defined above) which writes to |\temp@auxout| instead of
-% |\auxout|. Further, the heading of the bibliography generated by
-% |\refname| or |\bibname| depending on the class is set to the
-% particular heading of |\bibliography|\meta{s}. After this
-% redefinitions, the standard |\bibliography| can be evoked.
-% Extra braces are needed to encapsulate the various |\let|s.
+% \changes{v1.3d}{2005/10/25}{Activate the bibliography specific
+% versions of \macrott{@bibitem} and
+% \macrott{@biblabel} if \option{labeled} is
+% active.}
+%
+% Define new |\bibliography|\meta{s} equivalents.
+% The standard |\bibliography| macro does
+% two things: The bibdata file is written to the auxiliary file
+% |\@auxout| and the |.bbl| file |\jobname.bbl| is inputed. For
+% |\bibliography|\meta{s}, we thus let both |\@auxout|
+% and |\jobname| refer to the new auxiliary file \meta{s}|.aux|.
+% Since some styles and classes write the heading
+% of the bibliography to the table of contents, the old meaning of
+% |\@auxout| is saved in |\temp@auxout| and |\addtocontents| is locally
+% replaced by \package{multibib}s variant |\mb@addtocontents|
+% (defined above) which writes to |\temp@auxout| instead of
+% |\auxout|. Further, the heading of the bibliography generated by
+% |\refname| or |\bibname| depending on the class is set to the
+% particular heading of |\bibliography|\meta{s}. After this
+% redefinitions, the standard |\bibliography| can be evoked.
+% Extra braces are needed to encapsulate the various |\let|s.
% \begin{macrocode}
\expandafter\edef\csname bibliography\@suffix\endcsname##1{{%
\let\noexpand\temp@auxout\noexpand\@auxout
@@ -1026,7 +1162,13 @@
\let\noexpand\refname
\expandafter\noexpand\csname refname\@suffix\endcsname
\let\noexpand\bibname
- \expandafter\noexpand\csname refname\@suffix\endcsname
+ \expandafter\noexpand\csname refname\@suffix\endcsname
+ \iflabeled
+ \let\noexpand\@bibitem
+ \expandafter\noexpand\csname @bibitem\@suffix\endcsname
+ \let\noexpand\@biblabel
+ \expandafter\noexpand\csname @biblabel\@suffix\endcsname
+ \fi
\noexpand\bibliography{##1}%
}}
% \end{macrocode}
@@ -1035,11 +1177,18 @@
% \newpage
%
% \begin{macro}{\bibliographystyle<s>}
+% \changes{v1.3c}{2004/02/10}{Write directly the \macrott{bibstyle}
+% macro to the specific auxfile instead of redefining a
+% auxhandle and then using the standard
+% \macrott{bibliographystyle} macro.}
+%
% Define new |\bibliographystyle|\meta{s} equivalents.
% \begin{macrocode}
- \expandafter\edef\csname bibliographystyle\@suffix\endcsname##1{{%
- \let\noexpand\@auxout\csname @auxout\@suffix\endcsname
- \noexpand\bibliographystyle{##1}}}%
+ \expandafter\edef\csname bibliographystyle\@suffix\endcsname##1{%
+ \noexpand\if@filesw
+ \noexpand\immediate\noexpand\write\csname @auxout\@suffix\endcsname
+ {\noexpand\string\noexpand\bibstyle{##1}}%
+ \noexpand\fi}
% \end{macrocode}
% \end{macro}
%
diff --git a/Master/texmf-dist/source/latex/multibib/multibib.ins b/Master/texmf-dist/source/latex/multibib/multibib.ins
index 4b8f4970182..55ea1edb126 100644
--- a/Master/texmf-dist/source/latex/multibib/multibib.ins
+++ b/Master/texmf-dist/source/latex/multibib/multibib.ins
@@ -1,5 +1,45 @@
+%
+% This is file `multibib.ins',
+% for extracting package files from the original source file
+% `multibib.dtx'.
+%
+% This work may be distributed and/or modified under the conditions of
+% the LaTeX Project Public License, either version 1.3 of this license
+% or any later version. The latest version of this license is in
+% http://www.latex-project.org/lppl.txt and version 1.3 or later is
+% part of all distributions of LaTeX version 2003/12/01 or later.
+%
+% To produce the package run multibib.ins through LaTeX.
+%
+% Copyright (C) 2008 Thorsten Hansen
+
\input docstrip
+\preamble
+
+IMPORTANT NOTICE:
+
+This work may be distributed and/or modified under the conditions of
+the LaTeX Project Public License, either version 1.3 of this license
+or any later version. The latest version of this license is in
+http://www.latex-project.org/lppl.txt and version 1.3 or later is
+part of all distributions of LaTeX version 2003/12/01 or
+later.
+
+This work has the LPPL maintenance status "maintained". The Current
+Maintainer of this work is Thorsten Hansen.
+
+Any modified versions of this file must be renamed with new filenames
+distinct from multibib.sty.
+
+This is a generated file. It may not be distributed without the
+original source file \inFileName.
+
+To produce the documentation run \inFileName through LaTeX.
+
+
+\endpreamble
+
\generate{\file{multibib.sty}{\from{multibib.dtx}{package}}}
\Msg{***********************************************************}
@@ -9,7 +49,7 @@
\Msg{*}
\Msg{* `multibib.sty'}
\Msg{*}
-\Msg{* To produce the documentation run the .dtx file through LaTeX.}
+\Msg{* To produce the documentation run multibib.dtx through LaTeX.}
\Msg{*}
\Msg{* Happy TeXing}
\Msg{***********************************************************}
diff --git a/Master/texmf-dist/tex/latex/multibib/multibib.sty b/Master/texmf-dist/tex/latex/multibib/multibib.sty
index d77c922be29..fa7866ceeca 100644
--- a/Master/texmf-dist/tex/latex/multibib/multibib.sty
+++ b/Master/texmf-dist/tex/latex/multibib/multibib.sty
@@ -8,28 +8,39 @@
%%
%% IMPORTANT NOTICE:
%%
-%% For the copyright see the source file.
+%% This work may be distributed and/or modified under the conditions of
+%% the LaTeX Project Public License, either version 1.3 of this license
+%% or any later version. The latest version of this license is in
+%% http://www.latex-project.org/lppl.txt and version 1.3 or later is
+%% part of all distributions of LaTeX version 2003/12/01 or
+%% later.
%%
-%% Any modified versions of this file must be renamed
-%% with new filenames distinct from multibib.sty.
+%% This work has the LPPL maintenance status "maintained". The Current
+%% Maintainer of this work is Thorsten Hansen.
+%%
+%% Any modified versions of this file must be renamed with new filenames
+%% distinct from multibib.sty.
+%%
+%% This is a generated file. It may not be distributed without the
+%% original source file multibib.dtx.
+%%
+%% To produce the documentation run multibib.dtx through LaTeX.
%%
-%% For distribution of the original source see the terms
-%% for copying and modification in the file multibib.dtx.
%%
-%% This generated file may be distributed as long as the
-%% original source files, as listed above, are part of the
-%% same distribution. (The sources need not necessarily be
-%% in the same archive or directory.)
%% Package `multibib' to use with LaTeX2e.
-%% Copyright (C) 2003 by Thorsten Hansen. All rights reserved.
+%%
+%% Copyright (C) 2008 by Thorsten Hansen
%%
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{multibib}
- [2004/01/28 v1.3 Multiple bibliographies for one document.]
+ [2008/12/10 v1.4 Multiple bibliographies for one document.]
\newif\ifcontinuouslabels
\continuouslabelstrue
\DeclareOption{resetlabels}{\continuouslabelsfalse}
+\newif\iflabeled
+\labeledfalse
+\DeclareOption{labeled}{\labeledtrue}
\ProcessOptions
\def\mylop#1\to#2{\expandafter\mylopoff#1\mylopoff#1#2}
\long\def\mylopoff#1,#2\mylopoff#3#4{\def#4{#1}\def#3{#2}}
@@ -73,30 +84,75 @@
\addcontentsline{toc}{chapter}{\bibname}%
\@ldthebibliography{#1}}}%
{}%
- \let\std@thebibliography\thebibliography
- \def\thebibliography#1{%
- \@isnumber{#1}%
- {\ifnum\mb@biblabelwidth=0
- \@tempcnta\c@enumiv
- \ifcontinuouslabels
- \advance\@tempcnta#1%
- \fi
- \std@thebibliography{\@arabic\@tempcnta}%
- \else
- \std@thebibliography{\@arabic\mb@biblabelwidth}%
+ \@ifpackageloaded{natbib}%
+ {%
+
+\renewenvironment{thebibliography}[1]{%
+ \bibsection\parindent \z@\bibpreamble\bibfont\list
+ {\@biblabel{\arabic{NAT@ctr}}}{\@bibsetup{#1}%
+ \usecounter{NAT@ctr}}% %% only changed here to usecounter
+ \ifNAT@openbib
+ \renewcommand\newblock{\par}
+ \else
+ \renewcommand\newblock{\hskip .11em \@plus.33em \@minus.07em}%
+ \fi
+ \sloppy\clubpenalty4000\widowpenalty4000
+ \sfcode`\.=1000\relax
+ \let\citeN\cite \let\shortcite\cite
+ \let\citeasnoun\cite
+ }{\def\@noitemerr{%
+ \PackageWarning{natbib}
+ {Empty `thebibliography' environment}}%
+ \endlist\vskip-\lastskip}
+
+ \let\std@thebibliography\thebibliography
+ \def\thebibliography#1{%
+ \@isnumber{#1}%
+ {\ifnum\mb@biblabelwidth=0
+ \@tempcnta\c@NAT@ctr %% changed here to c@NAT@ctr
+ \ifcontinuouslabels
+ \advance\@tempcnta#1%
+ \fi
+ \std@thebibliography{\@arabic\@tempcnta}%
+ \else
+ \std@thebibliography{\@arabic\mb@biblabelwidth}%
\global\mb@biblabelwidth 0
- \fi}%
- {\std@thebibliography{#1}}%
- }%
+ \fi}%
+ {\std@thebibliography{#1}}%
+ }%
+ }%
+ {% else, natbib not loaded
+ \let\std@thebibliography\thebibliography
+
+ \def\thebibliography#1{%
+ \@isnumber{#1}%
+ {\ifnum\mb@biblabelwidth=0
+ \@tempcnta\c@enumiv
+ \ifcontinuouslabels
+ \advance\@tempcnta#1%
+ \fi
+ \std@thebibliography{\@arabic\@tempcnta}%
+ \else
+ \std@thebibliography{\@arabic\mb@biblabelwidth}%
+ \global\mb@biblabelwidth 0
+ \fi}%
+ {\std@thebibliography{#1}}%
+ }%
+ }%
}
\newcommand{\@isnumber}[3]{%
- \def\argi{#1}%
- \ifx\argi\empty
+ \def\argdef{#1}%
+ \edef\argedef{#1}%
+ \ifx\argedef\empty
#3
\else
- \global\@tempswafalse
- \setbox\@tempboxa=\hbox{\@scannumber#1\plugh}%
- \if@tempswa#2\else#3\fi
+ \ifx\argdef\argedef
+ \global\@tempswafalse
+ \setbox\@tempboxa=\hbox{\@scannumber#1\plugh}%
+ \if@tempswa#2\else#3\fi
+ \else
+ #3
+ \fi
\fi}
\let\plugh\relax
\newcommand{\@scannumber}[1]{%
@@ -147,6 +203,16 @@
\expandafter\edef\csname nocite\@suffix\endcsname##1{{%
\let\noexpand\@auxout\csname @auxout\@suffix\endcsname
\noexpand\nocite{##1}}}%
+ \iflabeled % if option labeled
+ \expandafter\edef\csname @bibitem\@suffix\endcsname##1{%
+ \noexpand\item
+ \noexpand\if@filesw \noexpand\immediate\noexpand\write\noexpand\@auxout
+ {\noexpand\string\noexpand\bibcite{##1}%
+ {\@suffix\noexpand\the\noexpand\value{\noexpand\@listctr}}}%
+ \noexpand\fi
+ \noexpand\ignorespaces}%
+ \expandafter\edef\csname @biblabel\@suffix\endcsname##1{[\@suffix##1]}%
+ \fi % end if option labeled
\expandafter\edef\csname bibliography\@suffix\endcsname##1{{%
\let\noexpand\temp@auxout\noexpand\@auxout
\let\noexpand\addtocontents\noexpand\mb@addtocontents
@@ -157,11 +223,19 @@
\expandafter\noexpand\csname refname\@suffix\endcsname
\let\noexpand\bibname
\expandafter\noexpand\csname refname\@suffix\endcsname
+ \iflabeled
+ \let\noexpand\@bibitem
+ \expandafter\noexpand\csname @bibitem\@suffix\endcsname
+ \let\noexpand\@biblabel
+ \expandafter\noexpand\csname @biblabel\@suffix\endcsname
+ \fi
\noexpand\bibliography{##1}%
}}
- \expandafter\edef\csname bibliographystyle\@suffix\endcsname##1{{%
- \let\noexpand\@auxout\csname @auxout\@suffix\endcsname
- \noexpand\bibliographystyle{##1}}}%
+ \expandafter\edef\csname bibliographystyle\@suffix\endcsname##1{%
+ \noexpand\if@filesw
+ \noexpand\immediate\noexpand\write\csname @auxout\@suffix\endcsname
+ {\noexpand\string\noexpand\bibstyle{##1}}%
+ \noexpand\fi}
}%
}
\@onlypreamble\newcites