0

In biblatex's verbose style, a full citation is only printed for the first occurrence of a citation in the whole text, and afterwards always a shortened citation. I would like to have the same behaviour, but on the level of a page.

It should work in the following way: The first time a certain citation appears on a page, a full citation is printed, all subsequent citations of this source are shortened. Then on the next page, the first citation of this source is again a full citation and all subsequent citations are again short.

I found a rather old question that went into the same direction, however, I was not able to apply the answers to my problem: biblatex: is there a command analogous to \ifciteseen but within one page?

1 Answer 1

1

You can use the approach shown in my answer to biblatex: is there a command analogous to \ifciteseen but within one page?.

\documentclass{article}
\usepackage[american]{babel}
\usepackage{csquotes}

\usepackage[style=verbose]{biblatex}

\usepackage[colorlinks]{hyperref}

\makeatletter
\AtEveryCitekey{%
  \ifcsundef{cbx@instcount@curr@\the\c@refsection @\thefield{entrykey}}
    {\csnumgdef{cbx@instcount@curr@\the\c@refsection @\thefield{entrykey}}{0}}
    {}%
  \csnumgdef{cbx@instcount@last@\the\c@refsection @\thefield{entrykey}}{%
    \csuse{cbx@instcount@curr@\the\c@refsection @\thefield{entrykey}}}%
  \csnumgdef{cbx@instcount@curr@\the\c@refsection @\thefield{entrykey}}{\value{instcount}}}

\newcommand\iflastciteonsamepage{%
  \ifsamepage
    {\number\csuse{cbx@instcount@curr@\the\c@refsection @\thefield{entrykey}}}
    {\number\csuse{cbx@instcount@last@\the\c@refsection @\thefield{entrykey}}}}
\makeatother

\renewbibmacro*{cite}{%
  \usebibmacro{cite:citepages}%
  \iflastciteonsamepage
    {\iffieldundef{shorthand}
       {\usebibmacro{cite:short}}
       {\usebibmacro{cite:shorthand}}}
    {\usebibmacro{cite:full}}}

\addbibresource{biblatex-examples.bib}

\begin{document}
Lorem \autocite{sigfridsson}
ipsum \autocite{worman}
dolor \autocite{sigfridsson}
sit \autocite{nussbaum}
amet \autocite{worman}

\clearpage

Lorem \autocite{sigfridsson}
ipsum \autocite{nussbaum}
dolor \autocite{sigfridsson}
sit \autocite{worman}
amet \autocite{nussbaum}

\printbibliography
\end{document}

Long and short footnotes.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .