Biblatex で一意でない名前の頭文字が欠落している

Biblatex で一意でない名前の頭文字が欠落している

同じ姓を持つ異なる著者を引用していますがbiblatex、通常は区別するためにイニシャルが追加されますが、1 つの引用に同じ名前の著者が 2 人いる場合は、最初の著者のイニシャルのみが追加されます。2 番目の著者のイニシャルも追加するにはどうすればよいですか?

bibファイル:

@Book{MuthenMuthen19982017a,
  title     = {{Mplus User's Guide}},
  publisher = {Muth{\'e}n \& Muth{\'e}n},
  year      = {1998--2017},
  author    = {Muth{\'e}n, L. K. and Muth{\'e}n, B. O.},
  address   = {Los Angeles, CA},
  edition   = {8},
}

@Article{Muthen1983a,
  author  = {Muth{\'e}n, B. O.},
  title   = {{Latent variable structural equation modeling with categorical data}},
  journal = {{Journal of Econometrics}},
  year    = {1983},
  volume  = {22},
  pages   = {43--65},
}

texファイル:

\documentclass{book}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[english]{babel}

\usepackage{csquotes}
\usepackage[style=apa, backend=biber, bibencoding=utf8]{biblatex}
\addbibresource{example.bib}

\begin{document}
\noindent
\parencite{Muthen1983a}\\
\parencite{MuthenMuthen19982017a}

\printbibliography
\end{document}

出力:

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

答え1

私がコメントを理解していればhttps://blog.apastyle.org/apastyle/2014/01/when-to-use-author-initials-for-text-citations.html正確に言えば、APA スタイルでは、筆頭著者として同じ姓を持つ異なる著者を区別するためにイニシャルのみを使用します。つまり、私たちが観察している動作は、APA が望んでいる結果であるということです。

labelname:doname幸いなことに、この場合、引用中のすべての名前の曖昧さを解消するように動作を変更するのは非常に簡単です。少し再定義するだけで済みます。元の定義(現在のバージョン7.7では、biblatex-apa77-96ページにあります。apa.cbx) に関連する初期テストを削除しました\ifuniqueprimaryauthor

一般的に、biblatex-apaたとえ「簡単なはず」であっても、変更するのは非常に難しい場合があることに注意する必要があります。したがって、APA スタイルに従うつもりがない場合は、大幅にカスタマイズされて複雑なスタイルではなく、標準スタイルのいずれかから始める方が通常は賢明ですbiblatex-apa

\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[english]{babel}
\usepackage{csquotes}
\usepackage[style=apa, backend=biber]{biblatex}

\renewbibmacro*{labelname:doname}[8]{%
  \ifcase\value{uniquename}%
    \ifuseprefix
      {\usebibmacro{name:family}{#1}{#3}{#5}{\relax}}
      {\usebibmacro{name:family}{#1}{#3}{\relax}{\relax}}%
  \or
     \ifuseprefix
       {\usebibmacro{name:given-family}{#1}{#4}{#5}{\relax}}
       {\usebibmacro{name:given-family}{#1}{#4}{\relax}{\relax}}%
  \or
     \ifuseprefix
       {\usebibmacro{name:given-family}{#1}{#3}{#5}{\relax}}
       {\usebibmacro{name:given-family}{#1}{#3}{\relax}{\relax}}%
  \fi
  \usebibmacro{name:andothers}}

\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@book{MuthenMuthen19982017a,
  title     = {{Mplus} User's Guide},
  publisher = {Muthén \& Muthén},
  date      = {1998/2017},
  author    = {Muthén, L. K. and Muthén, B. O.},
  address   = {Los Angeles, CA},
  edition   = {8},
}
@article{Muthen1983a,
  author  = {Muthén, B. O.},
  title   = {Latent variable structural equation modeling with categorical data},
  journal = {Journal of Econometrics},
  year    = {1983},
  volume  = {22},
  pages   = {43--65},
}
\end{filecontents}

\addbibresource{\jobname.bib}

\begin{document}
\parencite{Muthen1983a}

\parencite{MuthenMuthen19982017a}

\printbibliography
\end{document}

(BO ムテン、1983)//(LK ムテン & BO ムテン、1998–2017)

このyearフィールドには整数のみが格納されることに注意してください。年/日付の範囲については、フィールドdateと ISO 8601 入力形式 (例date = {1998/2017},) を使用します。

bibencoding=utf8MWE ではfrombiblatexを自動検出するため、明示的な指定は必要ありませんでした。ファイルは実際には UTF-8 を使用しておらず、US-ASCII のみであったため、MWE を UTF-8 に切り替えました。bibencoding\usepackage[utf8]{inputenc}.bib

関連情報