¿Cómo cito tanto el autor como el año en biblatex-mla?

¿Cómo cito tanto el autor como el año en biblatex-mla?

Me pregunto si existe una forma eficaz de citar tanto el autor como el año, similar a lo que se obtiene con biblatex'es decir \textcite, Autor (año), cuando se utiliza biblatex-mla. Ahora mismo estoy usando un método bastante ineficiente:

\begin{filecontents*}{test.bib}
    title     = {{Seinte Katerine}},
    editor  = {S.R.T.O. d'Ardenne and E.J. Dobson},
    year      = {1981},
    publisher = {Oxford University Press},
    address   = {Oxford}
\end{filecontents*}

\documentclass{article}
\usepackage[style=mla,backend=bibtex8]{biblatex}
\bibliography{test}

\begin{document}
    According to \citeauthor{katherine} (\citeyear{katherine})...
\end{document}

Si alguien sabe cómo hacer esto de manera más eficiente, agradecería mucho sus sugerencias.

Respuesta1

Un vistazo rápido a la biblatex-mladocumentación sugiere que este tipo de referencia autor-año no es un estándarcitacióncomando en lo que respecta a las pautas de MLA, por lo que supongo que es por eso que no se proporciona dicho comando.

Puedes crear tu propio comando con:

\newcommand\citeauthyear[1]{\citeauthor{#1} (\citeyear{#1})}

Esto tiene al menos un inconveniente: de forma predeterminada, no funcionará hyperref, lo que puede que no sea gran cosa. Tampoco será "rastreado" por el MLA ibid-tracker; no estoy seguro de si esto es algo bueno o malo. Debes decidir qué debe hacer el resultado de esta secuencia:

\citeauthyear{<key1>} wrote about this \autocite{<key1>}

Creo que depende de cómo uses este comando. Mi vago recuerdo de las reglas de MLA (desde mis días de estudiante hace muchos años) es que MLA espera que usted "ponga entre corchetes" su cita de alguna manera como: name ... <ideas from "name"> ... (page). Si es así, entonces el seguimiento probablemente sea algo bueno.

Entonces, otra solución es crear su propio comando más ortodoxo mediante \DeclareCiteCommand. Aquí hay uno bastante básico:

\DeclareCiteCommand{\aycite}
  {\usebibmacro{prenote}}%
  {\usebibmacro{citeindex}%
    \usebibmacro{cite:mla:authyear}}%
  {}%
  {\usebibmacro{postnote}\citereset}

\newbibmacro*{cite:mla:authyear}%
  {\printtext[bibhyperref]{%
      \printnames{labelname}\space
      \printtext[parens]{\printdate}}}

Aquí, de forma predeterminada, hyperreffuncionará y el comando no se rastreará. Puede cambiar el seguimiento eliminando \citereseten la \aycitedefinición.

Aquí tienes un ejemplo completo:

\begin{filecontents*}{\jobname.bib}
@book{katherine,
    title     = {{Seinte Katerine}},
    editor  = {S.R.T.O. d'Ardenne and E.J. Dobson},
    year      = {1981},
    publisher = {Oxford University Press},
    address   = {Oxford}
}
\end{filecontents*}

\documentclass{article}
\usepackage[style=mla,backend=bibtex8]{biblatex}
\addbibresource{\jobname.bib}
\usepackage{xcolor}
\usepackage[colorlinks, allcolors=red]{hyperref}

\DeclareCiteCommand{\aycite}
  {\usebibmacro{prenote}}%
  {\usebibmacro{citeindex}%
    \usebibmacro{cite:mla:authyear}}%
  {}%
  {\usebibmacro{postnote}\citereset}

\newbibmacro*{cite:mla:authyear}%
  {\printtext[bibhyperref]{%
      \printnames{labelname}\space
      \printtext[parens]{\printdate}}}

% This version does not get "tracked" by `biblatex-mla`
\newcommand\citeauthyear[1]{\citeauthor{#1} (\citeyear{#1})}

\begin{document}
\parindent0pt

% Baseline citation
\autocite[100]{katherine} \citereset


% These two paragraphs are equivalent
According to \citeauthor{katherine} (\citeyear{katherine}); \ldots
\autocite[100]{katherine} \citereset

According to \citeauthyear{katherine}; \ldots
\autocite[100]{katherine} \citereset


% These two commands paragraphs produce identical results; if you'd
% rather get the \aycite command tracked, take out the \citereset
% commands in the \aycite definition
According to \aycite{katherine}; \ldots
\autocite[100]{katherine}
\citereset

According to \aycite{katherine}; \ldots
\citereset% <-- this is the difference between this paragraph and the one above
\autocite[100]{katherine}

\printbibliography
\end{document}

información relacionada