summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/biblatex-realauthor/realauthor.bbx
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/latex/biblatex-realauthor/realauthor.bbx')
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-realauthor/realauthor.bbx59
1 files changed, 59 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/latex/biblatex-realauthor/realauthor.bbx b/Master/texmf-dist/tex/latex/biblatex-realauthor/realauthor.bbx
new file mode 100644
index 00000000000..9a10ff0cefd
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/biblatex-realauthor/realauthor.bbx
@@ -0,0 +1,59 @@
+%% Copyright 2014 Maïeul Rouquette
+%
+% This work may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.3
+% of this license or (at your option) any later version.
+% The latest version of this license is in
+% http://www.latex-project.org/lppl.txt
+% and version 1.3 or later is part of all distributions of LaTeX
+% version 2005/12/01 or later.
+%
+% This work has the LPPL maintenance status `maintained'.
+%
+% The Current Maintainer of this work is Maïeul Rouquette
+% This work consists of the files realauthor.dbx, realauthor.bbx
+\ProvidesFile{realauthor.bbx}
+[\abx@bbxid]
+
+\ifdef{\biblatexmultipledm@bibstyle}
+ {\RequireBibliographyStyle{\biblatexmultipledm@bibstyle}}
+ {\RequireBibliographyStyle{verbose}}
+
+\RequirePackage{xpatch}
+
+% Command for being redefined
+
+\newcommand{\mkbibrealauthor}[1]{%
+ \ifnameundef{author}%
+ {\mkrealauthor{#1}}%
+ {\mkrealauthor{\realauthorequalsign#1}}%
+}
+\newcommand{\mkrealauthor}[1]{\mkbibbrackets{#1}}
+\newcommand{\realauthorequalsign}{\addnbthinspace=\addnbthinspace}
+
+% A format which could be overrided
+
+\DeclareNameFormat{realauthor}{%
+ \mkbibrealauthor{%
+ \iffirstinits
+ {\usebibmacro{name:first-last}{#1}{#4}{#5}{#7}}
+ {\usebibmacro{name:first-last}{#1}{#3}{#5}{#7}}%
+ \usebibmacro{name:andothers}}}
+
+
+% Patching some standard bibmacros
+
+\xapptobibmacro{author}{%
+ \ifnameundef{author}{}{%
+ \ifnameundef{realauthor}{}{\addspace\nopunct}%
+ }%
+ \printnames{realauthor}%
+}{}{}
+
+\xpatchbibmacro{author/editor+others/translator+others}
+ {not test {\ifnameundef{author}}}
+ {not (test {\ifnameundef{author}} and test {\ifnameundef{realauthor}})}
+ {}
+ {}
+
+\endinput \ No newline at end of file