Eliminando el sufijo en autoraño-ibid, por ejemplo. (2011a)

Eliminando el sufijo en autoraño-ibid, por ejemplo. (2011a)

Me está costando mucho eliminar el sufijo del año en la cita del año del autor-ibid, como se puede ver en la siguiente imagen.

Imagen de cita

Este es el código que uso para biblatex:

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

Sé que aparentemente este sufijo debería ser controlable por labeldatepartspero aparentemente no tiene efecto. Cualquier ayuda es muy apreciada.

Respuesta1

Esto se puede hacer simplemente limpiando elextradate campo. Tenga en cuenta que esta solución funciona para su caso de uso particular, pero en otras situaciones puede generar resultados inesperados. En este caso,la solución por moewees más robusto. Vea los comentarios allí para una discusión.

\begin{filecontents}{\jobname.bib}

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

@book{Chomsky1986b,
    Address = {New York},
    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}
\addbibresource{\jobname.bib}
\DeclareFieldFormat{extradate}{}
\begin{document}
\autocite{Chomsky1986b,Chomsky1986}
\printbibliography
\end{document}

salida de código

Respuesta2

Como no me gusta mucho suprimir campos con un formato de campo vacío, aquí hay una solución que redefine los comandos involucrados directamente.

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

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

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


\addbibresource{biblatex-examples.bib}
\begin{document}
\autocite{knuth:ct:b,knuth:ct:c}
\printbibliography
\end{document}

Knuth, Donald E. (1986). Computadoras y tipografía. vol. B: TeX: el programa. Reading, Mass.: Addison-Wesley.//— (1986). Computadoras y tipografía. vol. C: El libro METAFONT. Lectura, Massachusetts: Addison-Wesley.

Un enfoque un poco menos agresivo aún dejaría rastros de labeldateredefinir únicamente date+extradatede la siguiente manera (y dejar bbx:ifmergeddatesin cambios)

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

Una forma diferente, pero más directa, de eliminar la fecha adicional sería

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

información relacionada