2

Does anyone have a ready-to-use template for Harvard-style, aka authoryear-style, citation call-outs in LaTeX? I'm unclear about which packages/commands to use to achieve a 'standard' bibliography with automated Harvard-style in-text citations. I understand, though, that natbib is a very commonly used package to handle the styling of citation call-outs.

2

The code below has everything you need. It also demonstrates how to create two types of citation call-outs.

enter image description here

MWE:

\documentclass[]{article}
\usepackage[round,authoryear]{natbib} % or: \setcitestyle{authoryear}
\usepackage{har2nat} % recommended for the 'agsm' bib style
\bibliographystyle{agsm} 

\usepackage{filecontents}
%% create a small .bib file:
\begin{filecontents*}{mybib.bib}
@book{floud2011,
    title = {The changing body: Health, nutrition, and 
            human development in the western world 
            since 1700},
    author= {Floud, Roderick and Fogel, Robert W and 
            Harris, Bernard and Hong, Sok Chul},
    year  = {2011},
    publisher = {Cambridge University Press},
}
\end{filecontents*}

\begin{document}
\setlength{\parindent}{0in}  % optional
\setlength{\parskip}{0.14in} % optional

Use \texttt{\string\citet} to create a text-style citation call-out---e.g., \citet{floud2011}---and \texttt{\string\citep} to create a parenthetic-style citation call-out---e.g., \citep{floud2011}. 

Prefixes and affixes to the citation call-outs, such as ``e.g.'' or ``pp.\ 99--100'', can be added by providing optional arguments in square brackets to the \verb+\citet+ and \verb+\citep+ instructions. E.g., \verb+\citep[see][pp.\ 99--100]{floud2011}+ produces ``\citep[see][pp.\ 99--100]{floud2011}''. Aside: using the  prefix option makes little sense when using \verb+\citet+.

Add an asterisk, i.e., write \verb+\citet*+ or \verb+\citep*+, to force the names of \emph{all authors} to be displayed, e.g., ``\citet*{floud2011}'' and ``\citep*{floud2011}''. Without the asterisk, citation call-outs to entries with more than two authors will be shown in the truncated form `firstauthor et al.'---see the citation call-outs in the earlier paragraphs. If you like to use (or are required to use) a citation call-out style in which the names of all authors are shown the \emph{first time} a given entry is cited and the truncated citation call-out form is used for subsequent citation call-outs, be sure to load the natbib package with the option \verb+longnamesfirst+.


\let\oldthebibliography\thebibliography
%% \bf and \em are commands used in the 'agsm' bib style
\renewcommand\thebibliography{\let\bf\relax\oldthebibliography} % don't bold volume numbers
\renewcommand\thebibliography{\let\em\relax\oldthebibliography} % don't italicise journal and book titles
\nocite{*} % display all entries in the bib file, even if you don't cite them in the document
%\setcitestyle{numbers} % numeric-style citation call-outs -- not typically done with harvard-style bib files
\bibliography{mybib}

\end{document}

Notes:

  1. I undefined the \bf macro with \renewcommand\thebibliography{\let\bf\relax\oldthebibliography} because I don't want volume numbers to be displayed in **bold text%%. Comment this line out if you do.
  2. I undefined the \em macro with \renewcommand\thebibliography{\let\em\relax\oldthebibliography} because many 'standard' bibliography style do not italicize the titles of cited works. If you do want the titles of books and journals in italics, comment this line out.
  3. If you decide that you want your citation call-outs displayed using numbers, be sure to execute the instruction \setcitestyle{numbers}.
  4. For the sake of allowing a first-time user to see what all bibliographic entries in their bib file look like, I've inserted the command \nocite{*}. However, I caution against including uncited works in your references; it is generally not done.

Some other possible bibliography styles:

As @mico has pointed out in a comment, the agsm style that's employed in the preceding code is somewhat uncommon. The natbib package here - provides the bibliography styles plainnat,abbrvnatandunsrtnat, which are reimplementations of the "classic" bibliography stylesplain,abbrv, andunsrt. Note that whereasplain,abbrv, andunsrtcan produce only numeric-style citation call-outs,plainnat, abbrvnat and unsrtnat can produce either numeric-style, authoryear-style, or superscript-style citation call-outs, depending on whether the natbib package is loaded with the (mutually exclusive!) options numbers, authoryear, or super.

In addition, there are probably hundreds (thousands?!) of other bibliography style that can produce authoryear-style citation call-outs. To use some of these styles, e.g., the apacite style, a specialized citation management package, e.g., the apacite package, must be loaded instead of the natbib package.

  • 2
    The agsm bibliography style — while indeed capable of generating authoryear-style citation call-outs — is somewhat uncommon, and in some ways it is downright funky. You may want to explain why you undefined the \bf and \em macros. You may want to augment your answer by mentioning some additional bibliography styles. – Mico Oct 4 '18 at 21:46
  • 1
    @Mico I've updated the answer as per your (helpful) suggestions - thank you! Is it sufficiently complete now? – Thevesh Theva Oct 4 '18 at 22:12
  • +1. I've edited your posting to provide further (hopefully useful) information. Feel free to revert. – Mico Oct 5 '18 at 0:22

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.