LaTeX (backref)
Der folgende LaTeX-Code verwendet ein Zitat und das Zitat enthält eine Liste von Seiten, auf denen der Eintrag zitiert wird. Hier ist es die erste Seite. Das Paket hyperref
fügt auch PDF-Links hinzu, die Referenz auf der Rückseite ist rot, der Link zum Zitieren ist grün.
\documentclass{article}
\usepackage[colorlinks,pagebackref]{hyperref}
\begin{document}
Donald E. Knuth is the inventor of \TeX~\cite{knuth}.
\begin{thebibliography}{9}
\bibitem{knuth}
Donald E. Knuth: \textit{The \TeX book}; Addison Wesley, 1984.
\end{thebibliography}
\end{document}
LaTeX benötigt jedoch keine Leerzeile, die Leerzeile sieht überflüssig aus und das Beispiel funktioniert auch ohne hyperref
und die Leerzeile:
\documentclass{article}
\begin{document}
Donald E. Knuth is the inventor of \TeX~\cite{knuth}.
\begin{thebibliography}{9}
\bibitem{knuth}
Donald E. Knuth: \textit{The \TeX book}; Addison Wesley, 1984.
\end{thebibliography}
\end{document}
Aber die Links und die Rückverweise sind weg, daher fügen wir sie erneut ein:
\documentclass{article}
\usepackage[colorlinks,pagebackref]{hyperref}
\begin{document}
Donald E. Knuth is the inventor of \TeX~\cite{knuth}.
\begin{thebibliography}{9}
\bibitem{knuth}
Donald E. Knuth: \textit{The \TeX book}; Addison Wesley, 1984.
\end{thebibliography}
\end{document}
Aber jetzt ist das Beispiel gebrochen und wird nicht mehr kompiliert :
Runaway argument?
Donald E. Knuth: \textit {The \TeX book}; Addison Wesley, 1984. \end \ETC.
! File ended while scanning use of \BR@@bibitem.
<inserted text>
\par
<*> knuth
?
Was ist passiert? Package hyperref
(oder genauer Package backref
, das von geladen wird hyperref
) möchte am Ende des Bibliographieeintrags die Rückverweisliste hinzufügen. Die Syntax in LaTeX sieht jedoch nur den Beginn der Eingabe vor \bibitem
, das Ende kann überall sein. In diesem Notfallpaket backref
wurde eine Einschränkung hinzugefügt, \bibitem
die den Eintrag mit einer Leerzeile beenden muss. Dann kann das Paket neu definiert werden \bibitem
, um die Rückverweise am Ende des Eintrags zu setzen.
Da die leere Zeile fehlt, sucht TeX weiterhin danach, findet jedoch stattdessen das Dateiende und gibt die Fehlermeldung aus.