如何将引用样式切换为 APA 第 6 版?

如何将引用样式切换为 APA 第 6 版?

[编辑]

我不知道如何发布整个代码。这是一份 272 页的文档,每章都有不同的子文件。我试图发布最相关的部分。请让我知道具体要发布什么。

\begin{CJK*}{UTF8}{min} \end{CJK*} 是必需的,因为在添加它之前,文档中包含无法读取的日文字符。

\DeclareLanguageMapping{american}{american-apa} 和 sortcites=true,sorting=nyt 是从包的说明中复制而来的。我承认我不知道自己在做什么,但它们确实看起来没有必要。我删除了它们,但什么也没改变。

我得到的错误是:

...ex/titlesec/titlesec.sty,1642. \subparagraph 的参数有一个额外的 }。或失控参数?

当我点击这个错误时,我无法看到它到底指的是代码的哪一部分。谷歌搜索显示它与 titlesec 包有关。

我删除了 titlesec 包,错误变为:

eric/mathabx/mathabx.sty,67. Latex 错误:声明的符号字体太多。

我删除了 amsmath、mathabx 包,并且它进行了编译。

但是,所有章节编号和大量格式都丢失了(可能是因为它与 titlesec 包有关)。文本中的引用有效,但参考书目未打印。我还收到一条错误消息,提示 apacite 与 Biblatex 不兼容。(包 biblatex 错误:不兼容的包“apacite”。)我不确定 apacite 在我的序言中的位置。我删除了 natbib 只是为了尝试,但它只编译了文档的一半。


总之,我想要做的就是将 apa6 添加到我当前的文件中。我之前有一个工作文件。有人告诉我我使用的引用样式不正确。我尝试将其更改为 apa6,但我不知道该怎么做。

抱歉,我并不是想刁难你,请告诉我我还需要发布哪些其他信息。

谢谢,[编辑]

我正在尝试添加 APA 第 6 版引用样式。我找到了软件包说明并尝试将其添加到我的项目中,但无法使其正常工作。

我尝试了几个实例。我尝试了包的说明和 Overleaf 的 apa6 示例中的代码。它们都略有不同(见下文)。我尝试了它们,但都导致了相同的错误。它根本无法编译。

这是我使用的代码:

前言:

\documentclass[11pt,report,natbib]{apa6}
\usepackage[utf8]{inputenc}
\usepackage{helvet}
\usepackage{xspace}
\usepackage{subcaption}
\usepackage{placeins}
\usepackage{wrapfig}
\usepackage{multirow}
\usepackage[table,xcdraw]{xcolor}
\usepackage{adjustbox} 
\usepackage{booktabs,caption} 
\usepackage[flushleft]{threeparttable}
\usepackage{ragged2e}
\usepackage{floatrow}
\usepackage{graphicx,wrapfig,lipsum}
\graphicspath{{../figs/}}
\usepackage{pdfcomment}
\usepackage{geometry}
\newgeometry{left=2.5cm,right=2.5cm,bottom=2.5cm}
\usepackage[english]{babel}
\usepackage{CJKutf8}
\pagestyle{headings}
\usepackage{blindtext}
\usepackage{csquotes}
\setcounter{secnumdepth}{4}
\usepackage{titlesec}
\usepackage[T1]{fontenc}
\usepackage{imakeidx}
\makeindex[columns=3, title=Alphabetical Index]
\usepackage{array}
\usepackage{tikzpagenodes}
\usepackage[format=plain, labelfont={bf,it}, textfont=it]{caption}
\usepackage{fancyhdr}
\usepackage[toc,nopostdot, nonumberlist,style=long,automake,acronym]{glossaries}
\usepackage{subfiles}
\usepackage{nicematrix}
\usepackage{amsmath,mathabx}
\usepackage{hyperref}
\usepackage{lscape} 

包装说明还要求添加:

\usepackage[style=apa6,sortcites=true,sorting=nyt,backend=biber]{biblatex}
\DeclareLanguageMapping{american}{american-apa}
\addbibresource{bib.bib}

我尝试过,也尝试过不用,改变了我引用的方式\parentcite,而不是\citep按照说明要求的方式,但没有成功。

名为示例的参考书目文件bib.bib

@article{henriquez_alternative_2017,
    title = {An alternative objective microscopic method for the identification of linear enamel hypoplasia ({LEH}) in the absence of visible perikymata},
    volume = {14},
    doi = {10.1016/j.jasrep.2017.05.040},
    journal = {Journal of Archaeological Science: Reports},
    author = {Henriquez, Alejandra Cares and Oxenham, Marc F.},
    year = {2017},
    pages = {76--84},
    file = {Full Text:C\:\\Users\\xello\\Zotero\\storage\\MV7QMSWQ\\Henriquez and Oxenham - 2017 - An alternative objective microscopic method for th.pdf:application/pdf},
}

引用某事的文本示例

\begin{document}
\begin{CJK*}{UTF8}{min}

\citep{henriquez_alternative_2017}, \citet{henriquez_alternative_2017}.

\end{CJK*}
\end{document}

我不知道该如何纠正这个问题。它使用了几个选项,但所有选项都以致命错误告终,导致无法编译。我认为它与其他软件包存在兼容性问题,但我不知道是什么问题。我只得到了一般性错误,当我单击它们时,我在代码上看不到它们。

答案1

如果要使用,biblatex则不应将natbib选项传递给apa6。使用该选项,apa6将加载与 完全不兼容的natbib(和) 。apacitebiblatex

您还应该加载biblatex

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

没有必要sortcites=true,sorting=nyt,(前者是多余的,后者则有害,因为它从 APA 兼容的作者-年份-标题排序转换为通用nyt排序方案)。\DeclareLanguageMapping{american}{american-apa}也应该被删除。

那么您应该使用\parencite(not \parentcite) and\textcite而不是\citepand \citet

此外,您确实应该考虑减少在序言中加载的软件包数量。我几乎不相信您需要所有这些软件包。

有些软件包会主动反对这样apa6做并导致错误 ( \usepackage{titlesec})。其他软件包会因为您使用了太多字体而带来麻烦 ( \usepackage{amsmath,mathabx})。

尝试删除尽可能多的软件包。只有当您知道为什么需要它们时才加载软件包。

我也看不出示例中需要\begin{CJK*}{UTF8}{min}...\end{CJK*},但当然,实际文档中可能会有所不同。我保留它是为了表明环境CJK*对于 来说没有问题biblatex

请注意,在示例中我仍然收到有关

! LaTeX Error: Unknown option `keeplastbox' for package `flushend'.

但这似乎是不可避免的,因为apa6假设 是旧版本flushend。此错误不会在 Overleaf 上使用其 TeX Live 2021 图像时发生,因为 的版本flushend仍然有该选项。

以下示例文档在 Overleaf 上编译良好

\documentclass[11pt,report]{apa6}
\usepackage[utf8]{inputenc}
\usepackage{helvet}
\usepackage[english]{babel}
\usepackage{CJKutf8}
\usepackage[style=apa6, backend=biber]{biblatex}
\usepackage{hyperref}

\begin{filecontents}{\jobname.bib}
@article{henriquez_alternative_2017,
  title   = {An Alternative Objective Microscopic Method
             for the Identification of Linear Enamel Hypoplasia ({LEH})
             in the Absence of Visible Perikymata},
  volume  = {14},
  doi     = {10.1016/j.jasrep.2017.05.040},
  journal = {Journal of Archaeological Science: Reports},
  author  = {Henriquez, Alejandra Cares and Oxenham, Marc F.},
  year    = {2017},
  pages   = {76--84},
}
\end{filecontents}
\addbibresource{\jobname.bib}

\begin{document}
\begin{CJK*}{UTF8}{min}

\parencite{henriquez_alternative_2017} \textcite{henriquez_alternative_2017}.

\printbibliography
\end{CJK*}
\end{document}

工作引用

只读 Overleaf:链接https://www.overleaf.com/read/cpzkcdqfdnms

相关内容