我有一个具体的问题。我正在使用 classicthesis,我需要 back reference 包
\usepackage[hyperpageref]{backref}
它运行得很好,但我想知道是否可以在参考部分引用的页码前添加声明“引用页数”,并将所有内容包含在括号内。例如:
我拥有的:
Hart, J. (1967)。 记忆和记忆监控过程。《言语学习与言语行为杂志》,6(5),685–691。12、13
我需要的是:
Hart, J. (1967)。 记忆和记忆监控过程。《言语学习与言语行为杂志》,6(5),685–691。(引自第 12、13 页)
答案1
(第 35 行)中有一个选项classicthesis-config.tex
您必须设置为 true:
\setboolean{enable-backrefs}{true} % true false
无需调用\usepackage[hyperpageref]{backref}
。请查看同一文件的第 157 行至第 180 行以了解更多详细信息。
答案2
这里有一个选项重新定义\backrefalt
以产生所需的格式(请注意,如果书目项目被引用多次则使用复数形式,而对于仅被引用一次的项目则使用单数形式):
\documentclass{scrbook}
\usepackage{classicthesis}
\usepackage[hyperpageref]{backref}
\hypersetup{colorlinks=true}
% this section is just for the example
\usepackage{filecontents}
\begin{filecontents*}{biblioxxxyyy.bib}
@article{testa,
author={The Author A.},
journal = {Example Journal A.},
pages = {5-10},
title = {{A Title}},
year = {2015}
}
@article{testb,
author={The Author B.},
journal = {Example Journal B.},
pages = {10-20},
title = {{B Title}},
year = {2014}
}
\end{filecontents*}
% end of the section that is just for the example
\renewcommand*{\backrefalt}[4]{%
\ifcase #1 %
No citations.%
\or
(Cited page #2.)%
\else
(Cited pages #2.)
\fi
}
\begin{document}
\cite{testa}\cite{testb}\newpage\cite{testa}\newpage\cite{testa}
\bibliographystyle{plain}
\bibliography{biblioxxxyyy}
\end{document}
由此得出的参考书目: