biber1p
A bibtex replacement for users of biblatex
Usage
biber [options]
file
[.bcf]
biber [options]
--tool
<datasource>
Creates "file.bbl"
using
control
file
"file.bcf"
(".bcf"
extension
is
all set
in
biblatex
and
passed
via
the
".bcf"
file
In "tool"
mode
(see
B<--tool>
option),
takes
a
datasource
(defaults
to
Please run
"biber
--help"
for
option
details
Overview
"biber" provides a replacement of the bibtex processor for users of biblatex.
Options
-
--annotation-marker=[marker] -
Sets the suffix which can be appended to a BibTeX data source field name to indicate that the value of the field is a data annotation. The default is
"+an".
-
--cache -
If running as a PAR::Packer binary, show the cache location and exit.
-
--clrmacros -
Clears any BibTeX macros (@STRING) between BibLaTeX refsections. This prevents BibTeX warnings about macro redefinitions if you are using the same datasource several times for different refsections.
- --collate-options|-c [options]
-
Options to pass to the
"Unicode::Collate"object used for sorting (default is "--collate-options level=4 --collate-options variable='non-ignorable'"). See"perldoc Unicode::Collate"for details.
- --configfile|-g [file]
-
Use file as the configuration file for
"biber"instead of looking in the default locations which are, in order:*
"biber.conf"or".biber.conf"in the current directory*
"$HOME/.biber.conf"*
"$ENV{XDG_CONFIG_HOME}/biber/biber.conf"*
"$HOME/.config/biber/biber.conf"*
"$HOME/Library/biber/biber.conf"(Mac OSX only)*
"$ENV{APPDATA}/biber.conf"(Windows only)* The output of
"kpsewhich biber.conf"(if available on the system).In tool mode, (
--tool) the biber-tool.conf installed with Biber is always used to set default options if a user-defined config file is not specified. Use the--tool-configoption to view the location of the default tool mode config file which may be useful as a source for writing your own.
-
--convert-control -
Converts the .bcf control file into html using an XSLT transform. Can be useful for debugging. File is named by appending
".html"to .bcf file.
- --decodecharsset=[recode set name]
-
The set of characters included in the conversion routine when decoding LaTeX macros into UTF-8 (which happens when
--bblencoding|-Eis set to UTF-8). Set to "full" to try harder with a much larger set or "base" to use a smaller basic set. Default is "base". You may want to try "full" if you have less common UTF-8 characters in your data source. The recode sets are defined in the reencoding data file which can be customised. See the--recodedataoption and the PDF manual. The virtual set name "null" may be specified which effectively turns off macro decoding.
--debug|-D-
Turn on debugging for
"biber".
-
--dieondatamodel -
Exit immediately with error if using
"--validate-datamodel"and a datamodel validation error is found. Default is to warn and continue.
-
--dot-include=section,field,xdata,crossref,xref,related -
Specifies the element to include in GraphViz DOT output format if the output format is 'dot'. You can also choose to display crossref, xref, xdata and/or related entry connections. The default if not specified is
"--dot-include=section,xdata,crossref,xref".
-
--fixinits -
Try to fix broken multiple initials when they have no space between them in BibTeX data sources. That is, "A.B. Clarke" becomes "A. B. Clarke" before name parsing. This can slightly mess up things like "{U.K. Government}" and other esoteric cases.
--help|-h-
Show this help message.
-
--input-directory [directory] -
.bcf and data files will be looked for first in the directory. See the biber PDF documentation for the other possibilities and how this interacts with the
"--output-directory"option.
- --input-encoding|-e [encoding]
-
Specify the encoding of the data source file(s). Default is "UTF-8" Normally it's not necessary to set this as it's passed via the .bcf file from biblatex's
"bibencoding"option. See "perldoc Encode::Supported" for a list of supported encodings. The legacy option--bibencodingis supported as an alias.
-
--input-format=bibtex|biblatexml -
Biber input format. This option only means something in tool mode (see
tooloption) since normally the input format of a data source is specified in the .bcf file and therefore from the\addbibresoucemacro in BibLaTeX. The default value when in tool mode is 'bibtex'
-
--isbn10 -
Force all ISBNs to 10-digit versions on output. This will convert the ISBN internally to an ISBN object which will not have hyphens on output. If you use this option and want an ISBN with hyphens in the correct place on output, use the
--isbn-normaliseoption.
-
--isbn13 -
Force all ISBNs to 13-digit versions on output. This will convert the ISBN internally to an ISBN object which will not have hyphens on output. If you use this option and want an ISBN with hyphens in the correct place on output, use the
--isbn-normaliseoption.
-
--isbn-normalise -
Normalise ISBNs with hyphens in the correct places on output.
-
--logfile [file] -
Use file.blg as the name of the logfile.
-
--listsep=[sep] -
Use sep as the separator for BibTeX data source list fields. Defaults to BibTeX's usual 'and'.
- --mincrossrefs|-m [number]
-
Set threshold for crossrefs.
-
--named-annotation-marker=[marker] -
Sets the separator between the
"--annotation-marker"and the name of a named annotation. The default is":".
-
--namesep=[sep] -
Use sep as the separator for BibTeX data source name fields. Defaults to BibTeX's usual 'and'.
-
--no-bblxml-schema -
When writing bblxml output, don't generate an RNG XML schema from the data model.
-
--no-bltxml-schema -
When reading or writing biblatexml data sources, don't generate an RNG XML schema from the data model.
-
--noconf -
Don't look for a configfile.
-
--no-default-datamodel -
Do not load the default datamodel coming from either the .bcf or, when in tool mode, from the default tool mode config file. Use of this option implies that you will provide a complete datamodel in a config file. This option is useful when you wish to make major modifications to the datamodel because the simple add/modify operations to the default datamodel via a user config file are not enough. For example, to remove things from the default datamodel, you would use this option and supply a complete, reduced datamodel in the user config file.
-
--nodieonerror -
Don't exit on errors, just log and continue as far as possible. This can be useful if the error is something from, for example, the underlying BibTeX parsing C library which can complain about parsing errors which can be ignored.
-
--glob-datasources -
By default, glob (expand according to pattern) any data source filenames. Allows data sources to be specified like
*.bibto load all.bibfiles in a directory. Can be overridden on a per-dataource basis with thegloboption to\addbibresourcein biblatex.
-
--nolog -
Do not write any logfile.
-
--noskipduplicates -
Don't skip duplicate bibliography keys if found. The detection of duplicate keys is done across all data sources. Sometimes you might need duplicates when using several data sources across several refsections in which case you might need to use this option.
-
--nostdmacros -
Don't automatically define any standard macros like month abbreviations. If you also define these yourself, this option can be used to suppress macro redefinition warnings.
-
--noremove-tmp-dir -
Do not remove the temporary directory used for various intermediate files and data before exit (default is false). Name of the directory can be obtained with the
--show-tmp-diroption.
-
--noxname -
Disable extended name processing in bibtex data sources. Can be useful if you don't use this and it causes problems due to auto-detection of extended name format.
-
--onlylog -
Do not write any message to screen.
-
--others-string=[string] -
Use string as the final name in a name field which implies "et al". Defaults to BibTeX's usual 'others'.
-
--output-align -
Align field values in neat columns in output. Effect depends on the output format. Default is false. The legacy option
--tool-alignis supported as an alias.
-
--output-all-macrodefs -
When outputting bibtex format, whether to output all found macro (@STRING entries) definitions rather than just definitions for macros which are actually used in the output entries. Default is false.
-
--output-annotation-marker=[marker] -
As
--annotation-markerbut for tool mode bibtex output. The default is"+an".
-
--output-named-annotation-marker=[marker] -
As
--named-annotation-markerbut for tool mode bibtex output. The default is":".
-
--output-directory [directory] -
Output files (including log files) are output to directory instead of the current directory. Input files are also looked for in directory before current directory unless
"--input-directory"is also specified in which case input files are only looked for in the directory specified by"--input-directory".
- --output-encoding|-E [encoding]
-
Specify the encoding of the output
".bbl"file. Default is "UTF-8". Normally it's not necessary to set this as it's passed via the .bcf file from biblatex's"texencoding"option. See"perldoc Encode::Supported"for a list of supported encodings. The legacy option--bblencodingis supported as an alias.
-
--output-fieldcase=upper|lower|title -
Case for field names output. Effect depends on the output format. Defaults to 'upper'. The legacy option
--tool-fieldcaseis supported as an alias.
- --output-field-order=[field1, ... fieldn]
-
When outputting bibtex format data in tool mode, this option allows the customisation of the order of fields within entries. The value is a comma-separated string of field names or classes of fields. Fields not mentioned in the list are output in sorted name order after the explicitly specified fields. The classes of fields are:
'names' - All name list fields 'lists' - All non-name list fields 'dates' - All date fields
By default, its value is 'options,abstract,names,lists,dates'.
- --output-field-replace=[field1:replacefield1, ... fieldn:replacefieldn]
-
When outputting bibtex format output
"replacefieldn"instead of"fieldn". This can be used to output legacy formats which undo the default driver source map e.g--output-field-replace=location:address,journaltitle:journal. See--output-legacy-datesif legacy (YEAR/MONTH) date fields are required in bibtex format output.
- --output-file|-O [file]
-
Output to file instead of basename.bbl file is relative to
--output-directory, if set (absolute paths in this case are stripped to filename only). file can be absolute if--output-directoryis not set. file can be '-' to output directly to STDOUT. The legacy option--outfileis supported as an alias.
-
--output-format=dot|bibtex|biblatexml|bbl|bblxml|bibjson -
Biber output format. Default if not specified is of course, bbl. Use dot to output a GraphViz DOT file instead of .bbl. This is a directed graph of the bibliography data showing entries and, as requested, sections and fields. You must process this file with
"dot", e.g."dot -Tsvg test.dot -o test.svg"to render the graph. See the--dot-includeoption to select what is included in the DOT output. bblxml is an XML version of the bbl format which you could transform using XSLT. By default, when outputting bblxml, a RelaxNG XML schema is generated from the active data model and saved with a rng extension along with the output file name (unless the--no-bblxml-schemaoption is specified). You may validate the bblxml using the schema with the--validate-bblxmloption. The legacy option--outformatis supported as an alias.
-
--output-indent=[num][t] -
Indentation for body of entries in output. Effect depends on the output format. Defaults to 2. The
"num"can be followed by't'to specify tabs instead of spaces. The legacy option--tool-indentis supported as an alias.
-
--output-legacy-dates -
When outputting bibtex format, output YEAR/MONTH fields instead of DATE. This is not possible if the input is not convertible to legacy format, meaning that any date to be output with legacy fields can only have a YEAR part and perhaps a MONTH part. If a DAY or ENDYEAR part are found, the date is not convertible and the legacy output format will be skipped. Default is false.
-
--output-listsep=[sep] -
As
--listsepbut for tool mode bibtex output. Defaults to BibTeX's usual 'and'.
-
--output-namesep=[sep] -
As
--namesepbut for tool mode bibtex output. Defaults to BibTeX's usual 'and'.
-
--output-no-macrodefs -
When outputting BibTeX format, don't output macro definitions (@STRING entries). You might not want to output macro definitions if you keep them in a separate file.
-
--output-resolve -
Convenience option to set all of the
--output-resolve-*options to 'true'. The legacy option--tool-resolveis supported as an alias.
-
--output-resolve-xdata -
Whether to resolve XDATA inheritance in tool mode or when
--output-format=bibtexin non tool mode. Defaults to 'false'.
-
--output-resolve-crossrefs -
Whether to resolve CROSSREF/XREF inheritance in tool mode or when
--output-format=bibtexin non tool mode. Defaults to 'false'.
-
--output-resolve-sets -
Whether to resolve data sets in tool mode or when
--output-format=bibtexin non tool mode. Defaults to 'false'.
-
--output-safechars -
Try to convert UTF-8 chars into LaTeX macros when writing the output. This can prevent unknown char errors when using PDFLaTeX and inputenc as this doesn't understand all of UTF-8. Note, it is better to switch to XeTeX or LuaTeX to avoid this situation. By default uses the --output-safecharsset "base" set of characters. The legacy option
--bblsafecharsis supported as an alias.
- --output-safecharsset=[recode set name]
-
The set of characters included in the conversion routine for
--output-safechars. Set to "full" to try harder with a much larger set or "base" to use a basic set. Default is "base" which is fine for most use cases. You may need to load more macro packages to deal with the results of "full" (Dings, Greek characters, special symbols etc.). The recode sets are defined in the reencoding data file which can be customised. See the--recodedataoption and the PDF manual. The legacy option--bblsafecharssetis supported as an alias. The virtual set name "null" may be specified which effectively turns off macro encoding.
-
--output-xdatamarker=[marker] -
As
--xdatamarkerbut for tool mode output. Default is 'xdata'.
-
--output-xdatasep=[sep] -
As
--xdatasepbut for tool mode output. Default is '-'.
-
--output-xname -
When output is a .bib BibTeX file in tool mode, whether to output names in the eXtended BibTeX name field format.
-
--output-xnamesep=[sep] -
As
--xnamesepbut for tool mode bibtex output. Default is '='.
--quiet|-q-
Log only errors. If this option is used more than once, don't even log errors.
-
--recodedata=[file] -
The data file to use for the reencoding between UTF-8 and LaTeX macros. It defines the sets specified with the
--output-safecharssetand--decodecharssetoptions. It defaults to recode_data.xml in the same directory as Biber's Recode.pm module. See the PDF documentation for the format of this file. If this option is used, then file should be somewhere"kpsewhich"can find it.
-
--show-tmp-dir -
Prints the location of the temporary directory used for various intermediate files and data. Only useful if
--noremove-tmp-diris set to true.
-
--sortdebug -
Add comments to output with sorting keys. Useful for debugging.
-
--sortcase=true|false -
Case-sensitive sorting (default is true).
- --sortlocale|-l [locale]
-
Set the locale to be used for sorting. The locale is used to add CLDR tailoring to the sort (if available for the locale).
-
--sortupper=true|false -
Whether to sort uppercase before lowercase when sorting (default is true).
-
--ssl-nointernalca -
Don't try to use the default Mozilla CA certificates when using HTTPS to fetch remote data. This assumes that the user will set one of the perl LWP::UserAgent module environment variables to find the CA certs.
-
--ssl-noverify-host -
Turn off host verification when using HTTPS to fetch remote data sources. You may need this if the SSL certificate is self-signed, for example.
-
--strip-comments -
In tool mode, strip all comments from the output file.
-
--tool -
Run in tool mode. This mode is datasource centric rather than document centric. biber reads a datasource (and a config file if specified), applies the command-line and config file options to the datasource and writes a new datasource. Essentially, this allows you to change your data sources using biber's transformation options (such as source mapping, sorting etc.)
-
--tool-config -
Show the location of the default tool mode config file and exit. Useful when you need to copy this file and customise it.
-
--tool-noremove-missing-dependants -
Use this option in tool mode if you don't want to remove
"XREF","CROSSREF"and"XDATA"fields from the output which point to a missing entry. Useful if you have split datafiles where the e.g."CROSSREF"s are in another file that you are not including in the tool mode run.
--trace|-T-
Turn on tracing. Also turns on
--debug|-Dand additionally provides a lot of low-level tracing information in the log.
-
-u -
Alias for
--input-encoding=UTF-8
-
-U -
Alias for
--output-encoding=UTF-8
-
--validate-bblxml -
Schema validate bblXML output against a schema auto-generated from the BibLaTeX datamodel. The schema will be auto-generated with the name of the .bbl file with a .rng extension. The generated schema can be kept and used with standard XML editors to validate the output during XSL development.
-
--validate-bltxml -
Schema validate BibLaTeXML datasources against a schema auto-generated from the BibLaTeX datamodel. The schema will be auto-generated with the name of the .bcf file with a .rng extension. The generated schema can be kept and used with standard XML editors to validate the datasource during datasource development. The schema validation does not validate all semantic aspects of the datamodel (i.e. the data model constraints)---for this use the
"--validate-datamodel"option.
-
--validate-config -
Schema validate the biber config file.
-
--validate-control -
Schema validate the .bcf biblatex control file.
--validate-datamodel|-V-
Validate the data against a data model. By default, the data model used is the one in the .bcf file (normal mode) or in the default config file whose path can be shown with the
"--tool-config"option (tool mode). Use"--no-default-datamodel"to ignore the default data model completely if you are using a complete data model via your own config file (with"--configfile").
--version|-v-
Display version number.
--winunicode|-W-
In Windows 10 1803+, turning on the 'Use Unicode UTF8 for worldwide language support' option makes Windows use UTF-8 instead of UTF-16 for many system APIs. If that option is enabled, use this option to turn off biber's UTF-16 filename support on Windows. This will result in much improved handling of Unicode filenames.
--wraplines|-w=[column]-
Wrap lines in the .bbl file (or output .bib file in tool mode) at column column (default 80).
-
--xdatamarker=[marker] -
Use marker as the string before
"--xdatasep"which introduces an XDATA reference in BibTeX format data sources. Not used in BibLaTeXML data sources as it has a dedicated XML attribute"xdata"' for this. Default is 'xdata'.
-
--xdatasep=[sep] -
Use sep as the separator between XDATA sub-entry parts in the eXtended name format. See biber docs. Default is '-'.
-
--xnamesep=[sep] -
Use sep as the separator between namepart names and the namepart values in the eXtended name format. Also applies to XDATA references as the separator between
"--xdatamarker"and the XDATA reference. See biber docs. Default is '='.
-
--xsvsep=[sep] -
Use sep as the separator for fields of format type "xsv" in the data model. A Perl regexp can be specified. Defaults to a single comma surround by optional whitespace (\s*,\s*).
Bugs & documentation
To see the full documentation, run texdoc biber or get the biber.pdf manual from SourceForge.
Please report any bugs or feature requests on our Github tracker at <https://github.com/plk/biber/issues>.
Copyright & license
Copyright 2009-2012 François Charette and Philip Kime, all rights reserved. Copyright 2012-2026 Philip Kime, all rights reserved.
This module is free software. You can redistribute it and/or modify it under the terms of the Artistic License 2.0.
This program is distributed in the hope that it will be useful, but without any warranty; without even the implied warranty of merchantability or fitness for a particular purpose.
Releases
8 releases since Debian 7 (Wheezy); the text changed 7 times.
--annotation-marker since Debian 9 (Stretch);
--cache since Debian 8 (Jessie);
--clrmacros since Debian 8 (Jessie);
--convert-control since Debian 8 (Jessie);
--dieondatamodel since Debian 9 (Stretch);
--dot-include since Debian 8 (Jessie);
--fixinits since Debian 8 (Jessie);
--glob-datasources since Debian 11 (Bullseye);
--input-directory since Debian 8 (Jessie);
--input-format since Debian 8 (Jessie);
--isbn-normalise since Debian 9 (Stretch);
--isbn10 since Debian 9 (Stretch);
--isbn13 since Debian 9 (Stretch);
--listsep since Debian 8 (Jessie);
--named-annotation-marker since Debian 10 (Buster);
--namesep since Debian 8 (Jessie);
--no-bblxml-schema since Debian 9 (Stretch);
--no-bltxml-schema since Debian 9 (Stretch);
--no-default-datamodel since Debian 11 (Bullseye);
--noremove-tmp-dir since Debian 11 (Bullseye);
--noskipduplicates since Debian 9 (Stretch);
--noxname since Debian 9 (Stretch);
--others-string since Debian 8 (Jessie);
--output-align since Debian 8 (Jessie);
--output-all-macrodefs since Debian 11 (Bullseye);
--output-annotation-marker since Debian 9 (Stretch);
--output-directory since Debian 8 (Jessie);
--output-fieldcase since Debian 8 (Jessie);
--output-format since Debian 8 (Jessie);
--output-indent since Debian 8 (Jessie);
--output-legacy-dates since Debian 11 (Bullseye);
--output-listsep since Debian 9 (Stretch);
--output-named-annotation-marker since Debian 10 (Buster);
--output-namesep since Debian 9 (Stretch);
--output-no-macrodefs since Debian 11 (Bullseye);
--output-resolve since Debian 8 (Jessie);
--output-resolve-crossrefs since Debian 10 (Buster);
--output-resolve-sets since Debian 10 (Buster);
--output-resolve-xdata since Debian 10 (Buster);
--output-safechars since Debian 8 (Jessie);
--output-xdatamarker since Debian 11 (Bullseye);
--output-xdatasep since Debian 11 (Bullseye);
--output-xname since Debian 9 (Stretch);
--output-xnamesep since Debian 9 (Stretch);
--recodedata since Debian 8 (Jessie);
--show-tmp-dir since Debian 11 (Bullseye);
--sortdebug since Debian 9 (Stretch);
--ssl-nointernalca since Debian 8 (Jessie);
--strip-comments since Debian 9 (Stretch);
--tool since Debian 8 (Jessie);
--tool-config since Debian 8 (Jessie);
--tool-noremove-missing-dependants since Debian 11 (Bullseye);
--validate-bblxml since Debian 9 (Stretch);
--validate-bltxml since Debian 9 (Stretch);
--validate-config since Debian 8 (Jessie);
--validate-control since Debian 8 (Jessie);
--xdatamarker since Debian 11 (Bullseye);
--xdatasep since Debian 11 (Bullseye);
--xnamesep since Debian 9 (Stretch);
--xsvsep since Debian 8 (Jessie).
--bblsafechars until Debian 7 (Wheezy);
--bblsafecharsset until Debian 7 (Wheezy);
--convert_control until Debian 7 (Wheezy);
--decodecharsset until Debian 7 (Wheezy);
--dot_include until Debian 7 (Wheezy);
--mssplit until Debian 8 (Jessie);
--nouri-encode until Debian 9 (Stretch);
--outformat until Debian 7 (Wheezy);
--output_directory until Debian 7 (Wheezy);
--sortfirstinits until Debian 8 (Jessie);
--validate_config until Debian 7 (Wheezy);
--validate_control until Debian 7 (Wheezy).