LaTeX 无法识别参考书目中的“et al.”

LaTeX 无法识别参考书目中的“et al.”

我正在使用它Jabref来管理我的参考书目。

有时,我会直接输入:

第一作者等

在 添加文章作者姓名时Jabref

编译我的.tex文件时,LaTeX 无法将其识别et. al为更多名称。它将其视为姓名/姓氏。

这是 中的参考书目条目的一个示例Jabref

@ARTICLE{Wolf2003,  
  author = {Wolf, K.et al.},  
  title = {Compensation mechanism in tumor cell migration: mesenchymal–amoeboid
    transition after blocking of pericellular proteolysis},  
  journal = {J. Cell Biol.},  
  year = {2003},  
  volume = {160},  
  pages = {267–277},  
 }

这是.tex带有提及的 bib 条目的 MWE:

\documentclass[11pt]{book}  
\usepackage{cite}  
\bibliographystyle{unsrt}
\begin{document}  
Here is the bib entry mentioned\cite{Wolf2003}  

\bibliography{bibfile} 
\end{document}

输出如下:

上面提到的 <code>.tex</code> MWE 的输出 我怎么解决这个问题?

答案1

BibTeX 的输入约定非常严格;多个作者必须用关键字分隔and

author={Alpher, Ralph and Bethe, Hans and Gamow, George}

或者,如果你只想保留首字母,

author={Alpher, R. and Bethe, H. and Gamow, G.}

如果你只想要第一作者并自动添加在参考书目中,使用others关键字:

author={Alpher, R. and others}

答案2

我认为您提出这个问题有两个原因:

  1. 您仅拥有关于参考文献的部分信息→使用egreg 的精彩回答在这种情况下。
  2. 你真正想要的是如何在参考书目/引文中仅显示一个作者姓名(因此,你们在这里面临着X/Y问题

下面的解决方案回答了第二个问题。


我建议你在数据库中保存尽可能多的信息(如果您稍后或在另一份文件中改变主意)。

要在参考书目中仅显示一位作者姓名,您可以使用你的书目包的功能. 使用该软件包biblatex,相关选项是maxnames=<maximal number of authors to display>

在此处输入图片描述

\documentclass{article}

    \usepackage[
        maxnames=1,%<---------- the key option
        style=authoryear-comp,
    ]{biblatex}
    \addbibresource{\jobname.bib}

    \usepackage{filecontents}

    \begin{filecontents}{\jobname.bib}
        @book{keyone,
            author = {Single Author, A.},
            year = {2001},
            title = {Title},
            publisher = {Publisher},
        }
        @book{keytwo,
            author = {Firstof Threeauthors, J. and Secondof Threeauthors, E. and Thirdof Threeautors, G.},
            year = {2017},
            title = {A catchy title},
            publisher = {Same publisher},
        }
    \end{filecontents}

\begin{document}
    First reference: \cite{keyone}. Second one: \cite{keytwo}.

    Which are these references' authors? \citeauthor{keyone} and \citeauthor{keytwo}, respectively.

    \printbibliography
\end{document}

maxcitenames=请注意,您可以区分引文(选项)和参考书目( )中列出的作者数量maxbibnames=。 选项maxnames=只是将这两个选项设置在一起。

如果max[x]names您的参考文献包含超过 1 位max[x]names作者,您可能需要指定引用名称的后备数量。换句话说,定义:

如果我的参考资料有X作者或更少,则引用全部。否则,仅引用第一作者,并附加‘等人’。

为此,您可以使用以下minnames=选项:

    \usepackage[
        maxnames=<x>,
        minnames=<y>,
    ]{biblatex}

显然,可以假设x >= y。类似地,可以分别定义mincitenamesminbibnames

例如maxnames=2, minnames=2 在此处输入图片描述

相同示例maxnames=2, minnames=1

在此处输入图片描述

答案3

我们知道 et al. 是拉丁语,因此应该以斜体显示。

事情是author={Alpher, R. and others}生成等作为普通字体而不是斜体。

一个快速但不太好的修复方法,根据上面的修改如下:

author = {Smith {\textit{et al.}}, Fred}

答案4

使用上述建议,我发现这是有效的。

为了写出 Fred Smith 等人,我使用了 author = {Smith {et al.}, Fred}

相关内容