如何防止 BibLaTeX 以作者年份格式缩写作者姓名的“von 部分”?

如何防止 BibLaTeX 以作者年份格式缩写作者姓名的“von 部分”?

我正在撰写一份authoryear风格化的文档。我的两个参考文献恰好有相同的姓氏,因此他们的名字出现在引文中。这是意料之中的,但我还发现biblatex缩写了“de”助词(在葡萄牙语中很常见,与其他一些欧洲语言中的“von 部分”相对应),这是我不想要的功能。我尝试使用prefix-i={de}来解决这个问题,但它一直缩写为“d.”(带点)。我也尝试使用 来解决这个问题shortauthor,但这种方法似乎也没什么用。

我怎样才能避免biblatex使用这个缩写?

梅威瑟:

\documentclass{article}
\usepackage[style=authoryear]{biblatex}
\begin{filecontents}{\jobname.bib}
@article{tome2015StochasticApproachEquilibrium,
  title = {Stochastic Approach to Equilibrium and Nonequilibrium Thermodynamics},
  author = {Tomé, Tânia and family=Oliveira, given=Mário José, prefix=de, useprefix=false},
  date = {2015-04-29},
  journaltitle = {Physical Review E},
  shortjournal = {Phys. Rev. E},
  volume = {91},
  number = {4},
  eprint = {1503.04342},
  eprinttype = {arxiv},
  primaryclass = {cond-mat.stat-mech},
  doi = {10.1103/PhysRevE.91.042140},
  archiveprefix = {arXiv},
  eid = {042140},
  langid = {english}
}

@article{oliveira2018FinitesizeScalingDiscontinuous,
  title = {Finite-Size Scaling for Discontinuous Nonequilibrium Phase Transitions},
  author = {family=Oliveira, given=Marcelo M., prefix=de, useprefix=false and family=Luz, given=M. G. E., prefix=da, useprefix=false and Fiore, Carlos E.},
  date = {2018-06-08},
  journaltitle = {Physical Review E},
  shortjournal = {Phys. Rev. E},
  volume = {97},
  number = {6},
  eprint = {1804.00467},
  eprinttype = {arxiv},
  primaryclass = {cond-mat.stat-mech},
  doi = {10.1103/PhysRevE.97.060101},
  archiveprefix = {arXiv},
  eid = {060101},
  langid = {english}
}
\end{filecontents}
\addbibresource{\jobname.bib}
\pagestyle{empty}
\begin{document}
Obtained: \cite{tome2015StochasticApproachEquilibrium,oliveira2018FinitesizeScalingDiscontinuous}.

Desired: Tomé and M. J. de Oliveira 2015; M. M. de Oliveira, Luz, and Fiore 2018.

\printbibliography
\end{document}

结果:

在此处输入图片描述

水电与prefix-i={de}

\documentclass{article}
\usepackage[style=authoryear]{biblatex}
\begin{filecontents}{\jobname.bib}
@article{tome2015StochasticApproachEquilibrium,
  title = {Stochastic Approach to Equilibrium and Nonequilibrium Thermodynamics},
  author = {Tomé, Tânia and family=Oliveira, given=Mário José, prefix=de, prefix-i={de}, useprefix=false},
  date = {2015-04-29},
  journaltitle = {Physical Review E},
  shortjournal = {Phys. Rev. E},
  volume = {91},
  number = {4},
  eprint = {1503.04342},
  eprinttype = {arxiv},
  primaryclass = {cond-mat.stat-mech},
  doi = {10.1103/PhysRevE.91.042140},
  archiveprefix = {arXiv},
  eid = {042140},
  langid = {english},
}

@article{oliveira2018FinitesizeScalingDiscontinuous,
  title = {Finite-Size Scaling for Discontinuous Nonequilibrium Phase Transitions},
  author = {family=Oliveira, given=Marcelo M., prefix=de, prefix-i={de}, useprefix=false and family=Luz, given=M. G. E., prefix=da, useprefix=false and Fiore, Carlos E.},
  date = {2018-06-08},
  journaltitle = {Physical Review E},
  shortjournal = {Phys. Rev. E},
  volume = {97},
  number = {6},
  eprint = {1804.00467},
  eprinttype = {arxiv},
  primaryclass = {cond-mat.stat-mech},
  doi = {10.1103/PhysRevE.97.060101},
  archiveprefix = {arXiv},
  eid = {060101},
  langid = {english},
}
\end{filecontents}
\addbibresource{\jobname.bib}
\pagestyle{empty}
\begin{document}
Obtained with \verb|prefix-i={de}|: \cite{tome2015StochasticApproachEquilibrium,oliveira2018FinitesizeScalingDiscontinuous}.

Desired: Tomé and M. J. de Oliveira 2015; M. M. de Oliveira, Luz, and Fiore 2018.

\printbibliography
\end{document}

结果prefix-i={de}

在此处输入图片描述

MWE 具有shortauthor

\documentclass{article}
\usepackage[style=authoryear]{biblatex}
\begin{filecontents}{\jobname.bib}
@article{tome2015StochasticApproachEquilibrium,
  title = {Stochastic Approach to Equilibrium and Nonequilibrium Thermodynamics},
  author = {Tomé, Tânia and family=Oliveira, given=Mário José, prefix=de, useprefix=false},
  date = {2015-04-29},
  journaltitle = {Physical Review E},
  shortjournal = {Phys. Rev. E},
  volume = {91},
  number = {4},
  eprint = {1503.04342},
  eprinttype = {arxiv},
  primaryclass = {cond-mat.stat-mech},
  doi = {10.1103/PhysRevE.91.042140},
  archiveprefix = {arXiv},
  eid = {042140},
  langid = {english}, 
  shortauthor = {Tomé, Tânia and family=Oliveira, given=Mário José, prefix=de, useprefix=true},
}

@article{oliveira2018FinitesizeScalingDiscontinuous,
  title = {Finite-Size Scaling for Discontinuous Nonequilibrium Phase Transitions},
  author = {family=Oliveira, given=Marcelo M., prefix=de, useprefix=false and family=Luz, given=M. G. E., prefix=da, useprefix=false and Fiore, Carlos E.},
  date = {2018-06-08},
  journaltitle = {Physical Review E},
  shortjournal = {Phys. Rev. E},
  volume = {97},
  number = {6},
  eprint = {1804.00467},
  eprinttype = {arxiv},
  primaryclass = {cond-mat.stat-mech},
  doi = {10.1103/PhysRevE.97.060101},
  archiveprefix = {arXiv},
  eid = {060101},
  langid = {english},
  shortauthor = {family=Oliveira, given=Marcelo M., prefix=de, useprefix=true and family=Luz, given=M. G. E., prefix=da, useprefix=true and Fiore, Carlos E.},
}
\end{filecontents}
\addbibresource{\jobname.bib}
\pagestyle{empty}
\begin{document}
Obtained with \verb|shortauthor|: \cite{tome2015StochasticApproachEquilibrium,oliveira2018FinitesizeScalingDiscontinuous}.

Desired: Tomé and M. J. de Oliveira 2015; M. M. de Oliveira, Luz, and Fiore 2018.

\printbibliography
\end{document}

结果为shortauthor

在此处输入图片描述

评论:

虽然我试图大致遵循芝加哥指南,但我宁愿不使用,biblatex-chicago因为我biblatex-ext在其他地方使用的功能似乎与该软件包很麻烦。因此,我更喜欢更接近的解决方案authoryear。请注意,我确实想保留useprefix=false在参考书目中。理想情况下,该解决方案也可以轻松在 Zotero 中实现,但我知道这可能更难做到(如果可能的话),所以我也会接受完全忽略 Zotero 的答案。

答案1

引文中名称的格式由名称格式控制labelname。它根据不同的uniquename值进行分支。

其默认定义是

% Used in some citations
\DeclareNameFormat{labelname}{%
  \ifcase\value{uniquename}%
    \usebibmacro{name:family}
      {\namepartfamily}
      {\namepartgiven}
      {\namepartprefix}
      {\namepartsuffix}%
  \or
    \ifuseprefix
      {\usebibmacro{name:given-family}
        {\namepartfamily}
        {\namepartgiveni}
        {\namepartprefix}
        {\namepartsuffixi}}
      {\usebibmacro{name:given-family}
        {\namepartfamily}
        {\namepartgiveni}
        {\namepartprefixi}
        {\namepartsuffixi}}%
  \or
    \usebibmacro{name:given-family}
      {\namepartfamily}
      {\namepartgiven}
      {\namepartprefix}
      {\namepartsuffix}%
  \fi
  \usebibmacro{name:andothers}}

因此,当只需要首字母时,biblatex使用缩写名称前缀,并且是。我们总是想使用,所以可以永远摆脱测试。\namepartprefixiuseprefixfalse\nameprefix\ifuseprefix

\documentclass{article}
\usepackage[style=authoryear]{biblatex}

\DeclareNameFormat{labelname}{%
  \ifcase\value{uniquename}%
    \usebibmacro{name:family}
      {\namepartfamily}
      {\namepartgiven}
      {\namepartprefix}
      {\namepartsuffix}%
  \or
    \usebibmacro{name:given-family}
      {\namepartfamily}
      {\namepartgiveni}
      {\namepartprefix}
      {\namepartsuffixi}%
  \or
    \usebibmacro{name:given-family}
      {\namepartfamily}
      {\namepartgiven}
      {\namepartprefix}
      {\namepartsuffix}%
  \fi
  \usebibmacro{name:andothers}}

\begin{filecontents}{\jobname.bib}
@article{tome2015StochasticApproachEquilibrium,
  title = {Stochastic Approach to Equilibrium and Nonequilibrium Thermodynamics},
  author = {Tomé, Tânia and family=Oliveira, given=Mário José, prefix=de, useprefix=false},
  date = {2015-04-29},
  journaltitle = {Physical Review E},
  shortjournal = {Phys. Rev. E},
  volume = {91},
  number = {4},
  eprint = {1503.04342},
  eprinttype = {arxiv},
  primaryclass = {cond-mat.stat-mech},
  doi = {10.1103/PhysRevE.91.042140},
  archiveprefix = {arXiv},
  eid = {042140},
  langid = {english}
}
@article{oliveira2018FinitesizeScalingDiscontinuous,
  title = {Finite-Size Scaling for Discontinuous Nonequilibrium Phase Transitions},
  author = {family=Oliveira, given=Marcelo M., prefix=de, useprefix=false
            and family=Luz, given=M. G. E., prefix=da, useprefix=false and Fiore, Carlos E.},
  date = {2018-06-08},
  journaltitle = {Physical Review E},
  shortjournal = {Phys. Rev. E},
  volume = {97},
  number = {6},
  eprint = {1804.00467},
  eprinttype = {arxiv},
  primaryclass = {cond-mat.stat-mech},
  doi = {10.1103/PhysRevE.97.060101},
  archiveprefix = {arXiv},
  eid = {060101},
  langid = {english}
}
\end{filecontents}
\addbibresource{\jobname.bib}

\begin{document}
Obtained: \cite{tome2015StochasticApproachEquilibrium,
  oliveira2018FinitesizeScalingDiscontinuous}.

Desired: Tomé and M. J. de Oliveira 2015; M. M. de Oliveira, Luz, and Fiore 2018.

\printbibliography
\end{document}

获得:Tomé 和 MJ de Oliveira 2015; MM de Oliveira、Luz 和 Fiore 2018。

相关内容