[Tex/LaTex] Apostrophe s when citing

biberbiblatexciting

I cite elements from my bibfile using \citet{key}. The reference appears as "Name1, and Name2 (year)" in text where year is a link leading to the bibliography. Now, I want to include an 's after the authors name, e.g.

Using Name1, and Name2's (2019) formula, I compute …

Any ideas of I could adjust the \citet command?


I use biblatex as follows.

\usepackage[style=ext-authoryear-comp,
            backend=biber,
            natbib=true,
            uniquename=false,
            uniquelist=false,
            giveninits=false,
            dashed=false,
            backref=false,
            maxbibnames=99,
            maxcitenames=3,
            isbn=false,
            doi=false]{biblatex}

Best Answer

A cheap way to produce citations like these is

\citeauthor{sigfridsson}'s \parencite*{sigfridsson}

this should work out of the box for most styles.

If you'd like to see a solution with a dedicated command, we can modernise Audrey's answer to Author name of \textcite as possessive to create a new \posscite command that automatically inserts "'s" at the end of the names. Again, this solution is pretty style independent.

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

\usepackage[style=ext-authoryear-comp, backend=biber,]{biblatex}

\DeclareNameWrapperFormat{labelname:poss}{#1's}

\newrobustcmd*{\posscitealias}{%
  \AtNextCite{%
    \DeclareNameWrapperAlias{labelname}{labelname:poss}}}

\newrobustcmd*{\posscite}{%
  \posscitealias
  \textcite}

\newrobustcmd*{\Posscite}{\bibsentence\posscite}

\newrobustcmd*{\posscites}{%
  \posscitealias
  \textcites}

\addbibresource{biblatex-examples.bib}

\begin{document}
\posscite{sigfridsson}
\printbibliography
\end{document}

Sigfridsson and Ryde’s (1998)

Several alternatives where you give the possessive marker manually are discussed in Adding a third option for inserting possessive to \textcite. If you are interested in one of those solutions, they could be modified for your use case as well.


If you want to attach the "'s" to the name at all times and not the "et al." the code gets a bit longer, because we can no longer use name wrappers to inject the "'s".

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

\usepackage[style=ext-authoryear-comp, backend=biber,]{biblatex}

\DeclareNameFormat{labelname:poss}{%
  \ifcase\value{uniquename}%
    \usebibmacro{name:family}
      {\namepartfamily}
      {\namepartgiven}
      {\namepartprefix}
      {\namepartsuffix}%
  \or
    \ifuseprefix
      {\usebibmacro{name:given-family}
        {\namepartfamily}
        {\namepartgiveni}
        {\namepartprefix}
        {\namepartsuffixi}}
      {\usebibmacro{name:given-family}
        {\namepartfamily}
        {\namepartgiveni}
        {\namepartprefixi}
        {\namepartsuffixi}}%
  \or
    \usebibmacro{name:given-family}
      {\namepartfamily}
      {\namepartgiven}
      {\namepartprefix}
      {\namepartsuffix}%
  \fi
  \ifnumequal{\value{listcount}}{\value{liststop}}
    {'s}
    {}%
  \usebibmacro{name:andothers}}

\newrobustcmd*{\posscitealias}{%
  \AtNextCite{%
    \DeclareNameAlias{labelname}{labelname:poss}}}

\newrobustcmd*{\posscite}{%
  \posscitealias
  \textcite}

\newrobustcmd*{\Posscite}{\bibsentence\posscite}

\newrobustcmd*{\posscites}{%
  \posscitealias
  \textcites}

\addbibresource{biblatex-examples.bib}

\begin{document}
\posscite{sigfridsson}

\posscite{aksin}

\printbibliography
\end{document}
Related Question