biblatex footnote-dw 使用逗号代替冒号进行后续引用

biblatex footnote-dw 使用逗号代替冒号进行后续引用

我如何才能让 biblatex(style footnote-dw)在后续引用中使用逗号而不是冒号?

这是一个 MWE。

\documentclass{article}
\usepackage[style=footnote-dw]{biblatex}

\begin{filecontents}{mwe.bib}
@BOOK{foo,
  author = {User, Joe},
  title = {Foo},
}
@BOOK{bar,
  author = {User, Joe},
  title = {Bar},
}
\end{filecontents}

\addbibresource{mwe.bib}


\begin{document}
Test\cite[p.~1]{foo}
Test\cite[p.~2]{bar}
\newpage
Test\cite[p.~3]{foo}
Test\cite[p.~4]{bar}

\printbibliography
\end{document}

第二页的引用应该以“用户、Foo 和 Bar...”开头,而不是当前的“用户:Foo 和 Bar...”。

现在我用

\AtEveryCitekey{%
  \ifciteseen
    {\renewcommand\citenamepunct{\addcomma\space}}
    {}}

虽然这可行,但我很确定这不是“正确”的解决方案......

答案1

footnote-dw具有很多定制功能,但如果您想要更复杂的东西,这可能会使修改某些东西变得有点困难。

\nametitledelim默认为\citenamepunctfootnote-dw定义\labelnamepunct\nametitledelim引用。\labelnamepunct用于完整引用中,以分隔名称和标题。 在简短引用中,分隔符为\nametitledelim。 因此,如果我们进行更改,\citenamepunct我们也会更改第一次引用和后续引用的内容。

我们可以在 fullcite 宏中将其设置\citenamepunct\addcomma\spcae并重置\labelnamepunct为冒号。

为了正确获取同义引用,我们需要使用 明确修改标点符号缓冲区中的值\ifbool{cbx:idemfull}{\setunit{\addcolon\space}}{}

\documentclass{article}
\usepackage[style=footnote-dw]{biblatex}
\begin{filecontents}{\jobname.bib}
@BOOK{foo,
  author = {User, Joe},
  title = {Foo},
  location = {BAZ},
}
@BOOK{bar,
  author = {User, Joe},
  title = {Bar},
  location = {BAZ},
}
\end{filecontents}
\addbibresource{\jobname.bib}

\renewcommand\citenamepunct{\addcomma\space}

\renewbibmacro*{cite:full}{%
  \usebibmacro{cite:full:citepages}%
  \usebibmacro{footref}%
  \ifbool{cbx:idemfull}{\setunit{\addcolon\space}}{}%
  \printtext[bibhypertarget]{%
    \usedriver
      {\renewcommand*{\labelnamepunct}{\addcolon\space}%
       \DeclareNameAlias{sortname}{default}}
      {\thefield{entrytype}}%
    \iffieldundef{shorthand}
      {}
      {\ifbool{cbx:citedas}
        {\addspace\usebibmacro{shorthandintro}}
        {}}}}

\begin{document}
Test\cite[1]{foo}
Test\cite[2]{bar}
\newpage
Test\cite[3]{foo}
Test\cite[4]{bar}
\printbibliography
\end{document}

在此处输入图片描述

相关内容