LaTeX (backref)
Il seguente codice LaTeX utilizza una citazione e la citazione contiene un elenco di pagine, in cui la voce è citata. Ecco la prima pagina. Il pacchetto hyperref
aggiunge anche collegamenti PDF, il riferimento indietro della pagina è rosso, il collegamento citazione è verde.
\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}
Ma LaTeX non richiede la linea vuota, la linea vuota sembra superflua e l'esempio funzionerà ancora senza hyperref
e la linea vuota:
\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}
Ma i collegamenti e il riferimento posteriore sono spariti, quindi li reinseriamo:
\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}
Ma ora l'esempio è rotto e non verrà più compilato :
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
?
Quello che è successo? Il pacchetto hyperref
(o pacchetto più preciso backref
, che viene caricato da hyperref
) vuole ottenere alla fine della voce bibliografica per aggiungere la lista di riferimento posteriore. Ma la sintassi in LaTeX fornisce solo l'inizio della voce entro \bibitem
, la fine può essere ovunque. In questo pacchetto di emergenzabackref
è stata aggiunta una restrizione che \bibitem
deve terminare l'inserimento con una riga vuota. Quindi il pacchetto può essere ridefinito \bibitem
per mettere i riferimenti posteriori alla fine della voce.
Poiché manca la riga vuota, TeX continua a cercarla, ma trova invece la fine del file ed emette il messaggio di errore.