Esta guía explica cómo gestionar referencias bibliográficas usando BibLaTeX y Biber, el sistema de bibliografía moderno incluido en esta plantilla.
- 📋 Índice
- Introducción
- Archivo .bib
- Tipos de entrada
- @article - Artículo de revista
- @book - Libro
- @inbook - Capítulo de libro
- @incollection - Parte de colección
- @inproceedings - Artículo en conferencia
- @thesis - Tesis (TFG, TFM, doctorado)
- @online - Recurso web
- @manual - Manual técnico
- @techreport - Informe técnico
- @patent - Patente
- @software - Software
- @misc - Otros
- Comandos de cita
- Estilos de bibliografía
- Configuración avanzada
- Múltiples bibliografías
- Solución de problemas
- Herramientas útiles
- Ejemplo completo
- Ejemplos visuales
- Recursos adicionales
- Ver también
Esta plantilla usa el sistema moderno de bibliografía:
% Configuración en la clase eps-tfg.cls
\RequirePackage[
backend=biber, % Motor de procesamiento
style=apa, % Estilo APA
sorting=nyt, % Ordenar por nombre, año, título
natbib=true, % Compatibilidad con comandos natbib
language=spanish, % Idioma español
url=true, % Mostrar URLs
doi=true, % Mostrar DOIs
eprint=false % No mostrar eprints
]{biblatex}Para generar la bibliografía correctamente, necesitas:
- Compilar con LuaLaTeX
- Ejecutar Biber
- Compilar de nuevo con LuaLaTeX (dos veces)
lualatex main
biber main
lualatex main
lualatex mainO usa la receta "🚀 Compilación completa (latexmk)" en VS Code, que hace esto automáticamente.
El archivo de bibliografía está en:
referencias.bib
Y se carga en main.tex con:
\addbibresource{referencias.bib}@tipo{clave,
campo1 = {valor1},
campo2 = {valor2},
...
}@book{knuth1984,
author = {Knuth, Donald E.},
title = {The {TeXbook}},
publisher = {Addison-Wesley},
year = {1984},
address = {Reading, MA},
isbn = {0-201-13447-0}
}| Campo | Descripción | Ejemplo |
|---|---|---|
author |
Autor(es) | {García, Juan and López, María} |
title |
Título | {Título del trabajo} |
year |
Año | {2024} |
publisher |
Editorial | {Springer} |
journal |
Revista | {Nature} |
volume |
Volumen | {45} |
number |
Número | {3} |
pages |
Páginas | {123--145} |
doi |
DOI | {10.1000/xyz123} |
url |
URL | {https://ejemplo.com} |
urldate |
Fecha de acceso | {2024-01-15} |
isbn |
ISBN | {978-3-16-148410-0} |
issn |
ISSN | {1234-5678} |
note |
Notas | {En prensa} |
abstract |
Resumen | {Este artículo...} |
keywords |
Palabras clave | {LaTeX, bibliografía} |
language |
Idioma | {spanish} |
% Un autor
author = {García López, Juan},
% Dos autores
author = {García, Juan and López, María},
% Más autores
author = {García, Juan and López, María and Pérez, Pedro},
% Con "y otros" (et al.)
author = {García, Juan and others},
% Organización como autor
author = {{Universidad de Alicante}},
author = {{Organización Mundial de la Salud}},% Sin protección - puede cambiar a minúsculas según estilo
title = {Introduction to Machine Learning},
% Con protección - mantiene mayúsculas
title = {Introduction to {Machine Learning}},
title = {{NASA} Technical Report},
title = {The {LaTeX} Companion},@article{einstein1905,
author = {Einstein, Albert},
title = {Zur Elektrodynamik bewegter Körper},
journal = {Annalen der Physik},
year = {1905},
volume = {322},
number = {10},
pages = {891--921},
doi = {10.1002/andp.19053221004}
}@book{lamport1994,
author = {Lamport, Leslie},
title = {{LaTeX}: A Document Preparation System},
publisher = {Addison-Wesley},
year = {1994},
edition = {2},
address = {Reading, MA},
isbn = {0-201-52983-1}
}@inbook{smith2020chapter,
author = {Smith, John},
title = {Fundamentals of Neural Networks},
booktitle = {Handbook of Machine Learning},
publisher = {Springer},
year = {2020},
chapter = {3},
pages = {45--89},
editor = {Johnson, Mary},
doi = {10.1007/978-3-030-12345-6_3}
}@incollection{garcia2023,
author = {García, Ana},
title = {Técnicas de Optimización},
booktitle = {Avances en Inteligencia Artificial},
publisher = {Editorial Universitaria},
year = {2023},
editor = {Martínez, Carlos and Rodríguez, Luis},
pages = {120--150}
}@inproceedings{chen2022,
author = {Chen, Wei and Wang, Li},
title = {A Novel Approach to Natural Language Processing},
booktitle = {Proceedings of the 60th Annual Meeting of the ACL},
year = {2022},
pages = {1234--1245},
publisher = {Association for Computational Linguistics},
address = {Dublin, Ireland},
doi = {10.18653/v1/2022.acl-long.123}
}@thesis{perez2023tfg,
author = {Pérez Gómez, Laura},
title = {Desarrollo de una Aplicación Web para Gestión de Proyectos},
type = {Trabajo Fin de Grado},
institution = {Universidad de Alicante},
year = {2023},
address = {Alicante, España}
}
@thesis{martinez2022tfm,
author = {Martínez López, Carlos},
title = {Análisis de Redes Neuronales Profundas},
type = {Trabajo Fin de Máster},
institution = {Universidad de Alicante},
year = {2022}
}
@phdthesis{lopez2021,
author = {López García, María},
title = {Contribuciones al Aprendizaje Automático},
school = {Universidad Politécnica de Madrid},
year = {2021},
address = {Madrid}
}La entrada @online es el tipo estándar para páginas web, documentación en
línea y cualquier recurso con URL. El campo urldate (fecha de acceso en
formato YYYY-MM-DD) es obligatorio para este tipo.
% Organización institucional como autor (dobles llaves obligatorias)
@online{mozilla2024,
author = {{Mozilla Developer Network}},
title = {JavaScript Guide},
year = {2024},
url = {https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide},
urldate = {2024-01-15},
langid = {english}
}
% Autor individual
@online{fowler2023microservices,
author = {Fowler, Martin},
title = {Microservices},
year = {2023},
url = {https://martinfowler.com/articles/microservices.html},
urldate = {2024-05-22},
langid = {english}
}
% Repositorio de código (también válido para citar código abierto)
@online{github2024,
author = {Requena Plens, José Manuel},
title = {Plantilla {TFG/TFM} {EPS} {UA}},
year = {2024},
url = {https://github.com/jmrplens/TFG-TFM_EPS},
urldate = {2024-02-01},
langid = {spanish}
}Nota sobre Wikipedia: Solo citar como último recurso. Usa
note = {Wikipedia, La enciclopedia libre}y, siempre que sea posible, cita la fuente primaria que Wikipedia referencia.
@manual{intel2023,
author = {{Intel Corporation}},
title = {Intel 64 and IA-32 Architectures Software Developer's Manual},
year = {2023},
organization = {Intel Corporation},
url = {https://www.intel.com/sdm}
}@techreport{nist2020,
author = {Barker, Elaine and Dang, Quynh},
title = {Recommendation for Key Management},
institution = {National Institute of Standards and Technology},
year = {2020},
type = {NIST Special Publication},
number = {800-57 Part 1 Rev. 5},
doi = {10.6028/NIST.SP.800-57pt1r5}
}@patent{page1998,
author = {Page, Lawrence and Brin, Sergey},
title = {Method for node ranking in a linked database},
number = {US6285999B1},
year = {1998},
holder = {Stanford University}
}@software{python2024,
author = {{Python Software Foundation}},
title = {Python},
version = {3.12},
year = {2024},
url = {https://www.python.org}
}@misc{lecun2015,
author = {LeCun, Yann and Bengio, Yoshua and Hinton, Geoffrey},
title = {Deep Learning},
howpublished = {Nature 521, 436-444},
year = {2015},
note = {Review article}
}% Cita entre paréntesis: (García, 2024)
\parencite{garcia2024}
% Cita textual: García (2024)
\textcite{garcia2024}
% Solo autor: García
\citeauthor{garcia2024}
% Solo año: 2024
\citeyear{garcia2024}
% Cita completa en pie de página
\footcite{garcia2024}% Varias citas: (García, 2024; López, 2023)
\parencite{garcia2024,lopez2023}
% Ordenadas automáticamente
\parencite{lopez2023,garcia2024,perez2022}% Con página: (García, 2024, p. 45)
\parencite[p.~45]{garcia2024}
% Con páginas: (García, 2024, pp. 45-50)
\parencite[pp.~45-50]{garcia2024}
% Con prefijo: (véase García, 2024)
\parencite[véase][]{garcia2024}
% Con prefijo y página: (véase García, 2024, p. 45)
\parencite[véase][p.~45]{garcia2024}
% Texto antes y después: (véase García, 2024, cap. 3 para más detalles)
\parencite[véase][cap.~3 para más detalles]{garcia2024}% Estos funcionan gracias a natbib=true
\citet{garcia2024} % García (2024)
\citep{garcia2024} % (García, 2024)
\citet*{garcia2024} % Todos los autores
\citep*{garcia2024} % (Todos los autores, 2024)Según \textcite{garcia2024}, ``el aprendizaje profundo ha
revolucionado el campo'' \parencite[p.~15]{garcia2024}.% Para usar en contextos donde ya hay paréntesis
Como indica García (\citeyear{garcia2024}), el método...% En el preámbulo, modificar la opción style
\usepackage[
backend=biber,
style=ieee, % Cambiar aquí
...
]{biblatex}| Estilo | Descripción | Ejemplo de cita |
|---|---|---|
apa |
American Psychological Association | (García, 2024) |
ieee |
IEEE (numérico) | [1] |
chicago-authordate |
Chicago autor-fecha | (García 2024) |
chicago-notes |
Chicago notas al pie | ¹ |
mla |
Modern Language Association | (García 45) |
numeric |
Numérico simple | [1] |
alphabetic |
Alfabético | [Gar24] |
authoryear |
Autor-año | García 2024 |
verbose |
Completo en notas | Nota completa |
% Configuración específica para APA en español
\DeclareLanguageMapping{spanish}{spanish-apa}% En el preámbulo
% Separador entre autores
\renewcommand*{\multinamedelim}{\addcomma\space}
\renewcommand*{\finalnamedelim}{\addspace y\addspace}
% Formato de "et al."
\DefineBibliographyStrings{spanish}{
andothers = {et\addabbrvspace al\adddot},
}
% Tamaño de fuente de bibliografía
\renewcommand*{\bibfont}{\small}% Solo libros
\printbibliography[type=book, title={Libros}]
% Solo artículos
\printbibliography[type=article, title={Artículos}]% Por tipo de fuente
\printbibheading[title={Referencias}]
\printbibliography[type=book, heading=subbibliography, title={Libros}]
\printbibliography[type=article, heading=subbibliography, title={Artículos}]
\printbibliography[type=online, heading=subbibliography, title={Recursos web}]% En el .bib
@article{example,
...
keywords = {primario}
}
% En el documento
\printbibliography[keyword=primario, title={Fuentes primarias}]
\printbibliography[notkeyword=primario, title={Otras fuentes}]% Incluir en bibliografía aunque no se cite en el texto
\nocite{referencia_no_citada}
% Incluir todas las entradas del .bib
\nocite{*}% Mostrar ISBN
\ExecuteBibliographyOptions{isbn=true}
% Mostrar URL
\ExecuteBibliographyOptions{url=true}
% Mostrar DOI
\ExecuteBibliographyOptions{doi=true}
% Acortar con "et al." después de N autores
\ExecuteBibliographyOptions{maxcitenames=2, maxbibnames=10}\DeclareSourcemap{
\maps[datatype=bibtex]{
\map{
\step[fieldsource=doi, final]
\step[fieldset=url, null]
}
}
}% En el preámbulo
\usepackage[refsegment=chapter]{biblatex}
% Al final de cada capítulo
\printbibliography[segment=\therefsegment, heading=subbibliography]
% O al final del documento con todas separadas
\bibbysegment[heading=subbibliography]% Usar varios archivos .bib
\addbibresource{principal.bib}
\addbibresource{secundario.bib}
% La bibliografía combinará ambos
\printbibliographyCausa: Biber no se ha ejecutado o hay error en el .bib.
Solución:
# Verificar que biber se ejecuta
lualatex main
biber main # Revisar errores aquí
lualatex mainCausa: Ruta incorrecta o archivo no existe.
Solución:
% Verificar que el archivo existe y la ruta es correcta
\addbibresource{referencias.bib} % Relativo a main.texSolución: Usar llaves o comandos LaTeX:
title = {Análisis de señales}, % UTF-8 directo
title = {An{\'a}lisis de se{\~n}ales}, % Comandos LaTeX
author = {O'Brien, Patrick}, % Apóstrofe normal
author = {M{\"u}ller, Hans}, % DiéresisCausas posibles:
- Falta
\printbibliography - No hay citas en el documento
- Biber no se ha ejecutado
Solución:
% Asegúrate de tener al final del documento
\printbibliography
% O si usas \nocite{*} para incluir todo sin citar
\nocite{*}
\printbibliography% Cambiar ordenación
\ExecuteBibliographyOptions{sorting=nyt} % Nombre, año, título
\ExecuteBibliographyOptions{sorting=none} % Orden de citación
\ExecuteBibliographyOptions{sorting=ynt} % Año, nombre, título# Ver log detallado
biber --debug main
# Validar archivo .bib
biber --validate-datamodel main- Zotero (gratuito): https://www.zotero.org/
- Mendeley (gratuito): https://www.mendeley.com/
- JabRef (gratuito, específico BibTeX): https://www.jabref.org/
- EndNote (comercial)
- Google Scholar: Clic en "Citar" → BibTeX
- DOI: https://doi2bib.org/
- ISBN: https://www.ottobib.com/
- arXiv: Cada artículo tiene enlace BibTeX
- BibTeX Tidy: https://flamingtempura.github.io/bibtex-tidy/
% Libro
@book{goodfellow2016,
author = {Goodfellow, Ian and Bengio, Yoshua and Courville, Aaron},
title = {Deep Learning},
publisher = {MIT Press},
year = {2016},
url = {http://www.deeplearningbook.org}
}
% Artículo
@article{vaswani2017,
author = {Vaswani, Ashish and Shazeer, Noam and Parmar, Niki and
Uszkoreit, Jakob and Jones, Llion and Gomez, Aidan N. and
Kaiser, Łukasz and Polosukhin, Illia},
title = {Attention Is All You Need},
journal = {Advances in Neural Information Processing Systems},
year = {2017},
volume = {30}
}
% Recurso web
@online{tensorflow2024,
author = {{Google Brain Team}},
title = {{TensorFlow}: An End-to-End Open Source Machine Learning Platform},
year = {2024},
url = {https://www.tensorflow.org/},
urldate = {2024-01-15}
}El aprendizaje profundo \parencite{goodfellow2016} ha revolucionado
el campo de la inteligencia artificial. En particular, la arquitectura
Transformer \parencite{vaswani2017} ha demostrado resultados
excepcionales en procesamiento de lenguaje natural.
Según \textcite{goodfellow2016}, las redes neuronales profundas
son ``representaciones composicionales de funciones''
\parencite[p.~6]{goodfellow2016}.
Para la implementación, se utilizó TensorFlow \parencite{tensorflow2024}.
% Al final del documento
\printbibliographyEstos ejemplos muestran cómo se visualizan las citas y la bibliografía en el documento final.
\noindent\textbf{Cita entre paréntesis:}\\[0.5em]
La ingeniería de software \parencite{pressman2020} es fundamental para el desarrollo de sistemas robustos.
\vspace{1em}
\noindent\textbf{Cita como parte de la oración:}\\[0.5em]
Según \textcite{martin2019}, la arquitectura limpia permite mantener el código mantenible a largo plazo.
\vspace{1em}
\noindent\textbf{Múltiples citas:}\\[0.5em]
Diversos autores han establecido los patrones de diseño clásicos \parencite{gamma1994,knuth1997}.
\vspace{1em}
\noindent\textbf{Cita con página:}\\[0.5em]
Como se indica en \parencite[p.~45]{pressman2020}, el proceso de desarrollo debe adaptarse al equipo.Resultado:
\textbf{\Large Referencias}
\vspace{0.5em}
% Forzamos inclusión de referencias para el ejemplo
\nocite{pressman2020,martin2019,gamma1994,knuth1997}
\printbibliography[heading=none]Resultado:
% bibstyle: ieee
\textbf{\Large Referencias}
\vspace{0.5em}
\nocite{pressman2020,martin2019,gamma1994,knuth1997}
\printbibliography[heading=none]Resultado:
| Recurso | Descripción |
|---|---|
| BibLaTeX en CTAN | Documentación completa del paquete |
| Biber en CTAN | Documentación del procesador de bibliografía |
| biblatex-apa | Estilo APA 7ª edición |
| biblatex-ieee | Estilo IEEE |
| biblatex-software | Para citar software |
- BibLaTeX Cheat Sheet - Referencia rápida PDF
| Herramienta | Descripción |
|---|---|
| JabRef | Gestor de referencias gratuito para BibLaTeX |
| Zotero + Better BibTeX | Gestor con exportación mejorada |
| doi2bib | Genera entrada BibTeX desde DOI |
| Google Scholar | Búsqueda académica con exportación BibTeX |
- Overleaf: Bibliography management - Tutorial completo
- Overleaf: BibLaTeX styles - Comparativa de estilos
| Componente | Versión | Fecha |
|---|---|---|
| BibLaTeX | 3.21 | Julio 2025 |
| Biber | 2.21 | Julio 2025 |
- REFERENCIAS_CRUZADAS.md - Referencias internas
- GUIA_PRINCIPIANTES.md - Introducción a LaTeX


