summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/biblatex-dw/bbx
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2010-09-22 23:35:08 +0000
committerKarl Berry <karl@freefriends.org>2010-09-22 23:35:08 +0000
commit7d3e52c3d1f706817bb17d8ce36fc9e2fdadc578 (patch)
tree51e3ca900fe7623ae05250535638e32d59095432 /Master/texmf-dist/tex/latex/biblatex-dw/bbx
parent4e4bb5b0b9eb71dbc88b140b9bfe43026324b79f (diff)
biblatex-dw (22sep10)
git-svn-id: svn://tug.org/texlive/trunk@19846 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/biblatex-dw/bbx')
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-dw/bbx/authortitle-dw.bbx625
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-dw/bbx/footnote-dw.bbx4
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-dw/bbx/standard-dw.bbx459
3 files changed, 547 insertions, 541 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
index 63235482766..cdc92d47b4a 100644
--- a/Master/texmf-dist/tex/latex/biblatex-dw/bbx/authortitle-dw.bbx
+++ b/Master/texmf-dist/tex/latex/biblatex-dw/bbx/authortitle-dw.bbx
@@ -1,13 +1,13 @@
% authortitle-dw.bbx, Dominik Waßenhoven 2010
-\ProvidesFile{authortitle-dw.bbx}[2010/03/11 v1.3 biblatex bibliography style]
+\ProvidesFile{authortitle-dw.bbx}[2010/09/21 v1.3a biblatex bibliography style]
-\@ifpackagelater{biblatex}{2010/02/14}
+\@ifpackagelater{biblatex}{2010/08/04}
{}
{\PackageError{biblatex}
{Outdated 'biblatex' package}
{The version of the 'authortitle-dw' style you are using\MessageBreak
- requires biblatex v0.9 or later.\MessageBreak
+ requires biblatex v0.9b or later.\MessageBreak
You are using: '\csuse{ver@biblatex.sty}'.\MessageBreak
This is a fatal error. I'm aborting now.}%
\endinput}
@@ -16,8 +16,10 @@
\newbool{bbx:annotation}
\newbool{bbx:edbyidem}
+\newbool{bbx:editorstring}% Test, ob editorstring auf parens oder brackets gesetzt wurde
\newbool{bbx:edsuper}
\newbool{bbx:idembib}
+\newbool{bbx:idemfont}% Test, ob idemfont gesetzt wurde
\newbool{bbx:library}
\newbool{bbx:nolocation}
\newbool{bbx:nopublisher}
@@ -53,37 +55,116 @@
\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}}
+\DeclareBibliographyOption{namefont}[normal]{%
+ \ifcsdef{bbx@opt@namefont@#1}
+ {\csuse{bbx@opt@namefont@#1}}
+ {\blxdw@error{%
+ Invalid option 'namefont=#1'\MessageBreak
+ Valid values are 'normal', 'smallcaps', 'italic', 'bold'}}}
+\newcommand{\bbx@namefont}{}
+\def\bbx@opt@namefont@normal{%
+ \renewcommand{\bbx@namefont}{}}
+\def\bbx@opt@namefont@smallcaps{%
+ \renewcommand{\bbx@namefont}{\textsc}}
+\def\bbx@opt@namefont@italic{%
+ \renewcommand{\bbx@namefont}{\textit}}
+\def\bbx@opt@namefont@bold{%
+ \renewcommand{\bbx@namefont}{\textbf}}
+
+\DeclareBibliographyOption{firstnamefont}[normal]{%
+ \ifcsdef{bbx@opt@firstnamefont@#1}
+ {\csuse{bbx@opt@firstnamefont@#1}}
+ {\blxdw@error{%
+ Invalid option 'firstnamefont=#1'\MessageBreak
+ Valid values are 'normal', 'smallcaps', 'italic', 'bold'}}}
+\newcommand{\bbx@firstnamefont}{}
+\def\bbx@opt@firstnamefont@normal{%
+ \renewcommand{\bbx@firstnamefont}{}}
+\def\bbx@opt@firstnamefont@smallcaps{%
+ \renewcommand{\bbx@firstnamefont}{\textsc}}
+\def\bbx@opt@firstnamefont@italic{%
+ \renewcommand{\bbx@firstnamefont}{\textit}}
+\def\bbx@opt@firstnamefont@bold{%
+ \renewcommand{\bbx@firstnamefont}{\textbf}}
+
+\DeclareBibliographyOption{idemfont}[normal]{%
+ \ifcsdef{bbx@opt@idemfont@#1}
+ {\csuse{bbx@opt@idemfont@#1}}
+ {\blxdw@error{%
+ Invalid option 'idemfont=#1'\MessageBreak
+ Valid values are 'normal', 'smallcaps', 'italic', 'bold'}}}
+\newcommand{\bbx@idemfont}{}
+\def\bbx@opt@idemfont@normal{%
+ \global\booltrue{bbx:idemfont}%
+ \renewcommand{\bbx@idemfont}{}}
+\def\bbx@opt@idemfont@smallcaps{%
+ \global\booltrue{bbx:idemfont}%
+ \renewcommand{\bbx@idemfont}{\textsc}}
+\def\bbx@opt@idemfont@italic{%
+ \global\booltrue{bbx:idemfont}%
+ \renewcommand{\bbx@idemfont}{\textit}}
+\def\bbx@opt@idemfont@bold{%
+ \global\booltrue{bbx:idemfont}%
+ \renewcommand{\bbx@idemfont}{\textbf}}
+
+\DeclareBibliographyOption{ibidemfont}[normal]{%
+ \ifcsdef{bbx@opt@ibidemfont@#1}
+ {\csuse{bbx@opt@ibidemfont@#1}}
+ {\blxdw@error{%
+ Invalid option 'ibidemfont=#1'\MessageBreak
+ Valid values are 'normal', 'smallcaps', 'italic', 'bold'}}}
+\newcommand{\bbx@ibidemfont}{}
+\def\bbx@opt@ibidemfont@normal{%
+ \renewcommand{\bbx@ibidemfont}{}}
+\def\bbx@opt@ibidemfont@smallcaps{%
+ \renewcommand{\bbx@ibidemfont}{\textsc}}
+\def\bbx@opt@ibidemfont@italic{%
+ \renewcommand{\bbx@ibidemfont}{\textit}}
+\def\bbx@opt@ibidemfont@bold{%
+ \renewcommand{\bbx@ibidemfont}{\textbf}}
+
+\DeclareBibliographyOption{idembibformat}[idem]{%
+ \ifcsdef{bbx@opt@idembibformat@#1}
+ {\csuse{bbx@opt@idembibformat@#1}}
+ {\blxdw@error{%
+ Invalid option 'idembibformat=#1'\MessageBreak
+ Valid values are 'idem', 'dash'}}}
+\def\bbx@opt@idembibformat@idem{%
+ \let\bibnamedashOrig\bibnamedash
+ \AtBeginBibliography{
+ \renewcommand*{\bibnamedash}{%
+ \bibsentence\bibstring[\mkidem]{idem\thefield{gender}}}}}
+\def\bbx@opt@idembibformat@dash{
+ \AtBeginBibliography{%
+ \let\bibnamedash\bibnamedashOrig}}%
+
+\DeclareBibliographyOption{editorstring}[normal]{%
+ \ifcsdef{bbx@opt@editorstring@#1}
+ {\csuse{bbx@opt@editorstring@#1}}
+ {\blxdw@error{%
+ Invalid option 'editorstring=#1'\MessageBreak
+ Valid values are 'normal', 'parens', 'brackets'}}}
+\newcommand{\bbx@editorstring}{}
+\def\bbx@opt@editorstring@normal{%
+ \global\boolfalse{bbx:editorstring}%
+ \renewcommand{\bbx@editorstring}{}}
+\def\bbx@opt@editorstring@parens{%
+ \global\booltrue{bbx:editorstring}%
+ \renewcommand{\bbx@editorstring}{\mkbibparens}}
+\def\bbx@opt@editorstring@brackets{%
+ \global\booltrue{bbx:editorstring}%
+ \renewcommand{\bbx@editorstring}{\mkbibbrackets}}
+
\ExecuteBibliographyOptions{%
edbyidem=true,
editorstring=parens,
- firstnamefont=normal,
- ibidemfont=normal,
idembib=true,
idembibformat=idem,
- namefont=normal,
nolocation=false,
nopublisher=true,
oldauthor=true,
@@ -136,11 +217,6 @@
\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
@@ -242,159 +318,86 @@
% 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}\)
- \)}
+ \ifboolexpr{
+ bool {bbx:oldauthor}
+ and
+ bool {oldauthor}
+ and
+ ( test {\ifcurrentname{author}}
+ or
+ ( test {\ifcurrentname{labelname}}
+ and
+ not test {\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}}}}}}
+ {\bbx@namefont{#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}\)
- \)}
+ \ifboolexpr{
+ bool {bbx:oldauthor}
+ and
+ bool {oldauthor}
+ and
+ ( test {\ifcurrentname{author}}
+ or
+ ( test {\ifcurrentname{labelname}}
+ and
+ not test {\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
+ {\bbx@firstnamefont{#1}}}
+
+% prefix richtet sich nach 'namefont' (useprefix=true)
+% oder 'firstnamefont' (useprefix=false)
\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
+ \ifboolexpr{
+ bool {bbx:oldauthor}
+ and
+ bool {oldauthor}
+ and
+ ( test {\ifcurrentname{author}}
+ or
+ ( test {\ifcurrentname{labelname}}
+ and
+ not test {\ifnameundef{author}} ) )
+ }
+ {#1}
+ {\ifuseprefix
+ {\bbx@namefont{#1}}
+ {\bbx@firstnamefont{#1}}}}
+
+% suffix richtet sich nach 'firstnamefont'
\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}}}}}}
+ \ifboolexpr{
+ bool {bbx:oldauthor}
+ and
+ bool {oldauthor}
+ and
+ ( test {\ifcurrentname{author}}
+ or
+ ( test {\ifcurrentname{labelname}}
+ and
+ not test {\ifnameundef{author}} ) )
+ }
+ {#1}
+ {\bbx@firstnamefont{#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',
+% ansonsten Formatierung 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}
+ \ifboolexpr{
+ bool {bbx:oldauthor}
+ and
+ bool {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}}}}}}}}}
+ {\ifbool{bbx:idemfont}
+ {\bbx@idemfont{#1}}
+ {\bbx@namefont{#1}}}}
%% Punkt zwischen Untertitel und Titelzusatz ([book|main]titleaddon)
\renewbibmacro*{title}{%
@@ -533,77 +536,63 @@
\newunit}}% ansonsten wird komplett ausgegeben
{\printfield{edition}%
\newunit}}
-
+
+%% Hilfsmakro für Option editorstring
+\newbibmacro*{editorstringpunct}{%
+ \ifbool{bbx:editorstring}
+ {\addspace}
+ {\addcomma\space}}
+
%% 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}}}}}%
+ {\bbx@editorstring{\bibstring{editors}}}
+ {\bbx@editorstring{\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}}}}}}}%
+ {\bbx@editorstring{\bibstring{\thefield{editortype}s}}}
+ {\bbx@editorstring{\bibstring{\thefield{editortype}}}}}}
\renewbibmacro*{editor+othersstrg}{%
- \ifthenelse{\value{editor}>1\OR\ifandothers{editor}}
- {\def\@tempa{editors}}
- {\def\@tempa{editor}}%
+ \iffieldundef{editortype}
+ {\ifthenelse{\value{editor}>1\OR\ifandothers{editor}}
+ {\def\abx@tempa{editors}}
+ {\def\abx@tempa{editor}}}
+ {\ifthenelse{\value{editor}>1\OR\ifandothers{editor}}
+ {\edef\abx@tempa{\thefield{editortype}s}}
+ {\edef\abx@tempa{\thefield{editortype}}}}%
+ \let\abx@tempb=\empty
\ifnamesequal{editor}{translator}
- {\appto\@tempa{tr}%
- \clearname{translator}}
+ {\appto\abx@tempa{tr}%
+ \appto\abx@tempb{\clearname{translator}}}
{}%
\ifnamesequal{editor}{commentator}
- {\appto\@tempa{co}%
- \clearname{commentator}}
+ {\appto\abx@tempa{co}%
+ \appto\abx@tempb{\clearname{commentator}}}
{\ifnamesequal{editor}{annotator}
- {\appto\@tempa{an}%
- \clearname{annotator}}
+ {\appto\abx@tempa{an}%
+ \appto\abx@tempb{\clearname{annotator}}}
{}}%
\ifnamesequal{editor}{introduction}
- {\appto\@tempa{in}%
- \clearname{introduction}}
+ {\appto\abx@tempa{in}%
+ \appto\abx@tempb{\clearname{introduction}}}
{\ifnamesequal{editor}{foreword}
- {\appto\@tempa{fo}%
- \clearname{foreword}}
+ {\appto\abx@tempa{fo}%
+ \appto\abx@tempb{\clearname{foreword}}}
{\ifnamesequal{editor}{afterword}
- {\appto\@tempa{af}%
- \clearname{afterword}}
+ {\appto\abx@tempa{af}%
+ \appto\abx@tempb{\clearname{afterword}}}
{}}}%
- \ifdefstring{\bbx@option@editorstring}{parens}
- {\mkbibparens{\bibstring{\@tempa}}}
- {\ifdefstring{\bbx@option@editorstring}{brackets}
- {\mkbibbrackets{\bibstring{\@tempa}}}
- {\bibstring{\@tempa}}}}
+ \ifbibxstring{\abx@tempa}
+ {\bbx@editorstring{\bibstring{\abx@tempa}}%
+ \abx@tempb}
+ {\usebibmacro{editorstrg}}}
%% Ü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}}}}}
+ {\bbx@editorstring{\bibstring{translators}}}
+ {\bbx@editorstring{\bibstring{translator}}}}
\renewbibmacro*{translator+othersstrg}{%
\ifthenelse{\value{translator}>1\OR\ifandothers{translator}}
@@ -626,11 +615,7 @@
{\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}}}}
+ \bbx@editorstring{\bibstring{\abx@tempa}}}
%% Option 'editorstring=brackets|parens|normal'
%% Option 'idembib=true|false'
@@ -642,18 +627,15 @@
{\bibnamedash}
{\printnames{editor}%
\savefield{namehash}{\bbx@lasthash}}}%
- {\printnames{editor}}%
- \ifdefstring{\bbx@option@editorstring}{brackets}%
- {\addspace}%
- {\ifdefstring{\bbx@option@editorstring}{parens}%
- {\addspace}%
- {\addcomma\space}}%
+ {\printnames{editor}%
+ \global\undef\bbx@lasthash}%
+ \usebibmacro{editorstringpunct}%
\usebibmacro{editorstrg}%
\ifbool{bbx:idembib}
{}
{\labelnamepunct}%
\clearname{editor}}
- {\global\undef\bbx@lasthash}}
+ {}}
\renewbibmacro*{editor+others}{%
\ifthenelse{\ifuseeditor\AND\NOT\ifnameundef{editor}}
@@ -664,11 +646,7 @@
{\printnames{editor}%
\savefield{namehash}{\bbx@lasthash}}}%
{\printnames{editor}}%
- \ifdefstring{\bbx@option@editorstring}{brackets}%
- {\addspace}%
- {\ifdefstring{\bbx@option@editorstring}{parens}%
- {\addspace}%
- {\addcomma\space}}%
+ \usebibmacro{editorstringpunct}%
\usebibmacro{editor+othersstrg}%
\ifbool{bbx:idembib}
{}
@@ -685,11 +663,7 @@
{\printnames{translator}%
\savefield{namehash}{\bbx@lasthash}}}%
{\printnames{translator}}%
- \ifdefstring{\bbx@option@editorstring}{brackets}%
- {\addspace}%
- {\ifdefstring{\bbx@option@editorstring}{parens}%
- {\addspace}%
- {\addcomma\space}}%
+ \usebibmacro{editorstringpunct}%
\usebibmacro{translatorstrg}%
\ifbool{bbx:idembib}
{}
@@ -706,11 +680,7 @@
{\printnames{translator}%
\savefield{namehash}{\bbx@lasthash}}}%
{\printnames{translator}}%
- \ifdefstring{\bbx@option@editorstring}{brackets}%
- {\addspace}%
- {\ifdefstring{\bbx@option@editorstring}{parens}%
- {\addspace}%
- {\addcomma\space}}%
+ \usebibmacro{editorstringpunct}%
\usebibmacro{translator+othersstrg}%
\ifbool{bbx:idembib}
{}
@@ -718,6 +688,15 @@
\clearname{translator}}
{\global\undef\bbx@lasthash}}
+\newbibmacro*{editor+others/translator+others}{%
+ \ifboolexpr{
+ test \ifuseeditor
+ and
+ not test {\ifnameundef{editor}}
+ }
+ {\usebibmacro{editor+others}}
+ {\usebibmacro{translator+others}}}
+
%% Option 'idembib=true|false'
\renewbibmacro*{author}{%
\ifbool{bbx:pseudoauthor}
@@ -726,8 +705,17 @@
\newbibmacro*{author:pseudotrue}{%
\ifbool{pseudoauthor}
- {\printtext{\bibleftpseudo}}
- {}%
+ {\printtext{\bibleftpseudo}%
+ \usebibmacro{author:output}%
+ \printtext{\bibrightpseudo}}
+ {\usebibmacro{author:output}}}
+
+\newbibmacro*{author:pseudofalse}{%
+ \ifbool{pseudoauthor}
+ {}
+ {\usebibmacro{author:output}}}
+
+\newbibmacro*{author:output}{%
\ifthenelse{\ifuseauthor\AND\NOT\ifnameundef{author}}
{\ifbool{bbx:idembib}
{\ifthenelse{\iffieldequals{namehash}{\bbx@lasthash}\AND
@@ -735,33 +723,14 @@
{\bibnamedash}
{\printnames{author}%
\savefield{namehash}{\bbx@lasthash}}}
- {\printnames{author}}}
- {\global\undef\bbx@lasthash}%
+ {\printnames{author}%
+ \global\undef\bbx@lasthash}%
\iffieldundef{authortype}
{}
- {\addcomma\space
- \usebibmacro{authorstrg}}%
- \ifbool{pseudoauthor}
- {\printtext{\bibrightpseudo}}
- {}}
+ {\setunit{\addcomma\space}%
+ \usebibmacro{authorstrg}}}
+ {}}
-\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}
@@ -774,53 +743,90 @@
%% 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}%
+ \ifnameundef{editor}
+ {}
+ {\usebibmacro{byeditor+othersstrg}%
\setunit{\addspace}%
- \printnames[byeditor]{editor}%
+ \ifboolexpr{
+ ( test {\ifnamesequal{editor}{author}}
+ or
+ bool {xrefidem} )
+ and
+ bool {bbx:edbyidem}
+ }
+ {\bibstring[\mkidem]{idemdat\thefield{gender}}}
+ {\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}}}%
+ \newunit}%
+ \usebibmacro{byeditorx}%
\usebibmacro{bytranslator+others}}
+\renewbibmacro*{bytranslator+others}{%
+ \ifnameundef{translator}
+ {}
+ {\usebibmacro{bytranslator+othersstrg}%
+ \setunit{\addspace}%
+ \ifboolexpr{
+ ( test {\ifnamesequal{translator}{author}}
+ or
+ bool {xrefidem} )
+ and
+ bool {bbx:edbyidem}
+ }
+ {\bibstring[\mkidem]{idemdat\thefield{gender}}}
+ {\printnames[bytranslator]{translator}}%
+ \clearname{translator}%
+ \newunit}%
+ \usebibmacro{withothers}}
+
+\newbibmacro*{ifuse:byeditor+others}{%
+ \ifboolexpr{
+ ( test \ifuseeditor
+ and
+ not test {\ifnameundef{editor}} )
+ or
+ ( test \ifusetranslator
+ and
+ not test {\ifnameundef{translator}} )
+ }
+ {}
+ {\usebibmacro{byeditor+others}}}
+
+\newbibmacro*{ifuse:xrefidem}{%
+ \ifboolexpr{
+ test \ifuseeditor
+ and
+ not test {\ifnameundef{editor}}
+ }
+ {\printtext{\bibstring[\mkidem]{idem\thefield{gender}}%
+ \addspace}%
+ \usebibmacro{editor+othersstrg}%
+ \setunit{\labelnamepunct}\newblock}
+ {}%
+ \ifboolexpr{
+ test \ifusetranslator
+ and
+ not test {\ifnameundef{translator}}
+ and
+ ( ( not test \ifuseeditor )
+ or
+ ( test \ifuseeditor
+ and
+ test {\ifnameundef{editor}} ) )
+ }
+ {\printtext{\bibstring[\mkidem]{idem\thefield{gender}}%
+ \addspace}%
+ \usebibmacro{editor+othersstrg}%
+ \setunit{\labelnamepunct}\newblock}
+ {}}
+
%%%%% %%%%% %%%%% %%%%% %%%%% %%%%% %%%%% %%%%% %%%%%
%%%%% Makros aus authortitle.bbx (unverändert) %%%%%
%%%%% %%%%% %%%%% %%%%% %%%%% %%%%% %%%%% %%%%% %%%%%
-\renewcommand*{\thebibitem}{\item}
-\renewcommand*{\thelositem}{\item}
\setlength{\bibitemsep}{0pt}
-\renewenvironment*{thebibliography}
+\defbibenvironment{bibliography}
{\list
{}
{\setlength{\leftmargin}{\bibhang}%
@@ -828,5 +834,6 @@
\setlength{\itemsep}{\bibitemsep}%
\setlength{\parsep}{\bibparsep}}}
{\endlist}
+ {\item}
\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
index 4cffc2510fb..b5a1c898766 100644
--- a/Master/texmf-dist/tex/latex/biblatex-dw/bbx/footnote-dw.bbx
+++ b/Master/texmf-dist/tex/latex/biblatex-dw/bbx/footnote-dw.bbx
@@ -1,8 +1,8 @@
% footnote-dw.bbx, Dominik Waßenhoven 2010
-\ProvidesFile{footnote-dw.bbx}[2010/03/11 v1.3 biblatex bibliography style]
+\ProvidesFile{footnote-dw.bbx}[2010/09/21 v1.3a biblatex bibliography style]
-\@ifpackagelater{biblatex}{2010/02/14}
+\@ifpackagelater{biblatex}{2010/08/04}
{}
{\PackageError{biblatex}
{Outdated 'biblatex' package}
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
index 8bdd7cf0d44..7641f3d5e68 100644
--- a/Master/texmf-dist/tex/latex/biblatex-dw/bbx/standard-dw.bbx
+++ b/Master/texmf-dist/tex/latex/biblatex-dw/bbx/standard-dw.bbx
@@ -1,6 +1,6 @@
% standard-dw.bbx, Dominik Waßenhoven 2010
-\ProvidesFile{standard-dw.bbx}[2010/03/11 v1.3 biblatex bibliography style]
+\ProvidesFile{standard-dw.bbx}[2010/09/21 v1.3a biblatex bibliography style]
\RequireBibliographyStyle{standard}
@@ -12,11 +12,13 @@
\newbool{bbx:journumdate}
\newbool{bbx:seriesafteryear}
\newbool{bbx:shorthandacro}
+\newbool{bbx:shorthandinbib}
+\newbool{bbx:shorthandinbibpunct}% Kontrolle, ob shorthandinbib ausgegeben wurde
\newbool{bbx:shorthandwidthbool}
\newbool{bbx:shortjournal}
\newbool{bbx:terselos}
\newbool{bbx:xref}% soll xref überhaupt verwendet werden?
-\newbool{bbx:xrefnoidem}
+\newbool{xrefidem}
% Schalter zum ein-/ausblenden bestimmter Felder
\newbool{bbx:pagetotal}
@@ -29,9 +31,12 @@
\DeclareBibliographyOption{acronyms}[true]{%
\csuse{bool#1}{bbx:shorthandacro}}
+\DeclareBibliographyOption{shorthandinbib}[true]{%
+ \csuse{bool#1}{bbx:shorthandinbib}}
\DeclareBibliographyOption{shorthandwidth}{%
\setlength{\bbx@shorthandwidth}{#1}
\setlength{\shorthandsep}{3pt plus 0.5pt minus 0.5pt}
+ \renewcommand{\shorthandpunct}{\addcolon}
\csuse{booltrue}{bbx:shorthandwidthbool}}
\DeclareBibliographyOption{shortjournal}[true]{%
\csuse{bool#1}{bbx:shortjournal}}
@@ -69,6 +74,7 @@
journalnumber=standard,
pagetotal=false,
series=standard,
+ shorthandinbib=false,
terselos=true,
xref=false
}
@@ -118,11 +124,7 @@
{}
{\ifnameundef{author}
{\printnames{editor}%
- \ifdefstring{\bbx@option@editorstring}{brackets}%
- {\addspace}%
- {\ifdefstring{\bbx@option@editorstring}{parens}%
- {\addspace}%
- {\addcomma\space}}%
+ \usebibmacro{editorstringpunct}%
\usebibmacro{editorstrg}}
{\printnames{author}}%
\setunit{\labelnamepunct}}%
@@ -147,8 +149,7 @@
%% List of Shorthands: Länge der Labels einstellbar
\AtBeginDocument{%
\ifbool{bbx:shorthandwidthbool}
- {\renewcommand{\shorthandpunct}{\addcolon}
- \renewenvironment*{theshorthands}
+ {\defbibenvironment{shorthands}
{\list
{\printfield[shorthandwidth]{shorthand}%
\printtext{\shorthandpunct}}
@@ -159,11 +160,11 @@
\setlength{\itemsep}{\bibitemsep}%
\setlength{\parsep}{\bibparsep}%
\renewcommand*{\makelabel}[1]{##1\hss}}}
- {\endlist}}
- {\renewenvironment*{theshorthands}
+ {\endlist}
+ {\item}}
+ {\defbibenvironment{shorthands}
{\list
- {\printfield[shorthandwidth]{shorthand}%
- \printtext{\shorthandpunct}}
+ {\printfield[shorthandwidth]{shorthand}}
{\setlength{\labelwidth}{\shorthandwidth}%
\setlength{\leftmargin}{\labelwidth}%
\setlength{\labelsep}{\biblabelsep}%
@@ -171,33 +172,73 @@
\setlength{\itemsep}{\bibitemsep}%
\setlength{\parsep}{\bibparsep}%
\renewcommand*{\makelabel}[1]{##1\hss}}}
- {\endlist}}}
+ {\endlist}
+ {\item}}}
+
+%% Option »shorthandinbib«:
+%% Shorthands in der Bibliographie ausgeben
+%% außerdem für Option »xref«:
+%% Autoren in Liste schreiben für späteren Test xrefnamecheck
+% \newcommand*{\@xrefauthornames}
+\DeclareFieldFormat{shorthandinbib}{\mkbibbrackets{#1}}
+\newcommand*{\shorthandinbibpunct}{\addspace}
+\renewbibmacro*{begentry}{%
+ \ifcitation
+ {}% im Zitat sollen shorthands nicht ausgegeben werden
+ {\ifbool{bbx:shorthandinbib}
+ {\iffieldundef{shorthand}
+ {}
+ {\printfield[shorthandinbib]{shorthand}%
+ \shorthandinbibpunct}}% ohne \setunit, damit das auf jeden Fall ausgegeben wird
+ {}}}
+
+%% bei useeditor=true oder usetranslator=true
+\newbibmacro*{useeditor+others}{%
+ \ifboolexpr{
+ test \ifuseeditor
+ and
+ not test {\ifnameundef{editor}}
+ }
+ {\usebibmacro{useeditor}}
+ {\ifboolexpr{
+ test \ifusetranslator
+ and
+ not test {\ifnameundef{translator}}
+ }
+ {\usebibmacro{usetranslator}}
+ {}}}
+
+\newbibmacro*{useeditor}{%
+ \ifnamesequal{author}{editor}
+ {\ifbool{bbx:edbyidem}
+ {\midsentence*\bibstring[\mkidem]{idem\thefield{gender}}%
+ \addspace}%
+ {\printnames[byeditor]{editor}%
+ \usebibmacro{editorstringpunct}%
+ \savefield{namehash}{\bbx@lasthash}}}%
+ {\printnames[byeditor]{editor}%
+ \usebibmacro{editorstringpunct}%
+ \savefield{namehash}{\bbx@lasthash}}%
+ \usebibmacro{editorstrg}%
+ \clearname{editor}%
+ \setunit{\labelnamepunct}\newblock}
+
+\newbibmacro*{usetranslator}{%
+ {\ifnamesequal{author}{translator}
+ {\ifbool{bbx:edbyidem}
+ {\midsentence*\bibstring[\mkidem]{idem\thefield{gender}}%
+ \addspace}%
+ {\printnames[byeditor]{translator}%
+ \usebibmacro{editorstringpunct}%
+ \savefield{namehash}{\bbx@lasthash}}}%
+ {\printnames[byeditor]{translator}%
+ \usebibmacro{editorstringpunct}%
+ \savefield{namehash}{\bbx@lasthash}}%
+ \usebibmacro{translatorstrg}%
+ \clearname{translator}%
+ \setunit{\labelnamepunct}\newblock}
+ {}}
-%% 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}{%
@@ -362,10 +403,7 @@
\global\boolfalse{bbx:journumdate}}}}}
\renewbibmacro*{journal+issuetitle}{%
- \ifuseeditor
- {\usebibmacro{editorincoll}%
- \setunit{\labelnamepunct}\newblock}
- {}%
+ \usebibmacro{useeditor+others}%
\usebibmacro{journal}%
\setunit*{\addspace}%
\iffieldundef{series}
@@ -406,10 +444,8 @@
{\printtext[parens]{\usebibmacro{issue+date}}}%
\newunit\newblock
\usebibmacro{issue}%
- \ifuseeditor
- {}
- {\newunit%
- \usebibmacro{byeditor+others}}%
+ \newunit
+ \usebibmacro{byeditor+others}%
\newunit}
% journalnumber=afteryear
@@ -433,10 +469,8 @@
\printfield{number}}}%
\newunit\newblock
\usebibmacro{issue}%
- \ifuseeditor
- {}
- {\newunit%
- \usebibmacro{byeditor+others}}%
+ \newunit
+ \usebibmacro{ifuse:byeditor+others}%
\newunit}
% journalnumber=date
@@ -447,10 +481,8 @@
\usebibmacro{issue+date+number}%
\newunit\newblock
\usebibmacro{issue}%
- \ifuseeditor
- {}
- {\newunit%
- \usebibmacro{byeditor+others}}%
+ \newunit
+ \usebibmacro{ifuse:byeditor+others}%
\newunit}
\renewbibmacro*{issue+date}{% Klammern entfernt
@@ -470,10 +502,10 @@
\printdate}}%
{\iffieldundef{month}% mit definiertem Feld issue
{\printtext[parens]{\printdate}%
- \setunit{\addspace}%
- \printfield{issue}}%
- {\setunit{\addcomma\space}%
- \printdate}}}%
+ \setunit{\addspace}%
+ \printfield{issue}}%
+ {\setunit{\addcomma\space}%
+ \printdate}}}%
{\iffieldundef{issue}% mit definiertem Feld number
{\iffieldundef{month}
{\setunit{\addspace}%
@@ -484,9 +516,7 @@
{\setunit{\addcomma\space\journumstring}%
\printfield{number}%
\setunit{\addcomma\space}%
- \printfield{month}%
- \setunit{\addspace}%
- \printfield{year}}%
+ \printdate}%
{\setunit{\addcomma\space\journumstring}%
\printfield{number}%
\setunit{\addcomma\space}%
@@ -501,9 +531,7 @@
{\setunit{\addspace\journumstring}%
\printfield{number}%
\setunit{\addcomma\space}%
- \printfield{month}%
- \setunit{\addspace}%
- \printfield{year}%
+ \printdate
\setunit{\addcomma\space}%
\printfield{issue}}%
{\setunit{\addcomma\space\journumstring}%
@@ -514,6 +542,17 @@
\printfield{issue}}}}}%
\newunit}
+%% pageref: space statt \newunit, da sonst Komma vor Klammer steht
+\renewbibmacro*{pageref}{%
+ \iflistundef{pageref}
+ {}
+ {\setunit{\addspace}%
+ \printtext[parens]{%
+ \ifnumgreater{\value{pageref}}{1}
+ {\bibstring{backrefpages}\ppspace}
+ {\bibstring{backrefpage}\ppspace}%
+ \printlist[pageref][-\value{listtotal}]{pageref}}}}
+
%%%%% %%%%% %%%%% %%%%% %%%%% %%%%% %%%%% %%%%% %%%%%
%%%%% Bibmacros für Code, der im Bibliography %%%%%
%%%%% Driver aufgerufen wird, wenn KEIN xref %%%%%
@@ -521,7 +560,7 @@
%%%%% %%%%% %%%%% %%%%% %%%%% %%%%% %%%%% %%%%% %%%%%
\newbibmacro{noxref:inbook}{%
\usebibmacro{bybookauthor}%
- \newunit\newblock
+ \setunit{\labelnamepunct}\newblock%
\usebibmacro{maintitle+booktitle}%
\newunit
\usebibmacro{byeditor+others}%
@@ -554,16 +593,11 @@
\usebibmacro{pageref}}%
\newbibmacro{noxref:incollection}{%
- \ifuseeditor
- {\usebibmacro{editorincoll}%
- \setunit{\labelnamepunct}\newblock}
- {}%
+ \usebibmacro{useeditor+others}%
\usebibmacro{maintitle+booktitle}%
\newunit
- \ifuseeditor
- {}
- {\usebibmacro{byeditor+others}%
- \newunit\newblock}%
+ \usebibmacro{ifuse:byeditor+others}%
+ \newunit\newblock
\usebibmacro{edition}%
\usebibmacro{volumes+volume+part}%
\setunit{\addspace}%
@@ -592,18 +626,12 @@
\usebibmacro{pageref}}
\newbibmacro{noxref:inproceedings}{%
- \ifuseeditor
- {\usebibmacro{editorincoll}%
- \setunit{\labelnamepunct}\newblock}
- {}%
+ \usebibmacro{useeditor+others}%
\usebibmacro{maintitle+booktitle}%
\newunit\newblock
\usebibmacro{event+venue+date}%
\newunit\newblock
- \ifuseeditor
- {}
- {\usebibmacro{byeditor+others}%
- \newunit\newblock}%
+ \usebibmacro{ifuse:byeditor+others}%
\newunit\newblock
\usebibmacro{volumes+volume+part}%
\setunit{\addspace}%
@@ -634,16 +662,11 @@
\usebibmacro{pageref}}%
\newbibmacro{noxref:inreference}{%
- \ifuseeditor
- {\usebibmacro{editorincoll}%
- \setunit{\labelnamepunct}\newblock}
- {}%
+ \usebibmacro{useeditor+others}%
\usebibmacro{maintitle+booktitle}%
\newunit
- \ifuseeditor
- {}
- {\usebibmacro{byeditor+others}%
- \newunit\newblock}%
+ \usebibmacro{ifuse:byeditor+others}%
+ \newunit\newblock
\usebibmacro{edition}%
\setunit{\addspace}%
\ifbool{bbx:seriesafteryear}
@@ -679,7 +702,9 @@
\ifbool{cbx:idemfull}
{}
{\usebibmacro{author/translator+others}%
- \setunit{\labelnamepunct}\newblock}%
+ \ifnameundef{labelname}
+ {}
+ {\setunit{\labelnamepunct}\newblock}}%
\usebibmacro{title}%
\newunit
\printlist{language}%
@@ -714,7 +739,9 @@
\ifbool{cbx:idemfull}
{}
{\usebibmacro{author/editor+others/translator+others}%
- \setunit{\labelnamepunct}\newblock}%
+ \ifnameundef{labelname}
+ {}
+ {\setunit{\labelnamepunct}\newblock}}%
\usebibmacro{maintitle+title}%
\newunit
\printlist{language}%
@@ -761,7 +788,9 @@
\ifbool{cbx:idemfull}
{}
{\usebibmacro{author/editor+others/translator+others}%
- \setunit{\labelnamepunct}\newblock}%
+ \ifnameundef{labelname}
+ {}
+ {\setunit{\labelnamepunct}\newblock}}%
\usebibmacro{title}%
\newunit
\printlist{language}%
@@ -796,8 +825,10 @@
\usebibmacro{begentry}%
\ifbool{cbx:idemfull}
{}
- {\usebibmacro{editor+others}%
- \setunit{\labelnamepunct}\newblock}%
+ {\usebibmacro{editor+others/translator+others}%
+ \ifnameundef{labelname}
+ {}
+ {\setunit{\labelnamepunct}}}%
\usebibmacro{maintitle+title}%
\newunit
\printlist{language}%
@@ -842,7 +873,9 @@
\ifbool{cbx:idemfull}
{}
{\usebibmacro{author/translator+others}%
- \setunit{\labelnamepunct}\newblock}%
+ \ifnameundef{labelname}
+ {}
+ {\setunit{\labelnamepunct}\newblock}}%
\usebibmacro{title}%
\newunit\newblock
\printlist{language}%
@@ -850,10 +883,18 @@
\usebibmacro{byauthor}%
\newunit\newblock
\usebibmacro{in:}%
- \ifnamexref{labelname}%
- {\global\boolfalse{bbx:xrefnoidem}}%
- {\global\booltrue{bbx:xrefnoidem}%
- \global\booltrue{cbx:xrefnoidem}}%
+ \ifboolexpr{
+ test \ifuseeditor
+ or
+ test \ifusetranslator
+ }
+ {\ifnamexref{labelname}%
+ {\booltrue{xrefidem}}%
+ {\boolfalse{xrefidem}}}
+ {\usebibmacro{authedxrefcheck}%
+ \ifbool{cbx:authedxref}
+ {\booltrue{xrefidem}}
+ {\boolfalse{xrefidem}}}%
\ifbool{bbx:xref}
{\iffieldundef{xref}%
{% Code, wenn kein xref vorhanden
@@ -870,7 +911,9 @@
\ifbool{cbx:idemfull}
{}
{\usebibmacro{author/translator+others}%
- \setunit{\labelnamepunct}\newblock}%
+ \ifnameundef{labelname}
+ {}
+ {\setunit{\labelnamepunct}\newblock}}%
\usebibmacro{title}%
\newunit
\printlist{language}%
@@ -878,17 +921,10 @@
\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}}}%
+ \usebibmacro{authedxrefcheck}%
+ \ifbool{cbx:authedxref}
+ {\booltrue{xrefidem}}
+ {\boolfalse{xrefidem}}%
\ifbool{bbx:xref}
{\iffieldundef{xref}
{% Code, wenn kein xref vorhanden
@@ -905,7 +941,9 @@
\ifbool{cbx:idemfull}
{}
{\usebibmacro{author/translator+others}%
- \setunit{\labelnamepunct}\newblock}%
+ \ifnameundef{labelname}
+ {}
+ {\setunit{\labelnamepunct}\newblock}}%
\usebibmacro{title}%
\newunit
\printlist{language}%
@@ -913,16 +951,18 @@
\usebibmacro{byauthor}%
\newunit\newblock
\usebibmacro{in:}%
- \ifuseeditor
+ \ifboolexpr{
+ test \ifuseeditor
+ or
+ test \ifusetranslator
+ }
{\ifnamexref{labelname}%
- {\global\boolfalse{bbx:xrefnoidem}}%
- {\global\booltrue{bbx:xrefnoidem}%
- \global\booltrue{cbx:xrefnoidem}}}
+ {\booltrue{xrefidem}}%
+ {\boolfalse{xrefidem}}}
{\usebibmacro{authedxrefcheck}%
\ifbool{cbx:authedxref}
- {\global\boolfalse{bbx:xrefnoidem}}
- {\global\booltrue{bbx:xrefnoidem}%
- \global\booltrue{cbx:xrefnoidem}}}%
+ {\booltrue{xrefidem}}
+ {\boolfalse{xrefidem}}}%
\ifbool{bbx:xref}
{\iffieldundef{xref}%
{% Code, wenn kein xref vorhanden
@@ -939,7 +979,9 @@
\ifbool{cbx:idemfull}
{}
{\usebibmacro{author/translator+others}%
- \setunit*{\labelnamepunct}\newblock}%
+ \ifnameundef{labelname}
+ {}
+ {\setunit{\labelnamepunct}\newblock}}%
\usebibmacro{title}%
\newunit
\printlist{language}%
@@ -947,16 +989,18 @@
\usebibmacro{byauthor}%
\newunit\newblock
\usebibmacro{in:}%
- \ifuseeditor
+ \ifboolexpr{
+ test \ifuseeditor
+ or
+ test \ifusetranslator
+ }
{\ifnamexref{labelname}%
- {\global\boolfalse{bbx:xrefnoidem}}%
- {\global\booltrue{bbx:xrefnoidem}%
- \global\booltrue{cbx:xrefnoidem}}}
+ {\booltrue{xrefidem}}%
+ {\boolfalse{xrefidem}}}
{\usebibmacro{authedxrefcheck}%
\ifbool{cbx:authedxref}
- {\global\boolfalse{bbx:xrefnoidem}}
- {\global\booltrue{bbx:xrefnoidem}%
- \global\booltrue{cbx:xrefnoidem}}}%
+ {\booltrue{xrefidem}}
+ {\boolfalse{xrefidem}}}%
\ifbool{bbx:xref}
{\iffieldundef{xref}%
{% Code, wenn kein xref vorhanden
@@ -976,7 +1020,9 @@
\ifbool{cbx:idemfull}
{}
{\usebibmacro{author/editor+others/translator+others}%
- \setunit{\labelnamepunct}\newblock}%
+ \ifnameundef{labelname}
+ {}
+ {\setunit{\labelnamepunct}\newblock}}%
\usebibmacro{title}%
\newunit
\printlist{language}%
@@ -1027,7 +1073,9 @@
\ifbool{cbx:idemfull}
{}
{\usebibmacro{author/editor+others/translator+others}%
- \setunit{\labelnamepunct}\newblock}%
+ \ifnameundef{labelname}
+ {}
+ {\setunit{\labelnamepunct}\newblock}}%
\usebibmacro{title}%
\newunit
\printlist{language}%
@@ -1063,7 +1111,9 @@
\ifbool{cbx:idemfull}
{}
{\usebibmacro{author/editor+others/translator+others}%
- \setunit{\labelnamepunct}\newblock}%
+ \ifnameundef{labelname}
+ {}
+ {\setunit{\labelnamepunct}\newblock}}%
\usebibmacro{title}%
\newunit
\printlist{language}%
@@ -1096,7 +1146,9 @@
\ifbool{cbx:idemfull}
{}
{\usebibmacro{author/translator+others}%
- \setunit{\labelnamepunct}\newblock}%
+ \ifnameundef{labelname}
+ {}
+ {\setunit{\labelnamepunct}\newblock}}%
\usebibmacro{title}%
\newunit
\printlist{language}%
@@ -1132,8 +1184,10 @@
\usebibmacro{begentry}%
\ifbool{cbx:idemfull}
{}
- {\usebibmacro{editor+others}%
- \setunit{\labelnamepunct}\newblock}%
+ {\usebibmacro{editor+others/translator+others}%
+ \ifnameundef{labelname}
+ {}
+ {\setunit{\labelnamepunct}\newblock}}%
\usebibmacro{title+issuetitle}%
\newunit
\printlist{language}%
@@ -1158,8 +1212,10 @@
\usebibmacro{begentry}%
\ifbool{cbx:idemfull}
{}
- {\usebibmacro{editor+others}%
- \setunit{\labelnamepunct}\newblock}%
+ {\usebibmacro{editor+others/translator+others}%
+ \ifnameundef{labelname}
+ {}
+ {\setunit{\labelnamepunct}\newblock}}%
\usebibmacro{maintitle+title}%
\newunit
\printlist{language}%
@@ -1207,7 +1263,9 @@
\ifbool{cbx:idemfull}
{}
{\usebibmacro{author/translator+others}%
- \setunit{\labelnamepunct}\newblock}%
+ \ifnameundef{labelname}
+ {}
+ {\setunit{\labelnamepunct}\newblock}}%
\usebibmacro{title}%
\newunit
\printlist{language}%
@@ -1247,7 +1305,9 @@
\ifbool{cbx:idemfull}
{}
{\usebibmacro{author/translator+others}%
- \setunit{\labelnamepunct}\newblock}%
+ \ifnameundef{labelname}
+ {}
+ {\setunit{\labelnamepunct}\newblock}}%
\usebibmacro{title}%
\newunit
\printlist{language}%
@@ -1279,7 +1339,9 @@
\ifbool{cbx:idemfull}
{}
{\usebibmacro{author/translator+others}%
- \setunit{\labelnamepunct}\newblock}%
+ \ifnameundef{labelname}
+ {}
+ {\setunit{\labelnamepunct}\newblock}}%
\usebibmacro{title}%
\newunit
\printlist{language}%
@@ -1310,7 +1372,8 @@
\DeclareBibliographyDriver{xrefbook}{%
\usebibmacro{bibindex}%
\usebibmacro{begentry}%
- \ifuseeditor
+ \ifboolexpr{
+ test \ifuseauthor or test \ifuseeditor or test \ifusetranslator}
{\usebibmacro{author/editor+others/translator+others}%
\setunit{\labelnamepunct}\newblock}
{}%
@@ -1320,10 +1383,8 @@
\newunit\newblock
\usebibmacro{byauthor}%
\newunit\newblock
- \ifuseeditor
- {}
- {\usebibmacro{byeditor+others}%
- \newunit\newblock}%
+ \usebibmacro{ifuse:byeditor+others}%
+ \newunit\newblock
\usebibmacro{edition}%
\usebibmacro{volumes+volume+part}%
\setunit{\addspace}%
@@ -1359,18 +1420,17 @@
\DeclareBibliographyDriver{xrefcollection}{%
\usebibmacro{bibindex}%
\usebibmacro{begentry}%
- \ifuseeditor
- {\usebibmacro{editor+others}%
+ \ifboolexpr{
+ test \ifuseeditor or test \ifusetranslator}
+ {\usebibmacro{editor+others/translator+others}%
\setunit{\labelnamepunct}\newblock}
{}%
\usebibmacro{maintitle+title}%
\newunit
\printlist{language}%
\newunit\newblock
- \ifuseeditor
- {}
- {\usebibmacro{byeditor+others}%
- \newunit\newblock}%
+ \usebibmacro{ifuse:byeditor+others}%
+ \newunit\newblock
\usebibmacro{edition}%
\usebibmacro{volumes+volume+part}%
\setunit{\addspace}%
@@ -1406,8 +1466,9 @@
\DeclareBibliographyDriver{xrefproceedings}{%
\usebibmacro{bibindex}%
\usebibmacro{begentry}%
- \ifuseeditor
- {\usebibmacro{editor+others}%
+ \ifboolexpr{
+ test \ifuseeditor or test \ifusetranslator}
+ {\usebibmacro{editor+others/translator+others}%
\setunit{\labelnamepunct}\newblock}
{}%
\usebibmacro{maintitle+title}%
@@ -1416,10 +1477,8 @@
\newunit\newblock
\usebibmacro{event+venue+date}%
\newunit\newblock
- \ifuseeditor
- {}
- {\usebibmacro{byeditor+others}%
- \newunit\newblock}%
+ \usebibmacro{ifuse:byeditor+others}%
+ \newunit\newblock
\usebibmacro{volumes+volume+part}%
\setunit{\addspace}%
\ifbool{bbx:seriesafteryear}
@@ -1472,7 +1531,7 @@
\newunit\newblock
\usebibmacro{byauthor}%
\newunit\newblock
- \usebibmacro{byeditor+others}%
+ \usebibmacro{ifuse:byeditor+others}%
\newunit\newblock
\usebibmacro{edition}%
\usebibmacro{volumes+volume+part}%
@@ -1509,17 +1568,12 @@
\DeclareBibliographyDriver{xrefidemcollection}{%
\usebibmacro{bibindex}%
\usebibmacro{begentry}%
- \ifuseeditor
- {\printtext{\bibstring[\mkidem]{idem\thefield{gender}}%
- \addspace}%
- \usebibmacro{editorstrg}%
- \setunit{\labelnamepunct}\newblock}
- {}%
+ \usebibmacro{ifuse:xrefidem}%
\usebibmacro{maintitle+title}%
\newunit
\printlist{language}%
\newunit\newblock
- \usebibmacro{byeditor+others}%
+ \usebibmacro{ifuse:byeditor+others}%
\newunit\newblock
\usebibmacro{edition}%
\usebibmacro{volumes+volume+part}%
@@ -1556,19 +1610,14 @@
\DeclareBibliographyDriver{xrefidemproceedings}{%
\usebibmacro{bibindex}%
\usebibmacro{begentry}%
- \ifuseeditor
- {\printtext{\bibstring[\mkidem]{idem\thefield{gender}}%
- \addspace}%
- \usebibmacro{editorstrg}%
- \setunit{\labelnamepunct}\newblock}
- {}%
+ \usebibmacro{ifuse:xrefidem}%
\usebibmacro{maintitle+title}%
\newunit
\printlist{language}%
\newunit\newblock
\usebibmacro{event+venue+date}%
\newunit\newblock
- \usebibmacro{byeditor+others}%
+ \usebibmacro{ifuse:byeditor+others}%
\newunit\newblock
\usebibmacro{volumes+volume+part}%
\setunit{\addspace}%
@@ -1603,9 +1652,15 @@
\usebibmacro{pageref}%
\usebibmacro{finentry}}
-%%%%% %%%%% %%%%% %%%%%
-%%%%% Warnungen %%%%%
-%%%%% %%%%% %%%%% %%%%%
+%%%%% %%%%% %%%%% %%%%% %%%%% %%%%% %%%%% %%%%%
+%%%%% Warnungen und Fehlermeldungen %%%%%
+%%%%% %%%%% %%%%% %%%%% %%%%% %%%%% %%%%% %%%%%
+\protected\def\blxdw@error#1{%
+ \begingroup
+ \blx@safe@actives
+ \PackageError{biblatex-dw}{#1}%
+ \endgroup}
+
\protected\def\blxdw@warning#1{%
\begingroup
\blx@safe@actives
@@ -1632,62 +1687,6 @@
{\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}