biblatex:如何让 \citetitle 在 ibidtracker 中注册?

biblatex:如何让 \citetitle 在 ibidtracker 中注册?

biblatex作者标题中,我使用\citetitle引用词典来指代我经常引用的词典:引用牛津英语词典例如,您不希望像在简短形式的引用中那样,在每次引用时都在标题旁边打印编辑器。

但是,\citetitle似乎没有被跟踪ibidtracker,因此存在错误 ibid 的风险。我如何将\citetitle事件纳入ibidtracker计数?

(也欢迎采用仅引用作品标题或一些自定义简写的其他方式。)

\documentclass{book}
\usepackage{fontspec}
\usepackage[style=american]{csquotes}
\usepackage{polyglossia}
\usepackage[style=authortitle-ibid,ibidtracker=strict]{biblatex}

\setdefaultlanguage{english}

\begin{filecontents}{book.bib}
@Book{nussbaum,
  sorttitle   = {Aristotle's De Motu Animalium},
  author      = {Nussbaum, Martha},
  title       = {Aristotle's \mkbibquote{De Motu Animalium}},
  publisher   = {Princeton University Press},
  location    = {Princeton},
  date        = {1978},
}

@reference{onp,
   editor = {Helle Degnboll},
   title = {A Dictionary of Old Norse Prose},
   shorttitle = {ONP},
   location = {Copenhagen},
   publisher = {Den arnemagnæanske kommission},
   date = {1989/}
}

\end{filecontents}
\addbibresource{book.bib}

\begin{document}

Statement one\footnote{\cite[55]{nussbaum}; \citetitle[s.v. \mkbibquote{hestr}]{onp}.}, 
statement two\autocite[but this entry should not read \emph{ibid.}]{nussbaum}.

\end{document}

同上演示
(来源:langeslag.org

答案1

\citetitle//命令的标准定义包括暂时关闭 ibidtracker 的行,因此我们可以通过注释掉该特定行\citeyear来重新启用它\citeauthor\boolfalse{citetracker}%

\DeclareCiteCommand{\citetitle}
  {%\boolfalse{citetracker}%
   \boolfalse{pagetracker}%
   \usebibmacro{prenote}}
  {\ifciteindex
     {\indexfield{indextitle}}
     {}%
   \printfield[citetitle]{labeltitle}}
  {\multicitedelim}
  {\usebibmacro{postnote}}

平均能量损失

\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[style=american]{csquotes}
\usepackage{filecontents}
\usepackage[style=authortitle-ibid, ibidtracker=strict]{biblatex}

\DeclareCiteCommand{\citetitle}
  {%\boolfalse{citetracker}%
   \boolfalse{pagetracker}%
   \usebibmacro{prenote}}
  {\ifciteindex
     {\indexfield{indextitle}}
     {}%
   \printfield[citetitle]{labeltitle}}
  {\multicitedelim}
  {\usebibmacro{postnote}}    

\begin{filecontents*}{\jobname.bib}
@Book{nussbaum,
  sorttitle   = {Aristotle's De Motu Animalium},
  author      = {Nussbaum, Martha},
  title       = {Aristotle's \mkbibquote{De Motu Animalium}},
  publisher   = {Princeton University Press},
  location    = {Princeton},
  date        = {1978},
}
@reference{onp,
   editor     = {Helle Degnboll},
   title      = {A Dictionary of Old Norse Prose},
   shorttitle = {ONP},
   location   = {Copenhagen},
   publisher  = {Den arnemagnæanske kommission},
   date       = {1989/},
}
\end{filecontents*}
\addbibresource{\jobname.bib}

\begin{document}
Statement one\footnote{\cite[55]{nussbaum}; \citetitle[s.v. \mkbibquote{hestr}]{onp}.}, 
statement two\autocite[but this entry should not read \emph{ibid.}]{nussbaum}.

\printbibliography
\end{document}

在此处输入图片描述


不过,在您的特定情况下,我宁愿使用shorthandand\cite而不是shorttitleand \citetitle

@reference{onp,
   editor    = {Helle Degnboll},
   title     = {A Dictionary of Old Norse Prose},
   shorthand = {ONP},
   location  = {Copenhagen},
   publisher = {Den arnemagnæanske kommission},
   date      = {1989/},
}

平均能量损失

\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[style=american]{csquotes}
\usepackage{filecontents}
\usepackage[style=authortitle-ibid, ibidtracker=strict]{biblatex}

\begin{filecontents*}{\jobname.bib}
@Book{nussbaum,
  sorttitle   = {Aristotle's De Motu Animalium},
  author      = {Nussbaum, Martha},
  title       = {Aristotle's \mkbibquote{De Motu Animalium}},
  publisher   = {Princeton University Press},
  location    = {Princeton},
  date        = {1978},
}
@reference{onp,
   editor    = {Helle Degnboll},
   title     = {A Dictionary of Old Norse Prose},
   shorthand = {ONP},
   location  = {Copenhagen},
   publisher = {Den arnemagnæanske kommission},
   date      = {1989/},
}
\end{filecontents*}
\addbibresource{\jobname.bib}

\begin{document}
Statement one\autocites[55]{nussbaum}[s.v. \mkbibquote{hestr}]{onp}, 
statement two\autocite[but this entry should not read \emph{ibid.}]{nussbaum}.

\printbibliography
\end{document}

相关内容