Biblatex:引用格式不一致

Biblatex:引用格式不一致

我使用相同格式的 .bib 文件条目,但在 beamer 中得到不同的输出格式。这是 MWE:

\documentclass{beamer}

\usepackage[english]{babel}
\usepackage[utf8]{inputenc}
\usepackage{lmodern}

%% Bibliography
\usepackage[backend=biber,style=alphabetic,citestyle=authoryear]{biblatex}
\bibliography{bibfile.bib}

\begin{document}

\begin{frame}{Trial frame}
\cite{Borzacchiello2017} \\
\cite{LEGUENNEC2018} \\
\cite{Goldfarb2014} \\
\end{frame}

\begin{frame}[allowframebreaks]{References}
    \printbibliography
\end{frame}

\end{document}

包含以下 .bib 文件条目:

@article{LEGUENNEC2018,
    author = "Le Guennec, Yves 
         and Brunet, Jean-Patrick 
         and Daim, Fatima Zohra 
         and Chau, Ming 
         and Tourbier, Yves",
    title = "A parametric and non-intrusive reduced order model of car crash simulation",
    journal = "Computer Methods in Applied Mechanics and Engineering",
    year = "2018",
}

@Article{Borzacchiello2017,
    author="Borzacchiello, Domenico
        and Aguado, Jos{\'e} V.
        and Chinesta, Francisco",
    title="Non-intrusive Sparse Subspace Learning for Parametrized Problems",
    journal="Archives of Computational Methods in Engineering",
    year = "2017",
}

@article{Goldfarb2014,
    author = "Goldfarb, Donald and Qin, Zhiwei",
    title = "Robust Low-Rank Tensor Recovery: Models and Algorithms",
    journal = "SIAM Journal on Matrix Analysis and Applications",
    year = "2014",
}

但我得到了以下输出。如您所见,参考幻灯片和引文的格式也不同:

在此处输入图片描述

我想拥有:

1)引用格式:“第一作者年份”,最好不要使用“et. al”

2)参考幻灯片格式:所有作者的姓名,以名字缩写

答案1

要根据您的规范控制名称列表,biblatex包选项就足够了。maxcitenames=1将只给出第一作者的引用(通常使用“et al.”);maxbibnames=99在正常情况下应该足以将所有作者纳入参考书目;giveninits=true将在整个过程中缩写名字。

要删除缩短的作者列表中的“et al.”一个简单的解决方案是使用以下命令重新定义相应的本地化字符串:

\DefineBibliographyStrings{english}{andothers={}}

事实上,自 3.13 版以来,biblatex它就支持此过程。特别是,nohashothers=true在删除“et al.”字符串时,您应该使用 ,以便biblatex为您的引文生成唯一标签。在这种情况下,您还可以使用 选项微调排序nosortothers

我个人并不热衷于删除“et al.”字符串,并且不推荐这样做,但是biblatex如果您确实愿意,最新版本的程序允许您以一致的方式这样做。

注意我已将您的 改为style=alphabetic,citestyle=authoryearstyle=authoryear混合这些样式,虽然从技术上讲“可行”,但必然会给您带来一些不一致或次优结果。

\documentclass{beamer}

\usepackage[english]{babel}
\usepackage[utf8]{inputenc}
\usepackage{lmodern}

\usepackage{filecontents}

\begin{filecontents}{bibfile.bib}
  @article{LEGUENNEC2018,
    author = "Le Guennec, Yves
              and Brunet, Jean-Patrick
              and Daim, Fatima Zohra
              and Chau, Ming
              and Tourbier, Yves",
    title = "A parametric and non-intrusive reduced order model of car crash simulation",
    journal = "Computer Methods in Applied Mechanics and Engineering",
    year = "2018",
  }

  @article{LEGUENNEC2018_2,
    author = "Le Guennec, Yves",
    title = "Study 2 by le Guennec",
    journal = "A journal title",
    year = "2018",
  }

  @Article{Borzacchiello2017,
    author="Borzacchiello, Domenico
            and Aguado, Jos{\'e} V.
            and Chinesta, Francisco",
    title="Non-intrusive Sparse Subspace Learning for Parametrized Problems",
    journal="Archives of Computational Methods in Engineering",
    year = "2017",
  }

  @article{Goldfarb2014,
    author = "Goldfarb, Donald and Qin, Zhiwei",
    title = "Robust Low-Rank Tensor Recovery: Models and Algorithms",
    journal = "SIAM Journal on Matrix Analysis and Applications",
    year = "2014",
  }
\end{filecontents}

\usepackage[
  style=authoryear,
  maxcitenames=1,
  maxbibnames=99,
  giveninits=true,
  nohashothers=true,
  nosortothers=true,
  ]{biblatex}

\addbibresource{bibfile.bib}

\DefineBibliographyStrings{english}{andothers={}}

\begin{document}

\begin{frame}{Trial frame}
  \cite{Borzacchiello2017}

  \cite{LEGUENNEC2018}

  \cite{LEGUENNEC2018_2}

  \cite{Goldfarb2014}
\end{frame}

\begin{frame}[allowframebreaks]{References}
  \printbibliography
\end{frame}

\end{document}

引用结果如下:

在此处输入图片描述

及参考文献:

在此处输入图片描述

相关内容