例如,目前如果我执行以下命令,\cite{name}
我会得到以下结果:
(作者 1,2000 年)
(作者 1;作者 2,2000 年)
(作者 1;作者 2;作者 3,2000 年)
我希望当作者超过 2 位时,et al. 的意思是“等”,而当作者只有 2 位时,则使用“和”。因此:
(作者 1,2000 年)
(作者 1 和作者 2,2000 年)
(作者 1 等,2000 年)
有可能得到它吗?
我发现模型导入了这些包:
\usepackage[bibjustif,abnt-etal-cite=3,abnt-full-initials=yes]{abntcite}
\usepackage[toc,page]{modelo/tex/appendix}
\usepackage[portuguese,brazilian,portuges]{babel}
\usepackage[utf8]{inputenc}
\usepackage{abnt-alf}
\usepackage{graphicx}
\usepackage{multicol}
\usepackage{listings}
\usepackage{booktabs}
\usepackage{amsmath}
\usepackage{amsthm}
\usepackage{eucal}
\usepackage{amssymb}
\usepackage{mathrsfs}
如果我编辑,abnt-etal-cite=2
我就可以得到我需要的 et al。但是两个作者姓名之间的分隔符怎么办?
答案1
abntcite 软件包在 CTAN 上不可用。根据这次讨论,该软件包和/或随附的样式文件在两年前存在一些缺陷。我建议您使用软件包biblatex
而是按照您想要的方式处理作者姓名。
\documentclass{article}
\usepackage[style=authoryear,maxnames=2]{biblatex}
\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@misc{Aut10a,
author = {Author, A.},
year = {2010},
title = {And now for something completely different},
}
@misc{Aut10b,
author = {Author, A. and Buthor, B.},
year = {2010},
title = {And now for something completely different},
}
@misc{Aut10c,
author = {Author, A. and Buthor, B. and Cuthor, C.},
year = {2010},
title = {And now for something completely different},
}
\end{filecontents}
\bibliography{\jobname}
\begin{document}
\parencite{Aut10a}
\parencite{Aut10b}
\parencite{Aut10c}
% Name cap also in bibliography
\printbibliography
% No name cap in bibliography
\printbibliography[maxnames=99]
\end{document}
答案2
我建议删除\usepackage[bibjustif,abnt-etal-cite=3,abnt-full-initials=yes]{abntcite}
并放在 某处\bibliographystyle{plainnat}
。这样应该可行。此外,尝试加载\usepackage[round]{natbib}
并使用\citep{ }
括号中的引用命令和\citet{ }
文本引用命令。