Biblatex:脚注中重复引用的技巧

Biblatex:脚注中重复引用的技巧

我正在尝试调整样式提供的引用verbose-trad2格式比布拉特克斯遵守我所得到的非常具体的要求。我思考 verbose-trad2是默认选项中最接近我所有需求的。

引文应以脚注形式给出,通常为\footcite{},但偶尔也会用\footnote{Some remark... \cite{}.}。我在这里称之为完整引文是关于一部作品的全部信息:作者、标题、出版商、日期等。我称之为缩写引文只是作者(总是完整的!)、缩写标题和可选的页码。第一次引用作品时,我必须使用完整引用,然后取决于中间是否引用了其他作品,但绝不会超过缩写引用。

我已经想出的 biblatex 相关代码可以在这里找到这里。LaTeX 文档本身是一个article带有选项的onepage

首先,我已经应用了两种技巧。

  1. 始终打印作者的全名。因此我设置了idemtracker=false
  2. 这个单词同上当两个后续引文具有相同的作者和标题时必须使用(而不是默认的同上verbose-trad2)。因此我重新定义了ibidem = idem

其次,我仍然需要适应一些东西,即使浏览了文档和这个网站,我也没有丝毫的想法。(我可能错过了一些东西,因为我对低级 tex 或 biblatex 代码不太熟悉,如果是这样的话,我很抱歉。)

  1. 当两个后续引用具有相同的作者、标题和页码(在方括号参数中给出)时\footcite[]{})时,只需打印同上。(没有其他的)。
  2. 新页面的脚注部分始终以完整或缩写的引文(作者(完整)、缩写标题、页码)开始,切勿以同上或者同上。即使前一个引用的最后一个引用相似/相同。我以为 biblatex 文档暗示这可以立即使用,但似乎并非如此。
  3. (可选)缩写标题是指:如果作者只有一部作品,则使用表达方式同上。同上。,否则使用标题的缩写形式(我必须shorttitle在 bibTeX 条目中使用该字段吗?)

提前感谢任何建议和帮助!

答案1

对于请求 1,添加选项ibidpage=true。引用第 2 页75-style-verbose-trad2.pdf

选项ibidpage

学术缩写同上在传统的引用方案中,有时被理解为“同一作者 + 同一标题”和“同一作者 + 同一标题 + 同一页”。默认情况下,这种样式并非如此,因为它可能导致引用不明确。如果您更喜欢更宽泛的解释同上,设置包选项 ibidpage=true或直接ibidpage在前言中设置。默认设置是ibidpage=false

对于请求 2,\iffirstonpage必须向citebibmacro 添加测试;如果测试结果为真,cite:namecite:title必须使用 bibmacros。

\documentclass{article}

\usepackage[style=verbose-trad2,ibidpage=true]{biblatex}

\renewbibmacro*{cite}{%
  \usebibmacro{cite:citepages}%
  \global\togglefalse{cbx:fullcite}%
  \global\togglefalse{cbx:loccit}%
  \bibhypertarget{cite\the\value{instcount}}{%
    \ifciteseen
      {\iffieldundef{shorthand}
        {\iffirstonpage% NEW
           {\usebibmacro{cite:name}% NEW
            \usebibmacro{cite:title}}% NEW
           {\ifciteibid
              {\usebibmacro{cite:ibid}}
              {\ifthenelse{\ifciteidem\AND\NOT\boolean{cbx:noidem}}
                 {\usebibmacro{cite:idem}}
                 {\usebibmacro{cite:name}}%
               \usebibmacro{cite:title}}%
%       \usebibmacro{cite:save}}% DELETED
        \usebibmacro{cite:save}}}% NEW
         {\usebibmacro{cite:shorthand}}}
      {\usebibmacro{cite:full}%
       \usebibmacro{cite:save}}}}

\usepackage{filecontents}

\begin{filecontents}{\jobname.bib}
@misc{A01,
  author = {Author, A.},
  year = {2001},
  title = {Alpha},
}
\end{filecontents}

\addbibresource{\jobname.bib}

\textheight=100pt% just for the example

\begin{document}

Some text \autocite[99]{A01}.

Some text \autocite[99]{A01}.

\clearpage
\citereset

Some text \autocite{A01}.

\clearpage

Some text \autocite{A01}.

\printbibliography

\end{document}

在此处输入图片描述

在此处输入图片描述

在此处输入图片描述

相关内容