'ibid' 无法与 BibLaTeX-OSCOLA 配合使用,无法使用带有简写标题的立法

'ibid' 无法与 BibLaTeX-OSCOLA 配合使用,无法使用带有简写标题的立法

对于BibLaTeX-OSCOLA,我遇到了一个错误,即连续调用带有shorthand字段的立法时没有使用“ibid”,而是引用了简写名称。有没有办法强制使用“ibid”?

梅威瑟:

\documentclass{article}
\usepackage[style=oscola,
backend=biber]{biblatex}
\begin{filecontents}{eucases3.bib}
@legislation{fir,
  title          = {Regulation (EU) № 1169/2011 of the European Parliament and of the Council of 25 October 2011 on the provision of food information to consumers, amending Regulations (EC) № 1924/2006 and (EC) № 1925/2006 of the European Parliament and of the Council, and repealing Commission Directive 87/250/EEC, Council Directive 90/496/EEC, Commission Directive 1999/10/EC, Directive 2000/13/EC of the European Parliament and of the Council, Commission Directives 2002/67/EC and 2008/5/EC and Commission Regulation (EC) № 608/2004},
  shorthand      = {FIR},
  pagination     = {article},
  keywords       = {eu},
}
\end{filecontents}
\addbibresource{eucases3.bib}
\begin{document}
    A test sentence.\autocites[15]{fir} Another one \autocites[12]{fir}
\end{document}

在此处输入图片描述

答案1

显然, soscola优先shorthand于“ibid”。我们可以尝试通过重新排序citefootcitebibmacros 中的某些代码来改变这种情况(您可以在以下位置找到这些宏的原始定义第 37-67 页oscola.cbx,v1.6)。

\documentclass{article}
\usepackage[backend=biber, style=oscola]{biblatex}

\makeatletter
\renewbibmacro*{cite}{%
  \usebibmacro{cite:citepages}%
  \global\togglefalse{cbx:loccit}%
  \ifciteseen
    {\ifboolexpr{
          test {\ifciteibid}
          and
          not test {\iffirstonpage}
          and
          not test {\iftoggle{bbx:suppressibid}}
        }
       {\usebibmacro{cite:ibid}}
       {\iffieldundef{shorthand}
          {\usebibmacro{cite:short}}
          {\usebibmacro{cite:shorthand}}}}
    {\usebibmacro{cite:full}}}

\renewbibmacro*{footcite}{%
  \bbx@resetpostnotedelim%
  \usebibmacro{cite:citepages}%
  \global\togglefalse{cbx:loccit}%
  \ifciteseen
    {\ifthenelse{\ifciteibid\AND\NOT\iffirstonpage}
       {\usebibmacro{footcite:ibid}\bbx@unsetpostnotedelim}
       {\iffieldundef{shorthand}
          {\usebibmacro{footcite:note}}
          {\usebibmacro{footcite:shorthand}}}}
    {\usebibmacro{footcite:full}%
     \usebibmacro{footcite:save}}}
\makeatother

\begin{filecontents}{\jobname.bib}
@legislation{fir,
  title          = {Regulation (EU) № 1169/2011 of the European Parliament
                    and of the Council of 25 October 2011 on the provision
                    of food information to consumers,
                    amending Regulations (EC) № 1924/2006 and
                    (EC) № 1925/2006 of the European Parliament and of the Council,
                    and repealing Commission Directive 87/250/EEC,
                    Council Directive 90/496/EEC, Commission Directive 1999/10/EC,
                    Directive 2000/13/EC of the European Parliament and of the Council,
                    Commission Directives 2002/67/EC and 2008/5/EC
                    and Commission Regulation (EC) № 608/2004},
  shorthand      = {FIR},
  pagination     = {article},
  keywords       = {eu},
}
\end{filecontents}
\addbibresource{\jobname.bib}
\begin{document}
  A test sentence.\autocites[15]{fir} Another one \autocites[12]{fir}
\end{document}

同上第 12 条。

相关内容