我在使用 biblatex-apa 时遇到了一个问题,我有多个参考文献,作者和年份相同,有一次它使用“¿”符号来对参考文献进行排序。文档和许多参考文献都是西班牙语。我使用 texstudio 和 luatex 进行了这样的设置。
\documentclass[12pt]{article}
\usepackage[spanish, mexico]{babel}
\usepackage{csquotes}
\usepackage[backend=biber, style=apa]{biblatex}
\DeclareLanguageMapping{spanish}{spanish-apa}
\addbibresource{reffinal.bib}
\makeatletter
\DefineBibliographyExtras{spanish}
{\setcounter{smartand}{1}% or some other value
\let\lbx@finalnamedelim=\lbx@es@smartand
\let\lbx@finallistdelim=\lbx@es@smartand}
\makeatother
\begin{document}
\printbibliography
\end{document}
我有一些这样的参考:
@book{minedu2017a,
author = {{Ministerio de Educación}},
address = {{Lima}},
title = {Programa Curricular de Educación Secundaria},
year = {2017},
url = {http://www.minedu.gob.pe/curriculo/pdf/programa-curricular-educacion-secundaria.pdf}
}
@book{minedu2017b,
author = {{Ministerio de Educación}},
address = {{Lima}},
publisher = {{Oficina de Medición de la Calidad de los Aprendizajes}},
title = {¿Qué sucede con los aprendizajes en la transición de primaria a secundaria?. Una mirada desde la equidad y la eficacia escolar diferenciada},
year = {2017},
url = {https://umc.minedu.gob.pe/wp-content/uploads/2017/08/Qu%c3%a9-sucede-con-los-aprendizajes-en-la-transici%c3%b3n-de-primaria-a-secundaria.pdf}
}
根据 APA 7th 规则,这些应该按字母顺序排列,在参考文献标题开头省略“A”、“An”和“The”等单词,这也合理地排除了符号。然而,它们以相反的顺序排列,将以“¿”开头的参考文献放在第一位。我曾尝试使用 \symbol{"00BF} 将此符号写为 unicode,但结果仍然一样。
有没有什么办法可以解决这个问题?或者覆盖引用顺序?
提前致谢
答案1
如有任何与 APA 格式不一致的情况,请报告https://github.com/plk/biblatex-apa/issues。开发人员只有了解问题才能解决问题。
您可以忽略标题字段中的前导标点符号,如下\DeclareNosort
所示
\documentclass[12pt]{article}
\usepackage[spanish, mexico]{babel}
\usepackage{csquotes}
\usepackage[backend=biber, style=apa]{biblatex}
\DeclareNosort{
\nosort{setnames}{\regexp{\p{General_Category=Punctuation}}}
\nosort{settitles}{\regexp{\A\p{General_Category=Punctuation}+}}
\nosort{settitles}{\regexp{\A(?:The|An|A)\s+}}
}
\makeatletter
\DefineBibliographyExtras{spanish}
{\setcounter{smartand}{1}% or some other value
\let\lbx@finalnamedelim=\lbx@es@smartand
\let\lbx@finallistdelim=\lbx@es@smartand}
\makeatother
\begin{filecontents}{\jobname.bib}
@book{minedu2017a,
author = {{Ministerio de Educación}},
address = {{Lima}},
title = {Programa Curricular de Educación Secundaria},
year = {2017},
url = {http://www.minedu.gob.pe/curriculo/pdf/programa-curricular-educacion-secundaria.pdf}
}
@book{minedu2017b,
author = {{Ministerio de Educación}},
address = {{Lima}},
publisher = {{Oficina de Medición de la Calidad de los Aprendizajes}},
title = {¿Qué sucede con los aprendizajes en la transición de primaria a secundaria?. Una mirada desde la equidad y la eficacia escolar diferenciada},
year = {2017},
url = {https://umc.minedu.gob.pe/wp-content/uploads/2017/08/Qu%c3%a9-sucede-con-los-aprendizajes-en-la-transici%c3%b3n-de-primaria-a-secundaria.pdf}
}
\end{filecontents}
\addbibresource{\jobname.bib}
\begin{document}
Lorem \autocite{minedu2017a,minedu2017b}
\printbibliography
\end{document}
\DeclareNosort
v9.16 (2022/06/22)中的默认值为biblatex-apa
(apa.bbx
,第 264-267 页)
\DeclareNosort{
\nosort{setnames}{\regexp{\p{General_Category=Punctuation}}}
\nosort{settitles}{\regexp{\A(?:The|An|A)\s+}}
}