\citeasnoun 产生太多名称

\citeasnoun 产生太多名称

我正在使用\citeasnoun带有bibstyle 的harvardeconometrica

我的问题是,我的一个引文有很多作者,所以我想只显示姓名等 (200x)

我还没有找到解决办法。我可以更改整个 bib 条目,但我不介意在文本末尾的参考文献中列出所有作者。

答案1

要完成问题中提到的事情,请执行以下操作:

打开 econometrica.bst(出于安全原因,最好先使用副本)。然后搜索“FUNCTION {format.lab.names}”。

现在添加螺栓部分:

函数 {format.lab.names} { 's := #1 'nameptr := s num.names$ 'numnames := numnames 'namesleft := numnames #3 > { s #1 "{vv~}{ll}{, jj}{, f.}" format.name$ " et~al." * } { { namesleft #0 > } { s nameptr "{vv~}{ll}" 格式.name$ 't := nameptr #1 > { namesleft #1 > { ", " * t * } { numnames #2 > { "" * } 'skip$ if$ t "others" = {​​ " et~al." * } { " and " * t * } if$ } if$ } 't if$ nameptr #1 + 'nameptr := namesleft #1 - 'namesleft := } while$ } 如果$ }

numnames #3 > 是使用 et al. 函数后调整作者数量的关键变量,在我的示例中,作者数量为 3。不要忘记在末尾添加“if$ }”。

现在保存(可能更新你的 Miktex FNDB)并在你的文档中使用 bst 文件!

另请参阅此处:

http://newsgroups.derkeiler.com/Archive/Comp/comp.text.tex/2009-05/msg00099.html

其中,参考书目中强制使用 et. al 功能!

希望这可以帮助!

答案2

根据手册第 2.4 节harvard,双星号 (!) 宏版本\citeasnoun**会覆盖默认的引用样式,并始终使用缩写形式。不过,似乎此功能适用于六种样式“目前在哈佛家族中可用”(手册,第 3.1 节),但econometrica根据 中的注释, 样式econometrica.bst是在 的帮助下创建的makebst。以下示例显示了使用该agsm样式强制使用缩写引用格式。

\documentclass{article}

\usepackage{harvard}

\usepackage{filecontents}

\begin{filecontents}{\jobname.bib}
@misc{A01,
  author = {Author, A. and Buthor, B. and Cuthor, C.},
  year = {2001},
  title = {Alpha},
}
\end{filecontents}

\begin{document}

\citeasnoun**{A01}

\bibliographystyle{agsm}
\bibliography{\jobname}

\end{document}

enter image description here

答案3

要删除名称,例如“Baldwin, R. et al. 2003, p. 7”,只需删除以下部分中的“{, f.}”即可:

numnames #3 > { s #1 "{vv~}{ll}{, jj}{, f.}" format.name$ " et~al." * }

然后它就出现了 Baldwin et al. 2003, p. 7

相关内容