我的文档中出现了编译错误,看起来与这问题。错误信息:
"File ended wile scanning use of \harvardurl. \bibliography{thesis_references}
问题出在我的序言上 - 可能是有冲突的包。完整的序言现在变得相当冗长,但这些是我认为与问题相关的部分:
\usepackage{url}
\usepackage{hyperref}
%% use harvard style referencing
\bibliographystyle{agsm}
%% redefine uarvardurl command as in texexchange anwer
\renewcommand{\harvardurl}[1]{\textbf{URL:} \url{#1}}
\begin{document}
\bibliography{thesis_references}
\end{document}
bbl
如果我删除文件并将引用样式更改为,则不会出现此问题abbrvnat
。您知道发生了什么吗?
答案1
如果看不到文件和使用的包就很难说bib
,但看起来 URL 中有特殊字符,很可能是%
。
您可能使用了natbib
包而不是harvard
。然后您可以通过允许\url
在读取其参数时更改 catcodes 来解决这个问题。只需将您的\harvardurl
命令更改为
\renewcommand{\harvardurl}{\textbf{URL:} \url}