Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ibid mechanism with multicite commands #1346

Open
schtandard opened this issue Mar 17, 2024 · 4 comments
Open

ibid mechanism with multicite commands #1346

schtandard opened this issue Mar 17, 2024 · 4 comments

Comments

@schtandard
Copy link

The multicite commands like \footcites are useful for typesetting multiple citations in one footnote (or pair of parentheses). My understanding was that they are equivalent to multiple \cite calls in one common footnote (or parenthesis) wrapper, i.e.

\foocites{A}{B}

is identical to

\footnote{\cite{A}; \cite{B}}

(with the default separator ; ). However, they do not behave identically when the ibid mechanism is involved.

Consider the following example where the same text is first typeset using \footcites and then again using the imitation assumed to be identical. Footnotes 1 through 3 are from the first paragraph, 5 through 7 are from the last.

\begin{filecontents}[noheader, force]{testlit.bib}
@Book{panbread,
  author = {Pan, Thomas},
  title = {The History of Bread},
  date = {1984},
}
@Book{cookwine,
  author = {Cook, Charles},
  title = {How I Single-handedly Invented Wine},
  date = {2003},
}
\end{filecontents}

\documentclass{article}

\usepackage[style=verbose-ibid]{biblatex}
\addbibresource{testlit.bib}

\begin{document}

% Using \footcites:
Bread tastes nice.\footcite{panbread}
Bread as we know it today was invented in August~1927.\footcites[85]{panbread}[earlier variants of bread go back to the eighteenth century, cf.][177-183]{panbread}
The innovation of slicing it was made two decades later largely by accident.\footcite[207]{panbread}

% Cite something else to reset the ibid mechanism.
Did you know that wine was only invented in~2003?\footcite[1]{cookwine}

% Imitation using several \cite calls.
Bread tastes nice.\footcite{panbread}
Bread as we know it today was invented in August~1927.\footnote{\cite[85]{panbread}; \cite[earlier variants of bread go back to the eighteenth century, cf.][177-183]{panbread}}
The innovation of slicing it was made two decades later largely by accident.\footcite[207]{panbread}

\printbibliography

\end{document}

image

\footcites seems to prevent the ibid mechanism to work both inside the multicite and relating to adjacent citations. I could not find any mention of this unexpected behavior in the documentation, so I assume it's unintended.

@moewew
Copy link
Collaborator

moewew commented Mar 18, 2024

That's the result of the strict bit of ibidtracker=constrict,

strict Enable the tracker in strict mode. In this mode, potentially ambiguous
references are suppressed. A reference is considered ambiguous if
either the current citation (the one including the ‘ibidem’) or the
previous citation (the one the ‘ibidem’ refers to) consists of a list of
references.

Usually that makes sense, but if like in this case all citations in the list are to the same source, then I must admit the feature might be seen as going a little too far.

Consider

\documentclass{article}

\usepackage[style=verbose-ibid, ibidtracker=context]{biblatex}
\begin{filecontents}{\jobname.bib}
@Book{panbread,
  author = {Pan, Thomas},
  title = {The History of Bread},
  date = {1984},
}
@Book{cookwine,
  author = {Cook, Charles},
  title = {How I Single-handedly Invented Wine},
  date = {2003},
}
\end{filecontents}
\addbibresource{\jobname.bib}

\begin{document}

% Using \footcites:
Bread tastes nice.\footcite{panbread}
Bread as we know it today was invented in August~1927.\footcites[85]{panbread}[earlier variants of bread go back to the eighteenth century, cf.][177-183]{panbread}
The innovation of slicing it was made two decades later largely by accident.\footcite[207]{panbread}

% Cite something else to reset the ibid mechanism.
Did you know that wine was only invented in~2003?\footcite[1]{cookwine}

% Imitation using several \cite calls.
Bread tastes nice.\footcite{panbread}
Bread as we know it today was invented in August~1927.\footnote{\cite[85]{panbread}; \cite[earlier variants of bread go back to the eighteenth century, cf.][177-183]{panbread}}
The innovation of slicing it was made two decades later largely by accident.\footcite[207]{panbread}

\printbibliography

\end{document}

with the strict feature disabled.

@schtandard
Copy link
Author

Ah, so I was just not looking in the right place in the manual. Thanks and sorry for the noise.

@moewew
Copy link
Collaborator

moewew commented Mar 18, 2024

In this specific (and probably very rare) case an argument could be made that the strict check is excessive since the "ibid." is not ambiguous if all cites are to the same work. We could look into catching that case - not sure how difficult that it. But then again, I'm not sure if it would be a good idea to change this - maybe we'd need to implement a new almoststrict?

If you think this an investigation into this worth our while, you can reopen the issue.

@schtandard
Copy link
Author

I'd say that's worthwhile, so I'll reopen. I'd go further and say that the only ambiguous case is when the last citation was in an earlier multicite command. That is, in a citation pattern like

  1. A
  2. B; C
  3. D; E
  4. F

the only places where an "ibid." would be ambiguous are D and F. While the logic is clear from the description in the manual, I still find it especially surprising that B is considered ambiguous in the default ibid styles.

The argument could be made that D is not ambiguous if B and C are the same source, but I think it's reasonable for this to be an edge-case that is not covered by the logic.

Name suggestion in case a new option is necessary: semistrict

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants