以下是我的最小工作示例。我有一个 .bib 文件,由
@article{example,
author = {Author},
title = {Title},
journal = {Journal},
year = {2018},
url = {\href{https://arxiv.org/abs/1606.08794}{arXiv:1606.08794}}
}
和一个 .tex 文件
\documentclass{article}
\usepackage[backend=biber,style=alphabetic]{biblatex}
\usepackage{hyperref}
\addbibresource{biblio.bib}
\renewbibmacro{in:}{} % cosmetical
\begin{document}
I want to cite \cite{example}.
\printbibliography
\end{document}
输出的书目只有一个条目
[Aut18] 作者,“标题”。杂志(2018)。网址: https://arxiv.org/abs/1606.08794%7D%7BarXiv:1606.08794%7D
而不是期望的
[Aut18] 作者,“标题”。杂志(2018)。网址:arXiv:1606.08794
我看到了发生了什么,也大致了解了问题所在,但我不知道如何解决。有人知道如何让它工作吗?
注 1:如果我仅输入url = {https://arxiv.org/abs/1606.08794}
,那么我将获得参考书目中作为超链接的完整 URL,但我真的希望它是缩写形式。
注 2:我从我的参考书目中随机选取了一篇文章作为链接。
答案1
该url
字段是逐字读取的,并且必须始终是纯 URL。您无需转义任何特殊字符,也不能使用任何标记命令。
如果您希望 URL 字段使用不同的格式,则必须通过 修改字段格式\DeclareFieldFormat
。这里不需要这样做,因为biblatex
有处理 arXiv 预印本的原生方法。您可以使用eprint
eprint = {1606.08794},
eprinttype = {arxiv},
或许还
eprintclass = {math.AT},