記事のページ合計 - Biblatex

記事のページ合計 - Biblatex

記事の総ページ数を示す記事の引用方法を知りたいです。ファイルpagetotalにフィールドを追加し.bib、プリアンブルに次のコードを追加しました。

\DeclareFieldFormat{pagetotal}{\mkpagetotal[bookpagination]{#1~pp.}}

ただし、このコードの有無にかかわらず、またはPagetotalの代わりに を使用したバリエーションはすべてpagetotal失敗します。当然ながら、キーは、bookpaginationこのフィールドが書籍用にフォーマットされる方法にのみ影響する可能性があります。そのため、正しい方向を指し示すものがあれば、非常に役立ちます。

答え1

biblatexによって実装されるデフォルトのスタイルは、、、などの書籍のようなエントリ タイプのフィールドstandard.bbxのみを印刷します。当然、はこれらのタイプには含まれていないため、デフォルトでは は無視されます。記事には通常、その記事が掲載されているジャーナルの最初と最後のページを示すフィールドが付属しているという事実を考慮すると、このフィールドは確かに不要であると思われます。これは、(一般に)その情報値は、このフィールドに対する小さな計算によって取得できるためです(一部のオンライン ジャーナルにはページがないため、そのような場合には役立つ場合があります)。pagetotal@book@collection@booklet@thesis@articlepagetotalpagespagetotalpages

を出力に含めるには、冗長性にもかかわらず、のドライバーにpagetotalコマンドを含める必要があります。これを行うには、 によってのみ使用されるマクロにフックします。\printfield{pagetotal}%@articlenote+pages@article

\renewbibmacro*{note+pages}{%
  \printfield{note}%
  \setunit{\bibpagespunct}%
  \printfield{pages}%
  \setunit{\bibpagespunct}% this ...
  \printfield{pagetotal}% ... and this is new
  \newunit}

また、フィールドが適切にフォーマットされていることを確認します(標準ではbookpagination役に立たないため)

\DeclareFieldFormat[article]{pagetotal}{\mkpagetotal[pagination]{#1}}

ムウェ

\documentclass{article}  
\usepackage[style=authoryear, backend=biber]{biblatex}
\usepackage{filecontents}
\usepackage{hyperref}
\begin{filecontents*}{\jobname.bib}
@article{BarPalNumEst,
  author    = {Hilary C. Barth and Annie M. Paladino},
  title     = {The development of numerical estimation},
  subtitle  = {Evidence against a representational shift},
  journal   = {Developmental Science},
  volume    = {14},
  number    = {1},
  pages     = {125-135},
  date      = {2011-01},
  doi       = {10.1111/j.1467-7687.2010.00962.x},
  gender    = {pf},
  pagetotal = {11},
}
\end{filecontents*}
\addbibresource{\jobname.bib}

\DeclareFieldFormat[article]{pagetotal}{\mkpagetotal[pagination]{#1}}
\renewbibmacro*{note+pages}{%
  \printfield{note}%
  \setunit{\bibpagespunct}%
  \printfield{pages}%
  \setunit{\bibpagespunct}%
  \printfield{pagetotal}%
  \newunit}

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

ここに画像の説明を入力してください


この変更は、現在不足している他のエントリ タイプに対しても行うことができますpagetotal@inbook@incollectionおよび類似のものについては、 に対して変更を行うことができます。ただし、これらのエントリはすべて、フィールドchapter+pagesに適切な物理ページ番号を含む必要があるため、ここではこの変更は特に不要と思われます。pages

\renewbibmacro*{chapter+pages}{%
  \printfield{chapter}%
  \setunit{\bibpagespunct}%
  \printfield{pages}%
  \setunit{\bibpagespunct}%
  \printfield{pagetotal}%
  \newunit}

関連情報