diff options
author | Karl Berry <karl@freefriends.org> | 2010-03-12 00:04:57 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2010-03-12 00:04:57 +0000 |
commit | b93495d96a481c80e8feab510d8eebea5a166b02 (patch) | |
tree | efc8ceac7cbf9b2587f474ff4dc21b5007b598bd /Master/texmf-dist/tex/latex/biblatex-dw/bbx | |
parent | 6d184abba1025d22c5317531c2e3e253ad7583bd (diff) |
new-to-tl biblatex-dw 1.3 (11mar10)
git-svn-id: svn://tug.org/texlive/trunk@17433 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/biblatex-dw/bbx')
3 files changed, 2559 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/latex/biblatex-dw/bbx/authortitle-dw.bbx b/Master/texmf-dist/tex/latex/biblatex-dw/bbx/authortitle-dw.bbx new file mode 100644 index 00000000000..63235482766 --- /dev/null +++ b/Master/texmf-dist/tex/latex/biblatex-dw/bbx/authortitle-dw.bbx @@ -0,0 +1,832 @@ +% authortitle-dw.bbx, Dominik Waßenhoven 2010 + +\ProvidesFile{authortitle-dw.bbx}[2010/03/11 v1.3 biblatex bibliography style] + +\@ifpackagelater{biblatex}{2010/02/14} + {} + {\PackageError{biblatex} + {Outdated 'biblatex' package} + {The version of the 'authortitle-dw' style you are using\MessageBreak + requires biblatex v0.9 or later.\MessageBreak + You are using: '\csuse{ver@biblatex.sty}'.\MessageBreak + This is a fatal error. I'm aborting now.}% + \endinput} + +\RequireBibliographyStyle{standard-dw} + +\newbool{bbx:annotation} +\newbool{bbx:edbyidem} +\newbool{bbx:edsuper} +\newbool{bbx:idembib} +\newbool{bbx:library} +\newbool{bbx:nolocation} +\newbool{bbx:nopublisher} +\newbool{bbx:oldauthor} +\newbool{bbx:origfields} +\newbool{bbx:pseudoauthor} +\newbool{oldauthor} +\newbool{pseudoauthor} + +\DeclareEntryOption{oldauthor}[true]{% + \csuse{bool#1}{oldauthor}} +\DeclareEntryOption{pseudoauthor}[true]{% + \csuse{bool#1}{pseudoauthor}} + +\DeclareBibliographyOption{annotation}[true]{% + \csuse{bool#1}{bbx:annotation}} +\DeclareBibliographyOption{edbyidem}[true]{% + \csuse{bool#1}{bbx:edbyidem}} +\DeclareBibliographyOption{edsuper}[true]{% + \csuse{bool#1}{bbx:edsuper}} +\DeclareBibliographyOption{idembib}[true]{% + \csuse{bool#1}{bbx:idembib}} +\DeclareBibliographyOption{library}[true]{% + \csuse{bool#1}{bbx:library}} +\DeclareBibliographyOption{nolocation}[true]{% + \csuse{bool#1}{bbx:nolocation}} +\DeclareBibliographyOption{nopublisher}[true]{% + \csuse{bool#1}{bbx:nopublisher}} +\DeclareBibliographyOption{oldauthor}[true]{% + \csuse{bool#1}{bbx:oldauthor}} +\DeclareBibliographyOption{origfields}[true]{% + \csuse{bool#1}{bbx:origfields}} +\DeclareBibliographyOption{pseudoauthor}[true]{% + \csuse{bool#1}{bbx:pseudoauthor}} + +\newcommand{\bbx@idembibformat}{} +\newcommand{\bbx@option@editorstring}{} +\newcommand{\bbx@option@firstnamefont}{} +\newcommand{\bbx@option@namefont}{} +\newcommand{\bbx@option@ibidemfont}{} +\newcommand{\bbx@option@idemfont}{empty}% wichtig zur Überprüfung wegen Paket-Warnung bei falscher Option +\newcommand{\bbx@origfieldsformat}{} + +\DeclareBibliographyOption{editorstring}{% + \renewcommand{\bbx@option@editorstring}{#1}} +\DeclareBibliographyOption{firstnamefont}{% + \renewcommand{\bbx@option@firstnamefont}{#1}} +\DeclareBibliographyOption{ibidemfont}{% + \renewcommand{\bbx@option@ibidemfont}{#1}} +\DeclareBibliographyOption{idembibformat}{% + \renewcommand{\bbx@idembibformat}{#1}} +\DeclareBibliographyOption{idemfont}{% + \renewcommand{\bbx@option@idemfont}{#1}} +\DeclareBibliographyOption{namefont}{% + \renewcommand{\bbx@option@namefont}{#1}} +\DeclareBibliographyOption{origfieldsformat}{% + \renewcommand{\bbx@origfieldsformat}{#1}} + +\ExecuteBibliographyOptions{% + edbyidem=true, + editorstring=parens, + firstnamefont=normal, + ibidemfont=normal, + idembib=true, + idembibformat=idem, + namefont=normal, + nolocation=false, + nopublisher=true, + oldauthor=true, + origfields=true, + origfieldsformat=punct, + pseudoauthor=true +} + +%% Autoren, Herausgeber und Übersetzter in der Bibliographie +\DeclareNameAlias{author}{sortname} +\DeclareNameAlias{editor}{sortname} +\DeclareNameAlias{translator}{sortname} + +%% Komma statt Punkt nach einzelnen Elementen der Literaturangaben +\renewcommand*{\newunitpunct}{\addcomma\space} + +%% Punkt zwischen Titel und Untertitel +\renewcommand*{\subtitlepunct}{\addperiod\space} + +%% Punkt zwischen Untertitel und Titelzusatz ([book|main]titleaddon) +\newcommand*{\titleaddonpunct}{\addperiod\space} + +%% Doppelpunkt nach Autoren/Editoren +\renewcommand*{\labelnamepunct}{\addcolon\space} + +%% Zeichensetzung zwischen Ort und Jahr +\newcommand*{\locationdatepunct}{\addspace} + +%% Zeichensetzung zwischen Ort und Verlag +\newcommand*{\locationpublisherpunct}{\addcolon\space} + +%% Zeichensetzung zwischen Verlag und Jahr +\newcommand*{\publisherdatepunct}{\addcomma\space} + +%% Zeichen vor 'Nachdruck' bei Benutzung von 'origfields' +\newcommand*{\origfieldspunct}{\addcomma\space} + +%% Zeichen für pseudoauthor=true +\newcommand*{\bibleftpseudo}{} +\newcommand*{\bibrightpseudo}{} + +%% Zeichen zw. Autoren/Editoren in der Bibliographie +\newcommand*{\bibrevsdnamedelim}{\addspace} +\newcommand*{\bibmultinamedelim}{\addcomma\space} +\newcommand*{\bibfinalnamedelim}{% + \ifnum\value{liststop}>2 \finalandcomma\fi + \addspace\bibstring{and}\space}% + +\AtBeginBibliography{% + \let\revsdnamedelim\bibrevsdnamedelim% + \let\multinamedelim\bibmultinamedelim% + \let\finalnamedelim\bibfinalnamedelim% +% +%% 'Ders.' statt '--' in der Bibliographie + \ifdefstring{\bbx@idembibformat}{idem} + {\renewcommand*{\bibnamedash}{\bibsentence\bibstring[\mkidem]{idem\thefield{gender}}}}% + {}% +} + +%% Formate in der Bibliographie +\DeclareFieldFormat{booktitle}{#1} +\DeclareFieldFormat{journaltitle}{#1} +\DeclareFieldFormat{issuetitle}{#1} +\DeclareFieldFormat{maintitle}{#1} +\DeclareFieldFormat{title}{#1} +\DeclareFieldFormat[article]{title}{#1} +\DeclareFieldFormat[inbook]{title}{#1} +\DeclareFieldFormat[incollection]{title}{#1} +\DeclareFieldFormat[inreference]{title}{% + \bibstring{inrefstring}% + \enquote{#1}} +\DeclareFieldFormat[inproceedings]{title}{#1} +\DeclareFieldFormat[patent]{title}{#1} +\DeclareFieldFormat[thesis]{title}{#1} +\DeclareFieldFormat[unpublished]{title}{#1} +\DeclareFieldFormat[inreference]{volume}{#1}% volume of an inreference entry +\DeclareFieldFormat{type}{\ifbibstring{#1}{\bibstring{#1}}{#1}} +\DeclareFieldFormat{url}{\textsc{url}\addcolon\space\url{#1}} +\DeclareFieldFormat{edition:super}{% für Option 'edsuper' + \ifinteger{#1} + {\textsuperscript{#1}} + {\blxdw@warning@noline{% + The 'edition' field of entry\MessageBreak + '\abx@field@entrykey' is not an integer.\MessageBreak + The edition will not be printed as\MessageBreak + superscript. Instead, the 'edition'\MessageBreak + field is printed completely}}} +\DeclareFieldFormat{edition}{% + \ifinteger{#1} + {\mkbibordedition{#1}~\bibstring{edition}} + {#1\isdot}} +\DeclareFieldFormat{shorthand}{% + \ifbool{bbx:shorthandacro} + {\ifbool{bbx:acronym} + {\mkbibacro{#1}\isdot} + {#1\isdot}} + {#1\isdot}} +\DeclareFieldFormat{shorthandwidth}{% + \ifbool{bbx:shorthandacro} + {\ifbool{bbx:acronym} + {\mkbibacro{#1}\isdot} + {#1\isdot}} + {#1\isdot}} +\DeclareFieldFormat{shortjournal}{% + \ifbool{bbx:shorthandacro} + {\ifbool{bbx:acronym} + {\mkbibacro{#1}\isdot} + {#1\isdot}} + {#1\isdot}} + +\newcommand{\annotationfont}{\small\itshape} +\newcommand{\libraryfont}{\small\sffamily} +\DeclareFieldFormat{annotation}{% + \annotationfont #1\addperiod} +\DeclareFieldFormat{library}{% + \libraryfont #1\addperiod} + +\newbibmacro*{finentry:annotation}{% + \iffieldundef{annotation} + {\finentry}% + {\setunit{\addperiod\par} + \printfield{annotation}}% +} + +\newbibmacro*{finentry:library}{% + \iffieldundef{library} + {\finentry}% + {\setunit{\addperiod\par} + \printfield{library}}% +} + +\renewbibmacro*{finentry}{% + \ifbool{bbx:annotation} + {\ifbool{bbx:library}% BEIDE true + {\iffieldundef{annotation} + {}% kein \finentry! + {\setunit{\addperiod\par} + \printfield{annotation}}% + \usebibmacro{finentry:library}} + {\usebibmacro{finentry:annotation}}}% nur annotation=true + {\ifbool{bbx:library}% nur library=true + {\usebibmacro{finentry:library}} + {\finentry}}}% BEIDE false + +% Ausschalten von annotation und library für die List of Shorthands +\AtEveryLositem{% + \boolfalse{bbx:annotation}% + \boolfalse{bbx:library}% +} + +%% Wichtig für die Herausgebernamen in der List of Shorthands +\InitializeBibliographyStyle{% + \let\bbx@lasthash\undefined} + +% Formatierung der Nachnamen entsprechend der Option 'namefont' +% Nachnamen von Einträgen mit 'options = {oldauthor=true}' oder 'options = {oldauthor}' +% werden nicht in der Schrift von 'namefont' gesetzt +\renewcommand*{\mkbibnamelast}[1]{% + \ifbool{bbx:oldauthor}% bei globaler Option oldauthor=true + {\ifthenelse{% + \boolean{oldauthor}\AND + \(\ifcurrentname{author} + \OR + \(\ifcurrentname{labelname}\AND\NOT\ifnameundef{author}\) + \)} + {#1} + {\ifdefstring{\bbx@option@namefont}{smallcaps}% + {\textsc{#1}}% + {\ifdefstring{\bbx@option@namefont}{italic}% + {\textit{#1}} + {\ifdefstring{\bbx@option@namefont}{bold}% + {\textbf{#1}} + {#1}}}}} + {% bei globaler Option oldauthor=false + {\ifdefstring{\bbx@option@namefont}{smallcaps}% + {\textsc{#1}}% + {\ifdefstring{\bbx@option@namefont}{italic}% + {\textit{#1}} + {\ifdefstring{\bbx@option@namefont}{bold}% + {\textbf{#1}} + {#1}}}}}} + +% Formatierung der Vornamen entsprechend der Option 'firstnamefont' +\renewcommand*{\mkbibnamefirst}[1]{% + \ifbool{bbx:oldauthor}% bei globaler Option oldauthor=true + {\ifthenelse{% + \boolean{oldauthor}\AND + \(\ifcurrentname{author} + \OR + \(\ifcurrentname{labelname}\AND\NOT\ifnameundef{author}\) + \)} + {#1} + {\ifdefstring{\bbx@option@firstnamefont}{smallcaps}% + {\textsc{#1}}% + {\ifdefstring{\bbx@option@firstnamefont}{italic}% + {\textit{#1}} + {\ifdefstring{\bbx@option@firstnamefont}{bold}% + {\textbf{#1}} + {#1}}}}} + {% bei globaler Option oldauthor=false + {\ifdefstring{\bbx@option@firstnamefont}{smallcaps}% + {\textsc{#1}}% + {\ifdefstring{\bbx@option@firstnamefont}{italic}% + {\textit{#1}} + {\ifdefstring{\bbx@option@firstnamefont}{bold}% + {\textbf{#1}} + {#1}}}}}} + +% Wenn 'firstnamefont' gesetzt ist, muss auch prefix angepasst werden +\renewcommand*{\mkbibnameprefix}[1]{% + \ifuseprefix{% bei useprefix=true + \ifbool{bbx:oldauthor}% bei globaler Option oldauthor=true + {\ifthenelse{% + \boolean{oldauthor}\AND + \(\ifcurrentname{author} + \OR + \(\ifcurrentname{labelname}\AND\NOT\ifnameundef{author}\) + \)} + {#1} + {\ifdefstring{\bbx@option@namefont}{smallcaps}% + {\textsc{#1}}% + {\ifdefstring{\bbx@option@namefont}{italic}% + {\textit{#1}} + {\ifdefstring{\bbx@option@namefont}{bold}% + {\textbf{#1}} + {#1}}}}} + {% bei globaler Option oldauthor=false + {\ifdefstring{\bbx@option@namefont}{smallcaps}% + {\textsc{#1}}% + {\ifdefstring{\bbx@option@namefont}{italic}% + {\textit{#1}} + {\ifdefstring{\bbx@option@namefont}{bold}% + {\textbf{#1}} + {#1}}}}}} + {% bei useprefix=false richtet es sich nach der Option firstname + \ifdefstring{\bbx@option@firstnamefont}{smallcaps}% + {\textsc{#1}}% + {\ifdefstring{\bbx@option@firstnamefont}{italic}% + {\textit{#1}} + {\ifdefstring{\bbx@option@firstnamefont}{bold}% + {\textbf{#1}} + {#1}}}}} + +% Wenn 'firstnamefont' gesetzt ist, muss auch suffix angepasst werden +\renewcommand*{\mkbibnameaffix}[1]{% + \ifbool{bbx:oldauthor}% bei globaler Option oldauthor=true + {\ifthenelse{% + \boolean{oldauthor}\AND + \(\ifcurrentname{author} + \OR + \(\ifcurrentname{labelname}\AND\NOT\ifnameundef{author}\) + \)} + {#1} + {\ifdefstring{\bbx@option@firstnamefont}{smallcaps}% + {\textsc{#1}}% + {\ifdefstring{\bbx@option@firstnamefont}{italic}% + {\textit{#1}} + {\ifdefstring{\bbx@option@firstnamefont}{bold}% + {\textbf{#1}} + {#1}}}}} + {% bei globaler Option oldauthor=false + {\ifdefstring{\bbx@option@firstnamefont}{smallcaps}% + {\textsc{#1}}% + {\ifdefstring{\bbx@option@firstnamefont}{italic}% + {\textit{#1}} + {\ifdefstring{\bbx@option@firstnamefont}{bold}% + {\textbf{#1}} + {#1}}}}}} + +%% \mkidem: +% wenn im Feld 'options' 'oldauthor=true' oder 'oldauthor' steht, +% werden keine Kapitälchen o.ä. bei Wiederholungszitaten ('Ders.') gesetzt +% ansonsten Formatierung der Vornamen entsprechend der Option 'idemfont', +% falls diese nicht vorhanden ist, wird der Wert von 'namefont' übernommen +\newcommand*{\mkidem}[1]{% + \ifbool{bbx:oldauthor}% bei globaler Option oldauthor=true + {\ifbool{oldauthor} + {#1} + {\ifdefstring{\bbx@option@idemfont}{smallcaps}% + {\textsc{#1}}% + {\ifdefstring{\bbx@option@idemfont}{italic}% + {\textit{#1}} + {\ifdefstring{\bbx@option@idemfont}{bold}% + {\textbf{#1}} + {\ifdefstring{\bbx@option@idemfont}{normal}% + {#1} + {% falls idemfont nicht gesetzt ist, wird von namefont 'geerbt': + \ifdefstring{\bbx@option@namefont}{smallcaps}% + {\textsc{#1}}% + {\ifdefstring{\bbx@option@namefont}{italic}% + {\textit{#1}} + {\ifdefstring{\bbx@option@namefont}{bold}% + {\textbf{#1}} + {#1}}}}}}}}}% + {% bei globaler Option oldauthor=false + \ifdefstring{\bbx@option@idemfont}{smallcaps}% + {\textsc{#1}}% + {\ifdefstring{\bbx@option@idemfont}{italic}% + {\textit{#1}} + {\ifdefstring{\bbx@option@idemfont}{bold}% + {\textbf{#1}} + {\ifdefstring{\bbx@option@idemfont}{normal}% + {#1} + {% falls idemfont nicht gesetzt ist, wird von namefont 'geerbt': + \ifdefstring{\bbx@option@namefont}{smallcaps}% + {\textsc{#1}}% + {\ifdefstring{\bbx@option@namefont}{italic}% + {\textit{#1}} + {\ifdefstring{\bbx@option@namefont}{bold}% + {\textbf{#1}} + {#1}}}}}}}}} + +%% Punkt zwischen Untertitel und Titelzusatz ([book|main]titleaddon) +\renewbibmacro*{title}{% + \iffieldundef{title} + {} + {\printtext[title]{% + \printfield[titlecase]{title}% + \setunit{\subtitlepunct}% + \printfield[titlecase]{subtitle}}% + \setunit{\titleaddonpunct}% + \printfield{titleaddon}}} + +\renewbibmacro*{booktitle}{% + \iffieldundef{booktitle} + {} + {\printtext[booktitle]{% + \printfield[titlecase]{booktitle}% + \setunit{\subtitlepunct}% + \printfield[titlecase]{booksubtitle}}% + \setunit{\titleaddonpunct}% + \printfield{booktitleaddon}}} + +\renewbibmacro*{maintitle}{% + \iffieldundef{maintitle} + {} + {\printtext[maintitle]{% + \printfield[titlecase]{maintitle}% + \setunit{\subtitlepunct}% + \printfield[titlecase]{mainsubtitle}}% + \setunit{\titleaddonpunct}% + \printfield{maintitleaddon}}} + +%% Ort, Verlag, Jahr: +%% - mit 'origfields=true' werden origlocation, origpublisher +%% und origyear gesetzt, der Rest als 'reprint' angehängt +%% - der Verlag ist optional (nopublisher=true|false) +%% - die Edition kann hochgestellt werden (edsuper=true|false) +\newbibmacro*{origdate}{\printorigdate} + +\renewbibmacro*{publisher+location+date}{% + \ifbool{bbx:origfields} + {\ifbool{bbx:nolocation} + {\iffieldundef{origyear} + {\usebibmacro{loc+pub+year}} + {\usebibmacro{origloc+origpub+origyear}}} + {\iflistundef{origlocation} + {\iffieldundef{origyear} + {\usebibmacro{loc+pub+year}} + {\usebibmacro{origloc+origpub+origyear}}} + {\iffieldundef{origyear} + {\blxdw@warning{% + Field 'origlocation' is set, but 'origdate' is + \MessageBreak% + empty at entry '\abx@field@entrykey'. + The 'orig' fields \MessageBreak are omitted + for this entry}% + \usebibmacro{loc+pub+year}} + {\usebibmacro{origloc+origpub+origyear}}}}} + {\usebibmacro{loc+pub+year}}} + +\newbibmacro{loc+pub+year}{% + \ifbool{bbx:nolocation} + {} + {\printlist{location}% + \ifbool{bbx:nopublisher} + {\setunit*{\locationdatepunct}}% + {\iflistundef{publisher} + {\setunit*{\locationdatepunct}} + {\setunit*{\locationpublisherpunct}% + \printlist{publisher}% + \setunit*{\publisherdatepunct}}}}% + \ifbool{bbx:edsuper} + {\printfield[edition:super]{edition}} + {}% + \usebibmacro{date}% + \newunit} + +\newbibmacro{origloc+origpub+origyear}{% + \ifbool{bbx:nolocation} + {} + {\printlist{origlocation}% + \ifbool{bbx:nopublisher} + {\setunit*{\locationdatepunct}}% + {\iflistundef{origpublisher} + {\setunit*{\locationdatepunct}} + {\setunit*{\locationpublisherpunct}% + \printlist{origpublisher}% + \setunit*{\publisherdatepunct}}}}% + \ifbool{bbx:edsuper} + {\printfield[edition:super]{edition}} + {}% + \usebibmacro{origdate}% + \ifdefstring{\bbx@origfieldsformat}{punct} + {\setunit*{\origfieldspunct}% + \usebibmacro{origfields:loc+pub+year}} + {\ifdefstring{\bbx@origfieldsformat}{parens} + {\setunit*{\addspace}% + \printtext[parens]{% + \usebibmacro{origfields:loc+pub+year}}} + {\ifdefstring{\bbx@origfieldsformat}{brackets} + {\setunit*{\addspace}% + \printtext[brackets]{% + \usebibmacro{origfields:loc+pub+year}}} + {\setunit*{\origfieldspunct}% + \usebibmacro{origfields:loc+pub+year}}}} + \newunit} + +\newbibmacro{origfields:loc+pub+year}{% + \bibstring{reprint}% + \setunit{\addspace}% + \ifbool{bbx:nolocation} + {} + {\printlist{location}% + \ifbool{bbx:nopublisher} + {\setunit*{\locationdatepunct}}% + {\iflistundef{publisher} + {\setunit*{\locationdatepunct}} + {\setunit*{\locationpublisherpunct}% + \printlist{publisher}% + \setunit*{\publisherdatepunct}}}}% + \usebibmacro{date}} + +%% Test, ob ein Feld nur eine Zahl beinhaltet +\newcommand{\bbx@iffieldinteger}[1]{% + \iffieldundef{#1} + {\@secondoftwo} + {\edef\@tempa{\strfield{#1}}% + \expandafter\ifinteger\expandafter{\@tempa}}} + +%% Edition nur ausgeben, wenn Option 'edsuper=false' +\newbibmacro*{edition}{% + \ifbool{bbx:edsuper} + {\bbx@iffieldinteger{edition} + {}% falls 'edition' eine Zahl ist, wird hochgestellt + {\printfield{edition}% + \newunit}}% ansonsten wird komplett ausgegeben + {\printfield{edition}% + \newunit}} + +%% Herausgeber ('Hrsg.') je nach Option editorstring +\renewbibmacro*{editorstrg}{% + \iffieldundef{editortype} + {\ifthenelse{\value{editor}>1\OR\ifandothers{editor}} + {\ifdefstring{\bbx@option@editorstring}{parens}% + {\mkbibparens{\bibstring{editors}}}% + {\ifdefstring{\bbx@option@editorstring}{brackets}% + {\mkbibbrackets{\bibstring{editors}}}% + {\bibstring{editors}}}}% + {\ifdefstring{\bbx@option@editorstring}{parens}% + {\mkbibparens{\bibstring{editor}}}% + {\ifdefstring{\bbx@option@editorstring}{brackets}% + {\mkbibbrackets{\bibstring{editor}}}% + {\bibstring{editor}}}}}% + {\ifthenelse{\value{editor}>1\OR\ifandothers{editor}} + {\ifdefstring{\bbx@option@editorstring}{parens}% + {\mkbibparens{\bibstring{\thefield{editortype}s}}}% + {\ifdefstring{\bbx@option@editorstring}{brackets}% + {\mkbibbrackets{\bibstring{\thefield{editortype}s}}}% + {\bibstring{\thefield{editortype}s}}}}% + {\ifdefstring{\bbx@option@editorstring}{parens}% + {\mkbibparens{\bibstring{\thefield{editortype}}}}% + {\ifdefstring{\bbx@option@editorstring}{brackets}% + {\mkbibbrackets{\bibstring{\thefield{editortype}}}}% + {\bibstring{\thefield{editortype}}}}}}}% + +\renewbibmacro*{editor+othersstrg}{% + \ifthenelse{\value{editor}>1\OR\ifandothers{editor}} + {\def\@tempa{editors}} + {\def\@tempa{editor}}% + \ifnamesequal{editor}{translator} + {\appto\@tempa{tr}% + \clearname{translator}} + {}% + \ifnamesequal{editor}{commentator} + {\appto\@tempa{co}% + \clearname{commentator}} + {\ifnamesequal{editor}{annotator} + {\appto\@tempa{an}% + \clearname{annotator}} + {}}% + \ifnamesequal{editor}{introduction} + {\appto\@tempa{in}% + \clearname{introduction}} + {\ifnamesequal{editor}{foreword} + {\appto\@tempa{fo}% + \clearname{foreword}} + {\ifnamesequal{editor}{afterword} + {\appto\@tempa{af}% + \clearname{afterword}} + {}}}% + \ifdefstring{\bbx@option@editorstring}{parens} + {\mkbibparens{\bibstring{\@tempa}}} + {\ifdefstring{\bbx@option@editorstring}{brackets} + {\mkbibbrackets{\bibstring{\@tempa}}} + {\bibstring{\@tempa}}}} + +%% Übersetzer ('Übers.') je nach Option editorstring +\renewbibmacro*{translatorstrg}{% + \ifthenelse{\value{translator}>1\OR\ifandothers{translator}} + {\ifdefstring{\bbx@option@editorstring}{parens}% + {\mkbibparens{\bibstring{translators}}}% + {\ifdefstring{\bbx@option@editorstring}{brackets}% + {\mkbibbrackets{\bibstring{translators}}}% + {\bibstring{translators}}}}% + {\ifdefstring{\bbx@option@editorstring}{parens}% + {\mkbibparens{\bibstring{translator}}}% + {\ifdefstring{\bbx@option@editorstring}{brackets}% + {\mkbibbrackets{\bibstring{translator}}}% + {\bibstring{translator}}}}} + +\renewbibmacro*{translator+othersstrg}{% + \ifthenelse{\value{translator}>1\OR\ifandothers{translator}} + {\def\abx@tempa{translators}} + {\def\abx@tempa{translator}}% + \ifnamesequal{translator}{commentator} + {\appto\abx@tempa{co}% + \clearname{commentator}} + {\ifnamesequal{translator}{annotator} + {\appto\abx@tempa{an}% + \clearname{annotator}} + {}}% + \ifnamesequal{translator}{introduction} + {\appto\abx@tempa{in}% + \clearname{introduction}} + {\ifnamesequal{translator}{foreword} + {\appto\abx@tempa{fo}% + \clearname{foreword}} + {\ifnamesequal{translator}{afterword} + {\appto\abx@tempa{af}% + \clearname{afterword}} + {}}}% + \ifdefstring{\bbx@option@editorstring}{parens} + {\mkbibparens{\bibstring{\abx@tempa}}} + {\ifdefstring{\bbx@option@editorstring}{brackets} + {\mkbibbrackets{\bibstring{\abx@tempa}}} + {\bibstring{\abx@tempa}}}} + +%% Option 'editorstring=brackets|parens|normal' +%% Option 'idembib=true|false' +\renewbibmacro*{editor}{% + \ifthenelse{\ifuseeditor\AND\NOT\ifnameundef{editor}} + {\ifbool{bbx:idembib} + {\ifthenelse{\iffieldequals{namehash}{\bbx@lasthash}\AND + \NOT\iffirstonpage} + {\bibnamedash} + {\printnames{editor}% + \savefield{namehash}{\bbx@lasthash}}}% + {\printnames{editor}}% + \ifdefstring{\bbx@option@editorstring}{brackets}% + {\addspace}% + {\ifdefstring{\bbx@option@editorstring}{parens}% + {\addspace}% + {\addcomma\space}}% + \usebibmacro{editorstrg}% + \ifbool{bbx:idembib} + {} + {\labelnamepunct}% + \clearname{editor}} + {\global\undef\bbx@lasthash}} + +\renewbibmacro*{editor+others}{% + \ifthenelse{\ifuseeditor\AND\NOT\ifnameundef{editor}} + {\ifbool{bbx:idembib} + {\ifthenelse{\iffieldequals{namehash}{\bbx@lasthash}\AND + \NOT\iffirstonpage} + {\bibnamedash} + {\printnames{editor}% + \savefield{namehash}{\bbx@lasthash}}}% + {\printnames{editor}}% + \ifdefstring{\bbx@option@editorstring}{brackets}% + {\addspace}% + {\ifdefstring{\bbx@option@editorstring}{parens}% + {\addspace}% + {\addcomma\space}}% + \usebibmacro{editor+othersstrg}% + \ifbool{bbx:idembib} + {} + {\labelnamepunct}% + \clearname{editor}} + {\global\undef\bbx@lasthash}} + +\renewbibmacro*{translator}{% + \ifthenelse{\ifusetranslator\AND\NOT\ifnameundef{translator}} + {\ifbool{bbx:idembib} + {\ifthenelse{\iffieldequals{namehash}{\bbx@lasthash}\AND + \NOT\iffirstonpage} + {\bibnamedash} + {\printnames{translator}% + \savefield{namehash}{\bbx@lasthash}}}% + {\printnames{translator}}% + \ifdefstring{\bbx@option@editorstring}{brackets}% + {\addspace}% + {\ifdefstring{\bbx@option@editorstring}{parens}% + {\addspace}% + {\addcomma\space}}% + \usebibmacro{translatorstrg}% + \ifbool{bbx:idembib} + {} + {\labelnamepunct}% + \clearname{translator}} + {\global\undef\bbx@lasthash}} + +\renewbibmacro*{translator+others}{% + \ifthenelse{\ifusetranslator\AND\NOT\ifnameundef{translator}} + {\ifbool{bbx:idembib} + {\ifthenelse{\iffieldequals{namehash}{\bbx@lasthash}\AND + \NOT\iffirstonpage} + {\bibnamedash} + {\printnames{translator}% + \savefield{namehash}{\bbx@lasthash}}}% + {\printnames{translator}}% + \ifdefstring{\bbx@option@editorstring}{brackets}% + {\addspace}% + {\ifdefstring{\bbx@option@editorstring}{parens}% + {\addspace}% + {\addcomma\space}}% + \usebibmacro{translator+othersstrg}% + \ifbool{bbx:idembib} + {} + {\labelnamepunct}% + \clearname{translator}} + {\global\undef\bbx@lasthash}} + +%% Option 'idembib=true|false' +\renewbibmacro*{author}{% + \ifbool{bbx:pseudoauthor} + {\usebibmacro{author:pseudotrue}} + {\usebibmacro{author:pseudofalse}}} + +\newbibmacro*{author:pseudotrue}{% + \ifbool{pseudoauthor} + {\printtext{\bibleftpseudo}} + {}% + \ifthenelse{\ifuseauthor\AND\NOT\ifnameundef{author}} + {\ifbool{bbx:idembib} + {\ifthenelse{\iffieldequals{namehash}{\bbx@lasthash}\AND + \NOT\iffirstonpage} + {\bibnamedash} + {\printnames{author}% + \savefield{namehash}{\bbx@lasthash}}} + {\printnames{author}}} + {\global\undef\bbx@lasthash}% + \iffieldundef{authortype} + {} + {\addcomma\space + \usebibmacro{authorstrg}}% + \ifbool{pseudoauthor} + {\printtext{\bibrightpseudo}} + {}} + +\newbibmacro*{author:pseudofalse}{% + \ifbool{pseudoauthor} + {} + {\ifthenelse{\ifuseauthor\AND\NOT\ifnameundef{author}} + {\ifbool{bbx:idembib} + {\ifthenelse{\iffieldequals{namehash}{\bbx@lasthash}\AND + \NOT\iffirstonpage} + {\bibnamedash} + {\printnames{author}% + \savefield{namehash}{\bbx@lasthash}}} + {\printnames{author}}} + {\global\undef\bbx@lasthash}% + \iffieldundef{authortype} + {} + {\addcomma\space + \usebibmacro{authorstrg}}}} + +%% 'Ders.' bei inbook, wenn gleicher Autor +\renewbibmacro*{bybookauthor}{% + \ifnamesequal{author}{bookauthor} + {\ifbool{bbx:edbyidem} + {\midsentence*\bibstring[\mkidem]{idem\thefield{gender}}\addcolon} + {\printnames{bookauthor}% + \newunit\newblock}} + {\printnames{bookauthor}% + \newunit\newblock}} + +%% Wenn Autor und Hrsg. gleich --> hg. v. dems./ders./dens.: +\renewbibmacro*{byeditor+others}{% + \ifthenelse{\NOT\ifnameundef{editor}\AND + \(\iffieldundef{editortype}\OR + \iffieldequalstr{editortype}{editor}\)} + {\def\abx@tempa{byeditor}% + \ifnamesequal{editor}{translator} + {\appto\abx@tempa{tr}% + \clearname{translator}} + {}% + \ifnamesequal{editor}{commentator} + {\appto\abx@tempa{co}% + \clearname{commentator}} + {\ifnamesequal{editor}{annotator} + {\appto\abx@tempa{an}% + \clearname{annotator}} + {}}% + \ifnamesequal{editor}{introduction} + {\appto\abx@tempa{in}% + \clearname{introduction}} + {\ifnamesequal{editor}{foreword} + {\appto\abx@tempa{fo}% + \clearname{foreword}} + {\ifnamesequal{editor}{afterword} + {\appto\abx@tempa{af}% + \clearname{afterword}} + {}}}% + \bibstring{\abx@tempa}% + \setunit{\addspace}% + \printnames[byeditor]{editor}% + \clearname{editor}% + \newunit + \usebibmacro{byeditorx}}% + {\ifnamesequal{editor}{author} + {\ifbool{bbx:edbyidem} + {\bibstring{byeditor}\addspace\bibstring[\mkidem]{idemdat\thefield{gender}}} + {\usebibmacro{byeditor}}}% + {\usebibmacro{byeditor}}}% + \usebibmacro{bytranslator+others}} + +%%%%% %%%%% %%%%% %%%%% %%%%% %%%%% %%%%% %%%%% %%%%% +%%%%% Makros aus authortitle.bbx (unverändert) %%%%% +%%%%% %%%%% %%%%% %%%%% %%%%% %%%%% %%%%% %%%%% %%%%% + +\renewcommand*{\thebibitem}{\item} +\renewcommand*{\thelositem}{\item} +\setlength{\bibitemsep}{0pt} + +\renewenvironment*{thebibliography} + {\list + {} + {\setlength{\leftmargin}{\bibhang}% + \setlength{\itemindent}{-\leftmargin}% + \setlength{\itemsep}{\bibitemsep}% + \setlength{\parsep}{\bibparsep}}} + {\endlist} + +\endinput diff --git a/Master/texmf-dist/tex/latex/biblatex-dw/bbx/footnote-dw.bbx b/Master/texmf-dist/tex/latex/biblatex-dw/bbx/footnote-dw.bbx new file mode 100644 index 00000000000..4cffc2510fb --- /dev/null +++ b/Master/texmf-dist/tex/latex/biblatex-dw/bbx/footnote-dw.bbx @@ -0,0 +1,17 @@ +% footnote-dw.bbx, Dominik Waßenhoven 2010 + +\ProvidesFile{footnote-dw.bbx}[2010/03/11 v1.3 biblatex bibliography style] + +\@ifpackagelater{biblatex}{2010/02/14} + {} + {\PackageError{biblatex} + {Outdated 'biblatex' package} + {The version of the 'footnote-dw' style you are using\MessageBreak + requires biblatex v0.9 or later.\MessageBreak + You are using: '\csuse{ver@biblatex.sty}'.\MessageBreak + This is a fatal error. I'm aborting now.}% + \endinput} + +\RequireBibliographyStyle{authortitle-dw} + +\endinput diff --git a/Master/texmf-dist/tex/latex/biblatex-dw/bbx/standard-dw.bbx b/Master/texmf-dist/tex/latex/biblatex-dw/bbx/standard-dw.bbx new file mode 100644 index 00000000000..8bdd7cf0d44 --- /dev/null +++ b/Master/texmf-dist/tex/latex/biblatex-dw/bbx/standard-dw.bbx @@ -0,0 +1,1710 @@ +% standard-dw.bbx, Dominik Waßenhoven 2010 + +\ProvidesFile{standard-dw.bbx}[2010/03/11 v1.3 biblatex bibliography style] + +\RequireBibliographyStyle{standard} + +\DeclareLanguageMapping{english}{english-dw} +\DeclareLanguageMapping{german}{german-dw} + +\newbool{bbx:acronym} +\newbool{bbx:journumafteryear} +\newbool{bbx:journumdate} +\newbool{bbx:seriesafteryear} +\newbool{bbx:shorthandacro} +\newbool{bbx:shorthandwidthbool} +\newbool{bbx:shortjournal} +\newbool{bbx:terselos} +\newbool{bbx:xref}% soll xref überhaupt verwendet werden? +\newbool{bbx:xrefnoidem} + +% Schalter zum ein-/ausblenden bestimmter Felder +\newbool{bbx:pagetotal} + +\newlength{\bbx@shorthandwidth} +\newlength{\shorthandsep} + +\DeclareEntryOption{acronym}[true]{% + \csuse{bool#1}{bbx:acronym}} + +\DeclareBibliographyOption{acronyms}[true]{% + \csuse{bool#1}{bbx:shorthandacro}} +\DeclareBibliographyOption{shorthandwidth}{% + \setlength{\bbx@shorthandwidth}{#1} + \setlength{\shorthandsep}{3pt plus 0.5pt minus 0.5pt} + \csuse{booltrue}{bbx:shorthandwidthbool}} +\DeclareBibliographyOption{shortjournal}[true]{% + \csuse{bool#1}{bbx:shortjournal}} +\DeclareBibliographyOption{terselos}[true]{% + \csuse{bool#1}{bbx:terselos}} +\DeclareBibliographyOption{xref}[true]{% + \csuse{bool#1}{bbx:xref}} + +% Optionen zum ein-/ausblenden bestimmter Felder +\DeclareBibliographyOption{pagetotal}[true]{% + \csuse{bool#1}{bbx:pagetotal}} + +% journalnumber=standard|afteryear|date +\newcommand{\bbx@option@journalnumber}{} +\DeclareBibliographyOption{journalnumber}{% + \renewcommand{\bbx@option@journalnumber}{#1}} +% zu Ehren von Bernhard Tempel +\newbool{bbx:bernhard} +\DeclareBibliographyOption{bernhard}[true]{% + \csuse{bool#1}{bbx:bernhard}} + +% Option series=standard|afteryear +\newcommand{\bbx@option@series}{} +\DeclareBibliographyOption{series}{% + \renewcommand{\bbx@option@series}{#1}} +\AtBeginDocument{% + \ifdefstring{\bbx@option@series}{afteryear} + {\global\booltrue{bbx:seriesafteryear}} + {\global\boolfalse{bbx:seriesafteryear}}} + +\ExecuteBibliographyOptions{ + doi=false, + eprint=false, + isbn=false, + journalnumber=standard, + pagetotal=false, + series=standard, + terselos=true, + xref=false +} + +\AtBeginDocument{% + \ifbool{bbx:xref} + {\ExecuteBibliographyOptions{mincrossrefs=1}} + {}} + +\DeclareBibliographyAlias{idemreference}{idemcollection} +\DeclareBibliographyAlias{xrefreference}{xrefcollection} +\DeclareBibliographyAlias{xrefidemreference}{xrefidemcollection} + +%% Zeichen bei Zeitschriften: +%% -> vor 'volume' (z.B. 'Jg. ') +\newcommand*{\jourvolstring}{\addspace} +%% -> zwischen 'volume' und 'number' +%% (nur mit journumafteryear=true) +\newcommand*{\jourvolnumsep}{\adddot} +%% -> vor 'number' (z.B. ', Nr. ') +\newcommand*{\journumstring}{% + \addcomma\space% + \bibstring{number}% + \addnbspace} + +%% Zeichen bei Reihen: +%% -> vor 'series' (z.B. '= ') +\newcommand*{\seriespunct}{} +%% -> vor 'number' (z.B. ', Bd. ') +\newcommand*{\sernumstring}{\addspace} + +%% Reihe in Klammern +\renewbibmacro*{series+number}{% + \iffieldundef{series}% + {} + {\printtext[parens]{% + \seriespunct% + \printfield{series}% + \setunit*{\sernumstring}% + \printfield{number}% + \newunit}}} + +%% Kürzere Ausgabe der List of Shorthands +\newbibmacro*{terselos}{% +\ifbool{bbx:terselos} + {\ifnameundef{labelname} + {} + {\ifnameundef{author} + {\printnames{editor}% + \ifdefstring{\bbx@option@editorstring}{brackets}% + {\addspace}% + {\ifdefstring{\bbx@option@editorstring}{parens}% + {\addspace}% + {\addcomma\space}}% + \usebibmacro{editorstrg}} + {\printnames{author}}% + \setunit{\labelnamepunct}}% + \iffieldundef{booktitle} + {\usebibmacro{maintitle+title}} + {\usebibmacro{title}% + \newunit\newblock + \usebibmacro{in:}% + \usebibmacro{maintitle+booktitle}}% + \finentry} + {\usedriver + {\DeclareNameAlias{sortname}{default}} + {\thefield{entrytype}}% + \finentry}} + +\DeclareBibliographyDriver{shorthands}{% + \usebibmacro{terselos}} + +%% Zeichensetzung nach dem Shorthand-Label +\newcommand{\shorthandpunct}{} + +%% List of Shorthands: Länge der Labels einstellbar +\AtBeginDocument{% +\ifbool{bbx:shorthandwidthbool} + {\renewcommand{\shorthandpunct}{\addcolon} + \renewenvironment*{theshorthands} + {\list + {\printfield[shorthandwidth]{shorthand}% + \printtext{\shorthandpunct}} + {\setlength{\labelwidth}{\bbx@shorthandwidth}% + \setlength{\leftmargin}{\labelwidth}% + \setlength{\labelsep}{\shorthandsep}% + \addtolength{\leftmargin}{\labelsep}% + \setlength{\itemsep}{\bibitemsep}% + \setlength{\parsep}{\bibparsep}% + \renewcommand*{\makelabel}[1]{##1\hss}}} + {\endlist}} + {\renewenvironment*{theshorthands} + {\list + {\printfield[shorthandwidth]{shorthand}% + \printtext{\shorthandpunct}} + {\setlength{\labelwidth}{\shorthandwidth}% + \setlength{\leftmargin}{\labelwidth}% + \setlength{\labelsep}{\biblabelsep}% + \addtolength{\leftmargin}{\labelsep}% + \setlength{\itemsep}{\bibitemsep}% + \setlength{\parsep}{\bibparsep}% + \renewcommand*{\makelabel}[1]{##1\hss}}} + {\endlist}}} + +%% bei useeditor=true +\newbibmacro*{editorincoll}{% + \ifnameundef{editor} + {}% + {\ifnamesequal{author}{editor} + {\ifbool{bbx:edbyidem} + {\midsentence*\bibstring[\mkidem]{idem\thefield{gender}}% + \addspace}% + {\printnames[byeditor]{editor}% + \ifdefstring{\bbx@option@editorstring}{brackets}% + {\addspace}% + {\ifdefstring{\bbx@option@editorstring}{parens}% + {\addspace}% + {\addcomma\space}}% + \savefield{namehash}{\bbx@lasthash}}}% + {\printnames[byeditor]{editor}% + \ifdefstring{\bbx@option@editorstring}{brackets}% + {\addspace}% + {\ifdefstring{\bbx@option@editorstring}{parens}% + {\addspace}% + {\addcomma\space}}% + \savefield{namehash}{\bbx@lasthash}}% + \usebibmacro{editorstrg}% + \clearname{editor}}} + +%% Wenn 'volumes' und 'volume' angegeben sind, +%% 'volumes' immer vor 'volume' ausgeben +\newbibmacro*{volumes+volume+part}{% + \iffieldundef{maintitle} + {\iffieldundef{volumes} + {} + {\printfield{volumes}% + \newunit}% + \iffieldundef{volume} + {} + {\printfield{volume}% + \printfield{part}% + \setunit{\addcolon\space}}} + {\iffieldundef{volume}% Wenn es einen maintitle gibt, + % aber kein 'volume'-Feld, wurde + % 'volumes' noch nicht ausgegeben! + {\printfield{volumes}} + {}}} + +\renewbibmacro*{maintitle+title}{% + \iffieldsequal{maintitle}{title} + {\clearfield{maintitle}% + \clearfield{mainsubtitle}% + \clearfield{maintitleaddon}} + {\iffieldundef{maintitle} + {} + {\usebibmacro{maintitle}% + \newunit\newblock + \iffieldundef{volume} + {} + {\iffieldundef{volumes} + {} + {\printfield{volumes}% + \setunit{\addcomma\space}}% + \printfield{volume}% + \printfield{part}% + \setunit{\addcolon\space}}}}% + \usebibmacro{title}% + \newunit} + +%% Test, ob 'volume' vorhanden ist (bei xref parent) +\newbibmacro*{xrefvolumecheck}{% + \ifbool{bbx:xref} + {\iffieldundef{volume} + {\xifinlistcs{\strfield{entrykey}}{novolume@xrefparent} + {}% schon in Liste vorhanden, dann passiert nichts + {\listcsxadd{novolume@xrefparent}{\thefield{entrykey}}}}% + {}} + {}} + +%% Test, ob 'citedas=true' gesetzt ist (bei xref parent) +\newbibmacro*{xrefcitedascheck}{% + \ifbool{bbx:xref} + {\ifbool{cbx:citedas} + {\xifinlistcs{\strfield{entrykey}}{citedas@xrefparent} + {}% schon in Liste vorhanden, dann passiert nichts + {\listcsxadd{citedas@xrefparent}{\thefield{entrykey}}}}% + {}} + {}} + +%% Tests werden bei 'xref=true' in @book, @collection, +%% @proceedings und @reference ausgeführt +\AtDataInput[book]{% + \usebibmacro{xrefvolumecheck}% + \usebibmacro{xrefcitedascheck}} +\AtDataInput[collection]{% + \usebibmacro{xrefvolumecheck}% + \usebibmacro{xrefcitedascheck}} +\AtDataInput[proceedings]{% + \usebibmacro{xrefvolumecheck}% + \usebibmacro{xrefcitedascheck}} +\AtDataInput[reference]{% + \usebibmacro{xrefvolumecheck}% + \usebibmacro{xrefcitedascheck}} + +%% 'volume' bei xref-child ausgeben, falls +%% in xref-parent nicht definiert +\newbibmacro*{xrefvolume}{% + \xifinlistcs{\strfield{xref}}{novolume@xrefparent} + {\newunit + \printfield{volume}% + \iffieldxref{year}% wenn 'year' bei child und parent gleich + {} + {\setunit{\addcomma\space}% + \iflistxref{location}% wenn 'location' bei child und parent gleich + {} + {\printlist{location}% + \setunit*{\addspace}}% + \usebibmacro{date}}} + {}}% + +% bei @inreference: booktitle, vol. (year) +\newbibmacro*{xrefvolume:inreference}{% + \xifinlistcs{\strfield{xref}}{novolume@xrefparent} + {\iffieldundef{volume} + {} + {\xifinlistcs{\strfield{xref}}{citedas@xrefparent} + {\ifbool{cbx:xrefparent:firstcite} + {\newunit + \printtext{\bibstring{volume}\addspace}} + {\setunit{\addspace}}} + {\newunit + \printtext{\bibstring{volume}\addspace}}% + \printfield{volume}% + \iffieldxref{year}% wenn 'year' bei child und parent gleich + {} + {\setunit{\addspace}% + \printfield[parens]{year}}}} + {}} + +%% 'volume' und 'year' ausgeben bei @inreference +\newbibmacro*{volumes+volume+part+year}{% + \iffieldundef{maintitle} + {\iffieldundef{volumes} + {} + {\printfield{volumes}% + \newunit}% + \iffieldundef{volume} + {} + {\setunit{\addspace}% + \printfield{volume}% + \printfield{part}}% + \iffieldundef{year} + {} + {\setunit{\addspace}% + \printfield[parens]{year}% + \setunit{\addspace}}} + {\iffieldundef{volume}% Wenn es einen maintitle gibt, + % aber kein 'volume'-Feld, wurde + % 'volumes' noch nicht ausgegeben! + {\printfield{volumes}} + {}}} + +%% Option 'shortjournal=true|false' +\renewbibmacro*{journal}{% + \ifbool{bbx:shortjournal} + {\iffieldundef{shortjournal} + {\usebibmacro{journal:normal}} + {\printfield{shortjournal}}} + {\usebibmacro{journal:normal}}} + +\newbibmacro*{journal:normal}{% vollständige, 'normale' Ausgabe eines Zeitschriftentitels + \iffieldundef{journaltitle} + {} + {\printtext[journaltitle]{% + \printfield[titlecase]{journaltitle}% + \setunit{\subtitlepunct}% + \printfield[titlecase]{journalsubtitle}}}} + +%% Option 'journalnumber=standard|afteryear|date' +\AtBeginDocument{% + \ifbool{bbx:bernhard}% Bernhard geht vor (c; + {\global\boolfalse{bbx:journumafteryear}% + \global\booltrue{bbx:journumdate}} + {\ifdefstring{\bbx@option@journalnumber}{afteryear} + {\global\booltrue{bbx:journumafteryear}% + \global\boolfalse{bbx:journumdate}} + {\ifdefstring{\bbx@option@journalnumber}{date} + {\global\boolfalse{bbx:journumafteryear}% + \global\booltrue{bbx:journumdate}} + {\global\boolfalse{bbx:journumafteryear} + \global\boolfalse{bbx:journumdate}}}}} + +\renewbibmacro*{journal+issuetitle}{% + \ifuseeditor + {\usebibmacro{editorincoll}% + \setunit{\labelnamepunct}\newblock} + {}% + \usebibmacro{journal}% + \setunit*{\addspace}% + \iffieldundef{series} + {} + {\newunit + \printfield{series}% + \setunit{\addspace}}% + \iffieldundef{volume} + {} + {\setunit{\jourvolstring}% + \printfield{volume}}% + % ab hier Unterscheidung nach standard|afteryear|date + \ifbool{bbx:journumdate} + {\usebibmacro{journal+issuetitle+date}} + {\ifbool{bbx:journumafteryear} + {\usebibmacro{journal+issuetitle+afteryear}} + {\usebibmacro{journal+issuetitle+standard}}}} + +% journalnumber=standard +\newbibmacro*{journal+issuetitle+standard}{% + \iffieldundef{volume} + {\iffieldundef{number} + {} + {\blxdw@warning{% + Field 'number' set, but 'volume' is empty + \MessageBreak at entry '\abx@field@entrykey'. + The output might not \MessageBreak be correct}}} + {\setunit{\jourvolnumsep}% + \printfield{number}}% + \setunit{\addcomma\space}% + \printfield{eid}% + \setunit{\addspace}% + \iffieldundef{volume} + {\iffieldundef{month} + {} + {\setunit{\addcomma\space}}% + \usebibmacro{issue+date}} + {\printtext[parens]{\usebibmacro{issue+date}}}% + \newunit\newblock + \usebibmacro{issue}% + \ifuseeditor + {} + {\newunit% + \usebibmacro{byeditor+others}}% + \newunit} + +% journalnumber=afteryear +\newbibmacro*{journal+issuetitle+afteryear}{% + \setunit{\addcomma\space}% + \printfield{eid}% + \setunit{\addspace}% + \iffieldundef{volume} + {\iffieldundef{month} + {} + {\setunit{\addcomma\space}}% + \usebibmacro{issue+date}% + \iffieldundef{number} + {} + {\setunit*{\addcomma\space\journumstring}% + \printfield{number}}}% + {\printtext[parens]{\usebibmacro{issue+date}}% + \iffieldundef{number} + {} + {\setunit*{\journumstring}% + \printfield{number}}}% + \newunit\newblock + \usebibmacro{issue}% + \ifuseeditor + {} + {\newunit% + \usebibmacro{byeditor+others}}% + \newunit} + +% journalnumber=date +\newbibmacro*{journal+issuetitle+date}{% + \setunit{\addcomma\space}% + \printfield{eid}% + \setunit{\addspace}% + \usebibmacro{issue+date+number}% + \newunit\newblock + \usebibmacro{issue}% + \ifuseeditor + {} + {\newunit% + \usebibmacro{byeditor+others}}% + \newunit} + +\renewbibmacro*{issue+date}{% Klammern entfernt + \iffieldundef{issue} + {\printdate} + {\printfield{issue}% + \setunit{\addspace}% + \printfield{year}}% + \newunit} + +\newbibmacro*{issue+date+number}{% + \iffieldundef{number} + {\iffieldundef{issue}% + {\iffieldundef{month} + {\printtext[parens]{\printdate}} + {\setunit{\addcomma\space}% + \printdate}}% + {\iffieldundef{month}% mit definiertem Feld issue + {\printtext[parens]{\printdate}% + \setunit{\addspace}% + \printfield{issue}}% + {\setunit{\addcomma\space}% + \printdate}}}% + {\iffieldundef{issue}% mit definiertem Feld number + {\iffieldundef{month} + {\setunit{\addspace}% + \printtext[parens]{\printdate}% + \setunit{\addspace}% + \printfield{number}} + {\iffieldundef{day} + {\setunit{\addcomma\space\journumstring}% + \printfield{number}% + \setunit{\addcomma\space}% + \printfield{month}% + \setunit{\addspace}% + \printfield{year}}% + {\setunit{\addcomma\space\journumstring}% + \printfield{number}% + \setunit{\addcomma\space}% + \printdate}}}% + {\iffieldundef{month}% mit definiertem Feld issue + {\printtext[parens]{\printdate}% + \setunit{\addspace}% + \printfield{number}% + \setunit{\addspace}% + \printtext[parens]{\printfield{issue}}}% + {\iffieldundef{day}% + {\setunit{\addspace\journumstring}% + \printfield{number}% + \setunit{\addcomma\space}% + \printfield{month}% + \setunit{\addspace}% + \printfield{year}% + \setunit{\addcomma\space}% + \printfield{issue}}% + {\setunit{\addcomma\space\journumstring}% + \printfield{number}% + \setunit{\addcomma\space}% + \printdate% + \setunit{\addcomma\space}% + \printfield{issue}}}}}% + \newunit} + +%%%%% %%%%% %%%%% %%%%% %%%%% %%%%% %%%%% %%%%% %%%%% +%%%%% Bibmacros für Code, der im Bibliography %%%%% +%%%%% Driver aufgerufen wird, wenn KEIN xref %%%%% +%%%%% vorhanden ist. %%%%% +%%%%% %%%%% %%%%% %%%%% %%%%% %%%%% %%%%% %%%%% %%%%% +\newbibmacro{noxref:inbook}{% + \usebibmacro{bybookauthor}% + \newunit\newblock + \usebibmacro{maintitle+booktitle}% + \newunit + \usebibmacro{byeditor+others}% + \newunit\newblock + \usebibmacro{edition}% + \usebibmacro{volumes+volume+part}% + \setunit{\addspace}% + \ifbool{bbx:seriesafteryear} + {} + {\usebibmacro{series+number}}% + \newunit\newblock + \printfield{note}% + \newunit\newblock + \usebibmacro{publisher+location+date}% + \ifbool{bbx:seriesafteryear} + {\setunit{\addspace}% + \usebibmacro{series+number}} + {}% + \newunit\newblock + \usebibmacro{chapter+pages}% + \newunit\newblock + \iftoggle{bbx:isbn} + {\printfield{isbn}} + {}% + \newunit\newblock + \usebibmacro{doi+eprint+url}% + \newunit\newblock + \usebibmacro{addendum+pubstate}% + \newunit\newblock + \usebibmacro{pageref}}% + +\newbibmacro{noxref:incollection}{% + \ifuseeditor + {\usebibmacro{editorincoll}% + \setunit{\labelnamepunct}\newblock} + {}% + \usebibmacro{maintitle+booktitle}% + \newunit + \ifuseeditor + {} + {\usebibmacro{byeditor+others}% + \newunit\newblock}% + \usebibmacro{edition}% + \usebibmacro{volumes+volume+part}% + \setunit{\addspace}% + \ifbool{bbx:seriesafteryear} + {} + {\usebibmacro{series+number}}% + \newunit\newblock + \printfield{note}% + \newunit\newblock + \usebibmacro{publisher+location+date}% + \ifbool{bbx:seriesafteryear} + {\setunit{\addspace}% + \usebibmacro{series+number}} + {}% + \newunit\newblock + \usebibmacro{chapter+pages}% + \newunit\newblock + \iftoggle{bbx:isbn} + {\printfield{isbn}} + {}% + \newunit\newblock + \usebibmacro{doi+eprint+url}% + \newunit\newblock + \usebibmacro{addendum+pubstate}% + \newunit\newblock + \usebibmacro{pageref}} + +\newbibmacro{noxref:inproceedings}{% + \ifuseeditor + {\usebibmacro{editorincoll}% + \setunit{\labelnamepunct}\newblock} + {}% + \usebibmacro{maintitle+booktitle}% + \newunit\newblock + \usebibmacro{event+venue+date}% + \newunit\newblock + \ifuseeditor + {} + {\usebibmacro{byeditor+others}% + \newunit\newblock}% + \newunit\newblock + \usebibmacro{volumes+volume+part}% + \setunit{\addspace}% + \ifbool{bbx:seriesafteryear} + {} + {\usebibmacro{series+number}}% + \newunit\newblock + \printfield{note}% + \newunit\newblock + \printlist{organization}% + \newunit + \usebibmacro{publisher+location+date}% + \ifbool{bbx:seriesafteryear} + {\setunit{\addspace}% + \usebibmacro{series+number}} + {}% + \newunit\newblock + \usebibmacro{chapter+pages}% + \newunit\newblock + \iftoggle{bbx:isbn} + {\printfield{isbn}} + {}% + \newunit\newblock + \usebibmacro{doi+eprint+url}% + \newunit\newblock + \usebibmacro{addendum+pubstate}% + \newunit\newblock + \usebibmacro{pageref}}% + +\newbibmacro{noxref:inreference}{% + \ifuseeditor + {\usebibmacro{editorincoll}% + \setunit{\labelnamepunct}\newblock} + {}% + \usebibmacro{maintitle+booktitle}% + \newunit + \ifuseeditor + {} + {\usebibmacro{byeditor+others}% + \newunit\newblock}% + \usebibmacro{edition}% + \setunit{\addspace}% + \ifbool{bbx:seriesafteryear} + {} + {\usebibmacro{series+number}}% + \newunit\newblock + \printfield{note}% + \newunit\newblock + \usebibmacro{volumes+volume+part+year}% + \ifbool{bbx:seriesafteryear} + {\setunit{\addspace}% + \usebibmacro{series+number}} + {}% + \newunit\newblock + \usebibmacro{chapter+pages}% + \newunit\newblock + \iftoggle{bbx:isbn} + {\printfield{isbn}} + {}% + \newunit\newblock + \usebibmacro{doi+eprint+url}% + \newunit\newblock + \usebibmacro{addendum+pubstate}% + \newunit\newblock + \usebibmacro{pageref}} + +%%%%% %%%%% %%%%% %%%%% %%%%% %%%%% +%%%%% Bibliography Driver %%%%% +%%%%% %%%%% %%%%% %%%%% %%%%% %%%%% +\DeclareBibliographyDriver{article}{% + \usebibmacro{bibindex}% + \usebibmacro{begentry}% + \ifbool{cbx:idemfull} + {} + {\usebibmacro{author/translator+others}% + \setunit{\labelnamepunct}\newblock}% + \usebibmacro{title}% + \newunit + \printlist{language}% + \newunit\newblock + \usebibmacro{byauthor}% + \newunit\newblock + \usebibmacro{bytranslator+others}% + \newunit\newblock + \printfield{version}% + \newunit\newblock + \usebibmacro{in:}% + \usebibmacro{journal+issuetitle}% + \newunit\newblock + \usebibmacro{byeditor+others}% + \newunit\newblock + \usebibmacro{note+pages}% + \newunit\newblock + \iftoggle{bbx:isbn} + {\printfield{issn}} + {}% + \newunit\newblock + \usebibmacro{doi+eprint+url}% + \newunit\newblock + \usebibmacro{addendum+pubstate}% + \newunit\newblock + \usebibmacro{pageref}% + \usebibmacro{finentry}} + +\DeclareBibliographyDriver{book}{% + \usebibmacro{bibindex}% + \usebibmacro{begentry}% + \ifbool{cbx:idemfull} + {} + {\usebibmacro{author/editor+others/translator+others}% + \setunit{\labelnamepunct}\newblock}% + \usebibmacro{maintitle+title}% + \newunit + \printlist{language}% + \newunit\newblock + \usebibmacro{byauthor}% + \newunit\newblock + \usebibmacro{byeditor+others}% + \newunit\newblock + \usebibmacro{edition}% + \usebibmacro{volumes+volume+part}% + \setunit{\addspace}% + \ifbool{bbx:seriesafteryear} + {} + {\usebibmacro{series+number}}% + \newunit\newblock + \printfield{note}% + \newunit\newblock + \usebibmacro{publisher+location+date}% + \ifbool{bbx:seriesafteryear} + {\setunit{\addspace}% + \usebibmacro{series+number}} + {}% + \newunit\newblock + \usebibmacro{chapter+pages}% + \newunit + \ifbool{bbx:pagetotal} + {\printfield{pagetotal}% + \newunit\newblock} + {}% + \iftoggle{bbx:isbn} + {\printfield{isbn}} + {}% + \newunit\newblock + \usebibmacro{doi+eprint+url}% + \newunit\newblock + \usebibmacro{addendum+pubstate}% + \newunit\newblock + \usebibmacro{pageref}% + \usebibmacro{finentry}} + +\DeclareBibliographyDriver{booklet}{% + \usebibmacro{bibindex}% + \usebibmacro{begentry}% + \ifbool{cbx:idemfull} + {} + {\usebibmacro{author/editor+others/translator+others}% + \setunit{\labelnamepunct}\newblock}% + \usebibmacro{title}% + \newunit + \printlist{language}% + \newunit\newblock + \usebibmacro{byauthor}% + \newunit\newblock + \usebibmacro{byeditor+others}% + \newunit\newblock + \printfield{howpublished}% + \newunit\newblock + \printfield{type}% + \newunit\newblock + \printfield{note}% + \newunit\newblock + \usebibmacro{location+date}% + \newunit\newblock + \usebibmacro{chapter+pages}% + \newunit + \ifbool{bbx:pagetotal} + {\printfield{pagetotal}% + \newunit\newblock} + {}% + \usebibmacro{doi+eprint+url}% + \newunit\newblock + \usebibmacro{addendum+pubstate}% + \newunit\newblock + \usebibmacro{pageref}% + \usebibmacro{finentry}} + +\DeclareBibliographyDriver{collection}{% + \usebibmacro{bibindex}% + \usebibmacro{begentry}% + \ifbool{cbx:idemfull} + {} + {\usebibmacro{editor+others}% + \setunit{\labelnamepunct}\newblock}% + \usebibmacro{maintitle+title}% + \newunit + \printlist{language}% + \newunit\newblock + \usebibmacro{byeditor+others}% + \newunit\newblock + \usebibmacro{edition}% + \usebibmacro{volumes+volume+part}% + \setunit{\addspace}% + \ifbool{bbx:seriesafteryear} + {} + {\usebibmacro{series+number}}% + \newunit\newblock + \printfield{note}% + \newunit\newblock + \usebibmacro{publisher+location+date}% + \ifbool{bbx:seriesafteryear} + {\setunit{\addspace}% + \usebibmacro{series+number}} + {}% + \newunit\newblock + \usebibmacro{chapter+pages}% + \newunit + \ifbool{bbx:pagetotal} + {\printfield{pagetotal}% + \newunit\newblock} + {}% + \iftoggle{bbx:isbn} + {\printfield{isbn}} + {}% + \newunit\newblock + \usebibmacro{doi+eprint+url}% + \newunit\newblock + \usebibmacro{addendum+pubstate}% + \newunit\newblock + \usebibmacro{pageref}% + \usebibmacro{finentry}} + +\DeclareBibliographyDriver{inbook}{% + \usebibmacro{bibindex}% + \usebibmacro{begentry}% + \ifbool{cbx:idemfull} + {} + {\usebibmacro{author/translator+others}% + \setunit{\labelnamepunct}\newblock}% + \usebibmacro{title}% + \newunit\newblock + \printlist{language}% + \newunit\newblock + \usebibmacro{byauthor}% + \newunit\newblock + \usebibmacro{in:}% + \ifnamexref{labelname}% + {\global\boolfalse{bbx:xrefnoidem}}% + {\global\booltrue{bbx:xrefnoidem}% + \global\booltrue{cbx:xrefnoidem}}% + \ifbool{bbx:xref} + {\iffieldundef{xref}% + {% Code, wenn kein xref vorhanden + \usebibmacro{noxref:inbook}}% + {\printtext{\bbx@xref{\thefield{xref}}}% xref + \usebibmacro{xrefvolume}% + \usebibmacro{pages}}}% + {\usebibmacro{noxref:inbook}}% bei xref=false + \usebibmacro{finentry}} + +\DeclareBibliographyDriver{incollection}{% + \usebibmacro{bibindex}% + \usebibmacro{begentry}% + \ifbool{cbx:idemfull} + {} + {\usebibmacro{author/translator+others}% + \setunit{\labelnamepunct}\newblock}% + \usebibmacro{title}% + \newunit + \printlist{language}% + \newunit\newblock + \usebibmacro{byauthor}% + \newunit\newblock + \usebibmacro{in:}% + \ifuseeditor + {\ifnamexref{labelname} + {\global\boolfalse{bbx:xrefnoidem}} + {\global\booltrue{bbx:xrefnoidem}% + \global\booltrue{cbx:xrefnoidem}}} + {\usebibmacro{authedxrefcheck}% + \ifbool{cbx:authedxref} + {\global\boolfalse{bbx:xrefnoidem}% + \global\boolfalse{cbx:xrefnoidem}} + {\global\booltrue{bbx:xrefnoidem}% + \global\booltrue{cbx:xrefnoidem}}}% + \ifbool{bbx:xref} + {\iffieldundef{xref} + {% Code, wenn kein xref vorhanden + \usebibmacro{noxref:incollection}} + {\printtext{\bbx@xref{\thefield{xref}}}% xref + \usebibmacro{xrefvolume}% + \usebibmacro{pages}}}% + {\usebibmacro{noxref:incollection}}% bei xref=false + \usebibmacro{finentry}} + +\DeclareBibliographyDriver{inproceedings}{% + \usebibmacro{bibindex}% + \usebibmacro{begentry}% + \ifbool{cbx:idemfull} + {} + {\usebibmacro{author/translator+others}% + \setunit{\labelnamepunct}\newblock}% + \usebibmacro{title}% + \newunit + \printlist{language}% + \newunit\newblock + \usebibmacro{byauthor}% + \newunit\newblock + \usebibmacro{in:}% + \ifuseeditor + {\ifnamexref{labelname}% + {\global\boolfalse{bbx:xrefnoidem}}% + {\global\booltrue{bbx:xrefnoidem}% + \global\booltrue{cbx:xrefnoidem}}} + {\usebibmacro{authedxrefcheck}% + \ifbool{cbx:authedxref} + {\global\boolfalse{bbx:xrefnoidem}} + {\global\booltrue{bbx:xrefnoidem}% + \global\booltrue{cbx:xrefnoidem}}}% + \ifbool{bbx:xref} + {\iffieldundef{xref}% + {% Code, wenn kein xref vorhanden + \usebibmacro{noxref:inproceedings}}% + {\printtext{\bbx@xref{\thefield{xref}}}% xref + \usebibmacro{xrefvolume}% + \usebibmacro{pages}}}% + {\usebibmacro{noxref:inproceedings}}% bei xref=false + \usebibmacro{finentry}} + +\DeclareBibliographyDriver{inreference}{% + \usebibmacro{bibindex}% + \usebibmacro{begentry}% + \ifbool{cbx:idemfull} + {} + {\usebibmacro{author/translator+others}% + \setunit*{\labelnamepunct}\newblock}% + \usebibmacro{title}% + \newunit + \printlist{language}% + \newunit\newblock + \usebibmacro{byauthor}% + \newunit\newblock + \usebibmacro{in:}% + \ifuseeditor + {\ifnamexref{labelname}% + {\global\boolfalse{bbx:xrefnoidem}}% + {\global\booltrue{bbx:xrefnoidem}% + \global\booltrue{cbx:xrefnoidem}}} + {\usebibmacro{authedxrefcheck}% + \ifbool{cbx:authedxref} + {\global\boolfalse{bbx:xrefnoidem}} + {\global\booltrue{bbx:xrefnoidem}% + \global\booltrue{cbx:xrefnoidem}}}% + \ifbool{bbx:xref} + {\iffieldundef{xref}% + {% Code, wenn kein xref vorhanden + \usebibmacro{noxref:inreference}}% + {\ifentryseen{\thefield{xref}} + {\boolfalse{cbx:xrefparent:firstcite}}% parent wurde schon zitiert + {\booltrue{cbx:xrefparent:firstcite}}% parent wurde noch nicht zitiert + \printtext{\bbx@xref{\thefield{xref}}}% xref + \usebibmacro{xrefvolume:inreference}% + \usebibmacro{pages}}}% + {\usebibmacro{noxref:inreference}}% bei xref=false + \usebibmacro{finentry}} + +\DeclareBibliographyDriver{manual}{% + \usebibmacro{bibindex}% + \usebibmacro{begentry}% + \ifbool{cbx:idemfull} + {} + {\usebibmacro{author/editor+others/translator+others}% + \setunit{\labelnamepunct}\newblock}% + \usebibmacro{title}% + \newunit + \printlist{language}% + \newunit\newblock + \usebibmacro{byauthor}% + \newunit\newblock + \usebibmacro{byeditor}% + \newunit\newblock + \usebibmacro{edition}% + \ifbool{bbx:seriesafteryear} + {} + {\usebibmacro{series+number}}% + \newunit\newblock + \printfield{type}% + \newunit + \printfield{version}% + \newunit + \printfield{note}% + \newunit\newblock + \printlist{organization}% + \newunit + \usebibmacro{publisher+location+date}% + \ifbool{bbx:seriesafteryear} + {\setunit{\addspace}% + \usebibmacro{series+number}} + {}% + \newunit\newblock + \usebibmacro{chapter+pages}% + \newunit + \ifbool{bbx:pagetotal} + {\printfield{pagetotal}% + \newunit\newblock} + {}% + \iftoggle{bbx:isbn} + {\printfield{isbn}} + {}% + \newunit\newblock + \usebibmacro{doi+eprint+url}% + \newunit\newblock + \usebibmacro{addendum+pubstate}% + \newunit\newblock + \usebibmacro{pageref}% + \usebibmacro{finentry}} + +\DeclareBibliographyDriver{misc}{% + \usebibmacro{bibindex}% + \usebibmacro{begentry}% + \ifbool{cbx:idemfull} + {} + {\usebibmacro{author/editor+others/translator+others}% + \setunit{\labelnamepunct}\newblock}% + \usebibmacro{title}% + \newunit + \printlist{language}% + \newunit\newblock + \usebibmacro{byauthor}% + \newunit\newblock + \usebibmacro{byeditor}% + \newunit\newblock + \printfield{howpublished}% + \newunit\newblock + \printfield{type}% + \newunit + \printfield{version}% + \newunit + \printfield{note}% + \newunit\newblock + \printlist{organization}% + \newunit\newblock + \printlist{location}% + \newunit\newblock + \usebibmacro{date}% + \newunit\newblock + \usebibmacro{doi+eprint+url}% + \newunit\newblock + \usebibmacro{addendum+pubstate}% + \newunit\newblock + \usebibmacro{pageref}% + \usebibmacro{finentry}} + +\DeclareBibliographyDriver{online}{% + \usebibmacro{bibindex}% + \usebibmacro{begentry}% + \ifbool{cbx:idemfull} + {} + {\usebibmacro{author/editor+others/translator+others}% + \setunit{\labelnamepunct}\newblock}% + \usebibmacro{title}% + \newunit + \printlist{language}% + \newunit\newblock + \usebibmacro{byauthor}% + \newunit\newblock + \usebibmacro{byeditor}% + \newunit\newblock + \printfield{version}% + \newunit + \printfield{note}% + \newunit\newblock + \printlist{organization}% + \newunit\newblock + \usebibmacro{date}% + \newunit\newblock + \iftoggle{bbx:eprint} + {\usebibmacro{eprint}} + {}% + \usebibmacro{url+urldate}% + \newunit\newblock + \usebibmacro{addendum+pubstate}% + \newunit\newblock + \usebibmacro{pageref}% + \usebibmacro{finentry}} + +\DeclareBibliographyDriver{patent}{% + \usebibmacro{bibindex}% + \usebibmacro{begentry}% + \ifbool{cbx:idemfull} + {} + {\usebibmacro{author/translator+others}% + \setunit{\labelnamepunct}\newblock}% + \usebibmacro{title}% + \newunit + \printlist{language}% + \newunit\newblock + \usebibmacro{byauthor}% + \newunit\newblock + \printfield{type}% + \setunit*{\addspace}% + \printfield{number}% + \iflistundef{location} + {} + {\setunit*{\addspace}% + \printtext[parens]{% + \printlist[][-\value{listtotal}]{location}}}% + \newunit\newblock + \usebibmacro{byholder}% + \newunit\newblock + \printfield{note}% + \newunit\newblock + \usebibmacro{date}% + \newunit\newblock + \iftoggle{bbx:url} + {\usebibmacro{url+urldate}} + {}% + \newunit\newblock + \usebibmacro{addendum+pubstate}% + \newunit\newblock + \usebibmacro{pageref}% + \usebibmacro{finentry}} + +\DeclareBibliographyDriver{periodical}{% + \usebibmacro{bibindex}% + \usebibmacro{begentry}% + \ifbool{cbx:idemfull} + {} + {\usebibmacro{editor+others}% + \setunit{\labelnamepunct}\newblock}% + \usebibmacro{title+issuetitle}% + \newunit + \printlist{language}% + \newunit\newblock + \usebibmacro{byeditor}% + \newunit\newblock + \printfield{note}% + \newunit\newblock + \iftoggle{bbx:isbn} + {\printfield{issn}} + {}% + \newunit\newblock + \usebibmacro{doi+eprint+url}% + \newunit\newblock + \usebibmacro{addendum+pubstate}% + \newunit\newblock + \usebibmacro{pageref}% + \usebibmacro{finentry}} + +\DeclareBibliographyDriver{proceedings}{% + \usebibmacro{bibindex}% + \usebibmacro{begentry}% + \ifbool{cbx:idemfull} + {} + {\usebibmacro{editor+others}% + \setunit{\labelnamepunct}\newblock}% + \usebibmacro{maintitle+title}% + \newunit + \printlist{language}% + \newunit\newblock + \usebibmacro{event+venue+date}% + \newunit\newblock + \usebibmacro{byeditor+others}% + \newunit\newblock + \usebibmacro{volumes+volume+part}% + \setunit{\addspace}% + \ifbool{bbx:seriesafteryear} + {} + {\usebibmacro{series+number}}% + \newunit\newblock + \printfield{note}% + \newunit\newblock + \printlist{organization}% + \newunit + \usebibmacro{publisher+location+date}% + \ifbool{bbx:seriesafteryear} + {\setunit{\addspace}% + \usebibmacro{series+number}} + {}% + \newunit\newblock + \usebibmacro{chapter+pages}% + \newunit + \ifbool{bbx:pagetotal} + {\printfield{pagetotal}% + \newunit\newblock} + {}% + \iftoggle{bbx:isbn} + {\printfield{isbn}} + {}% + \newunit\newblock + \usebibmacro{doi+eprint+url}% + \newunit\newblock + \usebibmacro{addendum+pubstate}% + \newunit\newblock + \usebibmacro{pageref}% + \usebibmacro{finentry}} + +\DeclareBibliographyDriver{report}{% + \usebibmacro{bibindex}% + \usebibmacro{begentry}% + \ifbool{cbx:idemfull} + {} + {\usebibmacro{author/translator+others}% + \setunit{\labelnamepunct}\newblock}% + \usebibmacro{title}% + \newunit + \printlist{language}% + \newunit\newblock + \usebibmacro{byauthor}% + \newunit\newblock + \printfield{type}% + \setunit*{\addspace}% + \printfield{number}% + \newunit\newblock + \printfield{version}% + \newunit + \printfield{note}% + \newunit\newblock + \usebibmacro{institution+location+date}% + \newunit\newblock + \usebibmacro{chapter+pages}% + \newunit + \ifbool{bbx:pagetotal} + {\printfield{pagetotal}% + \newunit\newblock} + {}% + \iftoggle{bbx:isbn} + {\printfield{isrn}} + {}% + \newunit\newblock + \usebibmacro{doi+eprint+url}% + \newunit\newblock + \usebibmacro{addendum+pubstate}% + \newunit\newblock + \usebibmacro{pageref}% + \usebibmacro{finentry}} + +\DeclareBibliographyDriver{thesis}{% + \usebibmacro{bibindex}% + \usebibmacro{begentry}% + \ifbool{cbx:idemfull} + {} + {\usebibmacro{author/translator+others}% + \setunit{\labelnamepunct}\newblock}% + \usebibmacro{title}% + \newunit + \printlist{language}% + \newunit\newblock + \usebibmacro{byauthor}% + \newunit\newblock + \printfield{note}% + \newunit\newblock + \printfield{type}% + \newunit + \usebibmacro{institution+location+date}% + \newunit\newblock + \usebibmacro{chapter+pages}% + \newunit + \ifbool{bbx:pagetotal} + {\printfield{pagetotal}% + \newunit\newblock} + {}% + \usebibmacro{doi+eprint+url}% + \newunit\newblock + \usebibmacro{addendum+pubstate}% + \newunit\newblock + \usebibmacro{pageref}% + \usebibmacro{finentry}} + +\DeclareBibliographyDriver{unpublished}{% + \usebibmacro{bibindex}% + \usebibmacro{begentry}% + \ifbool{cbx:idemfull} + {} + {\usebibmacro{author/translator+others}% + \setunit{\labelnamepunct}\newblock}% + \usebibmacro{title}% + \newunit + \printlist{language}% + \newunit\newblock + \usebibmacro{byauthor}% + \newunit\newblock + \printfield{howpublished}% + \newunit\newblock + \printfield{note}% + \newunit\newblock + \usebibmacro{date}% + \newunit\newblock + \iftoggle{bbx:url} + {\usebibmacro{url+urldate}} + {}% + \newunit\newblock + \usebibmacro{addendum+pubstate}% + \newunit\newblock + \usebibmacro{pageref}% + \usebibmacro{finentry}} + +%%%%% %%%%% %%%%% %%%%% %%%%% %%%%% %%%%% %%%%% %%%%% %%%%% +%%%%% Die folgenden 'xref'-BibliographyDriver sind %%%%% +%%%%% nötig, damit bei Erstzitaten mit xref die %%%%% +%%%%% Option useeditor=true beachtet wird. %%%%% +%%%%% %%%%% %%%%% %%%%% %%%%% %%%%% %%%%% %%%%% %%%%% %%%%% + +\DeclareBibliographyDriver{xrefbook}{% + \usebibmacro{bibindex}% + \usebibmacro{begentry}% + \ifuseeditor + {\usebibmacro{author/editor+others/translator+others}% + \setunit{\labelnamepunct}\newblock} + {}% + \usebibmacro{maintitle+title}% + \newunit + \printlist{language}% + \newunit\newblock + \usebibmacro{byauthor}% + \newunit\newblock + \ifuseeditor + {} + {\usebibmacro{byeditor+others}% + \newunit\newblock}% + \usebibmacro{edition}% + \usebibmacro{volumes+volume+part}% + \setunit{\addspace}% + \ifbool{bbx:seriesafteryear} + {} + {\usebibmacro{series+number}}% + \newunit\newblock + \printfield{note}% + \newunit\newblock + \usebibmacro{publisher+location+date}% + \ifbool{bbx:seriesafteryear} + {\setunit{\addspace}% + \usebibmacro{series+number}} + {}% + \newunit\newblock + \usebibmacro{chapter+pages}% + \newunit + \ifbool{bbx:pagetotal} + {\printfield{pagetotal}% + \newunit\newblock} + {}% + \iftoggle{bbx:isbn} + {\printfield{isbn}} + {}% + \newunit\newblock + \usebibmacro{doi+eprint+url}% + \newunit\newblock + \usebibmacro{addendum+pubstate}% + \newunit\newblock + \usebibmacro{pageref}% + \usebibmacro{finentry}} + +\DeclareBibliographyDriver{xrefcollection}{% + \usebibmacro{bibindex}% + \usebibmacro{begentry}% + \ifuseeditor + {\usebibmacro{editor+others}% + \setunit{\labelnamepunct}\newblock} + {}% + \usebibmacro{maintitle+title}% + \newunit + \printlist{language}% + \newunit\newblock + \ifuseeditor + {} + {\usebibmacro{byeditor+others}% + \newunit\newblock}% + \usebibmacro{edition}% + \usebibmacro{volumes+volume+part}% + \setunit{\addspace}% + \ifbool{bbx:seriesafteryear} + {} + {\usebibmacro{series+number}}% + \newunit\newblock + \printfield{note}% + \newunit\newblock + \usebibmacro{publisher+location+date}% + \ifbool{bbx:seriesafteryear} + {\setunit{\addspace}% + \usebibmacro{series+number}} + {}% + \newunit\newblock + \usebibmacro{chapter+pages}% + \newunit + \ifbool{bbx:pagetotal} + {\printfield{pagetotal}% + \newunit\newblock} + {}% + \iftoggle{bbx:isbn} + {\printfield{isbn}} + {}% + \newunit\newblock + \usebibmacro{doi+eprint+url}% + \newunit\newblock + \usebibmacro{addendum+pubstate}% + \newunit\newblock + \usebibmacro{pageref}% + \usebibmacro{finentry}} + +\DeclareBibliographyDriver{xrefproceedings}{% + \usebibmacro{bibindex}% + \usebibmacro{begentry}% + \ifuseeditor + {\usebibmacro{editor+others}% + \setunit{\labelnamepunct}\newblock} + {}% + \usebibmacro{maintitle+title}% + \newunit + \printlist{language}% + \newunit\newblock + \usebibmacro{event+venue+date}% + \newunit\newblock + \ifuseeditor + {} + {\usebibmacro{byeditor+others}% + \newunit\newblock}% + \usebibmacro{volumes+volume+part}% + \setunit{\addspace}% + \ifbool{bbx:seriesafteryear} + {} + {\usebibmacro{series+number}}% + \newunit\newblock + \printfield{note}% + \newunit\newblock + \printlist{organization}% + \newunit + \usebibmacro{publisher+location+date}% + \ifbool{bbx:seriesafteryear} + {\setunit{\addspace}% + \usebibmacro{series+number}} + {}% + \newunit\newblock + \usebibmacro{chapter+pages}% + \newunit + \ifbool{bbx:pagetotal} + {\printfield{pagetotal}% + \newunit\newblock} + {}% + \iftoggle{bbx:isbn} + {\printfield{isbn}} + {}% + \newunit\newblock + \usebibmacro{doi+eprint+url}% + \newunit\newblock + \usebibmacro{addendum+pubstate}% + \newunit\newblock + \usebibmacro{pageref}% + \usebibmacro{finentry}} + +%%%%% %%%%% %%%%% %%%%% %%%%% %%%%% %%%%% %%%%% %%%%% %%%%% +%%%%% Die folgenden 'xrefidem'-BibliographyDriver %%%%% +%%%%% sind nötig damit bei Erstzitaten mit demselben %%%%% +%%%%% Autor und xref ein Vollzitat erfolgen kann, %%%%% +%%%%% ohne den Autor des referenzierten Werkes (der %%%%% +%%%%% durch 'idem' ersetzt wird) auszugeben. %%%%% +%%%%% %%%%% %%%%% %%%%% %%%%% %%%%% %%%%% %%%%% %%%%% %%%%% + +\DeclareBibliographyDriver{xrefidembook}{% + \usebibmacro{bibindex}% + \usebibmacro{begentry}% + \printtext{\bibstring[\mkidem]{idem\thefield{gender}}}% + \setunit{\citenamepunct}% + \usebibmacro{maintitle+title}% + \newunit + \printlist{language}% + \newunit\newblock + \usebibmacro{byauthor}% + \newunit\newblock + \usebibmacro{byeditor+others}% + \newunit\newblock + \usebibmacro{edition}% + \usebibmacro{volumes+volume+part}% + \setunit{\addspace}% + \ifbool{bbx:seriesafteryear} + {} + {\usebibmacro{series+number}}% + \newunit\newblock + \printfield{note}% + \newunit\newblock + \usebibmacro{publisher+location+date}% + \ifbool{bbx:seriesafteryear} + {\setunit{\addspace}% + \usebibmacro{series+number}} + {}% + \newunit\newblock + \usebibmacro{chapter+pages}% + \newunit + \ifbool{bbx:pagetotal} + {\printfield{pagetotal}% + \newunit\newblock} + {}% + \iftoggle{bbx:isbn} + {\printfield{isbn}} + {}% + \newunit\newblock + \usebibmacro{doi+eprint+url}% + \newunit\newblock + \usebibmacro{addendum+pubstate}% + \newunit\newblock + \usebibmacro{pageref}% + \usebibmacro{finentry}} + +\DeclareBibliographyDriver{xrefidemcollection}{% + \usebibmacro{bibindex}% + \usebibmacro{begentry}% + \ifuseeditor + {\printtext{\bibstring[\mkidem]{idem\thefield{gender}}% + \addspace}% + \usebibmacro{editorstrg}% + \setunit{\labelnamepunct}\newblock} + {}% + \usebibmacro{maintitle+title}% + \newunit + \printlist{language}% + \newunit\newblock + \usebibmacro{byeditor+others}% + \newunit\newblock + \usebibmacro{edition}% + \usebibmacro{volumes+volume+part}% + \setunit{\addspace}% + \ifbool{bbx:seriesafteryear} + {} + {\usebibmacro{series+number}}% + \newunit\newblock + \printfield{note}% + \newunit\newblock + \usebibmacro{publisher+location+date}% + \ifbool{bbx:seriesafteryear} + {\setunit{\addspace}% + \usebibmacro{series+number}} + {}% + \newunit\newblock + \usebibmacro{chapter+pages}% + \newunit + \ifbool{bbx:pagetotal} + {\printfield{pagetotal}% + \newunit\newblock} + {}% + \iftoggle{bbx:isbn} + {\printfield{isbn}} + {}% + \newunit\newblock + \usebibmacro{doi+eprint+url}% + \newunit\newblock + \usebibmacro{addendum+pubstate}% + \newunit\newblock + \usebibmacro{pageref}% + \usebibmacro{finentry}} + +\DeclareBibliographyDriver{xrefidemproceedings}{% + \usebibmacro{bibindex}% + \usebibmacro{begentry}% + \ifuseeditor + {\printtext{\bibstring[\mkidem]{idem\thefield{gender}}% + \addspace}% + \usebibmacro{editorstrg}% + \setunit{\labelnamepunct}\newblock} + {}% + \usebibmacro{maintitle+title}% + \newunit + \printlist{language}% + \newunit\newblock + \usebibmacro{event+venue+date}% + \newunit\newblock + \usebibmacro{byeditor+others}% + \newunit\newblock + \usebibmacro{volumes+volume+part}% + \setunit{\addspace}% + \ifbool{bbx:seriesafteryear} + {} + {\usebibmacro{series+number}}% + \newunit\newblock + \printfield{note}% + \newunit\newblock + \printlist{organization}% + \newunit + \usebibmacro{publisher+location+date}% + \ifbool{bbx:seriesafteryear} + {\setunit{\addspace}% + \usebibmacro{series+number}} + {}% + \newunit\newblock + \usebibmacro{chapter+pages}% + \newunit + \ifbool{bbx:pagetotal} + {\printfield{pagetotal}% + \newunit\newblock} + {}% + \iftoggle{bbx:isbn} + {\printfield{isbn}} + {}% + \newunit\newblock + \usebibmacro{doi+eprint+url}% + \newunit\newblock + \usebibmacro{addendum+pubstate}% + \newunit\newblock + \usebibmacro{pageref}% + \usebibmacro{finentry}} + +%%%%% %%%%% %%%%% %%%%% +%%%%% Warnungen %%%%% +%%%%% %%%%% %%%%% %%%%% +\protected\def\blxdw@warning#1{% + \begingroup + \blx@safe@actives + \PackageWarning{biblatex-dw}{#1\blxdw@noline}% + \endgroup} +\protected\def\blxdw@warning@noline#1{% + \begingroup + \blx@safe@actives + \PackageWarning{biblatex-dw}{#1\@gobble}% + \endgroup} +\protected\def\blxdw@warning@entry#1{% + \ifundef\abx@field@entrykey + {\blxdw@warning{#1}} + {\blxdw@warning{#1\MessageBreak at entry '\abx@field@entrykey'}}} +\let\blxdw@noline\@gobble + +\AtBeginDocument{% + \ifdefstring{\bbx@origfieldsformat}{punct} + {} + {\ifdefstring{\bbx@origfieldsformat}{parens} + {} + {\ifdefstring{\bbx@origfieldsformat}{brackets} + {} + {\blxdw@warning@noline{% + Unknown value for option 'origfieldsformat'.\MessageBreak + Option 'origfieldsformat=punct' used instead}}}}% + \ifdefstring{\bbx@option@namefont}{smallcaps} + {} + {\ifdefstring{\bbx@option@namefont}{italic} + {} + {\ifdefstring{\bbx@option@namefont}{bold} + {} + {\ifdefstring{\bbx@option@namefont}{normal} + {} + {\blxdw@warning@noline{% + Unknown value for option 'namefont'.\MessageBreak + Option 'namefont=normal' used instead}}}}}% + \ifdefstring{\bbx@option@firstnamefont}{smallcaps} + {} + {\ifdefstring{\bbx@option@firstnamefont}{italic} + {} + {\ifdefstring{\bbx@option@firstnamefont}{bold} + {} + {\ifdefstring{\bbx@option@firstnamefont}{normal} + {} + {\blxdw@warning@noline{% + Unknown value for option 'firstnamefont'.\MessageBreak + Option 'firstnamefont=normal' used instead}}}}}% + \ifdefstring{\bbx@option@ibidemfont}{smallcaps} + {} + {\ifdefstring{\bbx@option@ibidemfont}{italic} + {} + {\ifdefstring{\bbx@option@ibidemfont}{bold} + {} + {\ifdefstring{\bbx@option@ibidemfont}{normal} + {} + {\blxdw@warning@noline{% + Unknown value for option 'ibidemfont'.\MessageBreak + Option 'ibidemfont=normal' used instead}}}}}% + \ifdefstring{\bbx@option@idemfont}{smallcaps} + {} + {\ifdefstring{\bbx@option@idemfont}{italic} + {} + {\ifdefstring{\bbx@option@idemfont}{bold} + {} + {\ifdefstring{\bbx@option@idemfont}{normal} + {} + {\ifdefstring{\bbx@option@idemfont}{empty} + {} + {\blxdw@warning@noline{% + Unknown value for option 'idemfont'.\MessageBreak + Value of option 'namefont' used instead}}}}}}% + \ifdefstring{\bbx@option@editorstring}{parens} + {} + {\ifdefstring{\bbx@option@editorstring}{brackets} + {} + {\ifdefstring{\bbx@option@editorstring}{normal} + {} + {\ExecuteBibliographyOptions{editorstring=parens}% + \blxdw@warning@noline{% + Unknown value for option 'editorstring'.\MessageBreak + Option 'editorstring=parens' used instead}}}}% + \ifdefstring{\bbx@option@journalnumber}{standard} + {} + {\ifdefstring{\bbx@option@journalnumber}{afteryear} + {} + {\ifdefstring{\bbx@option@journalnumber}{date} + {} + {\blxdw@warning@noline{% + Unknown value for option 'journalnumber'.\MessageBreak + Option 'journalnumber=standard' used instead}}}}% + \iftoggle{blx@useeditor} + {\ifbool{cbx:omiteditor} + {\blxdw@warning@noline{% + Option 'omiteditor' cannot be used\MessageBreak + together with option 'useeditor=true'.\MessageBreak + Thus, 'omiteditor' is ignored}} + {}}% + {}% +} + +\endinput |