LaTeX supports bibliographies out of the box, either embedding the references in your document or storing them in an external file. This article explains how to manage bibliography with the thebibliography
environment and the BibTeX system.
Note: If you are starting from scratch it's recommended to use biblatex since that package provides localization in several languages, it's actively developed and makes bibliography management easier and more flexible.
Contents |
Standard bibliography commands in LaTeX have a similar syntax to that of lists and items.
\begin{thebibliography}{9} \bibitem{latexcompanion} Michel Goossens, Frank Mittelbach, and Alexander Samarin. \textit{The \LaTeX\ Companion}. Addison-Wesley, Reading, Massachusetts, 1993. \bibitem{einstein} Albert Einstein. \textit{Zur Elektrodynamik bewegter K{\"o}rper}. (German) [\textit{On the electrodynamics of moving bodies}]. Annalen der Physik, 322(10):891–921, 1905. \bibitem{knuthwebsite} Knuth: Computers and Typesetting, \\\texttt{http://www-cs-faculty.stanford.edu/\~{}uno/abcde.html} \end{thebibliography}
The environment thebibliography
produces a list of references; such list will be titled "References" in a article document class, and "Bibliography" in book and report document classes. A parameter inside braces, 9
in the example, indicates the number of entries to be added; this parameter can not be greater than 99.
To create a bibliography entry the command \bibitem
is used. A parameter inside braces is set to label this entry and can later be used as identifier for this reference. After the closing brace the text with the name of the author, the book title, publisher and so on is entered.
ShareLaTeX provides several templates with pre-defined styles to manage bibliography. See this link
The example presented in the introduction only contains list of references, the next example shows how to cite the entries of that list within the document.
\begin{document} \section{First section} This document is an example of \texttt{thebibliography} environment using in bibliography management. Three items are cited: \textit{The \LaTeX\ Companion} book \cite{latexcompanion}, the Einstein journal paper \cite{einstein}, and the Donald Knuth's website \cite{knuthwebsite}. The \LaTeX\ related items are \cite{latexcompanion,knuthwebsite}. \medskip \begin{thebibliography}{9} \bibitem{latexcompanion} Michel Goossens, Frank Mittelbach, and Alexander Samarin. \textit{The \LaTeX\ Companion}. Addison-Wesley, Reading, Massachusetts, 1993. \bibitem{einstein} Albert Einstein. \textit{Zur Elektrodynamik bewegter K{\"o}rper}. (German) [\textit{On the electrodynamics of moving bodies}]. Annalen der Physik, 322(10):891–921, 1905. \bibitem{knuthwebsite} Knuth: Computers and Typesetting, \\\texttt{http://www-cs-faculty.stanford.edu/\~{}uno/abcde.html} \end{thebibliography} \end{document}
The command \cite
insert the number corresponding to the bibliography entry whose label is passed inside braces. For example, the output of \cite{einstein}
is [2].
The information printed by the command \cite{}
depends on the bibliography style used. See Bibtex bibliography styles.
BibTeX is a widely used bibliography management tool in LaTeX, with BibTeX the bibliography entries are kept in a separate file and then imported into the main document.
Once the external bibliography file is imported, the command \cite
is used just as in the introductory example.
Ths document is an example of BibTeX using in bibliography management. Three items are cited: \textit{The \LaTeX\ Companion} book \cite{latexcompanion}, the Einstein journal paper \cite{einstein}, and the Donald Knuth's website \cite{knuthwebsite}. The \LaTeX\ related items are \cite{latexcompanion,knuthwebsite}. \medskip \bibliographystyle{unsrt} \bibliography{sample}
This uses the following commands:
\bibliography{sample}
\bibliographystyle{unsrt}
\cite{einstein}
einstein
produces [2].
When the main document is compiled, a .bbl file is generated from the .bib file. This is simply a .tex file reorganising the information in the .bib file in a thebibliography
environment, as above. On ShareLaTeX the .bbl file is stored in the cache, and you can download it from the list of other logs and files.
Note: Unicode characters are not supported on BibTeX. Also, if there are too many bibliography entries (+100) it may not work properly. See the further reading section for links to other bibliography management tools.
Open an example of the bibtex package in ShareLaTeX
Bibliographic references are usually kept in a bibliography file whose extension is .bib, this file consists of a list of records and fields. Each bibliography record holds relevant information for a single entry.
@article{einstein, author = "Albert Einstein", title = "{Zur Elektrodynamik bewegter K{\"o}rper}. ({German}) [{On} the electrodynamics of moving bodies]", journal = "Annalen der Physik", volume = "322", number = "10", pages = "891--921", year = "1905", DOI = "http://dx.doi.org/10.1002/andp.19053221004" } @book{latexcompanion, author = "Michel Goossens and Frank Mittelbach and Alexander Samarin", title = "The \LaTeX\ Companion", year = "1993", publisher = "Addison-Wesley", address = "Reading, Massachusetts" } @misc{knuthwebsite, author = "Donald Knuth", title = "Knuth: Computers and Typesetting", url = "http://www-cs-faculty.stanford.edu/\~{}uno/abcde.html" }
This file contains records in a special format, for instance, the first bibliographic reference is defined by:
@article{...}
@article
denotes the entry type and tells BibTeX that the information stored here is about an article. Besides the entry types shown in the example (article
, book
and misc
) there are a lot more, see the reference guide.
einstein
einstein
is assigned to this entry, is an identifier that can be used to refer this article within the document.
author = "Albert Einstein",
key = value
, for instance: title, pages, year, URL, etc. See the reference guide for a list of possible fields.
The information in this file can later be used within a LaTeX document to include these references, as shown in the next subsection.
Open an example of the bibtex package in ShareLaTeX
There are two ways of including the bibliography in the table of contents, either manually adding it or using the package tocbibind (recommended).
To add it manually just insert the next line right before the command \begin{thebibliography}
or \bibliography
\addcontentsline{toc}{chapter}{Bibliography}
for books and reports or
\addcontentsline{toc}{section}{References}
for articles. If you prefer to use tocbibind see the next example.
\documentclass[a4paper,10pt]{article} \usepackage[utf8]{inputenc} \usepackage[english]{babel} \usepackage[nottoc]{tocbibind} \begin{document} \tableofcontents \section{First Section} This document ... \bibliographystyle{unsrt} \bibliography{sample} \end{document}
Adding the line
\usepackage[nottoc]{tocbibind}
to the preamble will print the "References" or "Bibliography" in the table of contents, depending on the document type. Be careful, it will also add other elements like the Index, Glossary and list of Listings to the table of contents. For more information see [the tocbibind package documentation].
Open an example of the bibtex package in ShareLaTeX
Standard entry types
article
book
booklet
conference
inbook
incollection
inproceedings
manual
masterthesis
misc
phdthesis
proceedings
conference
techreport
unpublished
Most common fields used in BibTeX
address | annote | author |
booktitle | chapter | crossref |
edition | editor | institution |
journal | key | month |
note | number | organization |
pages | publisher | school |
series | title | type |
volume | year | URL |
ISBN | ISSN | LCCN |
abstract | keywords | price |
copyright | language | contents |
For more information see: