\bibitem
¶Synopsis:
\bibitem{cite_key}
or
\bibitem[label]{cite_key}
Generate an entry labeled by default by a number generated using the
enumi
counter. The citation key
cite_key can be any string of
letters, numbers, and punctuation symbols (but not comma).
See thebibliography
, for an example.
When provided, the optional label becomes the entry label and the
enumi
counter is not incremented. With this
\begin{thebibliography} \bibitem[Lamport 1993]{latexdps} Leslie Lamport. \textit{\LaTeX{}: a document preparation system}. Addison-Wesley, Reading, Massachusetts, 1993. \bibitem{texbook} Donald Ervin Knuth. \textit{The \TeX book}. Addison-Wesley, Reading, Massachusetts, 1983. \end{thebibliography}
the first entry will be styled as ‘[Lamport 1993] Leslie ...’ (The
amount of horizontal space that LaTeX leaves for the label depends on
the widest-label argument of the thebibliography
environment; see thebibliography
.) Similarly, ... based on
\cite{latexdps}
will produce ‘... based on [Lamport 1994]’.
If you mix \bibitem
entries having a label with those that
do not then LaTeX will number the unlabelled ones sequentially. In
the example above the texbook
entry will appear as ‘[1]
Donald ...’, despite that it is the second entry.
If you use the same cite_key twice then you get ‘LaTeX Warning: There were multiply-defined labels’.
Under the hood, LaTeX remembers the cite_key and label
information because \bibitem
writes it to the auxiliary file
jobname.aux (see Jobname). For instance, the above
example causes the two \bibcite{latexdps}{Lamport, 1993}
and
\bibcite{texbook}{1}
to appear in that file. The .aux
file is read by the \begin{document}
command and then the
information is available for \cite
commands. This explains why
you need to run LaTeX twice to resolve references: once to write it
out and once to read it in.
Because of this two-pass algorithm, when you add a \bibitem
or
change its cite_key you may get ‘LaTeX Warning: Label(s) may
have changed. Rerun to get cross-references right’. Fix it by
recompiling.