0

I'm using biblatex (with bibtex as backend) to generate a bibliography. The citations in bibtex format originate from a variety of websites (ACM, IEEE, DBLP), meaning the authors are not always presented in the same format (e.g., one entry may specify Firstname Lastname while another refers to the same author as Lastname, Firstname).

While the bibliography style deals with most of these inconsistencies, I've found that in some cases, the same author is referred to in multiple ways. That is, the same author is referred to as "F. M. Lastname" in one citation, but as "F. Lastname" in another.

My goal is to detect any of these occurrences and fix them manually. One way to achieve this would be to print a list of all authors from all citations and sort them alphabetically. Does biblatex provide a way to do this?

  • Instead of building up a solution, it may be enough to just print the index of author names. You can ask biblatex to print authors in a different index file by creating an appropriate command for that. – ienissei Feb 25 '16 at 11:12
  • 1
    @ienissei: Thank you! I used this suggestion to answer my own question. – user3364120 Feb 25 '16 at 13:28
  • See also List all co-authors although you can probably get away with less code since you don't need all the bells and whistles of the solution there. – moewe Feb 25 '16 at 14:26
2

A good way to solve this is to use an author index. This will print all authors from all publications sorted by their last name. If multiple names are used for the same person, they will show up next to each other in this list.

A minimal working example to demonstrate this concept:

\documentclass{article}
\usepackage[style=ieee,citestyle=numeric-comp,natbib=true,backend=bibtex,url=false,doi=false,isbn=false,useprefix=true,autocite=inline,sortcites=true,labelnumber=true,urldate=long,indexing=bib]{biblatex}
\usepackage{makeidx}\makeindex
\begin{filecontents}{\jobname.bib}
@misc{fl,
  author = {Lastname, Firstname},
  year = {2001},
  title = {My first paper}
}
@misc{fml,
  author = {Firstname Middle Lastname},
  year = {2002},
  title = {My second paper}
}
\end{filecontents}
\addbibresource{\jobname.bib}
\begin{document}
\nocite{*}
\printbibliography
\printindex
\end{document}

This results in the following index:

Example of an author index

To compile, add the command makeindex.

An alternative is the following:

\documentclass{article}
\usepackage[style=ieee,citestyle=numeric-comp,natbib=true,backend=bibtex,url=false,doi=false,isbn=false,useprefix=true,autocite=inline,sortcites=true,labelnumber=true,urldate=long,indexing=bib]{biblatex}
\usepackage{authorindex}
\begin{filecontents}{\jobname.bib}
@misc{fl,
  author = {Lastname, Firstname},
  year = {2001},
  title = {My first paper}
}
@misc{fml,
  author = {Firstname Middle Lastname},
  year = {2002},
  title = {My second paper}
}
\end{filecontents}
\addbibresource{\jobname.bib}
\begin{document}
\aicite{*}
\printbibliography
\printauthorindex
\end{document}

This results in a very similar index that doesn't include the titles of the publications in the index. To compile, use the authorindex command.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.