![强制等人使用 natbib 的 longnamesfirst 进行特定引用(必须使用 natbib)](https://linux22.com/image/433757/%E5%BC%BA%E5%88%B6%E7%AD%89%E4%BA%BA%E4%BD%BF%E7%94%A8%20natbib%20%E7%9A%84%20longnamesfirst%20%E8%BF%9B%E8%A1%8C%E7%89%B9%E5%AE%9A%E5%BC%95%E7%94%A8%EF%BC%88%E5%BF%85%E9%A1%BB%E4%BD%BF%E7%94%A8%20natbib%EF%BC%89.png)
我正在表格中输入引文信息,需要一篇文章在表格中使用“et al.”但是,期刊的样式要求使用 longnamesfirst。有没有办法在特定情况下强制使用 et al.?我尝试了 \citeauthor*{},正如某些地方所建议的那样(但这不是 natbib 命令)。我还尝试了\AtNextCitekey{\defcounter{maxnames}{1}}
建议的那样这里
我无法更改样式,也无法删除 longnamesfirst。我也无法手动输入,因为这会破坏超链接和自动参考书目。
MWE(虽然不是正确的样式文件,但它显示了问题)
\documentclass{article}
\usepackage[longnamesfirst]{natbib}
\title{random test document}
\begin{document}
Document with some words and a citation to an article with a lot of authors: \citeauthor{thearticle}.
\maketitle
\bibliography{name}
\bibliographystyle{plainnat}
\end{document}
答案1
natbib
引文管理包提供了宏来列出条目,即使该选项有效,\shortcites
也应该得到截断的引文调用。longnamesfirst
最好将\shortcites
指令放在序言中(后natbib
当然是加载)。
\documentclass{article}
\begin{filecontents}[overwrite]{name.bib}
@misc{abcdef, author = "Aaa and Bbb and Ccc and Ddd and Eee and Fff",
title = "Thoughts", year = 3001}
\end{filecontents}
\usepackage[authoryear,round,longnamesfirst]{natbib}
\bibliographystyle{plainnat} % or some other suitable bib style
\shortcites{abcdef} % <--- new
\usepackage[colorlinks,allcolors=blue]{hyperref} % optional
\begin{document}
\citeauthor{abcdef}
\bibliography{name}
\end{document}