我有以下参考,但 URL 导致文档编译失败。我试过所有能想到的方法。如何让它工作?
@misc{prodromou2010ostatus,
title={{OStatus 1.0}},
author={E. Prodromou and B. Vibber and J. Walker and Z. Copley},
note={\url{http://ostatus.github.io/spec/OStatus%201.0%20Draft%202.html} Accessed: 23.6.2017},
year={2010}
}
答案1
biblatex
您不应使用note
字段来提供网页的 URL 和访问日期。而是使用专用字段和url
。urldate
它url
可以处理 TeX 特有的所有类型的字符,因为它以逐字模式进行解释。
@online{prodromou2010ostatus,
title = {OStatus 1.0},
author = {Evan Prodromou and Brion Vibber and James Walker and Zach Copley},
date = {2010-08-30},
url = {http://ostatus.github.io/spec/OStatus%201.0%20Draft%202.html},
urldate = {2017-06-23},
}
您的示例中的问题确实是由于 而引起的%
。其中.bbl
许多字段(其中包括note
)都以以下格式保存:
\field{<fieldname>}{<fieldcontent>}
如果<fieldcontent>
包含一个%
字符,%
则将其解释为注释的开始,其后的所有内容都将被忽略。这尤其意味着花括号没有闭合,分组会变得混乱,一切都会变得糟糕。所以一般来说,%
除非字段是逐字字段,例如url
,否则应避免在字段中使用和其他特殊字符。这也适用于您在输出中看不到但仍可被识别的字段biblatex
- 其中之一是,abstract
如果您从互联网上下载文件,它通常是预先填充的.bib
,并且可能包含各种字符,如果导出工具不小心,这些字符会导致问题。即使您的样式不打印该字段,那里的有问题的字符仍然会把事情搞砸。
请注意,尽管现在更推荐使用 Biber 而不是 BibTeX,但在这种情况下切换到 Biber 并没有帮助。不过,您仍然应该考虑使用 Biber。如果出现字段问题,abstract
BibTeX 在某些情况下比 Biber 更宽容。但这不应该成为选择 BibTeX 的理由。