I'm trying to create versions of biblatex commands that cite the author's name in full. The following code seems to get me half way there, though it only uses the initials of the given names rather than the full given names (or even better, full first name with middle name initials), which I would prefer.
If there are any other ways in which the following macro definitions can be improved, I would be glad to know that too.
\newrobustcmd*{\nextcitefullname}{%
\AtNextCite{\DeclareNameAlias{labelname}{given-family}}% from https://tex.stackexchange.com/a/537722/303
}
% Not sure if I should be using \DeclareCiteCommand here instead.
\NewDocumentCommand \citeauthorfullname { s } {
\nextcitefullname
\IfBooleanTF #1 { \citeauthor* } { \citeauthor }
}
\NewDocumentCommand \Citeauthorfullname { s } {
\nextcitefullname
\IfBooleanTF #1 { \Citeauthor* } { \Citeauthor }
}
\NewDocumentCommand \textcitefullname { } {
\nextcitefullname
\textcite
}
\NewDocumentCommand \Textcitefullname { } {
\nextcitefullname
\textcite
}
With the above I will get, e.g., "D. Hume" in my document, rather than "David Hume".
biblatex
does not have a notion of a middle name: All first and middle names are treated asgiven
names, so it is very, very tricky to get full first and initials for the middle names. (There are some solutions on this site, but they all rely on parsing the name on the LaTeX side which can get messy and may mess up the name disambiguation.) If we ignore that point for now your code appears to do what it is supposed to do. It can be simplified a bit, but it works. See gist.github.com/moewew/047760379b8a73fa7a148951a5c87fa5. Please show us a complete example document where it doesn't