使用 biber 时 biblatex-apa 中的日期出现问题

使用 biber 时 biblatex-apa 中的日期出现问题

我在论文中使用了 APA 格式引用,我正在写背页,它使用旧版本的biblatex-apa

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

我的.bib文件是:

@article
{Anderson1998,
     title={Diffuse-Interface Methods In Fluid Mechanics}, volume={30}, DOI={10.1146/annurev.fluid.30.1.139}, number={1}, journal={Annual Review of Fluid Mechanics}, author={Anderson, D. M. and Mcfadden, G. B. and Wheeler, A. A.}, year={1998}, pages={139–165}}

@article
{Penrose1990,
    title={Thermodynamically consistent models of phase-field type for the kinetic of phase transitions}, volume={43}, DOI={10.1016/0167-2789(90)90015-h}, number={1}, journal={Physica D: Nonlinear Phenomena}, author={Penrose, Oliver and Fife, Paul C.}, year={1990}, pages={44–62}}

@article
{NovickC1984,
    title={Nonlinear aspects of the Cahn-Hilliard equation}, volume={10}, DOI={10.1016/0167-2789(84)90180-5}, number={3}, journal={Physica D: Nonlinear Phenomena}, author={Novick-Cohen, Amy and Segel, Lee A.}, year={1984}, pages={277–298}} 

@book
{VanBrunt2010,
    place={New York}, title={The calculus of variations}, publisher={Springer}, author={Van Brunt, B.}, year={2010}}

我一直.bib比比梅。我遇到的问题是,我的参考书目中的输出如下所示:

安德森 (DM)、麦克法登 (GB) 和惠勒 (AA) (年月日)流体力学中的扩散界面法。流体力学年鉴,30(1),139–165。doi:10.1146/annurev.fluid.30.1.139

Novick-Cohen,A. & Segel,洛杉矶(年月日)。Cahn-Hilliard 方程的非线性方面。Physica D: 非线性现象,10 (3),277–298。doi:10.1016/0167-2789(84)90180-5

Penrose,O. & Fife,PC(年月日). 相变动力学的相场型热力学一致模型。物理 D:非线性现象,43 (1), 44–62。doi:10.1016/0167- 2789(90)90015-h

范布伦特,B.(年月日). 变分法. Springer。

我检查了APA 格式除了引用的出版年份之外,你实际上不需要任何其他内容。

有没有办法修改第一个命令,以便我只需要年份,而不是年月日同时保持 APA 格式,如何获取参考书目?(即使我尝试,也无法获取这里某些参考文献的月份和日期,因为它们无法在线获取)。

答案1

Overleaf 更新了他们的 TeX 系统,新项目现在至少使用 TeX live 2018。


这个答案的第一部分特别适用于较旧Overleaf 项目。Overleaf 最近更新到 TeX live 2018,新项目使用该版本。如果您的 Overleaf 项目使用新的 TeX live(因为它是一个新项目或因为您要求 Overleaf 员工进行更新)或者您有本地安装并保持您的软件包为最新(这通常不是一个坏主意),您不必执行这些步骤。请参阅答案的结尾。

Overleaf 上的旧项目可能在带有过时版本的 TeX 系统上运行。使用该版本,您必须为使用的每种语言biblatex-apa声明到 的本地化文件的语言映射。biblatex-apa映射具有以下形式

\DeclareLanguageMapping{<lang>}{<lang>-apa}

其中<lang>babel语言名称。

如果你british加载

\documentclass[british]{article}
\usepackage{babel}
...

你需要

\DeclareLanguageMapping{british}{british-apa}

为了

\usepackage[american,dutch]{babel}

你应该加载

\DeclareLanguageMapping{american}{american-apa}
\DeclareLanguageMapping{dutch}{dutch-apa}

所有语言文件的列表可以在以下位置找到https://github.com/plk/biblatex-apa/tree/master/tex/latex/biblatex-apa/lbx(尽管 Overleaf 上的旧版本可能还不支持所有这些)。如果你使用的语言biblatex-apa不支持,则必须自己动态定义某些内容(或者通过复制现有内容<lang>-apa.lbx并进行修改,如果你这样做,请考虑将文件贡献biblatex-apahttps://github.com/plk/biblatex-apa/issues如果它们是完整的)。

\documentclass[french,british,dutch]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{babel}
\usepackage{csquotes}

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

\DeclareLanguageMapping{french}{french-apa}
\DeclareLanguageMapping{british}{british-apa}
\DeclareLanguageMapping{dutch}{dutch-apa}

\addbibresource{biblatex-examples.bib}

\begin{document}
\cite{sigfridsson}
\printbibliography
\end{document}

使用当前版本的biblatex-apa(自 2017-11-05 起至少为 v7.5,当前版本为自 2018-04-02 起的 v7.7)应该没有必要\DeclareLanguageMapping,因为映射将自动应用。(这也是这段文字从文档中消失的原因biblatex-apa。)上面的示例如下所示

\documentclass[french,british,dutch]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{babel}
\usepackage{csquotes}

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

\addbibresource{biblatex-examples.bib}

\begin{document}
\cite{sigfridsson}
\printbibliography
\end{document}

相关内容