I am using LaTeX with the article
document class. The Bibtex bibliography style that I am using is agsm
, part of the Harvard family of bibliography styles.
I have two questions:
(1) If I cite an entry of type @book
, then in the reference list I get publisher, address. I would like to re-arrange this order to address: publisher. Which part of agsm.bst
should I modify?
(2) I would like to change single quotation marks ' ' to double quotation marks " " for setting off the title of entries of type @article
. Which part of agsm.bst
should I focus on?
Best Answer
I suggest you proceed as follows.
Locate the file
agsm.bst
in your TeX distribution. Make a copy of this file and name the copy, say,agsm-mod.bst
. (Do not edit an original file of the TeX distribution directly.)Open the file
agsm-mod.bst
in a text editor. The editor you use to edit your .tex files will do fine.Let's tackle the easier task first: Changing the quoting style from single quotes to double quotes. In
agsm-mod.bst
, locate the function calledquote
. (In my copy of this file, thequote
function starts on line 155.) In this function, locate the following line:Change it to
This change will affect not only how titles of entries of type
@article
are typeset; it will also affect the titles of entries of type@misc
and@booklet
. I'm assuming that you're OK with this.The much harder task, actually, is changing publisher, address to address: publisher for entries of type
@book
. It turns out to be necessary to provide several new BibTeX functions in order to accomplish this task. This is because the stockagsm
style is programmed to use commas between fields everywhere; using a colon between two particular fields (here:address
andpublisher
) is not something this bib style does easily.Start off by inserting the following code chunk between the functions
multi.page.check
andformat.pages
.Next, locate the
book
function in the fileagsm-mod.bst
. In this function, locate the following two linesReplace these two lines with (I think you can already guess...)
And, while you're at it, you should replace the same pair of lines in the functions
inbook
andincollection
as well. (Just search for the two remaining instances ofpublisher "publisher" output.check
in the bst file.)Save the bst file either in the directory where your main tex file is located or in a directory that's searched by BibTeX. If you choose the second option, be sure to also update the filename database of your TeX distribution suitably.
Finally, in your main tex file, change the instruction
to
and perform a full recompile cycle: LaTeX, BibTeX, and LaTeX twice more.
For good measure, here's an MWE (minimum working example) that demonstrates the result of using the
agsm-mod
bibliography style.