1 \ProvidesFile{german-legal-book.cbx}[2020/03/06 v000]
3 %%% author-maintainer: Dominik Brodowski, dominik.brodowski@uni-saarland.de
10 %%% Dieser Zitierstil basiert auf ext-authortitle, verwendet aber kein
11 %%% ibidem (Geschmacksfrage!)
12 \RequireCitationStyle{ext-authortitle}%
14 %%% Um die Änderungen so klein wie möglich zu halten, wird das Paket
15 %%% xpatch verwendet, mit dem sich existierende Makros verändern lassen,
16 %%% ohne sie gänzlich neu definieren zu müssen.
17 \RequirePackage{xpatch}%
19 %%% Mit der Option "edsuper" wird angegeben, ob die Auflagennummer bei
20 %%% Büchern und Kommentaren mit abgedruckt werden soll. Der Standard ist
21 %%% "true", d.h. um dies zu unterbinden, muss "edsuper=false" als Option
23 \newbool{book:edition:super}
24 \setboolean{book:edition:super}{true}
25 \DeclareBibliographyOption[boolean]{edsuper}[true]{%
26 \setboolean{book:edition:super}{#1}%
30 %%%%%%%%%%%%%%%%%%%%%%%%
31 %%% Allgemeiner Teil %%%
32 %%%%%%%%%%%%%%%%%%%%%%%%
34 %%% Mehrere Autorennamen werden durch einen Schrägstrich getrennt. Dieser
35 %%% ist -- wie die Autorennamen selbst (siehe bbx) -- kursiv zu setzen.
37 \renewcommand*{\multinamedelim}{\mkbibemph{\addslash}}%
38 \renewcommand*{\finalnamedelim}{\mkbibemph{\addslash}}%
41 %%% cite:title wird normalerweise verwendet, um alles ab dem Beitragstitel
42 %%% (d.h. nach dem Autorennamen) auszugeben. Mit dieser "Weiche" kann
43 %%% hierfür, abhängig vom Beitragstyp, ein eigenes Makro definiert werden.
44 \renewbibmacro*{cite:title}{%
45 \printtext[bibhyperref]{%
46 \ifbibmacroundef{cite:\strfield{entrytype}}%
47 {%%% default, from authortitle.cbx %%%
48 \printfield[citetitle]{labeltitle}%
49 }{%%% use custom override %%%
50 \usebibmacro*{cite:\strfield{entrytype}}%
55 %%% Mit diesem Makro wird standardmäßig die Startseite ausgegeben, wenn
56 %%% es einer genauen Fundstelle ("pinpoint citation") als postnote fehlt.
57 \newbibmacro*{startingpage}{%
58 \iffieldundef{postnote}%
59 {\iffieldundef{pages}{}%
60 {\addcomma\addspace\printfield{pages}}}%
64 %%% Die Formatdefintion "edition:super" und das Makro "printsuperedition"
65 %%% werden genutzt, um -- falls book:edition:super auf "true" gesetzt ist
66 %%% (Option "edsuper", siehe oben) die Auflagennummer (!) hochgestellt
68 \DeclareFieldFormat{edition:super}{%
70 \textsuperscript{\tiny{#1}}%
74 \newbibmacro*{printsuperedition}{%
75 \ifbool{book:edition:super}{\printfield[edition:super]{edition}}{}%
83 %%% In Fußnoten soll nicht die Seitenspanne des Aufsatzes, sondern nur die
84 %%% Startseite ausgegeben werden.
86 \DeclareFieldFormat[article]{pages}{\mkfirstpage{#1}}%
89 %%% Gibt es eine genaue Fundstelle ("pinpoint citation") als sog. postnote,
90 %%% so soll zunächst die Startseite und danach die genaue Fundstelle in
91 %%% einer Klammer ausgegeben werden.
92 \DeclareFieldFormat[article]{postnote}{\addspace\printfield{pages}\addspace\mkbibparens{#1}}
94 %%% Nachfolgend ist der Fußnoten-Zitierstil für Aufsätze definiert, die
95 %%% in Zeitschriften erschienen sind, welche nach Erscheinungsjahr (und
96 %%% nicht Band, dann @periodical) zitiert werden:
97 \newbibmacro*{cite:article}{%
102 %%% Zeitschriftenname...
103 \usebibmacro{journal}%
106 \setunit*{\addspace}%
108 %%% ggf. Angabe der Ausgabe (wenn Feld "issue" definiert ist)
109 \iffieldundef{issue}{}{\printfield{issue}\slash}%
114 %%% und dann die Startseite bzw. pinpoint citation
115 \usebibmacro{startingpage}%
123 %%% In Fußnoten soll nicht die Seitenspanne des Aufsatzes, sondern nur die
124 %%% Startseite ausgegeben werden.
126 \DeclareFieldFormat[periodical]{pages}{\mkfirstpage{#1}}%
129 %%% Gibt es eine genaue Fundstelle ("pinpoint citation") als sog. postnote,
130 %%% so soll zunächst die Startseite und danach die genaue Fundstelle in
131 %%% einer Klammer ausgegeben werden.
132 \DeclareFieldFormat[periodical]{postnote}{\printfield{pages} \mkbibparens{#1}}
134 %%% Nachfolgend ist der Fußnoten-Zitierstil für Aufsätze definiert, die
135 %%% in Zeitschriften erschienen sind, welche nach Band (und nicht nach
136 %%% Erscheinungsjahr, dann @article) zitiert werden:
137 \newbibmacro*{cite:periodical}{%
142 %%% Zeitschriftenname...
143 \usebibmacro{journal}%
146 \setunit*{\addspace}%
154 %%% Jahr (in Klammern)...
155 \mkbibparens{\printfield{year}}%
160 %%% und dann die Startseite bzw. pinpoint citation
161 \usebibmacro{startingpage}%
169 %%% In der Fußnoten interessiert uns nur die Auflagenzahl (ohne "Aufl.")
171 \DeclareFieldFormat[book]{edition}{#1}%
174 %%% Nachfolgend ist der Fußnoten-Zitierstil für Bücher definiert:
175 \newbibmacro*{cite:book}{%
176 \printfield[citetitle]{labeltitle}%
177 \usebibmacro{printsuperedition}%
185 %%% In Fußnoten soll nicht die Seitenspanne des Aufsatzes, sondern nur die
186 %%% Startseite ausgegeben werden.
188 \DeclareFieldFormat[inbook]{pages}{\mkfirstpage{#1}}%
191 %%% Gibt es eine genaue Fundstelle ("pinpoint citation") als sog. postnote,
192 %%% so soll zunächst die Startseite und danach die genaue Fundstelle in
193 %%% einer Klammer ausgegeben werden.
194 \DeclareFieldFormat[inbook]{postnote}{\printfield{pages} \mkbibparens{#1}}
196 %%% Herausgebernamen in der Fußnote dürfen abgekürzt werden
198 \DeclareNameAlias[inbook]{byeditor}{labelname}%
201 %%% Nachfolgend ist der Fußnoten-Zitierstil für Buchbeiträge definiert:
202 \newbibmacro*{cite:inbook}{%
208 \usebibmacro{byeditor+others}%
213 %%% dann der Buchtitel...
214 \iffieldundef{shorttitle}%
215 {\printfield{booktitle}}%
216 {\printfield{shorttitle}}%
217 \usebibmacro{printsuperedition}%
222 %%% und dann die Startseite bzw. pinpoint citation
223 \usebibmacro{startingpage}%
231 %%% In Fußnoten soll nicht die Seitenspanne des Aufsatzes, sondern nur die
232 %%% Startseite ausgegeben werden.
234 \DeclareFieldFormat[incollection]{pages}{\mkfirstpage{#1}}%
237 %%% Gibt es eine genaue Fundstelle ("pinpoint citation") als sog. postnote,
238 %%% so soll zunächst die Startseite und danach die genaue Fundstelle in
239 %%% einer Klammer ausgegeben werden.
240 \DeclareFieldFormat[incollection]{postnote}{\printfield{pages} \mkbibparens{#1}}
242 %%% Nachfolgend ist der Fußnoten-Zitierstil für Festschriftenbeiträge definiert:
243 \newbibmacro*{cite:incollection}{%
248 %%% Festschriftentitel...
249 \iffieldundef{shorttitle}%
250 {\printfield{booktitle}}%
251 {\printfield{shorttitle}}%
259 %%% Der Bearbeiter wird im prenote-Feld angegeben und kursiv gesetzt, danach
261 \DeclareFieldFormat[commentary]{prenote}{\mkbibemph{#1}\addcomma}%
263 %%% Falls bei einem Kommentar "shorthand" angegeben ist, werden die
264 %%% Herausgeber nicht (!) genannt. Hierzu wird der Befehl
265 %%% \printnames{labelname} im allgemeinen Makro "textcite" unter die
266 %%% Bedingung gestellt, dass es sich um einen Kommentar handelt und ein
267 %%% "shorthand" definiert ist.
268 \xpatchbibmacro{textcite}{%
269 \printnames{labelname}%
271 \ifentrytype{commentary}{%
272 \iffieldundef{shorthand}{%
273 \printnames{labelname}%
276 \printnames{labelname}%
280 %%% Falls bei einem Kommentar "shorthand" angegeben ist, muss trotzdem das
281 %%% "in:" vorangestellt und die Auflagennummer nachgeschoben werden. Hierzu
282 %%% wird das allgemeine Makro "cite:shorthand" entsprechend modifiziert.
283 \xpatchbibmacro{cite:shorthand}{%
284 \printfield{shorthand}%
287 \printfield{shorthand}%
288 \usebibmacro{printsuperedition}%
291 %%% Nachfolgend ist der Fußnoten-Zitierstil für Kommentare definiert. Dieser
292 %%% wird indes nur verwendet, falls "shorthand" nicht definiert ist;
293 %%% andernfalls erledigen die oben modifizierten Makros "textcite" und
294 %%% "cite:shorthand" die ganze Arbeit.
295 \newbibmacro*{cite:commentary}{%
297 \iffieldundef{shorttitle}%
298 {\printfield{booktitle}}%
299 {\printfield{shorttitle}}%