biblatex

1 minute read

Published:

For managing a bibliography for my papers, for a long time I have been using the natbib package with bibtex to compile.

\usepackage[authoryear,round]{natbib}
\usepackage{doi}

\bibliographystyle{plainnat}
\bibliography{<filename>}

Here the authoryear option allows one to cite papers in the author-year style, and the round option changes the brackets to parentheses, which is standard in economics. I like to use the doi package so that the DOI (Digital Object Identifier) becomes a hyperlink, which I think is useful for readers to quickly find references online. The plainnat bibliography style prints the reference list in a style similar to typical economics journals.

However, I have been slightly dissatisfied with plainnat.bst because it tends to contain too much information. For instance, I may want to change the given names to initials but that is not possible unless I use other .bst files. It is not a wise use of time to look for the ideal .bst file or try to customize one myself.

On a separate note, I have been using the biblatex package (without understanding it) to create my CV. biblatex is convenient because the user can easily customize the reference list, for instance listing research articles, book chapters, conference proceedings, working papers, etc. in different sections (with potentially the same or different numbering and/or reverse chronologically).

Until recently it didn’t occur to me to use biblatex to manage bibliographies in my own papers, but after investing a bit of time I was able to do it to my satisfaction. Here is an example.

\usepackage[style=authoryear-comp, % for author-year compact format
sorting=nyt, % sort by name, year, title
dashed=false, % don't use dash for repeated author
maxcitenames=2, % maximum names to cite
uniquelist=false,
uniquename=init,
giveninits=true, % first name initials
natbib, % use natbib commands
date=year % year only
]{biblatex}
\addbibresource{<filename>.bib}

\DeclareFieldFormat{pages}{#1} % suppress pp.
\renewbibmacro{in:}{\ifentrytype{article}{}{\printtext{\bibstring{in}\intitlepunct}}} % delete In:
  
\printbibliography

The option giveninits=true abbreviates given names to initials, which I couldn’t do with plainnat.bst.