# Removing suffix in authoryear-ibid eg. (2011a)

I am having a hard time removing the suffix in the year in authoryear-ibid citation as you can see in the following picture.

This is the code I use for biblatex:

\usepackage[
citestyle=verbose-ibid,
bibstyle=authoryear-ibid,
backend=biber]
{biblatex}


I know that this suffix apperantly should be controllable by the labeldateparts but apperantly it does not take effect. Any help is greatly appreciated.

• Found this: which works kinda good for me: tex.stackexchange.com/questions/63500/… if no one else has a better solution this will be logged as my answer. Aug 3 '19 at 21:16
• Welcome to TeX.se! For future questions it's helpful to post a compilable minimal document that shows what you're doing, rather than a code fragment. Aug 3 '19 at 23:34

This can be done simply by clearing the extradate field. Note that this solution works for your particular use case, but in other situations it might lead to unexpected results. In this case, the solution by moewe is more robust. See the comments there for some discussion.

\begin{filecontents}{\jobname.bib}

@book{Chomsky1986,
Author = {Noam Chomsky},
Publisher = {{MIT} Press},
Title = {Barriers},
Year = {1986}}

@book{Chomsky1986b,
Author = {Noam Chomsky},
Publisher = {Praeger},
Title = {Knowledge of Language: its nature, origin and use},
Year = {1986}}
\end{filecontents}
\documentclass{article}
\usepackage[
citestyle=verbose-ibid,
bibstyle=authoryear-ibid,
]
{biblatex}
\begin{document}
\autocite{Chomsky1986b,Chomsky1986}
\printbibliography
\end{document}


Since I'm not too fond of suppressing fields with en empty field format, here is a solution that redefines the involved commands directly.

\documentclass{article}
\usepackage[
citestyle=verbose-ibid,
bibstyle=authoryear-ibid,
]{biblatex}

\iffieldundef{labelyear}
{}
{\printtext[parens]{\printdate}}}

\renewbibmacro*{bbx:ifmergeddate}[2]{#1}%

\begin{document}
\autocite{knuth:ct:b,knuth:ct:c}
\printbibliography
\end{document}


A slightly less aggressive approach would still leave traces of labeldate by only redefining date+extradate as follows (and leaving bbx:ifmergeddate unchanged)

\renewbibmacro*{date+extradate}{%
\iffieldundef{labelyear}
{}
{\printtext[parens]{%
\iflabeldateisdate
{\printdate}
{\printlabeldate}}}}%


A different, but more direct, way to delete the extra date would be

\DeclareFieldInputHandler{extradate}{\def\NewValue{}}

• Apart from the conceptual reasons for not doing this by clearing the field format, are there empirical downsides to doing it that way? It's certainly a more user-accessible way of doing it. Aug 4 '19 at 13:01
• @AlanMunn There shouldn't be a lot (for almost all intents and purposes). \printfield checks if the field format is empty and then behaves as if the field didn't exist. \iffieldundef checks might give the wrong result, but most styles keep those at a minimum. A difference between the two approaches can be seen if you only load style=authoryear-comp,. Then \autocite{knuth:ct:b,knuth:ct:c}. \DeclareFieldFormat{extradate}{} leaves a comma in the output, but \DeclareFieldInputHandler{extradate}{\def\NewValue{}} doesn't (of course both results are wrong, so ...). Aug 4 '19 at 13:08
• I have used the clearfield method by @AlanMunn but your approach is quite sophisticated but for my usage I prefer it a bit simplistic. Sadly i cant flag both answers to be true :( Aug 4 '19 at 14:04
• @AlanMunn Here is an example that shows two problematic uses of an empty field format: gist.github.com/moewew/f07c3add09939506071f25ff459af897 Aug 4 '19 at 18:30
• @moewe Thanks. I've added a link to your answer in mine so that people don't overgeneralize the solution. Aug 4 '19 at 18:47