在 natbib 中显示

在 natbib 中显示

我在网上看到的问题只是biblatex为了这个答案,不幸的是我正在使用natbib并且不想切换。

这些是我用于参考文献和参考书目的软件包:

% PACKAGES FOR REFERENCES & BIBLIOGRAPHY
\usepackage[backref=page, colorlinks=true,
 linkcolor=bluepoli, anchorcolor=bluepoli,
 citecolor=bluepoli, filecolor=bluepoli,
 menucolor=black, runcolor=black,
 urlcolor=bluepoli, linktocpage=true,
 pagebackref = true]{hyperref}
\usepackage{bookmark}
\usepackage{cleveref}
\usepackage[square, numbers, sort&compress]{natbib} 
\bibliographystyle{abbrvnat}

现在我的输出如下

在此处输入图片描述

但我想要的是类似这样的东西:

在此处输入图片描述

我尝试在线搜索,但我再说一遍,所有答案似乎只对 bib latex 有效,而不对 natbib 有效。

答案1

对于该hyperref选项,pagebackref您可以通过重新定义命令来格式化反向引用\backrefalt,如手动的backref 包(使用 hyperref 选项时加载)。

#1的参数\backrefalt是反向引用的数量。\ifcase下面的 MWE 中的语句检查这个数字是 0、1 还是 2+,并相应地格式化反向引用。

请注意,您不需要两者backref=page,并且pagebackref=true作为超链接选项,其中任何一个就足够了。

梅威瑟:

\documentclass{article}
\usepackage[colorlinks=true,
linktocpage=true,
pagebackref=true]{hyperref}
\usepackage{bookmark}
\usepackage{cleveref}
\usepackage[square, numbers, sort&compress]{natbib} 

\renewcommand*{\backrefalt}[4]{%
\ifcase #1 %
No citations.%
\or
(cit. on p. #2).%
\else
(cit. on pp. #2).%
\fi
}

\begin{document}
A citation: \cite{article-minimal}.

\bibliographystyle{abbrvnat}
\bibliography{xampl}
\end{document}

结果:

在此处输入图片描述

相关内容