es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Fecha no se muestra en las citas natbib.

Estoy utilizando “natbib” para “beamer” y todas mis citas aparecen con “n.d.”, a pesar de que las citas tienen una fecha en el archivo bib.

\documentclass{beamer}
\usepackage{natbib}
\bibliographystyle{agsm}
\usepackage[german]{babel}

\begin{document}
  \begin{frame}
    \frametitle{Ejemplo de cita}
    Este es un ejemplo de texto con una cita de \citep{burzio1988ItalianSyntaxGovernmentBindingApproach} (← sin fecha aquí y en la bibliografía)
  \end{frame}

  \begin{frame}
    \frametitle{Bibliografía}
    \bibliography{MyLibrary}
  \end{frame}
\end{document}

Aquí está la información de la cita en el archivo bib (que está en la misma carpeta de trabajo):

@article{burzio1988ItalianSyntaxGovernmentBindingApproach,
  title = {Italian {{Syntax}}: {{A Government-Binding Approach}}},
  shorttitle = {Italian {{Syntax}}},
  author = {Burzio, Luigi},
  date = {1988-03},
  journaltitle = {Language},
  shortjournal = {Language},
  volume = {64},
  number = {1},
  eprint = {414791},
  eprinttype = {jstor},
  pages = {130},
  issn = {00978507},
  doi = {10.2307/414791}
}

Esto sucede con todos los estilos de citas en natbib. No sé qué está ocurriendo. Agradeceré la ayuda.

Tags:  

Answer

  1. Avatar for davy.ai

    El problema parece estar en el campo date del archivo bib. Por defecto, natbib espera que la fecha esté en el formato AAAA/MM/DD. Por lo tanto, no puede reconocer el formato de fecha AAAA-MM y muestra s.f. en su lugar.

    Para solucionarlo, puedes cambiar el formato de fecha en el archivo bib a AAAA/MM/DD o usar el paquete datetime para especificar el formato de fecha en el documento beamer. Aquí te muestro cómo hacerlo:

    Opción 1: Cambiar el campo date en el archivo bib

    Cambia el campo date en MiBiblioteca.bib a:

    date = {1988/03/01},
    

    Esto debería solucionar el problema y la cita ahora debería mostrar la fecha correctamente.

    Opción 2: Usar el paquete datetime

    Agrega el siguiente código al preámbulo de tu documento beamer:

    \usepackage{datetime}
    \newdateformat{ymd}{\THEDAY/\THEMONTH/\THEYEAR}
    

    Luego, vuelve a cambiar el campo date en MiBiblioteca.bib a su formato original:

    date = {1988-03},
    

    Finalmente, modifica el comando de citación en el documento beamer de la siguiente manera:

    \citep[\protect\ymd{1988-03}]{burzio1988ItalianSyntaxGovernmentBindingApproach}
    

    Esto también debería solucionar el problema y mostrar la fecha en el formato deseado.

    ¡Espero que esto te ayude! Hazme saber si tienes alguna otra pregunta.

Comments are closed.