![Biblatex APA 同一作者的多部作品,输出错误](https://linux22.com/image/427231/Biblatex%20APA%20%E5%90%8C%E4%B8%80%E4%BD%9C%E8%80%85%E7%9A%84%E5%A4%9A%E9%83%A8%E4%BD%9C%E5%93%81%EF%BC%8C%E8%BE%93%E5%87%BA%E9%94%99%E8%AF%AF.png)
我在使用 biblatex/biber 和 apa 样式进行引用时遇到了问题。我有一些作品有同一个第一作者。我得到的输出有点奇怪,即使我没有同一年同一作者的作品,文内引用也包含作者姓名的首字母。这看起来像:(E. Diener et al.,2018,S. 3),这个问题也出现在有两位作者的作品中:(E. Diener & Diener,1995,S. 653)。
我需要的输出看起来更像是这样的:(Diener et al.,2018,S.3);(Diener&Diener,1995,S.653)。
我也尝试使用uniquelist=false
或来解决这个问题uniquelist=minyear
,但不幸的是它没有帮助。
有人知道如何解决这个问题吗?这对我真的很有帮助。
查找附件中的 MWE 和我的 .bib 条目:
梅威瑟:
\documentclass[parsikip=full,oneside, 12pt]{scrartcl}
\usepackage[left=2.8cm, right=2.8cm,top=2.1cm, bottom=19mm,includehead=false,footskip=10mm, bindingoffset=0mm]{geometry}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}
\usepackage[german=guillemets]{csquotes}
\usepackage{microtype}
\usepackage{color}
\usepackage[style=apa, datelabel=comp, uniquelist=false, backend=biber]{biblatex}
\addbibresource{litSM.bib}
\usepackage[colorlinks=true, linktoc = all, draft = false, linkcolor=black, citecolor=black, urlcolor=blue]{hyperref}
\usepackage[acronym, nopostdot, nogroupskip, nonumberlist, nomain]{glossaries}
\makeglossaries
\newacronym{passiv}{PNSM}{passive Nutzung sozialer Medien}
\setglossarystyle{listdotted}
\setlength{\glslistdottedwidth}{.6\linewidth}
\clubpenalty=10000 % Verhindert einzelne Absatzzeile am Ende oder am Anfang
\widowpenalty=10000 % einer Seite.
\displaywidowpenalty=10000 %
\usepackage{setspace}
\linespread{1.5}
\newcommand{\anf}[1]{\glqq{}#1{}\grqq{}}
\AtBeginDocument{%
% \renewcommand{\BCBL}{,}%
% \renewcommand{\BCBT}{,}%
}
\ExecuteBibliographyOptions{maxcitenames=2}
\DeclareFieldFormat{citehyperref}{%
\DeclareFieldAlias{bibhyperref}{noformat}% Avoid nested links
\bibhyperref{#1}}
\DeclareFieldFormat{textcitehyperref}{%
\DeclareFieldAlias{bibhyperref}{noformat}% Avoid nested links
\bibhyperref{%
#1%
\ifbool{cbx:parens}
{\bibcloseparen\global\boolfalse{cbx:parens}}
{}}}
\savebibmacro{cite}
\savebibmacro{textcite}
\renewbibmacro*{cite}{%
\printtext[citehyperref]{%
\restorebibmacro{cite}%
\usebibmacro{cite}}}
\renewbibmacro*{textcite}{%
\ifboolexpr{
( not test {\iffieldundef{prenote}} and
test {\ifnumequal{\value{citecount}}{1}} )
or
( not test {\iffieldundef{postnote}} and
test {\ifnumequal{\value{citecount}}{\value{citetotal}}} )
}
{\DeclareFieldAlias{textcitehyperref}{noformat}}
{}%
\printtext[textcitehyperref]{%
\restorebibmacro{textcite}%
\usebibmacro{textcite}}}
\renewcommand{\baselinestretch}{1.2}
\setlength{\parskip}{\smallskipamount}
\setlength{\parindent}{0pt}
%%%%% Oxford-Komma vor & %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\DeclareDelimFormat[bib,biblist]{finalnamedelim:apa:family-given}{%
\ifthenelse{\value{listcount}>\maxprtauth}
{}
{\addcomma\space\&\space}}
\newcommand{\zittext}[2]{\parencite[S. #2]{#1}}
\newcommand{\hervor}[2]{\parencite[S. #2, Hervorheb. i.O.]{#1}}
\begin{document}
\pagenumbering{roman}
\tableofcontents
\clearpage
\printglossary[title=Abkürzungsverzeichnis, type=\acronymtype]
\newacronym{pim}{PIM}{politische Internet-Memes}
\newacronym{mk}{MK}{Meme-Kommunikatoren\_innen}
\clearpage
\setcounter{page}{1}\pagenumbering{arabic}
\input{Einleitung}
\printbibliography[heading=bibintoc]
\end{document}
以下是该作者的所有书目条目:
article{dienerdiener95,
title={Cross-Cultural Correlates of Life Satisfaction and Self-Esteem},
author={Diener, Ed and Diener, Marissa},
journal={Journal of Personality and Social Psychology},
volume={68},
number={4},
pages={653--663},
year={1995},
}
@incollection{sciencewb,
title={Subjective Well-Being},
author={Diener, Eduard},
editor={Diener, Eduward},
booktitle={The Science of Well-Being. The Collected Works of Ed Diener},
year={2009},
pages={11--58},
publisher={Springer},
doi={10.1007/978-90-481-2350-6_2}
}
@incollection{happiness,
title={THE OBJECTIVE BENEFITS OF SUBJECTIVE WELL-BEING},
author={De Neve, Jan-Emmanuel and Diener, Ed and Tay, Louis and Xuereb, Cody},
editor={Helliwell, John and Layard, Richard and Sachs, Jeffrey},
booktitle={WORLD HAPPINESS REPORT 2013},
pages={54--79},
year={2013},
publisher={UN Sustainable Development Solutions Network}
}
@article{diener18,
title={Advances in subjective well-being research},
author={Diener, Ed and Oishi, Shigehiro and Tay, Louis},
journal={Nature Human Behaviour},
volume={2},
number={4},
pages={253--260},
year={2018},
doi={10.1038/s41562-018-0307-6}
}
@article{dieneradvopen,
title={Advances and Open Questions in the Science of Subjective Well-Being},
author={Diener, Ed and Lucas, Richard E and Oishi, Shigehiro},
journal={Collabra: Psychology},
volume={4},
number={1},
year={2018},
pages={1--49},
doi={10.1525/collabra.115}
}
先感谢您!
答案1
dienerdiener95
当尝试引用两个具有相同姓氏的作者以及第二个具有相同姓氏的条目时,就会出现问题。
数据库似乎对第一个条目中的双重姓氏感到困惑,@article
并在另一条条目中重复出现。此后,一切都变得糟糕起来。
我找到了一个临时的“解决方法”,即在第一个条目的第二作者的第一个字母内附上内容{}
,这样就“修改”了它,但没有打印任何不同的东西。在我看来,这似乎是一个错误。也许最新版本...
原始结果
“治愈”之后
\documentclass[parsikip=full,oneside, 12pt]{scrartcl}
\usepackage[left=2.8cm, right=2.8cm,top=2.1cm, bottom=19mm,includehead=false,footskip=10mm, bindingoffset=0mm]{geometry}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}
\usepackage[german=guillemets]{csquotes}
\usepackage{microtype}
\usepackage{color}
\usepackage[style=apa,
datelabel=comp,
% uniquelist=false,
backend=biber]{biblatex}
\begin{filecontents*}[overwrite]{\jobname45.bib}
@article{dienerdiener95,
title={Cross-Cultural Correlates of Life Satisfaction and Self-Esteem},
author={Diener, Ed and {D}iener, Marissa}, % added {} <<<<<
journal={Journal of Personality and Social Psychology},
volume={68},
number={4},
pages={653--663},
year={1995},
}
@incollection{sciencewb,
title={Subjective Well-Being},
author={Diener, Eduard},
editor={Diener, Eduard},
booktitle={The Science of Well-Being. The Collected Works of Ed Diener},
year={2009},
pages={11--58},
publisher={Springer},
doi={10.1007/978-90-481-2350-6_2}
}
@incollection{happiness,
title={THE OBJECTIVE BENEFITS OF SUBJECTIVE WELL-BEING},
author={De Neve, Jan-Emmanuel and Diener, Ed and Tay, Louis and Xuereb, Cody},
editor={Helliwell, John and Layard, Richard and Sachs, Jeffrey},
booktitle={WORLD HAPPINESS REPORT 2013},
pages={54--79},
year={2013},
publisher={UN Sustainable Development Solutions Network}
}
@article{diener18,
title={Advances in subjective well-being research},
author={Diener, Ed and Oishi, Shigehiro and Tay, Louis},
journal={Nature Human Behaviour},
volume={2},
number={4},
pages={253--260},
year={2018},
doi={10.1038/s41562-018-0307-6}
}
@article{dieneradvopen,
title={Advances and Open Questions in the Science of Subjective Well-Being},
author={Diener, Ed and Lucas, Richard E and Oishi, Shigehiro},
journal={Collabra: Psychology},
volume={4},
number={1},
year={2018},
pages={1--49},
doi={10.1525/collabra.115}
}
\end{filecontents*}
\addbibresource{\jobname45.bib}
\usepackage[colorlinks=true, linktoc = all, draft = false, linkcolor=black, citecolor=black, urlcolor=blue]{hyperref}
\usepackage[acronym, nopostdot, nogroupskip, nonumberlist, nomain]{glossaries}
\makeglossaries
\newacronym{passiv}{PNSM}{passive Nutzung sozialer Medien}
\setglossarystyle{listdotted}
\setlength{\glslistdottedwidth}{.6\linewidth}
\clubpenalty=10000 % Verhindert einzelne Absatzzeile am Ende oder am Anfang
\widowpenalty=10000 % einer Seite.
\displaywidowpenalty=10000 %
\usepackage{setspace}
\linespread{1.5}
\newcommand{\anf}[1]{\glqq{}#1{}\grqq{}}
\AtBeginDocument{%
% \renewcommand{\BCBL}{,}%
% \renewcommand{\BCBT}{,}%
}
\ExecuteBibliographyOptions{maxcitenames=2}
\DeclareFieldFormat{citehyperref}{%
\DeclareFieldAlias{bibhyperref}{noformat}% Avoid nested links
\bibhyperref{#1}}
\DeclareFieldFormat{textcitehyperref}{%
\DeclareFieldAlias{bibhyperref}{noformat}% Avoid nested links
\bibhyperref{%
#1%
\ifbool{cbx:parens}
{\bibcloseparen\global\boolfalse{cbx:parens}}
{}}}
\savebibmacro{cite}
\savebibmacro{textcite}
\renewbibmacro*{cite}{%
\printtext[citehyperref]{%
\restorebibmacro{cite}%
\usebibmacro{cite}}}
\renewbibmacro*{textcite}{%
\ifboolexpr{
( not test {\iffieldundef{prenote}} and
test {\ifnumequal{\value{citecount}}{1}} )
or
( not test {\iffieldundef{postnote}} and
test {\ifnumequal{\value{citecount}}{\value{citetotal}}} )
}
{\DeclareFieldAlias{textcitehyperref}{noformat}}
{}%
\printtext[textcitehyperref]{%
\restorebibmacro{textcite}%
\usebibmacro{textcite}}}
\renewcommand{\baselinestretch}{1.2}
\setlength{\parskip}{\smallskipamount}
\setlength{\parindent}{0pt}
%%%%% Oxford-Komma vor & %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%\DeclareDelimFormat[bib,biblist]{finalnamedelim:apa:family-given}{%
% \ifthenelse{\value{listcount}>\maxprtauth}
% {}
% {\addcomma\space\&\space}}
\newcommand{\zittext}[2]{\parencite[S. #2]{#1}}
\newcommand{\hervor}[2]{\parencite[S. #2, Hervorheb. i.O.]{#1}}
\begin{document}
\pagenumbering{roman}
\tableofcontents
\clearpage
\printglossary[title=Abkürzungsverzeichnis, type=\acronymtype]
\newacronym{pim}{PIM}{politische Internet-Memes}
\newacronym{mk}{MK}{Meme-Kommunikatoren\_innen}
\clearpage
\setcounter{page}{1}\pagenumbering{arabic}
\section{Einleitung}
\parencite{dienerdiener95}
\parencite{sciencewb}
\parencite{happiness}
\parencite{diener18}
\parencite{dieneradvopen}
\printbibliography
\end{document}
我整理了一份 MWE 来帮助查明问题的根源
\documentclass[12pt]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[english]{babel}
\usepackage[backend = biber, style = apa]{biblatex}
\begin{filecontents*}[overwrite]{\jobname48.bib}
@article{mooreii,
author = {Moore, Gordon and Moore, Eduard},
title = {Cramming more components onto integrated circuits},
journaltitle = {Electronics},
year = 1965,
volume = 38,
number = 8,
pages = {114-117},
}
@book{kullbackii,
author = {Moore, Gordon and Kullback, David},
title = {Information Theory and Statistics},
year = 1959,
publisher = {John Wiley \& Sons},
location = {New York},
}
\end{filecontents*}
\addbibresource{\jobname48.bib}
\begin{document}
\parencite{mooreii}
\parencite{kullbackii}
\printbibliography
\end{document}