参考列表:消除公司名称后的点(apacite)

参考列表:消除公司名称后的点(apacite)

当引用公司时,我想删除公司名称后面的点,但在同一文档中引用作者姓名时保留点。以下是 MWE:

\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}
\usepackage[natbibapa]{apacite}
\bibliographystyle{apacite}
\AtBeginDocument{\renewcommand{\BRetrievedFrom}{Verfügbar unter\ }}

\begin{filecontents}{test.bib}
@misc{eprime,
    title = {E-Prime 2 ({Version} 2.0.10.242)},
    author = {{Psychology Software Tools}},
    year = {2012},
    type = {\bibcomputersoftware},
    url = {https://www.pstnet.com/eprime.cfm}}

@misc{matlab,
    title = {MATLAB ({Version} 8.1.0.604, R2013a)},
    author = {{MathWorks Inc.}},
    year = {2013},
    type = {\bibcomputersoftware},
    url = {http://mathworks.com/downloads/}}

@book{McDonald1999,
    author = {McDonald, Roderick P.},
    title = {Test theory: A unified treatment},
    publisher = {Erlbaum},
    address = {Mahwah, NJ},
    year = {1999}}
\end{filecontents}

\begin{document}
Eprime was used \citep{eprime}.\\
MATLAB was used \citep{matlab}.\\
\citet{McDonald1999} showed that \ldots
\bibliography{test}
\end{document}

通过这个 MWE,我得到了以下参考列表

使用 MWE 中的代码的参考列表图像

如何删除“心理学软件工具。 (2012).”后面的点?它应该像这样:“心理学软件工具 (2012)。”

我见过类似的问题(如何删除作者组织名称后的“。”?(apacitex)),但解决该问题的代码片段

\makeatletter
\renewcommand{\APACrefauthstyle}{\rvaneijk@refauthstyle}%
\def\rvaneijk@refauthstyle #1.%
    {\rvaneijk@refauthstyle@a #1,,\@@rvaneijk {#1}}%
\def\rvaneijk@refauthstyle@a  #1,#2,#3\@@rvaneijk #4%
    {\if\relax\detokenize{#2}\relax {#4}\else {#4}.\fi}
\makeatother

在我的 MWE 中确实返回了错误。

答案1

我不确定修改 APA 格式规则是否是个好主意。(首先,它可能会使您的论文无法在要求使用 APA6 指南的期刊上发表。)但是,如果您认为可以进行这样的修改,则可以按以下步骤操作:

  • 在您的 TeX 发行版中找到该文件apacite.bst。复制此文件并将副本命名为apacite-mod.bst

  • 在文本编辑器中打开文件apacite-mod.bst。(你用来编辑 tex 文件的程序就可以了。)

  • 找到函数authors.reflist.apa6。(在我的文件副本中,该函数从第 2926 行开始。)

  • 在此函数中,找到以下代码行:

      numnames  #1  =
        { dot
            { add.period$ }
            'skip$
          if$
    

    将其更改为

      numnames  #1  =
        { 
    
  • 将文件保存apacite-mod.bst到包含主 tex 文件的目录中,或保存到 BibTeX 搜索的目录中。如果选择后一种方法,请务必更新 TeX 发行版的文件名数据库。

  • 在主 tex 文件中,将指令更改\bibliographystyle{apacite}\bibliographystyle{apacite-mod},然后重新运行 LaTeX、BibTeX 和 LaTeX 两次以完全传播所有更改。

需要注意两个问题。首先,如果条目有两个(或更多)公司作者,则建议的解决方案将无法正常工作。其次,建议的解决方案假设您的参考书目中没有单名作者(即没有单独名字部分的名字);如果您的参考书目中有 Cher、Bono 或 Madonna 的作品,请不要惊讶于他们的名字末尾没有“点”...

在此处输入图片描述

\RequirePackage{filecontents}
\begin{filecontents}{Test.bib}
@misc{eprime,
    title = {E-Prime 2 ({Version} 2.0.10.242)},
    author = {{Psychology Software Tools}},
    year = {2012},
    type = {\bibcomputersoftware},
    url = {https://www.pstnet.com/eprime.cfm},
}
@misc{matlab,
    title = {MATLAB ({Version} 8.1.0.604, R2013a)},
    author = {{MathWorks Inc.}},
    year = {2013},
    type = {\bibcomputersoftware},
    url = {http://mathworks.com/downloads/},
}
@book{McDonald1999,
    author = {McDonald, Roderick P.},
    title = {Test theory: A unified treatment},
    publisher = {Erlbaum},
    address = {Mahwah, NJ},
    year = {1999}
}
\end{filecontents}

\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}
\usepackage[hyphens,spaces,obeyspaces]{url}
\usepackage[natbibapa]{apacite}
\bibliographystyle{apacite-mod}
\AtBeginDocument{\renewcommand{\BRetrievedFrom}{Verfügbar unter\ }}

\begin{document}
\citep{eprime}

\citep{matlab}

\citet{McDonald1999} \dots

\bibliography{Test}
\end{document}

相关内容