# Which biblatex default citation style is the closest to these requirements and what is the proper way to implement them?

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 ?

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,
singletitle=true,
ibidpage=true,
]{biblatex}

% suppress title if only only work by labelname
\renewbibmacro*{cite:title}{%
\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

\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}


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.