在使用 biblatex-chicago 的文本中始终使用 shortauthor

在使用 biblatex-chicago 的文本中始终使用 shortauthor

基于这个问题——biblatex-apa:在文本中始终使用 shortauthor– 我想知道是否有可能在 中实现相同的效果biblatex-chicago,以便只有shortauthor形式会出现在文本中(当然,仍然在参考书目和速记列表中完整引用)。

以下是我正在处理的内容:

\documentclass[12pt]{memoir}

\usepackage[notes, backend=biber, sorting=nyt,
  giveninits=true, useprefix=false,
  shorthandibid, shorthandfull,
  addendum=false,
]{biblatex-chicago}

\usepackage{filecontents}
\begin{filecontents*}{jobname.bib}
@misc{ADLAe1658,
entrysubtype = {archival},
author = {{Archives départementales de Loire-Atlantique, Nantes}},
shortauthor = {{ADLA}},
title = {E 165-8},
keywords = {unpublished},
}

\end{filecontents*}
\addbibresource{jobname.bib}

\begin{document}

This needs a citation.\autocite{lastname19}

\end{document}

答案1

我认为最简单的方法是使用\AtEveryCitekeyshortauthor(如果存在)复制到author

\documentclass[12pt]{memoir}

\usepackage[notes, backend=biber, sorting=nyt,
  giveninits=true, useprefix=false,
  shorthandibid, shorthandfull,
  addendum=false,
]{biblatex-chicago}

\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@misc{ADLAe1658,
  entrysubtype = {archival},
  author = {{Archives départementales de Loire-Atlantique, Nantes}},
  shortauthor = {ADLA},
  title = {E 165-8}
}
@misc{ADLAe1658b,
  entrysubtype = {archival},
  author = {{Archives départementales de Loire-Atlantique, Nantes}},
  title = {E 165-8}
}
\end{filecontents}
\addbibresource{\jobname.bib}

\AtEveryCitekey{%
  \ifnameundef{shortauthor}
    {}
    {\savename{shortauthor}{\tmpshortauthor}%
     \restorename{author}{\tmpshortauthor}}}

\begin{document}
\null\vfill
This needs a citation.\autocite{ADLAe1658}

This needs a citation.\autocite{ADLAe1658b}
\end{document}

输出

相关内容