biblatex 中是否有可能ibidtracker
仅停用脚注?我对 biblatex 还很陌生,尚未找到此问题的解决方案。
我使用 biblatex 和authoryear-icomp
citestyle,所以我的引文通常位于正文中 [例如:TEXTTEXT (Elden 1998: 73) TEXTTEXT (Ibid.: 28)]。但我也有脚注(我使用命令 \footnote)来添加其他信息和引文。目前看起来像这样:“FOOTNOTETEXTFOOTNOTETEXT (Ibid.: 39)”,但我希望有“FOOTNOTETEXTFOOTNOTETEXT (Elden 1998: 39)”。
因此希望 ibidtracker 仅适用于正文中的引文,而不适用于脚注中的引文。
非常感谢您付出的时间和帮助!
我的当前设置:
\documentclass [paper=a4, DIV10, fontsize=11pt, headsepline, headings=small, bibliography=totoc, numbers=endperiod] {scrreprt}
\usepackage[applemac]{inputenc}
\usepackage[english, ngerman]{babel}
\usepackage[autostyle,german=quotes]{csquotes}
\usepackage{lmodern}
\usepackage[T1]{fontenc}
\usepackage{rotating}
\usepackage[obeyspaces]{url}
\usepackage{xcolor}
\usepackage{tabularx}
\usepackage{array}
\usepackage{booktabs}
\usepackage{caption}
\usepackage{chngcntr}
\counterwithout{table}{chapter}
\usepackage[left=2.5cm,right=2.5cm,top=2cm,bottom=2cm,includeheadfoot]{geometry}
\usepackage{setspace}
\setlength{\parindent}{1em}
\onehalfspacing
\addtokomafont{partentry}{\centering}
\setkomafont{partentrypagenumber}{\color{white}}
\deffootnote{1em}{1em}{\textsuperscript{\thefootnotemark\ }}
\usepackage{chngcntr}
\counterwithout{footnote}{chapter}
\usepackage{epigraph}
\setlength{\epigraphwidth}{.5\textwidth}
\setlength{\epigraphrule}{0pt}
\renewcommand{\textflush}{flushepinormal}
\usepackage[automark]{scrpage2}
\setlength{\headsep}{12mm}
\usepackage[style=authoryear, citestyle=authoryear-icomp, maxnames=2, sorting=nyt, backend=biber, dashed=false, isbn=false, uniquename=false]{biblatex}
答案1
默认情况下,ibidtracker 已经分别跟踪文本和脚注中的引用。如果您只想跟踪文本中的引用,那么您可以修改的编码设置biblatex
以定义一个新ibidtracker
选项textonly
:
文本:
脚注:
\documentclass{article}
\makeatletter
\def\blx@opt@ibidtracker@textonly{%
\let\blx@imc@ifciteibid\blx@ifciteibid@textonly
\let\blx@ibidtracker\blx@ibidtracker@textonly
\let\blx@ibidreset\blx@ibidreset@textonly
\booltrue{citetracker}}
\def\blx@ifciteibid@textonly{%
\ifbool{citetracker}
{\iftoggle{blx@footnote}
{\@secondoftwo}
{\blx@imc@iffieldequals{entrykey}\blx@lastkey@text}}
{\@secondoftwo}}
\def\blx@ibidtracker@textonly{%
\ifbool{citetracker}
{\iftoggle{blx@footnote}
{\global\let\blx@lastkey@foot\abx@field@entrykey}
{\global\let\blx@lastkey@text\abx@field@entrykey}}
{}}
\def\blx@ibidreset@textonly{%
\iftoggle{blx@footnote}
{}
{\global\undef\blx@lastkey@text}}
\makeatother
\usepackage[style=authoryear, citestyle=authoryear-icomp, maxnames=2,
sorting=nyt, backend=biber, dashed=false, isbn=false,
uniquename=false,ibidtracker=textonly]{biblatex}
\addbibresource{\jobname.bib}
\begin{filecontents}{\jobname.bib}
@Article{Elden,
author = {Elden, A.},
title = {Something},
journal = {S. Jor.},
year = 1998
}
\end{filecontents}
\begin{document}
\cite[73]{Elden} and \cite[28]{Elden} but\footcite[52]{Elden} or
\footcite[71]{Elden} or even\footnote{\cite[20]{Elden}}.
\end{document}
上述编码基于context
中的 ibidtracker biblatex2.sty
,但当脚注测试为真时,我们尽可能少做操作。