As you can see in this article on Wikipedia, there is a distinction made between notes, citations and references. I would like to have a section called citations at the end of my document which I can refer to like this[2]
[2] Lasker (1934), p. 73
which is to be found in my references under "Lasker, Emanuel (1934). Lasker's Chess Primer. London: Billings (1988 reprint). ISBN 0-7134-6241-8". Ideally, I would like this citation to contain a hyperlink to this reference (although this is not done in the document). Any good way to do this or something similar?
Best Answer
Basic approach:
A pure LaTeX solution could be some like:
Although the environment
thebibliography
works perfectly and this could be all you need, my suggestion is to use this approach only if you have very few references that you'll never use again. Otherwise you will lose the great advantages of using BibTeX orbiblatex
.BibTeX approach
When you have many references, it is worth to use BibTeX (the executable is
bibtex
in lowercase) instead of the embedded bibliographic system of LaTeX, so you can handle the references in a more efficient way. For example, you can select a subset of references without deleting unused references from a huge database than can be used in several documents. But more important, you have the control the final appearance of these references, how they are sorted and how are cited with only some commands in the LaTeX file, without modifying each reference by hand. May be for a publication with 200 references a editor will ask to use numeric citations sorted in order of appearance with the surnames of the authors before of the initials, but after that you want to publish the same text with another editor that demand references in alphabetic order, with the complete names before the surnames and with author-year citations like "Smith (2013)
" instead of numbers in brackets as "[4]
". Make this modifications manually in cites and references is a huge work and then BibTeX is essential.For use BibTeX you need a
.bib
file likeReferences.bib
where the references are stored as plain text, with entries like this:You can write this file by hand using any text editor, but it is easier with an oriented program to manage BibTeX archives, as Jabref, Zotero or Mendeley. Note that after
@ARTICLE{
the wordGill
is the key to cite the reference, equivalentlamport94
in the above example. It could be something different to the surname of the author, likeRef120
but obviously must be unique and preferably indicative, so usually the best is a combination of the first surname and year (Gill1980
) and may be the first page (Gill1980p447
) or some meaningful word of the title in order to avoid duplicate keys.Once you have all the references in your
References.bib
file, you can include these keys in the a LaTeX file as follow:Then you can compile your document in this way:
And the result must be:
This is apparently a more complicated way to make the same, but if you simply change
plain
byvancouver
, you will obtain the surname before of the initials and the journal without italics without touchingReferences.bib
. And if you usenatbib
in the preamble,then you can use styles as
chicago
to obtain non numeric citations, with more citations options. Example:Note that now also the references changed (now the year is after the author also in references).
Biblatex & Biber approach
This newer approach can use the same database references that used in BibTeX "as is", but with more fields in each reference. For instance, BibTeX use the field
year
but biblatex can manage also exact dates in adate
field.In this approach you must use the package
biblatex
and different commands to link the .bib file and print the references in the main document. To compile it you can use also BibTeX with the optionbackend=bibtex
, but by default is used another compiler: Biber (optionbackend=biber
), that is a modern alternative with several advantages.Obtain a numeric citation with
biblatex
is also fairly simple as you only need the package without options, and change\bibliography
and\bibliographystyle
of BibTex by\addbibresource{References.bib}
(now with the extension) in the preamble and\printbibliography
stating the obvious, where the bibliography must be printed.For an author(year) citation style you simply need add the option
style=authoryear
and the usual\cite{}
command, or\parencite{}
for the (author, year) cites, but you can use now some others commands as\citeyear{}
. Moreover, you can also add the optionnatbib=true
to usenatbib
specific commands as\citep{}
(nice if you are re-using some text having these commands).The compilation must follow just the same 4 steps that above, but remember that now you should use
biber
instead ofbibtex
.But why the hell use
biblatex
andbiber
instead of BibTeX? Well, although the result is not identical, the real advantage ofbiblatex
cannot be appreciated in these simple examples. The power ofbiblatex
is the great (and intimidating) flexibility (explained in a manual of 253 pages). For example, see Align/avoid numeration and labels in a custom biblatex format for a unusual format that hardly could be implemented in BibTeX nor with thethebibliography
environment.For a more detailed explanation, see also these great answers: