在文档末尾单独列出参考书目

在文档末尾单独列出参考书目

我有一份文档,其中每一章都充当参考部分并重置参考计数器。我知道我可以在每章末尾打印单独的参考书目,但我想将它们全部放在文档末尾。例如,如果我有三个章节 A、B、C,我希望文档看起来像:

第一章

...

B章

...

第三章

...

参考书目

第一章

[1]

[2]

...

B章

[1]

[2]

...

第三章

[1]

[2]

...

我的 LaTeX 文档看起来像这样

\usepackage[style=numeric,backend=biber,refsection=chapter]{biblatex}
\addbibresource{mydocument.bib}

\begin{document}

\chapter{A}
... some text here and some \cite{} commands...
\chapter{B}
... some text here and some \cite{} commands...
\chapter{C}
... some text here and some \cite{} commands...

% This will only produce the bibliography for chapter C
% What I'd like to have here is something that will produce
% Bibliography
% Chapter A
% ...
% Chapter B
% ...
% Chapter B
% ...
\printbibliography 

\end{document}

有任何想法吗?

答案1

biblatex满足您的需求。您可以使用:

\bibbysection

文档对此的描述如下:

此命令会自动循环遍历所有参考部分。这相当于\printbibliography为每个部分都发出一个命令,但还有一个额外的好处,就是可以自动跳过没有参考的部分。

根据您的描述,您可能还想要选项defernumbers=true,但是在没有可编译代码的情况下很难说更多。

为了获得每个参考书目章节的具体标题,如评论中所要求的那样,你必须详细说明:

\documentclass{book}

\usepackage[style=numeric,backend=biber,refsection=chapter,defernumbers=true]{biblatex}
\addbibresource{biblatex-examples.bib}

\begin{document}

\chapter{A}

\cite{herrmann}
\cite{kastenholz}

\chapter{B}

\cite{sigfridsson}

\chapter{C}

\cite{massa}

\printbibheading
\printbibliography[section=1,heading=subbibliography,title={References for chapter A}]
\printbibliography[section=2,heading=subbibliography,title={References for chapter B}]
\printbibliography[section=3,heading=subbibliography,title={References for chapter C}]

\end{document}

在此处输入图片描述

达到相同目的的更自动化、更简短的替代方案是(由@moewe 提供):

\documentclass{book}

\usepackage[style=numeric,backend=biber,refsection=chapter,defernumbers=true]{biblatex}
\addbibresource{biblatex-examples.bib}
\defbibheading{bibbysubsect}{\section*{References for Chapter \ref{blx:refsection\therefsection}}}

\begin{document}

\chapter{A}
\label{blx:refsection\therefsection}

\cite{herrmann}
\cite{kastenholz}

\chapter{B}
\label{blx:refsection\therefsection}

\cite{sigfridsson}

\chapter{C}
\label{blx:refsection\therefsection}

\cite{massa}

\printbibheading
\bibbysection[heading=bibbysubsect]

\end{document}

相关内容