以下 MWE 使用 打印按章节细分的累积参考书目biblatex
。但是计数器似乎有问题,\therefsegment
因为我得到的是“参考文献第 2 章”而不是“参考文献第 1 章”。
\documentclass{book}
\usepackage[refsegment=chapter, backend=bibtex]{biblatex}
\defbibheading{bibbook}[\bibname]{\chapter{#1}}
\defbibheading{subbib}[\refname\space\chaptername\space\therefsegment]{\section{#1}}
\addbibresource{biblatex-examples.bib}
\begin{document}
\frontmatter
\tableofcontents
\chapter{Preface}
\mainmatter
\chapter{First}
\nocite{*}
\backmatter
\setcounter{secnumdepth}{0}
\printbibheading[heading=bibbook]
\bibbysegment[heading=subbib]
\end{document}
答案1
参考段编号从零开始。选项设置refsegment=chapter
大致相当于调用\newrefsegment
前 \chapter
。这可确保章节标题中的引用不会被分配给前一个参考段。
biblatex 手册中题为“多个参考书目”的部分演示了如何使章节和参考段/节编号保持同步。以下是根据您的示例改编的摘录。
\documentclass[openany]{book}
\usepackage[defernumbers,backend=bibtex]{biblatex}
\usepackage{hyperref}
\defbibheading{subbibintoc}
[\refname\ for Chapter \ref{refsegment:\therefsection\therefsegment}]
{\section*{#1}\addcontentsline{toc}{section}{#1}}
\addbibresource{biblatex-examples.bib}
\begin{document}
\frontmatter
\tableofcontents
\chapter{Preface}
\mainmatter
\chapter{First chapter}
\begin{refsegment}
\nocite{glashow,bertram,markey}
\end{refsegment}
\chapter{Second chapter}
\begin{refsegment}
\nocite{companion,ctan,cms}
\end{refsegment}
\backmatter
\chapter{Appendix}
\printbibheading[heading=bibintoc]
\bibbysegment[heading=subbibintoc]
\end{document}