1

In order to make it clear, I'll describe my citation style as a dichotomous tree. I think it's a kind of verbose-trad style (maybe verbose-trad2 ?). As a french citation style, it makes use "op. cit", "ibid.", and "idem". I know that the \ifciteibid, \ifciteidem, \ifciteseen and \ifsingletitle will have to be used. The questions are:

  • Which default biblatex citation style is the closest to mine ?
  • What is the proper way to implement it ?

enter image description here

2

I think verbose-trad2 comes closest to what you want.

Here is a start at implementing your decision tree based on that style.

\documentclass[british]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{babel}
\usepackage{csquotes}

\usepackage[backend=biber,
  style=verbose-trad2,
  singletitle=true,
  ibidpage=true,
]{biblatex}

\DeclareDelimFormat{titleopcitdelim}{\addcomma\space}

% suppress title if only only work by labelname
\renewbibmacro*{cite:title}{%
  \printtext[bibhyperlink]{%
    \ifsingletitle
      {}
      {\printfield[citetitle]{labeltitle}%
       \setunit{\printdelim{titleopcitdelim}}}%
    \bibstring[\mkibid]{opcit}}}

% idem also for full citations
\makeatletter
\newcommand*{\ifnameidem}[1]{%
  \ifciteidem
    {\iffieldequalstr{labelnamesource}{#1}}
    {\@secondoftwo}}

\renewbibmacro*{author}{%
  \ifboolexpr{
    test \ifuseauthor
    and
    not test {\ifnameundef{author}}
  }
    {\ifnameidem{author}
       {\bibstring[\mkibid]{idem\thefield{gender}}}
       {\usebibmacro{bbx:dashcheck}
          {\bibnamedash}
          {\printnames{author}%
           \setunit{\printdelim{authortypedelim}}%
           \usebibmacro{bbx:savehash}}}%
     \usebibmacro{authorstrg}}
    {\global\undef\bbx@lasthash}}

\renewbibmacro*{bbx:editor}[1]{%
  \ifboolexpr{
    test \ifuseeditor
    and
    not test {\ifnameundef{editor}}
  }
    {\ifnameidem{editor}
       {\bibstring[\mkibid]{idem\thefield{gender}}}
       {\usebibmacro{bbx:dashcheck}
          {\bibnamedash}
          {\printnames{editor}%
           \setunit{\printdelim{editortypedelim}}%
           \usebibmacro{bbx:savehash}}}%
     \usebibmacro{#1}%
     \clearname{editor}}
    {\global\undef\bbx@lasthash}}

\renewbibmacro*{bbx:translator}[1]{%
  \ifboolexpr{
    test \ifusetranslator
    and
    not test {\ifnameundef{translator}}
  }
    {\ifnameidem{translator}
       {\bibstring[\mkibid]{idem\thefield{gender}}}
       {\usebibmacro{bbx:dashcheck}
          {\bibnamedash}
          {\printnames{translator}%
           \setunit{\printdelim{translatortypedelim}}%
           \usebibmacro{bbx:savehash}}}%
     \usebibmacro{#1}%
     \clearname{translator}}
    {\global\undef\bbx@lasthash}}
\makeatother

\addbibresource{biblatex-examples.bib}


\begin{document}
Lorem \autocite{sigfridsson}
Lorem \autocite{knuth:ct:a}
Lorem \autocite{sigfridsson}
Lorem \autocite{knuth:ct:a}
dolor \autocite{knuth:ct:b}
ipsum \autocite{knuth:ct:b}
ipsum \autocite{knuth:ct:a}
Lorem \autocite{sigfridsson}
ipsum \autocite{knuth:ct:b}
Lorem \autocite[380]{sigfridsson}
Lorem \autocite[381]{sigfridsson}
Lorem \autocite[10]{nussbaum}
Lorem \autocite[10]{nussbaum}
\printbibliography
\end{document}

Many example citations.

I've ignored citations with volumes for now as the solution there will depend on your input and will likely be more complex. I urge you to ask a new question with an MWE (possibly based on this answer) that shows what you have so far and how you cite these works and what the .bib entries look like.

0

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.