apa7 和 biblatex

apa7 和 biblatex

apa7我对and包和参考书目部分有疑问biblatex。我用西班牙语写作,所以我写了一行\setcounter{smartand}{1}以避免在有 3 个以上作者的文档中使用“&”符号。但是,虽然文本中的引用看起来不错(根据上下文使用“e”或“y”),但在参考书目部分,符号“&”仍然出现。我该如何避免在参考部分使用该符号?

答案1

biblatex-apa有一个特殊名称分隔符宏(name:delim:apa:family-given),如果要使用,则需要重新定义smartand。由于方式smartand是通过重置的,biblatex-apa我们还需要在中添加两行代码\DefineBibliographyExtras{spanish}

我们一起

\documentclass[spanish]{apa7}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{babel}
\usepackage{csquotes}

\usepackage[style=apa, backend=biber]{biblatex}

\makeatletter
\DefineBibliographyExtras{spanish}{%
  \setcounter{smartand}{1}%
  \let\lbx@finalnamedelim=\lbx@es@smartand
  \let\lbx@finallistdelim=\lbx@es@smartand
}

\renewbibmacro*{name:delim:apa:family-given}[1]{%
  \ifnumgreater{\value{listcount}}{\value{liststart}}
    {\ifboolexpr{
       test {\ifnumless{\value{listcount}}{\value{liststop}}}
       or
       test \ifmorenames
     }
       {\printdelim{multinamedelim}}
       {\lbx@finalnamedelim{#1}}}
    {}}
\makeatother

\begin{filecontents}[force]{\jobname.bib}
@book{appleby,
  author  = {Humphrey Appleby and Humphrey Appleby and Humphrey Ippleby},
  title   = {On the Importance of the Civil Service},
  date    = {1980},
}
\end{filecontents}
\addbibresource{\jobname.bib}
\addbibresource{biblatex-examples.bib}


\begin{document}
Lorem \autocite{sigfridsson,companion,appleby}
\printbibliography
\end{document}

Lorem(Appleby y col.,1980;Goossens y col.,1994;Sigfridsson y Ryde,1998)//Appleby,H.、Appleby,H. 和 Ippleby,H. (1980)。//Goossens,M.、Mittelbach,F. 和 Samarin,A. (1994)。

相关内容