
私は最初の著者名だけを表示したいので、maxnames
BibLaTeXのオプションを次のように設定しました。1
等ただし、書籍の場合は、専用の を定義したいと思いますmaxnames
。たとえば、現在、IUPAC Gold Book の引用は次のようになります。
IUPAC:「化学用語集(ゴールドブック)」ADマクノート 等、編集者。Blackwell Scientific Publications、オックスフォード、第2版、1997年。DOI: 10.1351/goldbook。
リストを切り捨てるのではなく、2番目 (最後) の編集者 A. Wilkinson も表示したいと思います。 これまで、このオプションを使用する正確なコードを見つけることができませんでした。 にもマクロmaxnames
にも表示されないので、関数で使用されていると思いますが、その関数のコードはわかりません。author
editor
\printnames
著者数と編集者数を分離することは可能でしょうか?
編集: MWEを追加しました
\documentclass{article}
\usepackage{hyperref}
\usepackage[%
backend = biber,%
style = trad-abbrv,%
citestyle = numeric-comp,%
sorting = nty,%
minnames = 1,%
maxnames = 1%
]{biblatex}
\bibliography{references}
\begin{filecontents}{references.bib}
@book{IUPAC1997,
address = {Oxford},
author = {IUPAC},
doi = {10.1351/goldbook},
edition = {2},
editor = {McNaught, A. D. and Wilkinson, A.},
isbn = {0-9678550-9-8},
publisher = {Blackwell Scientific Publications},
title = {{Compendium of Chemical Terminology (the “Gold Book”)}},
year = {1997}
}
\end{filecontents}
\begin{document}
This should be cited.\cite{IUPAC1997}
\printbibliography[heading = bibnumbered]
\end{document}
私のローカル ドキュメントでは、trad-abbrv
bibstyle を使用して一部を変更しましたが (斜体テキストの代わりに引用符を使用するなど)、この問題に関連するものは何もありません。そのため、スタイル付きの短い MWE を共有することを好みますtrad-abbrv
。
答え1
biblatex
およびオプションmaxnames
はminnames
すべての名前に同様に適用されます。異なるタイプの異なる名前をより細かく制御したい場合は、関連する bibmacros を変更する必要があります。この場合、目的の結果を得るにはいくつかの方法がありますが、それぞれ意味が異なります。
以下では、タイトルの後にmaxnames=1,
さらに s を印刷するために、1 つの bibmacro のみを再定義します。editor
\documentclass{article}
\usepackage[
backend = biber,
style = trad-abbrv,
citestyle = numeric-comp,
sorting = nty,
minnames = 1,
maxnames = 1,
]{biblatex}
\usepackage{hyperref}
\renewbibmacro*{byeditor+others}{%
\ifnameundef{editor}
{}
{\printnames[byeditor][-\value{listtotal}]{editor}%
\setunit{\addcomma\space}%
\usebibmacro{editorlstr}%
\clearname{editor}%
\newunit}%
\usebibmacro{byeditorx}%
\usebibmacro{bytranslator+others}}
\begin{filecontents}{\jobname.bib}
@book{IUPAC1997,
address = {Oxford},
author = {IUPAC},
doi = {10.1351/goldbook},
edition = {2},
editor = {McNaught, A. D. and Wilkinson, A.},
isbn = {0-9678550-9-8},
publisher = {Blackwell Scientific Publications},
title = {Compendium of Chemical Terminology (the “Gold Book”)},
year = {1997},
}
\end{filecontents}
\addbibresource{\jobname.bib}
\begin{document}
This should be cited. \cite{IUPAC1997}
\printbibliography[heading = bibnumbered]
\end{document}