我希望链接到参考文献的文本只是 bibtex 键。因此,使用类似这样的 bibtex 条目
@ARTICLE{Author1:2000:Topic,
author = {A. Author1 and B. Author2},
title = {Title},
journal = {Journal},
year = {2000},
volume = {1},
pages = {3--4}
}
我想要一个文内链接Author1:2000:Topic
,而不是数字样式[1]
或作者年份样式Author1 (2000)
。
的描述漂移岩软件包听起来好像可以提供该功能。但它不适用于比布拉特克斯包裹:
! Package biblatex Error: Incompatible package 'drftcite'.
我觉得这个问题相当简单,因为不需要计算任何棘手的东西。由于无论如何我都必须提供 bibtex 密钥,所以我可以将其写入文本并使用 \nocite 命令将相应的条目包含在参考列表中。但我显然缺少的是从引文到参考列表的超链接。
提供一个可以修改为答案的小工作示例:
\documentclass{article}
\begin{filecontents*}{literature.bib}
@ARTICLE{Author1:2000:Topic,
author = {A. Author1 and B. Author2},
title = {Title},
journal = {Journal},
year = {2000},
volume = {1},
pages = {3--4}
}
\end{filecontents*}
\usepackage[backend=bibtex, style=authoryear, natbib=true]{biblatex}
\bibliography{literature}
\usepackage{hyperref}
\newcommand{\drftcite}[1]{\cite{#1}}
\begin{document}
\par This is shown in \drftcite{Author1:2000:Topic}.
\printbibliography
\end{document}
pdflatex
使用和编译后bibtex
,我得到一个包含以下文本的pdf:
This is shown in Author1 and Author2, 2000.
References
Author1, A. and B. Author2 (2000). “Title”. In: Journal 1, pp. 3–4.
在本文中,第一个数字2000
是指向所引用参考文献的超链接。
我想要的是一个\drftcite
命令,而不是Author1 and Author2, 2000
用 bibtex 键写入超链接Author1:2000:Topic
。
答案1
引用样式draft
似乎涵盖了您想要的内容:
\documentclass{article}
\begin{filecontents*}{literature.bib}
@ARTICLE{Author1:2000:Topic,
author = {A. Author1 and B. Author2},
title = {Title},
journal = {Journal},
year = {2000},
volume = {1},
pages = {3--4}
}
\end{filecontents*}
\usepackage[backend=bibtex, bibstyle=authoryear, citestyle = draft, natbib=true]{biblatex}
\bibliography{literature}
\usepackage{hyperref}
\newcommand{\drftcite}[1]{\cite{#1}}
\begin{document}
\par This is shown in \drftcite{Author1:2000:Topic}.
\printbibliography
\end{document}
这使
此处的引用是一个超链接。
答案2
如果您只想要一个\drftcite
打印命令bibkey
并且仍然希望能够使用适当的其他引用命令,您可以轻松地定义\drftcite
自己。
\DeclareCiteCommand{\drftcite}
{\usebibmacro{prenote}}
{\printfield[bibhyperref]{entrykey}}
{\multicitedelim}
{\usebibmacro{postnote}}
该命令可以像任何其他 cite 命令一样使用。
平均能量损失
\documentclass{article}
\usepackage[backend=bibtex, style=authoryear, natbib=true]{biblatex}
\usepackage{hyperref}
\addbibresource{biblatex-examples.bib}
\DeclareCiteCommand{\drftcite}
{\usebibmacro{prenote}}
{\printfield[bibhyperref]{entrykey}}
{\multicitedelim}
{\usebibmacro{postnote}}
\begin{document}
\drftcite{cicero} and \drftcite{knuth:ct:a}
\printbibliography
\end{document}