定義された数の参考文献エントリの後に新しいページ

定義された数の参考文献エントリの後に新しいページ

biblatex-backendを使用していますbiber。参考文献にリストされる項目の数を、ページごとに指定された数に制限することはできますか? たとえば、参考文献の項目が 10 個を超えると新しいページを表示したい場合などです。

どうもありがとう。

答え1

ほとんどの設定で機能する、これを行う簡単な方法は次のとおりです。

\documentclass[british]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{babel}
\usepackage{csquotes}

\usepackage[style=numeric, backend=biber]{biblatex}

\newcounter{bibitemcount}

\renewbibmacro{finentry}{%
  \finentry
  \ifbibliography
    {\stepcounter{bibitemcount}%
     \ifnumless{\value{bibitemcount}}{10}
       {}
       {\newpage
        \setcounter{bibitemcount}{0}}}
    {}%
}

\addbibresource{biblatex-examples.bib}


\begin{document}
\nocite{*}
\printbibliography
\end{document}

しかし、参考文献環境に新しいページを開始するコードを追加する方が少し良いかもしれません。これはスタイルに依存するため、移植性が低くなります。以下の例は 用です。このスタイルのstyle=numericオリジナルは にあります。\defbibenvironment{bibliography}numeric.bbx(biblatex v3.15a の 20-33 行目)

\documentclass[british]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{babel}
\usepackage{csquotes}

\usepackage[style=numeric, backend=biber]{biblatex}

\newcounter{bibitemcount}


\defbibenvironment{bibliography}
  {\list
     {\printtext[labelnumberwidth]{%
        \printfield{labelprefix}%
        \printfield{labelnumber}}}
     {\setlength{\labelwidth}{\labelnumberwidth}%
      \setlength{\leftmargin}{\labelwidth}%
      \setlength{\labelsep}{\biblabelsep}%
      \addtolength{\leftmargin}{\labelsep}%
      \setlength{\itemsep}{\bibitemsep}%
      \setlength{\parsep}{\bibparsep}}%
      \renewcommand*{\makelabel}[1]{\hss##1}}
  {\endlist}
  {\stepcounter{bibitemcount}%
      \ifnumless{\value{bibitemcount}}{11}
        {}
        {\newpage
         \setcounter{bibitemcount}{0}}%
   \item}

\addbibresource{biblatex-examples.bib}


\begin{document}
\nocite{*}
\printbibliography
\end{document}

関連情報