Aplicar cambios macro biblatex a citas o entradas de bibliografía

Aplicar cambios macro biblatex a citas o entradas de bibliografía

Quiero que la macro \finalnamedelimse comporte de manera diferente para las citas y las entradas de dorsales.

Especialmente en el caso deexactamente dosautores (si tenemos más, el estilo de cita usa "et al" de todos modos), en la cita debe usar "y" como separador, pero uncomaen la entrada del dorsal.

Aquí mi MWE:

\documentclass[a4paper,12pt,oneside]{scrreprt}
% ----------------------------------------------------------
\usepackage[%
    style=authoryear,
    bibstyle=authoryear,
    maxcitenames=2,
    dashed=false,
    firstinits=true
    backend=biber,
]{biblatex}
% ----------------------------------------------------------
\renewcommand*{\finalnamedelim}{\addcomma\space}
\renewcommand*{\revsdnamepunct}{}
% ----------------------------------------------------------
\addbibresource{biblatex-examples.bib}
% ----------------------------------------------------------
\begin{document}

\parencite{bertram}

\printbibliography
\end{document}

Lo que resulta en esta cita: ingrese la descripción de la imagen aquí y esta entrada dorsal: ingrese la descripción de la imagen aquí

Sin embargo quiero lograr esto: ingrese la descripción de la imagen aquí ingrese la descripción de la imagen aquí

¿Cuál es la mejor manera de hacer eso?

Saludos cordiales, david

Respuesta1

Puedes aplicar ciertas configuraciones a la bibliografía solo usando el \AtBeginBibliographygancho

\AtBeginBibliography{\renewcommand*{\finalnamedelim}{\addcomma\space}}

Los \AtEveryCiteganchos hacen lo mismo con las citas, por lo que, en principio, también podrías utilizar

\renewcommand*{\finalnamedelim}{\addcomma\space}
\AtEveryCite{%
  \renewcommand*{\finalnamedelim}{%
    \ifnumgreater{\value{liststop}}{2}{\finalandcomma}{}%
    \addspace\bibstring{and}\space}}

pero ¿por qué lo harías?


También existen \AtEveryCitekeyy \AtEveryBibitem, esos ganchos se ejecutan en un contexto donde ya se encuentran disponibles los datos bibliográficos de la entrada en cuestión. Esto no es importante para los comandos que se usan aquí, pero \clearfieldlos amigos y solo funcionarán con \AtEveryCitekeyy \AtEveryBibitem.

Puede leer más sobre estos enlaces de código en §4.10.6Ganchos de uso general, págs. 244-246, de labiblatexdocumentación.

información relacionada