diff options
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.bbx | 125 |
1 files changed, 82 insertions, 43 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 462231a704f..36d8e3966b4 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,15 @@ -% standard-dw.bbx, Dominik Waßenhoven 2011 +% standard-dw.bbx, Dominik Waßenhoven 2012 -\ProvidesFile{standard-dw.bbx}[2011/11/20 v1.4 biblatex bibliography style] +\ProvidesFile{standard-dw.bbx}[2012/06/28 v1.5 biblatex bibliography style] + +\@ifpackagelater{biblatex}{2011/11/13} + {} + {\PackageError{biblatex-dw} + {Outdated 'biblatex' package\MessageBreak + Upgrade to biblatex v1.7 (2011/11/13) or later.\MessageBreak + I found: '\csuse{ver@biblatex.sty}'.\MessageBreak + This is a fatal error. I'm aborting now}% + \endinput} \RequireBibliographyStyle{standard} @@ -152,17 +161,51 @@ {\printnames{author}}% \setunit{\labelnamepunct}}% \iffieldundef{booktitle} - {\usebibmacro{maintitle+title}} - {\usebibmacro{title}% + {\usebibmacro{maintitle+title-terselos}} + {\printfield{title}% \newunit\newblock \usebibmacro{in:}% - \usebibmacro{maintitle+booktitle}}% + \usebibmacro{maintitle+booktitle-terselos}}% \finentry} {\usedriver {\DeclareNameAlias{sortname}{default}} {\thefield{entrytype}}% \finentry}} +\newbibmacro*{maintitle+title-terselos}{% + \iffieldsequal{maintitle}{title} + {\clearfield{maintitle}% + \clearfield{mainsubtitle}% + \clearfield{maintitleaddon}} + {\iffieldundef{maintitle} + {} + {\printfield{maintitle}% + \newunit\newblock + \iffieldundef{volume} + {} + {\iffieldundef{volumes} + {} + {\printfield{volumes}% + \setunit{\addcomma\space}}% + \printfield{volume}% + \printfield{part}% + \setunit{\addcolon\space}}}}% + \printfield{title}% + \newunit} + +\newbibmacro*{maintitle+booktitle-terselos}{% + \iffieldundef{maintitle} + {} + {\printfield{maintitle}% + \newunit\newblock + \iffieldundef{volume} + {} + {\printfield{volume}% + \printfield{part}% + \setunit{\addcolon\space}}}% + \printfield{booktitle}% + \newunit} + \DeclareBibliographyDriver{shorthands}{% \toggletrue{listofshorthands}% \usebibmacro{terselos}} @@ -208,17 +251,17 @@ \newcommand*{\shorthandinbibpunct}{\addspace} \renewbibmacro*{begentry}{% \ifboolexpr{ - test {\ifcitation} - or - togl {listofshorthands} + bool {bbx:shorthandinbib} + and not + ( test {\ifcitation} + or + togl {listofshorthands} ) } - {}% im Zitat und der langen List of Shorthands sollen shorthands nicht ausgegeben werden - {\ifbool{bbx:shorthandinbib} - {\iffieldundef{shorthand} - {} - {\printfield[shorthandinbib]{shorthand}% - \shorthandinbibpunct}}% ohne \setunit, damit das auf jeden Fall ausgegeben wird - {}}} + {\iffieldundef{shorthand} + {} + {\printfield[shorthandinbib]{shorthand}% + \nopunct\shorthandinbibpunct}} + {}} %% bei useeditor=true oder usetranslator=true \newbibmacro*{useeditor+others}{% @@ -252,7 +295,7 @@ \setunit{\labelnamepunct}\newblock} \newbibmacro*{usetranslator}{% - {\ifnamesequal{author}{translator} + \ifnamesequal{author}{translator} {\ifbool{bbx:edbyidem} {\midsentence*\bibstring[\mkidem]{idem\thefield{gender}}% \addspace}% @@ -265,7 +308,6 @@ \usebibmacro{translatorstrg}% \clearname{translator}% \setunit{\labelnamepunct}\newblock} - {}} %% Wenn 'volumes' und 'volume' angegeben sind, %% 'volumes' immer vor 'volume' ausgeben @@ -363,13 +405,15 @@ \xifinlistcs{\strfield{xref}}{novolume@xrefparent} {\iffieldundef{volume} {} - {\xifinlistcs{\strfield{xref}}{citedas@xrefparent} - {\ifbool{cbx:xrefparent:firstcite} + {\ifbibliography + {\setunit{\addspace}} + {\xifinlistcs{\strfield{xref}}{citedas@xrefparent} + {\ifbool{cbx:xrefparent:firstcite} + {\newunit + \printtext{\bibstring{volume}\addspace}} + {\setunit{\addspace}}} {\newunit - \printtext{\bibstring{volume}\addspace}} - {\setunit{\addspace}}} - {\newunit - \printtext{\bibstring{volume}\addspace}}% + \printtext{\bibstring{volume}\addspace}}}% \printfield{volume}% \iffieldxref{year}% wenn 'year' bei child und parent gleich {} @@ -862,9 +906,7 @@ \ifbool{cbx:idemfull} {} {\usebibmacro{editor+others/translator+others}% - \ifnameundef{labelname} - {} - {\setunit{\labelnamepunct}}}% + \setunit*{\labelnamepunct}}% \usebibmacro{maintitle+title}% \newunit \printlist{language}% @@ -903,7 +945,9 @@ \usebibmacro{pageref}% \usebibmacro{finentry}} +\newbool{xref:inbook}% \DeclareBibliographyDriver{inbook}{% + \booltrue{xref:inbook}% the child is an inbook \usebibmacro{bibindex}% \usebibmacro{begentry}% \ifbool{cbx:idemfull} @@ -919,20 +963,11 @@ \usebibmacro{byauthor}% \newunit\newblock \usebibmacro{in:}% - \ifboolexpr{ - test \ifuseeditor - or - test \ifusetranslator - } - {\ifnamexref{labelname}% - {\booltrue{xrefidem}}% - {\boolfalse{xrefidem}}} - {\usebibmacro{authedxrefcheck}% - \usebibmacro{authauthxrefcheck}% - \ifbool{cbx:authedxref} - {\booltrue{xrefidem}} - {\boolfalse{xrefidem}}}% - \ifbool{bbx:xref} + \usebibmacro{authauthxrefcheck}% + \ifbool{cbx:authauthxref} + {\booltrue{xrefidem}} + {\boolfalse{xrefidem}}% + \ifbool{bbx:xref} {\iffieldundef{xref}% {% Code, wenn kein xref vorhanden \usebibmacro{noxref:inbook}}% @@ -962,7 +997,7 @@ \ifbool{cbx:authedxref} {\booltrue{xrefidem}} {\boolfalse{xrefidem}}% - \ifbool{bbx:xref} + \ifbool{bbx:xref} {\iffieldundef{xref} {% Code, wenn kein xref vorhanden \usebibmacro{noxref:incollection}} @@ -1462,7 +1497,9 @@ \newunit\newblock \usebibmacro{byauthor}% \newunit\newblock - \usebibmacro{ifuse:byeditor+others}% + \ifbool{xref:inbook}% child is an @inbook entry + {\usebibmacro{byeditor+others}} + {\usebibmacro{ifuse:byeditor+others}}% \newunit\newblock \usebibmacro{edition}% \usebibmacro{volumes+volume+part}% @@ -1610,7 +1647,9 @@ \newunit\newblock \usebibmacro{byauthor}% \newunit\newblock - \usebibmacro{ifuse:byeditor+others}% + \ifbool{xref:inbook}% child is an @inbook entry + {\usebibmacro{byeditor+others}} + {\usebibmacro{ifuse:byeditor+others}}% \newunit\newblock \usebibmacro{edition}% \usebibmacro{volumes+volume+part}% |