summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/biblatex-realauthor/realauthor.bbx
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2016-06-10 21:44:57 +0000
committerKarl Berry <karl@freefriends.org>2016-06-10 21:44:57 +0000
commita6cc994cac0b51b5b31a4d77813af2671085ceef (patch)
treecfa079de3ab82797fe84e571c40ac42cfa83ec93 /Master/texmf-dist/tex/latex/biblatex-realauthor/realauthor.bbx
parent3ff2c88a53d7c22678a85a322184b262b8456d66 (diff)
biblatex-realauthor (10jun16)
git-svn-id: svn://tug.org/texlive/trunk@41340 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/biblatex-realauthor/realauthor.bbx')
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-realauthor/realauthor.bbx58
1 files changed, 39 insertions, 19 deletions
diff --git a/Master/texmf-dist/tex/latex/biblatex-realauthor/realauthor.bbx b/Master/texmf-dist/tex/latex/biblatex-realauthor/realauthor.bbx
index 840a0fca242..9babae7a7a7 100644
--- a/Master/texmf-dist/tex/latex/biblatex-realauthor/realauthor.bbx
+++ b/Master/texmf-dist/tex/latex/biblatex-realauthor/realauthor.bbx
@@ -13,7 +13,7 @@
% The Current Maintainer of this work is Maïeul Rouquette
% This work consists of the files realauthor.dbx, realauthor.bbx
\ProvidesFile{realauthor.dbx}
-[2016/06/05 v2.4.0 biblatex bibliography style (MR)]
+[2016/06/09 v2.5.0 biblatex bibliography style (MR)]
\ifdef{\biblatexmultipledm@bibstyle}
{\RequireBibliographyStyle{\biblatexmultipledm@bibstyle}}
@@ -81,33 +81,36 @@
\usebibmacro{name:andothers}}}
% Patching some standard bibmacros
-%% For the drivers
+\newcommand{\realauthor@failpatch}[1]{\PackageError{realauthor}{Fail to patch `#1` bibmacro}{}}
+
\xapptobibmacro{author}{%
\ifnameundef{author}{}{%
\ifnameundef{realauthor}{}{\addspace\nopunct}%
}%
\printnames{realauthor}%
{}%
-}{}{}
+}
+ {}
+ {\realauthor@failpatch{author}}
\xpatchbibmacro{author/editor+others}
{not test {\ifnameundef{author}}}
{not (test {\ifnameundef{author}} and test {\ifnameundef{realauthor}})}
{}
- {}
+ {\realauthor@failpatch{author/editor+others}}
\xpatchbibmacro{author/translator+others}
{not test {\ifnameundef{author}}}
{not (test {\ifnameundef{author}} and test {\ifnameundef{realauthor}})}
{}
- {}
+ {\realauthor@failpatch{author/translator+others}}
\xpatchbibmacro{author/editor+others/translator+others}
{not test {\ifnameundef{author}}}
{not (test {\ifnameundef{author}} and test {\ifnameundef{realauthor}})}
{}
- {}
+ {\realauthor@failpatch{author/editor+others/translator+others}}
\xpatchbibmacro{author/editor+others/translator+others}
@@ -129,7 +132,8 @@
)%
}%
}
-{}{}
+ {}%
+ {\realauthor@failpatch{author/editor+others/translator+others}}
@@ -152,41 +156,49 @@
)%
}%
}
-{}{}
+ {}
+ {\realauthor@failpatch{bbx:editor}}
+
\xpatchbibmacro{bbx:editor}
{\clearname{editor}}
{\clearname{editor}
\clearname{realeditor}
}
-{}{}
+ {}
+ {\realauthor@failpatch{bbx:editor}}
\xpatchbibmacro{bbx:editor}
{\printnames{editor}}%
{\printnames{editor}%
\usebibmacro{printeditor}%
}%
-{}{}
+ {}
+ {\realauthor@failpatch{bbx:editor}}
\xpatchbibmacro{byeditor}
{\ifnameundef{editor}}%
{\ifboolexpr{test{\ifnameundef{editor}} and test{\ifnameundef{realeditor}}}}%
-{}{}
+ {}
+ {\realauthor@failpatch{byeditor}}
\xpatchbibmacro{byeditor}
{\printnames[byeditor]{editor}}%
{\usebibmacro{printbyeditor+realeditor}}
-{}{}
+ {}
+ {\realauthor@failpatch{byeditor}}
\xpatchbibmacro{byeditor+others}
{\ifnameundef{editor}}%
{\ifboolexpr{test{\ifnameundef{editor}} and test{\ifnameundef{realeditor}}}}%
-{}{}
+ {}
+ {\realauthor@failpatch{byeditor+others}}
\xpatchbibmacro{byeditor+others}
{\printnames[byeditor]{editor}}%
{\usebibmacro{printbyeditor+realeditor}}
-{}{}
+ {}
+ {\realauthor@failpatch{byeditor+others}}
\newbibmacro{printbyeditor+realeditor}{%
\printnames[byeditor]{editor}%
@@ -218,17 +230,25 @@
{%
\printnames{labelname}%
\ifnamesequal{labelname}{author}{%
- \ifnameundef{realauthor}{}{\addspace\nopunct}%
- \printnames{realauthor}%
+ \ifnameundef{realauthor}%
+ {}%
+ {\addspace\nopunct\printnames{realauthor}}%
}{}%
\ifnamesequal{labelname}{editor}{%
- \ifnameundef{realeditor}{}{\addspace\nopunct}%
- \printnames{realeditor}%
+ \ifnameundef{realeditor}%
+ {}%
+ {\addspace\nopunct\printnames{realeditor}}%
}{}%
}%
}
\AtBeginDocument{%
- \xpatchbibmacro{cite:name}{\printnames{labelname}}{\usebibmacro{realauthor:as:labelname}}{}{}
+ \ifcsvoid{abx@macro@cite:name}{}{%
+ \xpatchbibmacro{cite:name}%
+ {\printnames{labelname}}
+ {\usebibmacro{realauthor:as:labelname}}
+ {}
+ {\realauthor@failpatch{cite:name}}
+ }%
}
% Sorting