Refsegment 编号错误

Refsegment 编号错误

以下 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}

相关内容