通常,URL 既不美观也不紧凑。如何嵌入指向文档 URL 的超链接而不在参考目录中打印 URL?
现在我正在使用包backref=page
中的选项hyperref
并获得:
使用.bib
文件:
@article{knuth1984,
title={Literate Programming},
author={Donald E. Knuth},
journal={The Computer Journal},
volume={27},
number={2},
pages={97--111},
year={1984},
publisher={Oxford University Press},
url={https://doi.org/10.1093/comjnl/27.2.97}
}
答案1
对于 BibTeX,您可以使用脚本生成的参考书目样式urlbst
。这是一个将现有.bst
文件作为输入并生成.bst
具有附加 url 功能的新文件的脚本。该脚本的功能之一是抑制 url 和 doi 字段,并使标题成为指向这些字段内容的超链接。这是使用命令行标志完成的--hyperref --inlinelinks
。
以下命令修改plain.bst
为plainlinks.bst
:
$ urlbst --hyperref --inlinelinks `kpsewhich plain.bst` > plainlinks.bst
替代方法kpsewhich
是找到安装的路径plain.bst
并将该路径作为的输入urlbst
,当然您也可以plain.bst
自己找到并先将其复制到您的工作目录中。
然后您可以使用以下 MWE:
\documentclass{article}
\usepackage{hyperref}
\begin{filecontents*}{\jobname.bib}
@article{knuth1984,
title={Literate Programming},
author={Donald E. Knuth},
journal={The Computer Journal},
volume={27},
number={2},
pages={97--111},
year={1984},
publisher={Oxford University Press},
doi={10.1093/comjnl/27.2.97}
}
\end{filecontents*}
\begin{document}
\cite{knuth1984}
\bibliographystyle{plainlinks}
\bibliography{\jobname}
\end{document}
结果:
urlbst
与标准样式(plain、alpha、unsrt、abbrv)兼容,也与 Natbib、AMS 样式、IEEE 和许多其他自定义样式兼容。它被 ACL 等大型出版商用于他们的会议。