diff options
author | Karl Berry <karl@freefriends.org> | 2010-09-06 22:29:57 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2010-09-06 22:29:57 +0000 |
commit | 240dbb5ee820f2e77e4106bf872f363540c413e2 (patch) | |
tree | 3921b3f18013915f30f418d31199a3770604a0db /Master/texmf-dist/tex/latex/biblatex/biblatex.def | |
parent | 6892558c73756d9f24023e6269e025fa6f3cf15d (diff) |
biblatex 0.9d (4sep10)
git-svn-id: svn://tug.org/texlive/trunk@19592 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/biblatex/biblatex.def')
-rw-r--r-- | Master/texmf-dist/tex/latex/biblatex/biblatex.def | 318 |
1 files changed, 232 insertions, 86 deletions
diff --git a/Master/texmf-dist/tex/latex/biblatex/biblatex.def b/Master/texmf-dist/tex/latex/biblatex/biblatex.def index d93c45ac12e..3a8b62b2065 100644 --- a/Master/texmf-dist/tex/latex/biblatex/biblatex.def +++ b/Master/texmf-dist/tex/latex/biblatex/biblatex.def @@ -1,7 +1,7 @@ -% $Id: biblatex.def,v 0.9a 2010/03/19 19:52:15 lehman beta $ +% $Id: biblatex.def,v 0.9d 2010/09/03 20:11:58 lehman beta $ \ProvidesFile{biblatex.def} -[\abx@rcsid $Id: biblatex.def,v 0.9a 2010/03/19 19:52:15 lehman beta $ +[\abx@rcsid $Id: biblatex.def,v 0.9d 2010/09/03 20:11:58 lehman beta $ biblatex generic definitions] % ------------------------------------------------------------------ @@ -41,6 +41,7 @@ \newcommand*{\supercitedelim}{\addcomma} \newcommand*{\prenotedelim}{\addspace} \newcommand*{\postnotedelim}{\addcomma\space} +\newcommand*{\nametitledelim}{\addcomma\space} \newcommand*{\nameyeardelim}{\addspace} % Used in the bibliography and the list of shorthands @@ -164,7 +165,7 @@ % dislike such linebreaks, use a higher value. If you do not mind % them at all, set this counter to zero. If you want to suppress them % unconditionally, set it to 10000. -\setcounter{abbrvpenalty}{\hyphenpenalty} +\defcounter{abbrvpenalty}{\hyphenpenalty} % The counter 'highnamepenalty' also holds a penalty affecting the % line-breaking of names. This penalty is inserted between smaller @@ -173,7 +174,7 @@ % linebreaks, use a higher value. If you do not mind them at all, % set this counter to zero. If you prefer the traditional BibTeX % behavior, set it to 10000. -\setcounter{highnamepenalty}{\hyphenpenalty} +\defcounter{highnamepenalty}{\hyphenpenalty} % The counter 'lownamepenalty' holds a penalty which affects the % line-breaking of names. This penalty is inserted between larger @@ -181,7 +182,7 @@ % first names and the last name. The default value is half the % \hyphenpenalty. If you dislike such linebreaks, use a higher % value. If you do not mind them at all, set this counter to zero. -\setcounter{lownamepenalty}{\numexpr\hyphenpenalty/2\relax} +\defcounter{lownamepenalty}{\hyphenpenalty/2} % Note that default values assigned to the above counters are % deliberately very low to prevent overfull boxes. This implies that @@ -301,27 +302,47 @@ \addcolon\space \ifhyperref {\url{#1}} + {\nolinkurl{#1}}% + \iffieldundef{eprintclass} + {} + {\addspace\mkbibparens{\thefield{eprintclass}}}} +\DeclareFieldFormat{eprint:hdl}{% + HDL\addcolon\space + \ifhyperref + {\href{http://hdl.handle.net/#1}{\nolinkurl{#1}}} {\nolinkurl{#1}}} +\DeclareFieldAlias{eprint:HDL}{eprint:hdl} \DeclareFieldFormat{eprint:arxiv}{% - arXiv\addcolon\space + arXiv\addcolon \ifhyperref - {\href{http://arxiv.org/\abx@arxivpath/#1}{\nolinkurl{#1}}} - {\nolinkurl{#1}}} + {\href{http://arxiv.org/\abx@arxivpath/#1}{% + \nolinkurl{#1}% + \iffieldundef{eprintclass} + {} + {\addspace\texttt{\mkbibbrackets{\thefield{eprintclass}}}}}} + {\nolinkurl{#1} + \iffieldundef{eprintclass} + {} + {\addspace\texttt{\mkbibbrackets{\thefield{eprintclass}}}}}} +\DeclareFieldAlias{eprint:arXiv}{eprint:arxiv} \DeclareFieldFormat{eprint:jstor}{% JSTOR\addcolon\space \ifhyperref {\href{http://www.jstor.org/stable/#1}{\nolinkurl{#1}}} {\nolinkurl{#1}}} +\DeclareFieldAlias{eprint:JSTOR}{eprint:jstor} \DeclareFieldFormat{eprint:pubmed}{% PMID\addcolon\space \ifhyperref {\href{http://www.ncbi.nlm.nih.gov/pubmed/#1}{\nolinkurl{#1}}} {\nolinkurl{#1}}} +\DeclareFieldAlias{eprint:PubMed}{eprint:pubmed} \DeclareFieldFormat{eprint:googlebooks}{% Google Books\addcolon\space \ifhyperref {\href{http://books.google.com/books?id=#1}{\nolinkurl{#1}}} {\nolinkurl{#1}}} +\DeclareFieldAlias{eprint:Google Books}{eprint:googlebooks} \DeclareFieldFormat{file}{\url{#1}} \DeclareFieldFormat{isbn}{\mkbibacro{ISBN}\addcolon\space #1} \DeclareFieldFormat{isrn}{\mkbibacro{ISRN}\addcolon\space #1} @@ -365,7 +386,7 @@ \DeclareFieldAlias[periodical]{series}[article]{series} \DeclareFieldAlias[periodical]{volume}[article]{volume} -% Generic formats for \printtext +% Generic formats for \printtext and \printfield \DeclareFieldFormat{emph}{\mkbibemph{#1}} \DeclareFieldFormat{bold}{\textbf{#1}} @@ -429,7 +450,10 @@ \DeclareListFormat{pageref}{% \ifnumless{\abx@pagerefstyle}{0} - {\usebibmacro{list:plain}#1} + {\usebibmacro{list:plain}% + \ifhyperref + {\hyperlink{page.#1}{#1}} + {#1}} {\ifnumequal{\value{listcount}}{1} {\usebibmacro{pageref:init}} {}% @@ -447,22 +471,30 @@ % ------------------------------------------------------------------ \newbibmacro*{list:delim}[1]{% - \ifthenelse{\value{listcount}>\value{liststart}} - {\ifthenelse{\value{listcount}<\value{liststop}\OR - \ifmoreitems} + \ifnumgreater{\value{listcount}}{\value{liststart}} + {\ifboolexpr{ + test {\ifnumless{\value{listcount}}{\value{liststop}}} + or + test \ifmoreitems + } {\multilistdelim} {\lbx@finallistdelim{#1}}} {}} \newbibmacro*{list:plain}{% - \ifthenelse{\value{listcount}>\value{liststart}} + \ifnumgreater{\value{listcount}}{\value{liststart}} {\multilistdelim} {}} \newbibmacro*{list:andothers}{% - \ifthenelse{\value{listcount}=\value{liststop}\AND - \ifmoreitems} - {\ifnumgreater{\value{liststop}}{1}{\finalandcomma}{}% + \ifboolexpr{ + test {\ifnumequal{\value{listcount}}{\value{liststop}}} + and + test \ifmoreitems + } + {\ifnumgreater{\value{liststop}}{1} + {\finalandcomma} + {}% \andmoredelim\bibstring{andmore}} {}} @@ -705,23 +737,38 @@ {}} \newbibmacro*{name:delim}[1]{% - \ifthenelse{\value{listcount}>\value{liststart}} - {\ifthenelse{\value{listcount}<\value{liststop}\OR - \ifmorenames} + \ifnumgreater{\value{listcount}}{\value{liststart}} + {\ifboolexpr{ + test {\ifnumless{\value{listcount}}{\value{liststop}}} + or + test \ifmorenames + } {\multinamedelim} {\lbx@finalnamedelim{#1}}} {}} \newbibmacro*{name:revsdelim}{% - \ifthenelse{\(\value{liststop}=1\AND\ifmorenames\)\OR - \value{liststop}=2} + \ifboolexpr{ + ( + test {\ifnumequal{\value{liststop}}{1}} + and + test \ifmorenames + ) + or + test {\ifnumequal{\value{liststop}}{2}} + } {\revsdnamedelim} {}} \newbibmacro*{name:andothers}{% - \ifthenelse{\value{listcount}=\value{liststop}\AND - \ifmorenames} - {\ifnumgreater{\value{liststop}}{1}{\finalandcomma}{}% + \ifboolexpr{ + test {\ifnumequal{\value{listcount}}{\value{liststop}}} + and + test \ifmorenames + } + {\ifnumgreater{\value{liststop}}{1} + {\finalandcomma} + {}% \andothersdelim\bibstring{andothers}} {}} @@ -853,10 +900,15 @@ \newcommand*{\lbx@finalnamedelim}[1]{\finalnamedelim} \newcommand*{\lbx@finallistdelim}[1]{\finallistdelim} -\newcommand*{\lbx@fromlang}{% +\newcommand*{\lbx@lfromlang}{% + \iffieldundef{origlanguage} + {\unspace} + {\biblstring{from\thefield{origlanguage}}}} + +\newcommand*{\lbx@sfromlang}{% \iffieldundef{origlanguage} {\unspace} - {\bibstring{from\thefield{origlanguage}}}} + {\bibsstring{from\thefield{origlanguage}}}} % ------------------------------------------------------------------ % MISCELLANEOUS @@ -898,7 +950,7 @@ % spanish \newcounter{smartand} -\setcounter{smartand}{1} +\defcounter{smartand}{1} \newrobustcmd*{\forceY}[1]{#1} \newrobustcmd*{\forceE}[1]{#1} @@ -920,11 +972,9 @@ {\@ifclassloaded{scrreprt} {\def\abx@classtype{3}} {\@ifclassloaded{memoir} - {\ifartopt - \def\abx@classtype{4}% - \else - \def\abx@classtype{5}% - \fi} + {\ifbool{artopt} + {\def\abx@classtype{4}} + {\def\abx@classtype{5}}} {\ifundef\chapter {} {\def\abx@classtype{1}}}}}}}}} @@ -932,18 +982,18 @@ \ifcase\abx@classtype\relax % article \defbibheading{bibliography}[\refname]{% \section*{#1}% - \markboth{\MakeUppercase{#1}}{\MakeUppercase{#1}}} + \@mkboth{\MakeUppercase{#1}}{\MakeUppercase{#1}}} \defbibheading{shorthands}[\losname]{% \section*{#1}% - \markboth{\MakeUppercase{#1}}{\MakeUppercase{#1}}} + \@mkboth{\MakeUppercase{#1}}{\MakeUppercase{#1}}} \defbibheading{bibintoc}[\refname]{% \section*{#1}% \addcontentsline{toc}{section}{#1}% - \markboth{\MakeUppercase{#1}}{\MakeUppercase{#1}}} + \@mkboth{\MakeUppercase{#1}}{\MakeUppercase{#1}}} \defbibheading{losintoc}[\losname]{% \section*{#1}% \addcontentsline{toc}{section}{#1}% - \markboth{\MakeUppercase{#1}}{\MakeUppercase{#1}}} + \@mkboth{\MakeUppercase{#1}}{\MakeUppercase{#1}}} \defbibheading{bibnumbered}[\refname]{% \section{#1}% \if@twoside\markright{\MakeUppercase{#1}}\fi} @@ -961,18 +1011,18 @@ \or % book/report \defbibheading{bibliography}[\bibname]{% \chapter*{#1}% - \markboth{\MakeUppercase{#1}}{\MakeUppercase{#1}}} + \@mkboth{\MakeUppercase{#1}}{\MakeUppercase{#1}}} \defbibheading{shorthands}[\losname]{% \chapter*{#1}% - \markboth{\MakeUppercase{#1}}{\MakeUppercase{#1}}} + \@mkboth{\MakeUppercase{#1}}{\MakeUppercase{#1}}} \defbibheading{bibintoc}[\bibname]{% \chapter*{#1}% \addcontentsline{toc}{chapter}{#1}% - \markboth{\MakeUppercase{#1}}{\MakeUppercase{#1}}} + \@mkboth{\MakeUppercase{#1}}{\MakeUppercase{#1}}} \defbibheading{losintoc}[\losname]{% \chapter*{#1}% \addcontentsline{toc}{chapter}{#1}% - \markboth{\MakeUppercase{#1}}{\MakeUppercase{#1}}} + \@mkboth{\MakeUppercase{#1}}{\MakeUppercase{#1}}} \defbibheading{bibnumbered}[\bibname]{% \chapter{#1}% \if@twoside\markright{\MakeUppercase{#1}}\fi} @@ -996,26 +1046,26 @@ {\ifkomabibtotoc {\addsec{#1}} {\section*{#1}}% - \markboth{#1}{#1}}} + \@mkboth{#1}{#1}}} \defbibheading{shorthands}[\losname]{% \ifkomabibtotocnumbered {\section{#1}} {\ifkomabibtotoc {\addsec{#1}} {\section*{#1}}% - \markboth{#1}{#1}}} + \@mkboth{#1}{#1}}} \defbibheading{bibintoc}[\refname]{% \addsec{#1}% - \markboth{#1}{#1}} + \@mkboth{#1}{#1}} \defbibheading{losintoc}[\losname]{% \addsec{#1}% - \markboth{#1}{#1}} + \@mkboth{#1}{#1}} \defbibheading{bibnumbered}[\refname]{% \section{#1}% - \markboth{\sectionmarkformat#1}{\sectionmarkformat#1}} + \@mkboth{\sectionmarkformat#1}{\sectionmarkformat#1}} \defbibheading{losnumbered}[\losname]{% \section{#1}% - \markboth{\sectionmarkformat#1}{\sectionmarkformat#1}} + \@mkboth{\sectionmarkformat#1}{\sectionmarkformat#1}} \defbibheading{subbibliography}[\refname]{% \subsection*{#1}} \defbibheading{subbibintoc}[\refname]{% @@ -1031,32 +1081,32 @@ {\ifkomabibtotoc {\addchap{#1}} {\chapter*{#1}}% - \markboth{#1}{#1}}} + \@mkboth{#1}{#1}}} \defbibheading{shorthands}[\losname]{% \ifkomabibtotocnumbered {\chapter{#1}} {\ifkomabibtotoc {\addchap{#1}} {\chapter*{#1}}% - \markboth{#1}{#1}}} + \@mkboth{#1}{#1}}} \defbibheading{bibintoc}[\bibname]{% \addchap{#1}% - \markboth{#1}{#1}} + \@mkboth{#1}{#1}} \defbibheading{losintoc}[\losname]{% \addchap{#1}% - \markboth{#1}{#1}} + \@mkboth{#1}{#1}} \defbibheading{bibnumbered}[\bibname]{% \chapter{#1}% - \markboth{\chaptermarkformat#1}{\chaptermarkformat#1}} + \@mkboth{\chaptermarkformat#1}{\chaptermarkformat#1}} \defbibheading{losnumbered}[\losname]{% \chapter{#1}% - \markboth{\chaptermarkformat#1}{\chaptermarkformat#1}} + \@mkboth{\chaptermarkformat#1}{\chaptermarkformat#1}} \defbibheading{subbibliography}[\refname]{% \section*{#1}% \if@twoside\markright{\sectionmarkformat#1}\fi} \defbibheading{subbibintoc}[\refname]{% \addsec{#1}% - \markboth{#1}{#1}} + \@mkboth{#1}{#1}} \defbibheading{subbibnumbered}[\refname]{% \section{#1}} @@ -1067,24 +1117,24 @@ {\phantomsection \addcontentsline{toc}{section}{#1}} {}% - \markboth{\MakeUppercase{#1}}{\MakeUppercase{#1}}} + \@mkboth{\MakeUppercase{#1}}{\MakeUppercase{#1}}} \defbibheading{shorthands}[\losname]{% \section*{#1}% \ifmemoirbibintoc {\phantomsection \addcontentsline{toc}{section}{#1}} {}% - \markboth{\MakeUppercase{#1}}{\MakeUppercase{#1}}} + \@mkboth{\MakeUppercase{#1}}{\MakeUppercase{#1}}} \defbibheading{bibintoc}[\refname]{% \section*{#1}% \phantomsection \addcontentsline{toc}{section}{#1}% - \markboth{\MakeUppercase{#1}}{\MakeUppercase{#1}}} + \@mkboth{\MakeUppercase{#1}}{\MakeUppercase{#1}}} \defbibheading{losintoc}[\losname]{% \section*{#1}% \phantomsection \addcontentsline{toc}{section}{#1}% - \markboth{\MakeUppercase{#1}}{\MakeUppercase{#1}}} + \@mkboth{\MakeUppercase{#1}}{\MakeUppercase{#1}}} \defbibheading{bibnumbered}[\refname]{% \section{#1}} \defbibheading{losnumbered}[\losname]{% @@ -1111,24 +1161,24 @@ {\phantomsection \addcontentsline{toc}{chapter}{#1}} {}% - \markboth{\MakeUppercase{#1}}{\MakeUppercase{#1}}} + \@mkboth{\MakeUppercase{#1}}{\MakeUppercase{#1}}} \defbibheading{shorthands}[\losname]{% \chapter*{#1}% \ifmemoirbibintoc {\phantomsection \addcontentsline{toc}{chapter}{#1}} {}% - \markboth{\MakeUppercase{#1}}{\MakeUppercase{#1}}} + \@mkboth{\MakeUppercase{#1}}{\MakeUppercase{#1}}} \defbibheading{bibintoc}[\bibname]{% \chapter*{#1}% \phantomsection \addcontentsline{toc}{chapter}{#1}% - \markboth{\MakeUppercase{#1}}{\MakeUppercase{#1}}} + \@mkboth{\MakeUppercase{#1}}{\MakeUppercase{#1}}} \defbibheading{losintoc}[\losname]{% \chapter*{#1}% \phantomsection \addcontentsline{toc}{chapter}{#1}% - \markboth{\MakeUppercase{#1}}{\MakeUppercase{#1}}} + \@mkboth{\MakeUppercase{#1}}{\MakeUppercase{#1}}} \defbibheading{bibnumbered}[\bibname]{% \chapter{#1}% \if@twoside\markright{\MakeUppercase{#1}}\fi} @@ -1349,41 +1399,77 @@ {}} \newbibmacro*{author/editor}{% - \ifthenelse{\ifuseauthor\AND\NOT\ifnameundef{author}} + \ifboolexpr{ + test \ifuseauthor + and + not test {\ifnameundef{author}} + } {\usebibmacro{author}} {\usebibmacro{editor}}} \newbibmacro*{author/editor+others}{% - \ifthenelse{\ifuseauthor\AND\NOT\ifnameundef{author}} + \ifboolexpr{ + test \ifuseauthor + and + not test {\ifnameundef{author}} + } {\usebibmacro{author}} {\usebibmacro{editor+others}}} \newbibmacro*{author/translator}{% - \ifthenelse{\ifuseauthor\AND\NOT\ifnameundef{author}} + \ifboolexpr{ + test \ifuseauthor + and + not test {\ifnameundef{author}} + } {\usebibmacro{author}} {\usebibmacro{translator}}} \newbibmacro*{author/translator+others}{% - \ifthenelse{\ifuseauthor\AND\NOT\ifnameundef{author}} + \ifboolexpr{ + test \ifuseauthor + and + not test {\ifnameundef{author}} + } {\usebibmacro{author}} {\usebibmacro{translator+others}}} \newbibmacro*{author/editor/translator}{% - \ifthenelse{\ifuseauthor\AND\NOT\ifnameundef{author}} + \ifboolexpr{ + test \ifuseauthor + and + not test {\ifnameundef{author}} + } {\usebibmacro{author}} - {\ifthenelse{\ifuseeditor\AND\NOT\ifnameundef{editor}} + {\ifboolexpr{ + test \ifuseeditor + and + not test {\ifnameundef{editor}} + } {\usebibmacro{editor}} {\usebibmacro{translator}}}} \newbibmacro*{author/editor+others/translator+others}{% - \ifthenelse{\ifuseauthor\AND\NOT\ifnameundef{author}} + \ifboolexpr{ + test \ifuseauthor + and + not test {\ifnameundef{author}} + } {\usebibmacro{author}} - {\ifthenelse{\ifuseeditor\AND\NOT\ifnameundef{editor}} + {\ifboolexpr{ + test \ifuseeditor + and + not test {\ifnameundef{editor}} + } {\usebibmacro{editor+others}} {\usebibmacro{translator+others}}}} \newbibmacro*{author}{% - \ifthenelse{\ifuseauthor\AND\NOT\ifnameundef{author}} + \ifboolexpr{ + test \ifuseauthor + and + not test {\ifnameundef{author}} + } {\printnames{author}% \iffieldundef{authortype} {} @@ -1392,7 +1478,11 @@ {}} \newbibmacro*{editor}{% - \ifthenelse{\ifuseeditor\AND\NOT\ifnameundef{editor}} + \ifboolexpr{ + test \ifuseeditor + and + not test {\ifnameundef{editor}} + } {\printnames{editor}% \setunit{\addcomma\space}% \usebibmacro{editorstrg}% @@ -1400,7 +1490,11 @@ {}} \newbibmacro*{editor+others}{% - \ifthenelse{\ifuseeditor\AND\NOT\ifnameundef{editor}} + \ifboolexpr{ + test \ifuseeditor + and + not test {\ifnameundef{editor}} + } {\printnames{editor}% \setunit{\addcomma\space}% \usebibmacro{editor+othersstrg}% @@ -1408,7 +1502,11 @@ {}} \newbibmacro*{translator}{% - \ifthenelse{\ifusetranslator\AND\NOT\ifnameundef{translator}} + \ifboolexpr{ + test \ifusetranslator + and + not test {\ifnameundef{translator}} + } {\printnames{translator}% \setunit{\addcomma\space}% \usebibmacro{translatorstrg}% @@ -1416,7 +1514,11 @@ {}} \newbibmacro*{translator+others}{% - \ifthenelse{\ifusetranslator\AND\NOT\ifnameundef{translator}} + \ifboolexpr{ + test \ifusetranslator + and + not test {\ifnameundef{translator}} + } {\printnames{translator}% \setunit{\addcomma\space}% \usebibmacro{translator+othersstrg}% @@ -1426,25 +1528,45 @@ \newbibmacro*{authorstrg}{% \iffieldundef{authortype} {} - {\ifthenelse{\value{author}>1\OR\ifandothers{author}} + {\ifboolexpr{ + test {\ifnumgreater{\value{author}}{1}} + or + test {\ifandothers{author}} + } {\bibstring{\thefield{authortype}s}} {\bibstring{\thefield{authortype}}}}} \newbibmacro*{editorstrg}{% \iffieldundef{editortype} - {\ifthenelse{\value{editor}>1\OR\ifandothers{editor}} + {\ifboolexpr{ + test {\ifnumgreater{\value{editor}}{1}} + or + test {\ifandothers{editor}} + } {\bibstring{editors}} {\bibstring{editor}}} - {\ifthenelse{\value{editor}>1\OR\ifandothers{editor}} + {\ifboolexpr{ + test {\ifnumgreater{\value{editor}}{1}} + or + test {\ifandothers{editor}} + } {\bibstring{\thefield{editortype}s}} {\bibstring{\thefield{editortype}}}}} \newbibmacro*{editor+othersstrg}{% \iffieldundef{editortype} - {\ifthenelse{\value{editor}>1\OR\ifandothers{editor}} + {\ifboolexpr{ + test {\ifnumgreater{\value{editor}}{1}} + or + test {\ifandothers{editor}} + } {\def\abx@tempa{editors}} {\def\abx@tempa{editor}}} - {\ifthenelse{\value{editor}>1\OR\ifandothers{editor}} + {\ifboolexpr{ + test {\ifnumgreater{\value{editor}}{1}} + or + test {\ifandothers{editor}} + } {\edef\abx@tempa{\thefield{editortype}s}} {\edef\abx@tempa{\thefield{editortype}}}}% \let\abx@tempb=\empty @@ -1475,12 +1597,20 @@ {\usebibmacro{editorstrg}}} \newbibmacro*{translatorstrg}{% - \ifthenelse{\value{translator}>1\OR\ifandothers{translator}} + \ifboolexpr{ + test {\ifnumgreater{\value{translator}}{1}} + or + test {\ifandothers{translator}} + } {\bibstring{translators}} {\bibstring{translator}}} \newbibmacro*{translator+othersstrg}{% - \ifthenelse{\value{translator}>1\OR\ifandothers{translator}} + \ifboolexpr{ + test {\ifnumgreater{\value{translator}}{1}} + or + test {\ifandothers{translator}} + } {\def\abx@tempa{translators}} {\def\abx@tempa{translator}}% \ifnamesequal{translator}{commentator} @@ -1503,7 +1633,11 @@ \bibstring{\abx@tempa}} \newbibmacro*{byauthor}{% - \ifthenelse{\ifuseauthor\OR\ifnameundef{author}} + \ifboolexpr{ + test \ifuseauthor + or + test {\ifnameundef{author}} + } {} {\usebibmacro{bytypestrg}{author}{author}% \setunit{\addspace}% @@ -1683,7 +1817,11 @@ \clearname{afterword}} \newbibmacro*{title}{% - \ifthenelse{\iffieldundef{title}\AND\iffieldundef{subtitle}} + \ifboolexpr{ + test {\iffieldundef{title}} + and + test {\iffieldundef{subtitle}} + } {} {\printtext[title]{% \printfield[titlecase]{title}% @@ -1693,7 +1831,11 @@ \printfield{titleaddon}} \newbibmacro*{booktitle}{% - \ifthenelse{\iffieldundef{booktitle}\AND\iffieldundef{booksubtitle}} + \ifboolexpr{ + test {\iffieldundef{booktitle}} + and + test {\iffieldundef{booksubtitle}} + } {} {\printtext[booktitle]{% \printfield[titlecase]{booktitle}% @@ -1703,7 +1845,11 @@ \printfield{booktitleaddon}} \newbibmacro*{maintitle}{% - \ifthenelse{\iffieldundef{maintitle}\AND\iffieldundef{mainsubtitle}} + \ifboolexpr{ + test {\iffieldundef{maintitle}} + and + test {\iffieldundef{mainsubtitle}} + } {} {\printtext[maintitle]{% \printfield[titlecase]{maintitle}% |