# \parencites without repeating author's name

I have the following:

\documentclass[11pt,a4paper,oneside,notitlepage]{book}

\usepackage[authordate,backend=biber,cmsdate=both,useprefix=false,ibidtracker=false]{biblatex-chicago}
\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}

@book{armstrong:universals,
author = {Armstrong, D.\ M.},
title = {Universals},
subtitle = {An Opinionated Introduction},
year = 1989,
location = {Boulder, CO},
publisher = {Westview Press},
}

@book{armstrong:truth_and_truthmakers,
author = {Armstrong, D.\ M.},
title = {Truth and Truthmakers},
year = 2004,
location = {cambridge, UK},
publisher = {Cambridge University Press},
}

\end{filecontents}

\begin{document}

\end{document}

Which outputs the following:

Of course, the \parencites command is printing the author's name twice. Yet this is not how different publications from one author are usually referenced: the author's name should appear only in the first cited publication.

However, I can't simply use \parencite as I need to introduce the second reference through "see also". Nor I can use \citeyear for the second reference as I want the year to hyperref the entry in the reference list (which I have not included in the MWEB).

I'm sure there is a simple solution that I am missing.

As you mentioned that the reason you cannot use \citeyear is that you want its hyperref to work, you could then use \cite* which will work as intended in your settings:

\documentclass[11pt,a4paper,oneside,notitlepage]{book}

\usepackage[authordate,backend=biber,cmsdate=both,useprefix=false,ibidtracker=false]{biblatex-chicago}
\usepackage{hyperref}
\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}

@book{armstrong:universals,
author = {Armstrong, D.\ M.},
title = {Universals},
subtitle = {An Opinionated Introduction},
year = 1989,
location = {Boulder, CO},
publisher = {Westview Press},
}

@book{armstrong:truth_and_truthmakers,
author = {Armstrong, D.\ M.},
title = {Truth and Truthmakers},
year = 2004,
location = {cambridge, UK},
publisher = {Cambridge University Press},
}

\end{filecontents}

\begin{document}

\printbibliography

\end{document}

Resulting in:

• That should work, thanks. For some reason I thought there existed a specific command for that (at least in the biblatex-chicago package), as this is not an uncommon usage of citations. It appears there isn't. – poxx Aug 15 '17 at 8:58
• I think what you have in mind is the behavior of biblatex's standard authoryear-comp. I'm not sure biblatex-chicago has an option for that. But there might well be, someone may come up with another idea. – gusbrs Aug 15 '17 at 10:14

You will find that

\parencites[94]{knuth:ct:a}[46--48]{knuth:ct:b}

gives you the output you expect, namely

(Knuth 1984, 94; 1986, 46–48)

but that things go wrong with

\parencites[94]{knuth:ct:a}[see][46--48]{knuth:ct:b}

i.e. when you have a pre-note argument in the later citations. I guess the idea here is that the year (the citation label) of the second citation can get drowned out by the pre- and postnotes.

You can let biblatex drop the name even if a citation has pre-notes with

\documentclass[11pt,a4paper,oneside,notitlepage]{book}

\usepackage[authordate,backend=biber,cmsdate=both,useprefix=false,ibidtracker=false]{biblatex-chicago}

\makeatletter
\renewbibmacro*{cite:init}{%
\ifnumless{\value{multicitecount}}{2}%
{\global\boolfalse{cbx:parens}%
\global\undef\cbx@lasthash%
\global\undef\cbx@lastyear}%
{}}%
\makeatother

\begin{document}
\parencites[94]{knuth:ct:a}[46--48]{knuth:ct:b}

\parencites[94]{knuth:ct:a}[see][46--48]{knuth:ct:b}
\end{document}

As it turns out a bit more has to be done if \textcites is used:

\makeatletter
\renewbibmacro*{textcite:authshort}{%
\iffieldequals{fullhash}{\cbx@lasthash}%
{\iffieldundef{postnote}%
{\iffieldequals{fullhash}{\cbx@lastyear}%
{\setunit{\multicitedelim}%
\global\undef\cbx@lastyear}%
{\iffieldequalstr{entrysubtype}{classical}%
{\setunit{\multicitedelim}}%
{\setunit{\compcitedelim}}}}%
{\setunit{\multicitedelim}}%
\ifnumequal{\value{citecount}}{1}%
{\usebibmacro{prenote}}%
{}%
\iffieldequalstr{entrysubtype}{classical}%
{\usebibmacro{cite:label}}%
{\usebibmacro{cmscitesortdate}}}%
{\iffieldundef{shorthand}%
{\ifthenelse{\ifnameundef{labelname}\OR
\ifentrytype{inreference}\OR
\ifentrytype{reference}\OR
\ifentrytype{mvreference}}%
{\iffieldequalstr{entrysubtype}{classical}%
{\setunit{%
\global\booltrue{cbx:parens}%
\cms@testspace\bibopenparen}%
\ifnumequal{\value{citecount}}{1}%
{\usebibmacro{prenote}}%
{}%
\usebibmacro{cite:label}}%
{\usebibmacro{cite:label}%
\ifboolexpr{%
togl {cms@gencite}%
and
(
test {\iffinalcitedelim}%
or
togl {cms@genallnames}%
)
}%
{\thegen}%
{}%
\setunit{%
\global\booltrue{cbx:parens}%
\cms@testspace\bibopenparen}%
\ifnumequal{\value{citecount}}{1}%
{\usebibmacro{prenote}}%
{}%
\usebibmacro{cmscitesortdate}}}%
{\printnames{labelname}%
\ifboolexpr{%
togl {cms@gencite}%
and
(
test {\iffinalcitedelim}%
or
togl {cms@genallnames}%
)
}%
{\thegen}%
{}%
\setunit{%
\global\booltrue{cbx:parens}%
\cms@testspace\bibopenparen}%
\ifnumequal{\value{citecount}}{1}%
{\usebibmacro{prenote}}%
{}%
\iffieldequalstr{entrysubtype}{classical}%
{\usebibmacro{cite:label}}%
{\usebibmacro{cmscitesortdate}}%
\savefield{fullhash}{\cbx@lasthash}}}%
{\printfield{shorthand}%
\ifboolexpr{%
togl {cms@gencite}%
and
(
test {\iffinalcitedelim}%
or
togl {cms@genallnames}%
)
}%
{\thegen}%
{}%
\setunit{%
\global\booltrue{cbx:parens}%
\cms@testspace\bibopenparen}%
\ifnumequal{\value{citecount}}{1}%
{\usebibmacro{prenote}}%
{}%
\iffieldequalstr{entrysubtype}{classical}%
{\usebibmacro{cite:label}}%
{\usebibmacro{cmscitesortdate}}%
\savefield{fullhash}{\cbx@lasthash}}%