summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/biblatex-dw/bbx/standard-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/standard-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/standard-dw.bbx')
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-dw/bbx/standard-dw.bbx459
1 files changed, 229 insertions, 230 deletions
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}