
기사의 총 페이지 수를 표시하는 기사 인용 방법을 알고 싶습니다. 파일 pagetotal
에 필드를 추가 .bib
하고 서문에 다음 코드를 추가했습니다.
\DeclareFieldFormat{pagetotal}{\mkpagetotal[bookpagination]{#1~pp.}}
그러나 이 코드가 있거나 없거나 모두 실패 Pagetotal
합니다 pagetotal
. 당연히 키는 bookpagination
이 필드가 책에 대해 형식화되는 방식에만 영향을 미칠 수 있습니다. 따라서 올바른 방향을 가리키는 포인터는 매우 도움이 될 것입니다.
답변1
기본 스타일은 , , 등과 같은 책과 같은 항목 유형에 대한 필드 만 인쇄 biblatex
하여 구현됩니다. 당연히 은 이러한 유형에 포함되지 않으므로 기본적으로 은 무시됩니다. 기사가 일반적으로 해당 기사 를 찾을 수 있는 저널의 첫 번째 페이지와 마지막 페이지를 나타내는 필드 와 함께 제공된다는 사실을 고려하면 (일반적으로) 해당 필드 에서 작은 계산을 통해 정보 가치를 얻을 수 있기 때문에 이 필드는 실제로 불필요해 보입니다. (일부 온라인 저널에는 해당 페이지가 없으므로 이러한 경우 유용할 수 있습니다).standard.bbx
pagetotal
@book
@collection
@booklet
@thesis
@article
pagetotal
pages
pagetotal
pages
출력에 을 포함하려면 중복성에도 불구하고 의 드라이버에 pagetotal
명령을 포함해야 합니다 . 이를 위해 우리는 다음에서만 사용되는 매크로에 연결합니다.\printfield{pagetotal}%
@article
note+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}}
MWE
\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}