Comando Biblatex parencite con punto justo antes del paréntesis de cierre

Comando Biblatex parencite con punto justo antes del paréntesis de cierre

A mi universidad le gusta tener algunas reglas de cita interesantes y para cumplirlas necesitaría comandos de cita para producir <author> (<year>), (<author> <year>)y (<author> <year>.)para hacer esto busqué en natbib y encontré \citetque \citese parecía mucho a lo que necesitaba. Con un poco de manipulación logré acercarlos a lo que necesitaba. El problema vino con el punto y la coma en el medio.

Esto es lo que tengo actualmente.

\documentclass[12pt,twoside,english]{article}
\usepackage[backend=biber,style=authoryear-comp,natbib,citetracker=true,%
maxcitenames=1,uniquename=false,uniquelist=false]{biblatex}
\addbibresource{cite/citedb.bib}
\usepackage{xpatch}

\renewcommand*{\finalnamedelim}{%
  \addspace\&\space}
\AtEveryCitekey{\ifciteseen{}{\clearfield{namehash}}}

\xpatchbibmacro{cite}
  {\printnames{labelname}}
  {\ifciteseen
    {\printnames{labelname}}
    {\printnames[][1-99]{labelname}}}
  {}
  {}

\xpatchbibmacro{textcite}
  {\printnames{labelname}}
  {\ifciteseen
    {\printnames{labelname}}
    {\printnames[][1-99]{labelname}}}
  {}
  {}

\begin{document}

\citet{foo}

\citet{foo}

\citep{foo}

\cited{foo}

\printbibliography

\end{document}

Lo que esto me produce actualmente es

Foo, Bar & Baz (xyz)

Foo et al., (xyz)

(Foo et al., xyz)

Entonces, ¿cómo puedo hacer que esa coma desaparezca \citepantes del año y también crear el comando necesario? \cited? ¿Con el punto al final así?

(Foo et al. xyz.)

Respuesta1

Puedes hacer que la coma desaparezca con

\renewcommand*{\nameyeardelim}{\addspace}

De hecho, es el natbibmodo de compatibilidad (ver blx-natbib.def) el que hace que este cambio sea necesario; el valor predeterminado es usar solo un espacio.


El período en el que \citedpuedes obtener

\newrobustcmd{\mkbibparensperiod}[1]{\mkbibparens{#1\addperiod}}
\DeclareCiteCommand{\darencite}[\mkbibparensperiod]
  {\usebibmacro{cite:init}%
   \usebibmacro{prenote}}
  {\usebibmacro{citeindex}%
   \usebibmacro{cite}}
  {}
  {\usebibmacro{postnote}}

\newrobustcmd*{\cited}{\darencite}

información relacionada