Espacio misterioso antes del comando \footnote

Espacio misterioso antes del comando \footnote

Definí un formato personalizado de nombre + año + título de nota al pie, pero por alguna razón hay un espacio inicial antes del superíndice. ¿De dónde viene?

El comando se ve así:

\DeclareNameFormat{lastnameonly}{\namepartfamily}
\DeclareCiteCommand{\myfootcite}{}{%
    \footnote{%
        \printnames[lastnameonly]{author} (\printfield{year}), \printfield{title}
    }
}{}{}

Producción:

ingrese la descripción de la imagen aquí

MWE:

\documentclass{article}

\usepackage[backend=biber]{biblatex}
\bibliography{references.bib}
\begin{filecontents}{references.bib}
@article{smith01,
  author = {Smith, John},
  year = {2001},
  title = {Article title}
}
\end{filecontents}

%% Custom command giving a mysterious space
\DeclareNameFormat{lastnameonly}{\namepartfamily}
\DeclareCiteCommand{\myfootcite}{}{%
    \footnote{%
        \printnames[lastnameonly]{author} (\printfield{year}), \printfield{title}
    }
}{}{}

\begin{document}
There is a space \myfootcite{smith01}
\end{document}

Respuesta1

lo fácil de hacer es agregar \unskipal inicio de la \myfootcitedefinición:

%% Custom command giving a mysterious space
\DeclareNameFormat{lastnameonly}{\namepartfamily}
\DeclareCiteCommand{\myfootcite}{}{%
    \unskip
    \footnote{%
        \printnames[lastnameonly]{author} (\printfield{year}), \printfield{title}% <--
    }% <--
}{}{}

esto tiene el efecto de eliminar el espacio que precede inmediatamente a la inserción del comando cuando se aplica.

lo inverso de esto es \ignorespaces, que, como dice, ignorará cualquier espacio que siga inmediatamente a un comando que lo incluya al final.

Estos dos comandos se ganan el sustento cuando una entrada descuidada incluye espacios al principio o al final de alguna cadena que se utilizará en una posición donde el espaciado "limpio" importa, como un encabezado o antes de una nota al pie, como se muestra en el ejemplo aquí.

también había espacios espurios, eliminados con a %en los puntos marcados con <--.

información relacionada