biber
Process BibTeX bibliography files for LaTeX
SYNOPSIS
biber [options] <basefilename>
PARAMETERS
-h, --help
Displays a help message and exits.
-V, --version
Shows biber version information and exits.
-d, --debug
Enables debug mode, providing verbose logging output.
-D, --debuglog <file>
Redirects debug output to the specified log file.
-l, --logfile <file>
Specifies a file for general log messages.
-O, --output_directory <dir>
Sets the directory where output files (e.g., .bbl) will be written.
--input_encoding <encoding>
Defines the character encoding of input files (e.g., UTF-8, latin1). Default is UTF-8.
--output_encoding <encoding>
Defines the character encoding for output files. Default is UTF-8.
--config <file>
Specifies an alternative XML configuration file for biber.
--safe_mode
Enables safe mode, restricting certain operations like external command execution.
--terse
Suppresses informational messages, only showing warnings and errors.
--quiet
Suppresses all messages except critical errors.
--output_format <format>
Specifies the output format (e.g., bbl, bibtex, xml, json).
--onlycompile
Processes the bibliography but does not generate the .bbl output for LaTeX.
--sortcase
Enforces case-sensitive sorting of bibliography entries.
--min_crossrefs <num>
Sets the minimum number of cross-references an entry must have to be included.
DESCRIPTION
biber is a powerful and highly configurable bibliography processor, designed as a modern replacement for BibTeX. It serves as the primary backend for the biblatex package in LaTeX, overcoming many limitations of its predecessor. Written in Perl, biber provides robust Unicode support, advanced sorting capabilities, multi-language features, and a flexible data model for bibliography entries. It processes the .bcf (BibLaTeX Control File) generated by LaTeX engines like pdflatex or xelatex, then produces a .bbl file containing the formatted bibliography, which is subsequently included in the LaTeX document. Its design allows for extensive customization of bibliography styles and data handling, making it an indispensable tool for academic writing in LaTeX.
CAVEATS
biber is specifically designed for the biblatex package; it is not a direct replacement for BibTeX when using older bibliography styles (like plain, abbrv, alpha, unsrt) or packages like natbib. While it offers excellent Unicode support, ensuring consistent encoding across your LaTeX document, .bib file, and biber's settings is crucial to avoid issues. For very large bibliographies, its processing can sometimes be slower than BibTeX.
TYPICAL WORKFLOW
A common compilation sequence for a LaTeX document using biblatex and biber is:
1. Run your LaTeX engine (e.g., pdflatex main.tex) to generate the .bcf file.
2. Run biber (e.g., biber main) to process the .bcf and generate the .bbl file.
3. Run your LaTeX engine again (e.g., pdflatex main.tex) to incorporate the .bbl into the document.
4. Run your LaTeX engine one final time (e.g., pdflatex main.tex) to resolve all cross-references and citations.
CONFIGURATION
biber is extensively configurable through its command-line options and XML-based configuration files (typically biber.conf). This allows users to define custom data models, sorting schemes, and other advanced behaviors, making it highly adaptable to various academic and publishing requirements.
HISTORY
biber was created by Philip Kime and first released around 2006-2007, developed specifically to address the numerous limitations of the aging BibTeX program. Key motivations included the lack of native Unicode support in BibTeX, its inflexible data model, and limited sorting and customization options. Its development in Perl allowed for greater flexibility and extensibility. biber quickly became the de-facto standard backend for the popular biblatex package, establishing a modern, robust, and highly configurable bibliography workflow for LaTeX users.