![如何更改 apacite 书目样式以列出所有作者](https://linux22.com/image/276550/%E5%A6%82%E4%BD%95%E6%9B%B4%E6%94%B9%20apacite%20%E4%B9%A6%E7%9B%AE%E6%A0%B7%E5%BC%8F%E4%BB%A5%E5%88%97%E5%87%BA%E6%89%80%E6%9C%89%E4%BD%9C%E8%80%85.png)
我是 LaTeX 新手,需要根据最新版本的 APA 手册(第 6 版)来格式化我的参考书目。由于我使用bibtex
和\bibliographystyle{apacite}
,所以并非所有参考资料都显示正确。
现在,我希望强制 LaTeX 始终列出参考书目中的所有作者,但保留其余的样式apacite
。我可以这样做吗?或者,我是否可以强制 LaTeX 仅在少数特殊情况下列出所有作者(因为该问题总共只发生三到四次)?
一个例子(抱歉没有早点放出来):.bib 中的条目如下所示
@article{55,
title={An SCN9A channelopathy causes congenital inability to experience pain},
author={Cox, James J and Reimann, Frank and Nicholas, Adeline K and Thornton, Gemma and Roberts, Emma and Springell, Kelly and Karbani, Gulshan and Jafri, Hussain and Mannan, Jovaria and Raashid, Yasmin and L. Al-Gazali and H. Hamamy and E. M. Valente and S. Gorman and R. Williams and D. P. McHale and J. N. Wood and F. M. Gribble and C. G. Woods},
journal={Nature},
volume={444},
number={7121},
pages={894--898},
year={2006},
publisher={Nature Publishing Group}
}
pdf 中显示的内容如下:
Cox, J. J., Reimann, F., Nicholas, A. K., Thornton, G., Roberts, E., Springell, K., ...
Woods, C. G. (2006). An scn9a channelopathy causes congenital inability to expe-
rience pain. Nature, 444(7121), 894–898.
现在,我不希望 LaTeX 制作这些...,而是列出所有作者。这个问题只有在有很多其他作者时才会出现,这种情况并不常见。我想知道:我是否可以更改 .bib 中单个条目中的某些内容以显示所有作者?因为重新编程整个样式会非常困难,对吗?
答案1
从 APA 手册第 6 版开始,对于作者超过 7 位(即 8 位或更多)的条目,应该进行以下操作:应列出前 6 位作者的姓名,后跟...
,然后是最后一位作者的姓名。有关此新要求的更多信息,请参阅 apacite 软件包用户指南第 23 页。
如果你确实希望(或需要)覆盖此要求并列出全部作者,您可以通过创建和使用修改后的副本来实现apacite.bst
:
在你的 TeX 发行版的目录结构中找到该文件
apacite.bst
。复制一份,并将副本命名为 。myapacite.bst
(不要直接编辑 TeX 发行版的原始文件。)在您最喜欢的文本编辑器中打开该文件
myapacite.bst
并搜索函数authors.reflist.apa6
。 (它在我的文件副本中从第 2926 行开始。)在此函数中,将 的两个实例更改
#7
为#999
(或其他相当大的整数)。[附言:完美主义者会重写整个函数,以完全摆脱作者的限制。我相信只需更改实例即可#7
让您到达想要去的地方,但麻烦少得多……]将文件保存
myapacite.bst
在主文件所在的目录中.tex
,或保存在某个可以找到它的地方BibTeX
。如果您选择后一种方法,您可能还需要以适合您的 TeX 发行版的方式更新 TeX 的文件名数据库。通过发出命令开始使用新的书目样式
\usepackage{apacite} \bibliographystyle{myapacite}
例如,您在帖子中提供的条目将按如下方式排版: