# Citing author's full name in biblatex

How can I cite an authors full name (= first name + last name) in biblatex?

@book{Gladwell2005,
publisher = {Back Bay Books},
title = {Blink: The Power of Thinking Without Thinking},
year = {2005},
}


I would then like to cite the book with Malcolm Gladwell's full name. So what I'm looking for is some sort of \citefullauthorname macro.

One may use \DeclarenameAlias{labelname}{<whatever>} inside new author-citation commands.

\documentclass{article}

\usepackage{biblatex}

\DeclareCiteCommand{\citeauthorfirstlast}
{\boolfalse{citetracker}%
\boolfalse{pagetracker}%
\DeclareNameAlias{labelname}{first-last}%
\usebibmacro{prenote}}
{\ifciteindex
{\indexnames{labelname}}
{}%
\printnames{labelname}}
{\multicitedelim}
{\usebibmacro{postnote}}

\DeclareCiteCommand{\citeauthorlastfirst}
{\boolfalse{citetracker}%
\boolfalse{pagetracker}%
\DeclareNameAlias{labelname}{last-first}%
\usebibmacro{prenote}}
{\ifciteindex
{\indexnames{labelname}}
{}%
\printnames{labelname}}
{\multicitedelim}
{\usebibmacro{postnote}}

\usepackage{filecontents}

\begin{filecontents}{\jobname.bib}
@book{Knu86,
author = {Knuth, Donald E.},
year = {1986},
title = {The \TeX book},
}
\end{filecontents}

\begin{document}

\citeauthorfirstlast{Knu86}

\citeauthorlastfirst{Knu86}

\citeauthor{Knu86}

\printbibliography

\end{document}


• Or just use: \newrobustcmd*{\citefirstlastauthor}{\AtNextCite{\DeclareNameAlias{labelname}{first-last}}\citeauthor}. – Audrey Sep 25 '12 at 15:51
• Could someone expand Audrey's suggestion into a full MWE here? I'm not quite sure what the suggestions entails. – Sverre Mar 6 '14 at 12:24
• I have tried and it does not work. – Guuk Oct 28 '17 at 18:26
• @Audrey’s suggestion works perfectly well, but for some reason copy&pasting the code results in zero-width spaces at random positions, which breaks the code. You have to remove the zero-width spaces or just retype the code. – Toni Dietze Nov 29 '17 at 14:38
• Name format 'first-last' deprecated. Use the following instead: \newrobustcmd*{\citefirstlastauthor}{\AtNextCite{\DeclareNameAlias{labelname}{given-family}}\citeauthor} – mrclrchtr Feb 26 '19 at 9:57

You can define your own cite commands, like this commands, which will print all names in full;

\DeclareCiteCommand*{\citeauthor}
{\defcounter{maxnames}{99}%
\defcounter{minnames}{99}%
\defcounter{uniquename}{2}%
\boolfalse{citetracker}%
\boolfalse{pagetracker}%
\usebibmacro{prenote}}
{\ifciteindex{\indexnames{labelname}}{}%
\printnames{labelname}}
{\multicitedelim}
{\usebibmacro{postnote}}


that you can use it like \citeauthor*{Gladwell2005} (be sure to use the starred version).

Source

• Isn't there any simpler way? A predefined command perhaps, which can achieve this? It should exist, because some bibliography styles can print the full author's name. – Peter Bašista Jun 5 '12 at 21:00
• I only get the last name, like Gladwell, when trying this one. With and without the starred version. – Magne Nov 21 '19 at 16:02

Here's how I did it:

\nocite{reid1806analysis} Thomas Reid (1806, p.~91) pointed out the same problem
and reprimanded Aristotle severely for this and other errors.


Yes, this introduces redundancy and a chance of error if I change the Reid citation. But it generates the correct output, it required no debugging of LaTeX/BibTeX arcana, and I have a Ph.D. to finish.

• "I have a Ph.D. to finish." - :D Hope, you finished it already! – xxx--- May 30 '17 at 8:56
• I, too, have a Ph.D. to finish. So why am I leaving this comment? Anyway, I'd think the following would be a little better: Thomas \citet[91]{reid1806analysis} pointed out... – DHW May 10 '18 at 0:10