具有相同计数器的多个书目

具有相同计数器的多个书目

下列的这个例子对参考书目中的条目进行编号,并这个例子为了有多个参考书目,我可以用单独的计数器显示两个参考书目。

我想让两个参考书目使用相同的计数器。为此,我认为我可以使用enumitem下面的 MWE 中的类似方法。但是,由于某种原因,这不起作用。我做错了什么?有没有办法使用或以其他方式让两个参考书目使用单个计数器enumitem

\documentclass{article}
\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@article{Doe2012a,
    author  = {J. Doe},
    title   = {Lorem Ipsum -- Part I},
    journal = {J. Dolor Sit Am.},
    volume  = {1},
    pages   = {1--10},
    month   = {1},
    year    = {2012},
}

@article{Doe2012b,
    author  = {J. Doe},
    title   = {Lorem Ipsum -- Part II},
    journal = {J. Dolor Sit Am.},
    volume  = {2},
    pages   = {11--20},
    month   = {2},
    year    = {2012},
}

@book{Doe,
    author    = {J. Doe},
    title     = {Lorem Ipsum -- Complete Works},
    publisher = {{Dolor S. Amet and Sons}},
    year      = {2011},
}
\end{filecontents}
\usepackage[backend=biber, sorting=nty, style=authoryear]{biblatex}
\usepackage{enumitem}
\addbibresource{\jobname.bib}
\defbibenvironment{bibliography}
  {\begin{enumerate}[resume]
     {}
     {\setlength{\leftmargin}{\bibhang}%
      \setlength{\itemindent}{-\leftmargin}%
      \setlength{\itemsep}{\bibitemsep}%
      \setlength{\parsep}{\bibparsep}}}
  {\end{enumerate}}
  {\item}

\begin{document}
\nocite{*}
\printbibliography[title=Articles, type=article]
\printbibliography[title={Books}, type=book]
\end{document}

答案1

此处的简单问题[resume]是 biblatex 书目打印引入了额外的分组,因此我们不会执行类似

\documentclass{article}
\usepackage{enumitem}

\begin{document}

\begin{enumerate}[resume]
  \item Lorem
  \item ipsum
\end{enumerate}

\begin{enumerate}[resume]
  \item dolor
  \item sit
\end{enumerate}

\end{document}

我们确实执行

\documentclass{article}
\usepackage{enumitem}

\begin{document}

\begingroup
\begin{enumerate}[resume]
  \item Lorem
  \item ipsum
\end{enumerate}
\endgroup

\begingroup
\begin{enumerate}[resume]
  \item dolor
  \item sit
\end{enumerate}
\endgroup

\end{document}

但该[resume]功能是本地的,因此编号只是重新开始。

解决这个问题的一种方法已经被提及保罗·斯坦利 在评论中:使用命名resume键。

\documentclass{article}

\usepackage[backend=biber, sorting=nty, style=authoryear]{biblatex}
\usepackage{enumitem}

\defbibenvironment{bibliography}
  {\begin{enumerate}[resume=bib]}
  {\end{enumerate}}
  {\item}

\addbibresource{biblatex-examples.bib}

\begin{document}
\nocite{sigfridsson,worman,geer,cicero,yoon,aksin}
\printbibliography[title=Articles, type=article]
\printbibliography[title={Books}, type=book]
\end{document}

两个连续编号的参考书目。

相关内容