dcpurton/biblatex-sbl

churchfather classictext related to article throws undefined control sequence error

jjmccollum opened this issue · 6 comments

In my bibliography, I have some works by church fathers that are reproduced not in series, but in books and articles. I'd like to employ the citation-alternate citation mechanism—e.g., \cite[(5.18)628--629]{TertullianAdvMarc} for Tertullian, Marc. 5.18 (Evans, Adversus Marcionem, 628-29—for these works as well, and in general, I can use the related and relatedoptions fields to manage this correctly. But for an edition of a patristic work that was published in an article, cross-referencing the article in the related field of the patristic work causes an unexpected error.

A minimal working example (with the problematic lines of the bibliography entry commented out) is reproduced below:

\documentclass[12pt]{article}

\usepackage{filecontents}

\begin{filecontents}{bibliography.bib}
	@mvbook{Evans1972,
		editor = {Evans, Ernest},
		translator = {Evans, Ernest},
		title = {Tertullian, Adversus Marcionem},
		shorttitle = {Adversus Marcionem},
		volumes = {2},
		location = {Oxford},
		publisher = {Oxford University Press},
		date = {1972}
	}

	@article{Gregg1902,
		author = {Gregg, J. A. F.},
		title = {The Commentary of Origen upon the Epistle to the Ephesians},
		shorttitle = {Commentary of Origen},
		journaltitle = {Journal of Theological Studies},
		shortjournal = {{JTS}},
		pages = {1/3.10 \mkbibparens{1902}: 233--244\addsemicolon\space 1/3.11 \mkbibparens{1902}: 398--420\addsemicolon\space 1/3.12 \mkbibparens{1902}: 554--576},
	}

	@classictext{TertullianAdvMarc,
		entrysubtype = {churchfather},
		author = {{Tertullian}},
		title = {Adversus Marcionem},
		shorttitle = {Marc\adddot},
		related = {Evans1972},
		relatedoptions = {usefullcite=false,useshorttitle=true}
	}

	@classictext{OrigenCommEph,
		entrysubtype = {churchfather},
		author = {{Origen}},
		title = {Commentary on Ephesians},
		shorttitle = {Comm. Eph\adddot},
		% If the following lines are uncommented, then XeLaTeX throws the following error: ! Undefined control sequence. <argument> \ifciteseen 
		%related = {Gregg1902},
		%relatedoptions = {usefullcite=false,useshorttitle=true}
	}
\end{filecontents}

\usepackage[style=sbl, backend=biber]{biblatex}
\addbibresource{bibliography.bib} % Add the bibliography file to be processed by biblatex

\begin{document}
	Tertullian's commentary on Ephesians is taken from Evans's edition and translation \autocite{Evans1972}.

	Origen's commentary on Ephesians is taken from Gregg's edition \autocite{Gregg1902}.

	Citation of Tertullian \autocite[(5.18)628--629]{TertullianAdvMarc}.

	Citation of Origen \autocite[(§36)3:575]{OrigenCommEph}.
\end{document}

If I uncomment the last two lines of the last bib entry, then XeLaTeX throws the following error:

! Undefined control sequence.
<argument> \ifciteseen 
    {\usebibmacro {ifidemused} {} {\printnames [labelname...
l.56 ...igen \autocite[(§36)3:575]{OrigenCommEph}.

I am using the version of XeLaTeX and biblatex-sbl from the TeXLive 2021 distribution.

It seems that something strange is going on with the idem checking. Note that the first patristic source (related to a book) has its citation typeset correctly.

Is this a bug, or am I misusing the related mechanism for patristic works?

@jjmccollum I'll take a look. Can you also add the output you want to help me test

@dcpurton Sure! Do you mean the expected typeset citation, the log file, or something else?

Expected typeset output (including what should appear in bibliography)

Thanks! I would expect the following for the citations of the patristic sources:

Tertullian, Marc. 5.18 (Evans, Adversus Marcionem, 628-29.

Origen, Comm. Eph. §36 (Gregg, "Commentary of Origen" 3:575)

(The last citation above may or may not have a comma between the shorttitle and the part:page number citation; I know that SBL style drops the comma for volume:page citations for books, so I imagine that would be the correct approach here.)

For the bibliography, neither patristic work should appear. Only the works containing their editions should be included in the bibliography:

Evans, Ernest, ed. and trans. Tertullian, Adversus Marcionem. 2 vols. Oxford: Oxford University Press, 1972.

Gregg, J. A. F. "The Commentary of Origen upon the Epistle to the Ephesians." JTS 1/3.10 (1902): 233–44; 1/3.11 (1902): 398–420; 1/3.12 (1902): 554–76.

You found a typo!

Three times in sbl.cbx I have used \@firtoftwo instead of \@firstoftwo.

I'll do a new release to CTAN,

But until then and to confirm that this is indeed the problem, try adding

\makeatletter
\let\@firtoftwo\@firstoftwo
\makeatother

to your preamble.

It looks like that fixed the problem! Thanks so much!