
如果使用 \bibitem 如何讓 LaTeX 編譯中止?下面是我希望編譯失敗的程式碼片段。
\documentclass{article}
\usepackage{amssymb,longtable,amsmath,booktabs,url,amstext,array,geometry}
\begin{document}
\cite{notes}
\cite{notes2}
\begin{thebibliography}{1}
\bibitem{notes} John W. Dower {\em Readings compiled for History 21.479.} 1991.
\end{thebibliography}
\end{document}
答案1
如評論中所述,最好使用 bibtex 或 biber 生成參考書目,但是 Latex 在文件末尾警告任何未定義的引用或參考文獻,如果您願意,您可以輕鬆地將其設置為錯誤而不是警告:
\documentclass{article}
\usepackage{amssymb,longtable,amsmath,booktabs,url,amstext,array,geometry}
\makeatletter
\def\G@refundefinedtrue{%
\gdef\@refundefined{%
\GenericError{}{}{There were undefined references}{you wanted an error}}}
\makeatother
\begin{document}
\cite{notes}
\cite{notes2}
\begin{thebibliography}{1}
\bibitem{notes} John W. Dower {\em Readings compiled for History 21.479.} 1991.
\end{thebibliography}
\end{document}
如上所述,終端輸出顯示:
! .
There were undefined references
Type H <return> for immediate help.
...
l.16 \end{document}
? h
you wanted an error
?