biblatex es el paquete moderno que compone la bibliografía del lado de LaTeX. Mientras que el BibTeX clásico fijaba el aspecto en .bst, un pequeño lenguaje peculiar, biblatex escribe los estilos como macros de LaTeX, maneja Unicode de forma nativa y ofrece control fino sobre la ordenación y varias listas de referencias. Su compañero, el programa que lee y ordena los datos, es biber. En el documento cargas un .bib con \addbibresource, citas con \parencite o \textcite, e imprimes la lista con \printbibliography.
Qué son biblatex y biber
Es fácil confundirlos, así que conviene separar primero los papeles. biblatex es un paquete de LaTeX responsable del aspecto de las citas y del formato de la lista de referencias. biber es un programa externo (backend) dedicado a biblatex: lee el archivo .bib, ordena y procesa las entradas, y se las entrega a biblatex en una forma que puede componer. Piensa que el trabajo que antes hacía el .bst de BibTeX ahora se divide en dos: el formato va a biblatex (el lado de LaTeX) y la lectura y ordenación van a biber.
El manual de biblatex afirma claramente que biber es “el backend predeterminado de biblatex”. biber maneja us-ascii, codificaciones de 8 bits y UTF-8, y admite ordenación dependiente de la configuración regional (sortlocale). Puedes elegir el backend con la opción backend=; los heredados bibtex/bibtex8 siguen disponibles, pero para obtener Unicode y ordenación flexible, biber es el estándar de facto.
Configuración mínima (cargar e imprimir)
El uso tiene tres partes. En el preámbulo eliges un estilo y un backend con \usepackage[...]{biblatex}, luego registras la base de datos con \addbibresource{refs.bib}. En el cuerpo citas con la familia \cite, y colocas \printbibliography donde debe aparecer la lista de referencias.
\documentclass{article}
\usepackage[style=authoryear, backend=biber]{biblatex}
\addbibresource{refs.bib} % preamble; the .bib extension IS included
\begin{document}
The theory was introduced by \textcite{shannon1948}.
Later work built on it~\parencite{knuth1984}.
\printbibliography
\end{document}Las dos diferencias visibles principales respecto de BibTeX son estas: primero, registras la base de datos en el preámbulo con \addbibresource{refs.bib}, no con \bibliography{refs} al final del cuerpo; segundo, aquí sí incluyes la extensión .bib (el \bibliography de BibTeX no la llevaba). Puedes escribir \addbibresource varias veces para mantener bases de datos en archivos separados.
Seleccionas un estilo con un único style=. Es una opción maestra que carga a la vez el estilo de bibliografía (.bbx) y el estilo de citas (.cbx). Solo cuando quieres que difieran defines por separado bibstyle= (aspecto de la lista) y citestyle= (aspecto de las citas). El propio archivo .bib, con entradas como @article y claves de cita, se escribe exactamente igual que en BibTeX y se explica en detalle en su propia página.
Comandos de cita
Una fortaleza central de biblatex es su amplio conjunto de comandos de cita elegidos por significado. Además del \cite básico, eliges entre los siguientes según el contexto. Todos aceptan una prenota (“see”...) y una posnota (un número de página...), como en \parencite[prenote][postnote]{key}, y puedes pasar varias claves separadas por comas.
| Comando | Qué imprime | Cuándo usarlo |
|---|---|---|
\cite | La etiqueta básica, sin añadidos (corchetes en estilos numéricos/alfabéticos) | La forma mínima, integrada en el texto |
\parencite | Toda la cita entre paréntesis (corchetes en numérico/alfabético) | Citas parentéticas, por ejemplo al final de una frase |
\textcite | Nombres de autor más etiqueta entre paréntesis, “Author (year)” | Cuando la cita es parte gramatical de la oración |
\footcite | Pone toda la cita en una nota al pie, terminando con punto | Estilos que dan las fuentes en notas al pie |
\autocite | La forma controlada por el estilo (también mueve la puntuación) | Para dejar decidir al estilo y cambiarlo globalmente |
\citeauthor / \citeyear | Solo autor / solo año | Para referirse solo al autor o al año en la prosa |
Usa \textcite cuando la cita forma parte de la oración, como en “as Knuth (1984) showed...”, poniendo al autor como sujeto. Usa \parencite para lo contrario: una cita parentética discreta al final de una cláusula. \autocite está un nivel por encima: que se comporte como \parencite o \footcite (o \supercite en estilos numéricos) se cambia con la opción autocite=. autocite=plain lo hace actuar como \cite, autocite=inline como \parencite, autocite=footnote como \footcite, y autocite=superscript da una forma en superíndice (en la práctica cada estilo define un valor predeterminado razonable).
Para citar varias obras a la vez, cada una con su propia prenota o posnota, usa las formas multicite como \parencites y \autocites: \parencites[35]{key1}[88--120]{key2}{key3} añade una posnota separada a cada entrada.
El sistema de estilos
biblatex incluye estilos de propósito general; pasar un nombre a style= cambia todo el aspecto. Los principales aparecen abajo. Cada uno cambia conjuntamente el aspecto de las citas (.cbx) y el de la lista (.bbx).
| Estilo | Aspecto de la cita | Rasgo |
|---|---|---|
numeric | Un número como [1] | El predeterminado; como los números estándar de LaTeX. numeric-comp agrupa como [1–3] |
alphabetic | Etiquetas alfanuméricas como [Jon95] | Como alpha de BibTeX; una etiqueta corta de autor+año |
authoryear | Autor-año como “Doe 1995a” | Añade a, b… para mismo autor/año; -comp agrupa el autor |
authortitle | Autor más título corto | Común en humanidades; el año no queda en primer plano |
verbose | Cita completa la primera vez, forma corta después | Para estilos que dan fuentes detalladas en notas al pie |
Además, abundan los estilos específicos de cada campo: ieee para ingeniería, apa para psicología y otros campos (paquete biblatex-apa), nature y science para ciencias naturales, chicago (biblatex-chicago), oscola para derecho, mla para humanidades, y más. Permiten ajustarse al formato de una sede sin escribir .bst; varios se instalan desde CTAN.
Puedes ajustar más el aspecto con opciones de carga. sorting= elige el orden (nty = nombre, título, año es el predeterminado; nyt = nombre, año, título; ynt = año, nombre, título; none = dejar en orden de cita), maxbibnames / maxcitenames fijan cuántos autores se imprimen antes de “et al.”, y backref=true añade referencias inversas desde cada entrada a los lugares donde se citó. maxnames es la opción maestra que las fija juntas.
La compilación (usando biber)
Aquí es donde tropiezan primero los usuarios de BibTeX. Para producir correctamente una bibliografía biblatex, el orden clásico es latex → biber → latex → latex. La razón de varias pasadas es la misma que en BibTeX: el motor y biber intercambian datos mediante archivos auxiliares. Pero la diferencia decisiva es que llamas a biber, no a bibtex. Con pdflatex es igual: basta sustituir latex por pdflatex.
$ pdflatex document.tex # 1st pass: records cited keys
$ biber document # NOT bibtex: reads .bcf + .bib, sorts/processes
$ pdflatex document.tex # pulls in the processed data
$ pdflatex document.tex # resolves all referencesA biber le pasas el nombre del trabajo (sin extensión), no el .tex. biber lee el archivo de control .bcf (XML) que escribe biblatex. Un fallo común es dejar el editor o latexmk configurado para llamar a bibtex, lo que produce advertencias de citas indefinidas o una bibliografía vacía. Una vez elegido backend=biber, haz que las herramientas llamen también a biber. Como cuatro pasadas manuales son tediosas, lo normal es delegarlo en latexmk.
$ latexmk -pdf document.tex # detects biblatex and runs biber automaticallyLas versiones recientes de latexmk detectan biblatex y llaman a biber automáticamente, normalmente completando las pasadas necesarias en una sola invocación (en entornos antiguos se configura biber en .latexmkrc junto con $pdf_mode, etc.). Para japonés se compone con upLaTeX u otros y se pasa por DVI a PDF con dvipdfmx; como biber entiende Unicode, dar sortlocale=ja_JP permite ordenar japonés correctamente (también es común usar el campo langid para separar listas japonesas y occidentales).
Por qué biblatex en lugar de BibTeX
biblatex/biber se prefiere para proyectos nuevos porque aborda de frente las limitaciones estructurales de BibTeX. En concreto:
- Unicode completo. biber maneja UTF-8 directamente, así que los nombres multilingües y los acentos no dan problemas.
- Estilos escritos en LaTeX. El formato se controla con macros de LaTeX y opciones de carga, sin escribir
.bstorientado a pila. - Ordenación y localización flexibles.
sorting=ysortlocaledan control preciso sobre el orden y el idioma. - Varias bibliografías.
\printbibliography[type=...]o[keyword=...]divide la lista por tipo o tema. - Comandos de cita ricos.
\textcite,\parencite,\autocitey otros permiten citar por significado, de forma coherente.
Ese último punto, las listas múltiples, resulta muy útil en la práctica: separar fuentes primarias y secundarias, o agrupar por tipo de documento, todo sin tocar los datos. Los filtros de \printbibliography incluyen type= (solo un tipo de entrada), nottype= (excluir ese tipo), keyword= / notkeyword= (filtrar por el campo keywords en el .bib) y heading= / title= (definir el encabezado).
\printbibliography[type=article, title={Journal articles}]
\printbibliography[type=book, title={Books}]
\printbibliography[keyword=primary, title={Primary sources}]Si estás acostumbrado a natbib de la época de BibTeX, \usepackage[natbib=true]{biblatex} proporciona alias de estilo natbib como \citep y \citet, lo que facilita la migración.