summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/latex/biblatex/biblatex.tex
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2010-03-20 23:32:55 +0000
committerKarl Berry <karl@freefriends.org>2010-03-20 23:32:55 +0000
commit1080eb42d3947b4414c2bda84c4d0c0b809c4e16 (patch)
treed5e2f1893ee3a1f85c1b0d195db8ba0a8c28ff60 /Master/texmf-dist/doc/latex/biblatex/biblatex.tex
parent6861935735f4cbecd9f2772a4123b3fb07d6ffc2 (diff)
biblatex 0.9a (19mar10)
git-svn-id: svn://tug.org/texlive/trunk@17511 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc/latex/biblatex/biblatex.tex')
-rw-r--r--Master/texmf-dist/doc/latex/biblatex/biblatex.tex473
1 files changed, 292 insertions, 181 deletions
diff --git a/Master/texmf-dist/doc/latex/biblatex/biblatex.tex b/Master/texmf-dist/doc/latex/biblatex/biblatex.tex
index 70cd71ad224..30dd748f13d 100644
--- a/Master/texmf-dist/doc/latex/biblatex/biblatex.tex
+++ b/Master/texmf-dist/doc/latex/biblatex/biblatex.tex
@@ -1,4 +1,4 @@
-% $Id: biblatex.tex,v 0.9 2010/02/14 15:42:33 lehman beta $
+% $Id: biblatex.tex,v 0.9a 2010/03/19 19:52:15 lehman beta $
\documentclass{ltxdockit}[2010/02/12]
\usepackage{btxdockit}
\usepackage[latin9]{inputenc}
@@ -11,7 +11,7 @@
\MakeAutoQuote*{<}{>}
\MakeShortVerb{\|}
-\rcsid{$Id: biblatex.tex,v 0.9 2010/02/14 15:42:33 lehman beta $}
+\rcsid{$Id: biblatex.tex,v 0.9a 2010/03/19 19:52:15 lehman beta $}
\newcommand*{\BiblatexHome}{http://sourceforge.net/projects/biblatex/}
\newcommand*{\BiblatexOnCTAN}{http://www.ctan.org/tex-archive/macros/latex/exptl/biblatex/}
@@ -96,7 +96,8 @@ Johannes Wilm (Danish and Norwegian),
Per Starbäck, Carl-Gustav Werner, Filip Åsblom (Swedish),
Augusto Ritter Stoffel (Portuguese/Brazilian),
Alexander van Loon (Dutch),
-Apostolos Syropoulos (Greek).
+Apostolos Syropoulos (Greek),
+Hannu Väisänen (Finnish).
\subsection{Prerequisites}
\label{int:pre}
@@ -169,7 +170,7 @@ The packages listed in this section are not compatible with \sty{biblatex}. Sinc
\begin{marglist}
-% FIXME: missing
+% FIXME: complete list
%
% amsrefs
% apacite
@@ -959,6 +960,7 @@ English & USA & \opt{american}, \opt{USenglish}, \opt{english} \\
& Canada & \opt{canadian} \\
& Australia & \opt{australian} \\
& New Zealand & \opt{newzealand} \\
+Finnish & Finland & \opt{finnish} \\
French & France, Canada & \opt{french}, \opt{francais}, \opt{canadien} \\
German & Germany & \opt{german}, \opt{ngerman} \\
& Austria & \opt{austrian}, \opt{naustrian} \\
@@ -1333,6 +1335,7 @@ This entry will be printed as «\emph{Journal Name}. New ser. 9 (1998)». See \sec
\multicolumn{1}{H}{Long Format} \\
\cmidrule{1-1}\cmidrule(l){2-2}\cmidrule(l){3-3}
1850 & 1850 & 1850 \\
+1997/ & 1997-- & 1997-- \\
1967-02 & 02/1967 & February 1967 \\
2009-01-31 & 31/01/2009 & 31st January 2009 \\
1988/1992 & 1988--1992 & 1988--1992 \\
@@ -1344,7 +1347,7 @@ This entry will be printed as «\emph{Journal Name}. New ser. 9 (1998)». See \sec
\label{bib:use:tab1}
\end{table}
-The date fields \bibfield{date}, \bibfield{origdate}, \bibfield{eventdate}, and \bibfield{urldate} require a date specification in \texttt{yyyy-mm-dd} format. Date ranges are given as \texttt{yyyy-mm-dd\slash yyyy-mm-dd}. Partial dates are valid provided that date components are omitted at the end only. See \tabref{bib:use:tab1} for some examples of valid date specifications and the formatted date autmatically generated by \sty{biblatex}. The formatted date is language specific and will be adapted automatically. If there is no \bibfield{date} field in an entry, \sty{biblatex} will also consider the fields \bibfield{year} and \bibfield{month} for backwards compatibility with traditional \bibtex. Style author should note that date fields like \bibfield{date} or \bibfield{origdate} are only available in the \file{bib} file. All dates are parsed and dissected into their components as the \file{bib} file is processed. The date components are made available to styles by way of the special fields discussed in \secref{aut:bbx:fld:dat}.
+The date fields \bibfield{date}, \bibfield{origdate}, \bibfield{eventdate}, and \bibfield{urldate} require a date specification in \texttt{yyyy-mm-dd} format. Date ranges are given as \texttt{yyyy-mm-dd\slash yyyy-mm-dd}. Partial dates are valid provided that date components are omitted at the end only. You may specify an open ended date range by giving the range separator and omitting the end date (\eg \texttt{yyyy/}). See \tabref{bib:use:tab1} for some examples of valid date specifications and the formatted date autmatically generated by \sty{biblatex}. The formatted date is language specific and will be adapted automatically. If there is no \bibfield{date} field in an entry, \sty{biblatex} will also consider the fields \bibfield{year} and \bibfield{month} for backwards compatibility with traditional \bibtex. Style author should note that date fields like \bibfield{date} or \bibfield{origdate} are only available in the \file{bib} file. All dates are parsed and dissected into their components as the \file{bib} file is processed. The date components are made available to styles by way of the special fields discussed in \secref{aut:bbx:fld:dat}.
\subsubsection{Years, months and journal issues}
\label{bib:use:iss}
@@ -1711,6 +1714,7 @@ English & USA & \opt{american} \\
& Canada & \opt{canadian} \\
& Australia & \opt{australian} \\
& New Zealand & \opt{newzealand} \\
+Finnish & Finland & \opt{finnish} \\
French & France, Canada & \opt{french} \\
German & Germany & \opt{german} \\
& Austria & \opt{austrian} \\
@@ -1939,6 +1943,10 @@ Specifies the database backend. The following backends are supported:
This option will typically be set permanently in the configuration file, see \secref{use:cfg} for details. Also see \secref{bib:cav:enc} for further instructions concerning the encoding of \file{bib} files.
+\boolitem[true]{bibwarn}
+
+By default, \sty{biblatex} will report warnings issued by the backend concerning the data in the \file{bib} file as \latex warnings. Use this option to suppress such warnings.
+
\intitem[2]{mincrossrefs}
Sets the minimum number of cross references to \prm{integer} when requesting a \bibtex run.\footnote{If an entry which is cross-referenced by other entries in the \file{bib} file hits this threshold, it is included in the bibliography even if it has not been cited explicitly. This is a standard feature of \bibtex and not specific to \sty{biblatex}. See the description of the \bibfield{crossref} field in \secref{bib:fld:spc} for further information.} Note that this package option merely affects the format of certain requests written to the transcript file. It will not have any effect if the editor or compiler script launching \bibtex does not include dedicated \sty{biblatex} support or if \bibtex is manually launched from the command"=line.\footnote{As of this writing, no \latex editors or compiler scripts with dedicated \sty{biblatex} support are known, but this will hopefully change in the future.} See \secref{bib:cav:ide} for details. This option also affects the handling of the \bibfield{xref} field. See the field description in \secref{bib:fld:spc} as well as \secref{bib:cav:ref} for details.
@@ -1964,7 +1972,7 @@ Note that \kvopt{bibencoding}{inputenc} and \kvopt{bibencoding}{\prm{encoding}}
\subsubsection{Style options}
\label{use:opt:bbx}
-The following options are provided by the standard styles which ship with \sty{biblatex} (as opposed to the core package). Technically, they are preamble options like those in \secref{use:opt:pre}.
+The following options are provided by the standard styles (as opposed to the core package). Technically, they are preamble options like those in \secref{use:opt:pre}.
\begin{optionlist}
@@ -2140,6 +2148,14 @@ This option controls the <loccit> tracker which is required by the \cmd{ifloccit
Note that this tracker is disabled in all floats, see \secref{aut:cav:flt}.
+\boolitem[true]{parentracker}
+
+This option controls the parenthesis tracker which keeps track of nested parentheses and brackets. This information is used by \cmd{parentext} and \cmd{brackettext} from \secref{use:cit:txt}, \cmd{mkbibparens} and \cmd{mkbibbrackets} from \secref{aut:fmt:ich} and \cmd{bibopenparen}, \cmd{bibcloseparen}, \cmd{bibopenbracket}, \cmd{bibclosebracket} (also \secref{aut:fmt:ich}).
+
+\intitem[3]{maxparens}
+
+The maximum permitted nesting level of parentheses and brackets. If parentheses and brackets are nested deeper than this value, \sty{biblatex} will issue errors.
+
\boolitem[false]{firstinits}
When enabled, all first and middle names will be rendered as initials. The option will affect the \cmd{iffirstinits} test from \secref{aut:aux:tst}.
@@ -2506,9 +2522,13 @@ This command prints the bibliography. It takes one optional argument, which is a
\begin{optionlist*}
+\valitem[bibliography/shorthands]{env}{name}
+
+The <high-level> layout of the bibliography and the list of shorthands is controlled by enviroments defined with \cmd{defbibenvironment}. This option selects an environment. The \prm{name} corresponds to the identifier used when defining the environment with \cmd{defbibenvironment}. By default, the \cmd{printbibliography} command uses the identifier \texttt{bibliography}; \cmd{printshorthands} uses \texttt{shorthands}. See also \secref{use:bib:los,use:bib:hdg}.
+
\valitem[bibliography/shorthands]{heading}{name}
-The bibliography and the list of shorthands typically have a chapter or section heading. This option selects the heading \prm{name}, as defined with \cmd{defbibheading}. By default, \cmd{printbibliography} uses the heading \texttt{bibliography}. The command \cmd{printshorthands} uses \texttt{shorthands}. See also \secref{use:bib:los,use:bib:hdg}.
+The bibliography and the list of shorthands typically have a chapter or section heading. This option selects the heading \prm{name}, as defined with \cmd{defbibheading}. By default, the \cmd{printbibliography} command uses the heading \texttt{bibliography}; \cmd{printshorthands} uses \texttt{shorthands}. See also \secref{use:bib:los,use:bib:hdg}.
\valitem{title}{text}
@@ -2588,15 +2608,19 @@ Print only entries matching the filter \prm{name}, as defined with \cmd{defbibfi
\cmditem{bibbysection}[key=value,\,\dots]
-This command automatically loops over all reference sections. This is equivalent to giving one \cmd{printbibliography} command for every section but has the additional benefit of automatically skipping sections without references. Note that \cmd{bibbysection} starts looking for references in section \texttt{1}. It will ignore references given outside of \env{refsection} environments since they are assigned to section \texttt{0}. See \secref{use:use:mlt} for usage examples. The options are a subset of those supported by \cmd{printbibliography}. Valid options are \opt{heading}, \opt{prenote}, \opt{postnote}, \opt{maxnames}, \opt{minnames}, \opt{maxitems}, \opt{minitems}.
+This command automatically loops over all reference sections. This is equivalent to giving one \cmd{printbibliography} command for every section but has the additional benefit of automatically skipping sections without references. Note that \cmd{bibbysection} starts looking for references in section \texttt{1}. It will ignore references given outside of \env{refsection} environments since they are assigned to section \texttt{0}. See \secref{use:use:mlt} for usage examples. The options are a subset of those supported by \cmd{printbibliography}. Valid options are \opt{env}, \opt{heading}, \opt{prenote}, \opt{postnote}, \opt{maxnames}, \opt{minnames}, \opt{maxitems}, \opt{minitems}.
\cmditem{bibbysegment}[key=value,\,\dots]
-This command automatically loops over all reference segments. This is equivalent to giving one \cmd{printbibliography} command for every segment but has the additional benefit of automatically skipping segments without references. Note that \cmd{bibbysegment} starts looking for references in segment \texttt{1}. It will ignore references given outside of \env{refsegment} environments since they are assigned to segment \texttt{0}. See \secref{use:use:mlt} for usage examples. The options are a subset of those supported by \cmd{printbibliography}. Valid options are \opt{heading}, \opt{prenote}, \opt{postnote}, \opt{maxnames}, \opt{minnames}, \opt{maxitems}, \opt{minitems}, and \opt{section}.
+This command automatically loops over all reference segments. This is equivalent to giving one \cmd{printbibliography} command for every segment but has the additional benefit of automatically skipping segments without references. Note that \cmd{bibbysegment} starts looking for references in segment \texttt{1}. It will ignore references given outside of \env{refsegment} environments since they are assigned to segment \texttt{0}. See \secref{use:use:mlt} for usage examples. The options are a subset of those supported by \cmd{printbibliography}. Valid options are \opt{env}, \opt{heading}, \opt{prenote}, \opt{postnote}, \opt{maxnames}, \opt{minnames}, \opt{maxitems}, \opt{minitems}, and \opt{section}.
\cmditem{bibbycategory}[key=value,\,\dots]
-This command loops over all bibliography categories. This is equivalent to giving one \cmd{printbibliography} command for every category but has the additional benefit of automatically skipping empty categories. The categories are processed in the order in which they were declared. See \secref{use:use:mlt} for usage examples. The options are a subset of those supported by \cmd{printbibliography}. Valid options are \opt{prenote}, \opt{postnote}, \opt{maxnames}, \opt{minnames}, \opt{maxitems}, \opt{minitems}, and \opt{section}. Note that \opt{heading} is not available with this command. The name of the current category is automatically used as the heading name. This is equivalent to passing \texttt{heading=\prm{category}} to \cmd{printbibliography} and implies that there must be a matching heading definition for every category.
+This command loops over all bibliography categories. This is equivalent to giving one \cmd{printbibliography} command for every category but has the additional benefit of automatically skipping empty categories. The categories are processed in the order in which they were declared. See \secref{use:use:mlt} for usage examples. The options are a subset of those supported by \cmd{printbibliography}. Valid options are \opt{env}, \opt{prenote}, \opt{postnote}, \opt{maxnames}, \opt{minnames}, \opt{maxitems}, \opt{minitems}, and \opt{section}. Note that \opt{heading} is not available with this command. The name of the current category is automatically used as the heading name. This is equivalent to passing \texttt{heading=\prm{category}} to \cmd{printbibliography} and implies that there must be a matching heading definition for every category.
+
+\cmditem{printbibheading}[key=value,\,\dots]
+
+This command prints a bibliography heading defined with \cmd{defbibheading}. It takes one optional argument, which is a list of options given in \keyval notation. The options are a small subset of those supported by \cmd{printbibliography}. Valid options are \opt{heading} and \opt{title}. By default, this command uses the heading \texttt{bibliography}. See \secref{use:bib:hdg} for details. Also see \secref{use:use:mlt,use:use:div} for usage examples.
\end{ltxsyntax}
@@ -2665,16 +2689,31 @@ Assigns a \prm{key} to a \prm{category}, to be used in conjunction with the \opt
\end{ltxsyntax}
-\subsubsection{Bibliography headings}
+\subsubsection{Bibliography headings and environments}
\label{use:bib:hdg}
-The following command defines the heading \prm{name}, to be used in conjunction with the \opt{heading} option of \cmd{printbibliography} and \cmd{printshorthands}:
-
\begin{ltxsyntax}
+\cmditem{defbibenvironment}{name}{begin code}{end code}{item code}
+
+This command defines bibliography environments. The \prm{name} is an identifier passed to the \opt{env} option of \cmd{printbibliography} and \cmd{printshorthands} when selecting the environment. The \prm{begin code} is \latex code to be executed at the beginning of the environment; the \prm{end code} is executed at the end of the environment; the \prm{item code} is code to be executed at the beginning of each entry in the bibliography or the list of shorthands. Here is an example of a definition based on the standard \latex \env{list} environment:
+
+\begin{lstlisting}[style=latex]{}
+\defbibenvironment{bibliography}
+ {\list{}
+ {\setlength{\leftmargin}{\bibhang}%
+ \setlength{\itemindent}{-\leftmargin}%
+ \setlength{\itemsep}{\bibitemsep}%
+ \setlength{\parsep}{\bibparsep}}}
+ {\endlist}
+ {\item}
+\end{lstlisting}
+%
+As seen in the above example, usage of \cmd{defbibenvironment} is roughly similar to \cmd{newenvironment} except that there is an additional mandatory argument for the \prm{item code}.
+
\cmditem{defbibheading}{name}[title]{code}
-The \prm{code} should be \latex code generating a fully"=fledged heading, including page headers and an entry in the table of contents, if desired. If the \opt{title} option of \cmd{printbibliography} or \cmd{printshorthands} is used, the title will be passed to the heading definition as |#1|. If not, the default title specified by the optional \prm{title} argument is passed as |#1| instead. The \prm{title} argument will typically be \cmd{bibname}, \cmd{refname}, or \cmd{losname} (see \secref{aut:lng:key:bhd}). Here is an example of a simple heading definition:
+This command defines bibliography headings. The \prm{name} is an identifier to be passed to the \opt{heading} option of \cmd{printbibliography} or \cmd{printbibheading} and \cmd{printshorthands} when selecting the heading. The \prm{code} should be \latex code generating a fully"=fledged heading, including page headers and an entry in the table of contents, if desired. If \cmd{printbibliography} or \cmd{printshorthands} are invoked with a \opt{title} option, the title will be passed to the heading definition as |#1|. If not, the default title specified by the optional \prm{title} argument is passed as |#1| instead. The \prm{title} argument will typically be \cmd{bibname}, \cmd{refname}, or \cmd{losname} (see \secref{aut:lng:key:bhd}). Here is an example of a simple heading definition:
\begin{lstlisting}[style=latex]{}
\defbibheading{bibliography}[\bibname]{%
@@ -2684,7 +2723,7 @@ The \prm{code} should be \latex code generating a fully"=fledged heading, includ
\end{ltxsyntax}
-The following headings intended for use with \cmd{printbibliography} are predefined:
+The following headings, which are intended for use with \cmd{printbibliography} and \cmd{printbibheading}, are predefined:
\begin{valuelist*}
@@ -2964,6 +3003,14 @@ This command prints the \bibfield{year} field.
This command prints the \bibfield{url} field.
+\cmditem{parentext}{text}
+
+This command wraps the \prm{text} in context sensitive parentheses.
+
+\cmditem{brackettext}{text}
+
+This command wraps the \prm{text} in context sensitive brackets.
+
\end{ltxsyntax}
\subsubsection{Special commands}
@@ -3186,22 +3233,6 @@ The separator inserted between <units> in the sense explained in \secref{aut:pct
The punctuation printed at the very end of every bibliography entry, usually a period. The default definition is a period.
-\csitem{bibleftparen}
-
-The opening parenthesis.
-
-\csitem{bibrightparen}
-
-The closing parenthesis.
-
-\csitem{bibleftbracket}
-
-The opening square bracket.
-
-\csitem{bibrightbracket}
-
-The closing square bracket.
-
\csitem{bibnamedash}
The dash to be used as a replacement for recurrent authors or editors in the bibliography. The default is an <em> or an <en> dash, depending on the indentation of the list of references.
@@ -3214,6 +3245,10 @@ The separator printed after the name used for alphabetizing in the bibliography
The separator printed between the fields \bibfield{title} and \bibfield{subtitle}, \bibfield{booktitle} and \bibfield{booksubtitle}, as well as \bibfield{maintitle} and \bibfield{mainsubtitle}. With the default styles, this separator replaces \cmd{newunitpunct} at this location. The default definition is \cmd{newunitpunct}, \ie it is not handled differently from regular unit punctuation.
+\csitem{intitlepunct}
+
+The separator between the word «in» and the following title in entry types such as \bibtype{article}, \bibtype{inbook}, \bibtype{incollection}, etc. The default definition is a colon plus an interword space (\eg «Article, in: \emph{Journal}» or «Title, in: \emph{Book}»). Note that this is the separator string, not only the punctuation mark. If you don't want a colon after «in», \cmd{intitlepunct} should still insert a space.
+
\csitem{bibpagespunct}
The separator printed before the \bibfield{pages} field. The default is a comma plus an interword space.
@@ -3610,7 +3645,9 @@ Package biblatex Warning: Please (re)run BibTeX on the file(s):
(biblatex) and rerun LaTeX afterwards.
\end{lstlisting}
%
-Apart from these \file{aux} files, \sty{biblatex} uses an additional \file{bib} file with the same suffix to pass certain parameters to \bibtex. In the example above, this file would be named \path{example-blx.bib}. In the event of a file name conflict, you can change the suffix by redefining the macro \cmd{blxauxsuffix} in the document preamble. Note that \sty{biblatex} will not overwrite any files it did not create. All auxiliary files created automatically by this package contain a special signature line. Before overwriting a file (excluding the main \file{aux} file, which is managed by \latex), \sty{biblatex} inspects the first line of the file to make sure that there is no file name conflict. If the file in question is missing the signature line, \sty{biblatex} will immediately issue an error message and abort before opening the output stream. In this case you should delete any spurious files accidentally left in the working directory. If the error persists, there may be a file name conflict with a file found in one of the \tex installation trees. Since the installation trees usually do not contain any \file{aux} files and the string \file{-blx} is fairly exotic in the name of a \file{bib} file, this is rather unlikely but theoretically possible. If you find out that this is indeed the case, you should redefine \cmd{blxauxsuffix} permanently in the \sty{biblatex} configuration file, \path{biblatex.cfg.}
+Apart from these \file{aux} files, \sty{biblatex} uses an additional \file{bib} file with the same suffix to pass certain control parameters to \bibtex. In the example above, this file would be named \path{example-blx.bib}. In the event of a file name conflict, you can change the suffix by redefining the macro \cmd{blxauxsuffix} in the document preamble. When using Biber, \sty{biblatex} would write a control file named \path{example.bcf} and ignore \cmd{blxauxsuffix}.
+
+Note that \sty{biblatex} will not overwrite any files it did not create. All auxiliary files created automatically by this package start with a special signature line. Before overwriting a file (excluding the main \file{aux} file, which is managed by \latex), \sty{biblatex} inspects the first line of the file to make sure that there is no file name conflict. If the file in question is missing the signature line, \sty{biblatex} will immediately issue an error message and abort before opening the output stream. In this case you should delete any spurious files accidentally left in the working directory. If the error persists, there may be a file name conflict with a file found in one of the \tex installation trees. Since the installation trees usually do not contain any \file{aux} files and the string \file{-blx} is fairly exotic in the name of a \file{bib} file, this is rather unlikely but theoretically possible. If you find out that this is indeed the case, you should redefine \cmd{blxauxsuffix} permanently in the \sty{biblatex} configuration file, \path{biblatex.cfg.}
\subsubsection{Multiple bibliographies}
\label{use:use:mlt}
@@ -3625,12 +3662,12 @@ In a collection of articles by different authors, such as a conference proceedin
\chapter{...}
<<\begin{refsection}>>
...
-<<\printbibliography>>
+<<\printbibliography[heading=subbibliography]>>
<<\end{refsection}>>
\chapter{...}
<<\begin{refsection}>>
...
-<<\printbibliography>>
+<<\printbibliography[heading=subbibliography]>>
<<\end{refsection}>>
\end{document}
\end{ltxexample}
@@ -3640,7 +3677,7 @@ If \cmd{printbibliography} is used inside a \env{refsection} environment, it aut
\begin{ltxexample}
\documentclass{...}
\usepackage{biblatex}
-<<\defbibheading>>{<<bibliography>>}{%
+<<\defbibheading>>{<<subbibliography>>}{%
\section*{References for Chapter \ref{<<refsection:\therefsection>>}}}
\bibliography{...}
\begin{document}
@@ -3652,9 +3689,9 @@ If \cmd{printbibliography} is used inside a \env{refsection} environment, it aut
<<\begin{refsection}>>
...
<<\end{refsection}>>
-\chapter{References}
-<<\printbibliography>>[<<section=1>>]
-<<\printbibliography>>[<<section=2>>]
+\printbibheading
+<<\printbibliography>>[<<section=1>>,<<heading=subbibliography>>]
+<<\printbibliography>>[<<section=2>>,<<heading=subbibliography>>]
\end{document}
\end{ltxexample}
%
@@ -3662,15 +3699,15 @@ Note the definition of the bibliography heading in the above example. This is th
\begin{lstlisting}[style=latex]
\usepackage{<<nameref>>}
-\defbibheading{bibliography}{%
+\defbibheading{subbibliography}{%
\section*{<<\nameref{refsection:\therefsection}>>}}
\end{lstlisting}
%
Since giving one \cmd{printbibliography} command for each part of a subdivided bibliography is tedious, \sty{biblatex} provides a shorthand. The \cmd{bibbysection} command automatically loops over all reference sections. This is equivalent to giving one \cmd{printbibliography} command for every section but has the additional benefit of automatically skipping sections without references. In the example above, the bibliography would then be generated as follows:
\begin{lstlisting}[style=latex]
-\chapter{References}
-<<\bibbysection>>
+\printbibheading
+<<\bibbysection[heading=subbibliography]>>
\end{lstlisting}
%
When using a format with one cumulative bibliography subdivided by chapter (or any other document division) it may be more appropriate to use \env{refsegment} rather than \env{refsection} environments. The difference is that the \env{refsection} environment generates labels local to the environment while \env{refsegment} does not affect the generation of labels, hence they will be unique across the entire document. Note that \env{refsegment} environments do not require additional \file{aux} files. The next example could also be given in \secref{use:use:div} because, visually, it creates one global bibliography subdivided into multiple segments.
@@ -3678,7 +3715,7 @@ When using a format with one cumulative bibliography subdivided by chapter (or a
\begin{ltxexample}
\documentclass{...}
\usepackage{biblatex}
-<<\defbibheading>>{<<bibliography>>}{%
+<<\defbibheading>>{<<subbibliography>>}{%
\section*{References for Chapter \ref{<<refsegment:\therefsegment>>}}}
\bibliography{...}
\begin{document}
@@ -3690,17 +3727,17 @@ When using a format with one cumulative bibliography subdivided by chapter (or a
<<\begin{refsegment}>>
...
<<\end{refsegment}>>
-\chapter{References}
-<<\printbibliography>>[<<segment=1>>]
-<<\printbibliography>>[<<segment=2>>]
+\printbibheading
+<<\printbibliography>>[<<segment=1>>,<<heading=subbibliography>>]
+<<\printbibliography>>[<<segment=2>>,<<heading=subbibliography>>]
\end{document}
\end{ltxexample}
%
The use of \env{refsegment} is similar to \env{refsection} and there is also a corresponding \opt{segment} option for \cmd{printbibliography}. The \sty{biblatex} package automatically sets a label at the beginning of every \env{refsegment} environment using the string \texttt{refsegment:} followed by the number of the respective \env{refsegment} environment as an identifier. There is a matching \cnt{refsegment} counter which may be used in heading definitions, as shown above. As with reference sections, there is also a shorthand command which automatically loops over all reference segments:
\begin{lstlisting}[style=latex]{}
-\chapter{References}
-<<\bibbysegment>>
+\printbibheading
+<<\bibbysegment[heading=subbibliography]>>
\end{lstlisting}
%
This is equivalent to giving one \cmd{printbibliography} command for every segment.
@@ -3713,24 +3750,24 @@ It is very common to subdivide a bibliography by certain criteria. For example,
\begin{ltxexample}
\documentclass{...}
\usepackage{biblatex}
-\defbibheading{<<printed>>}{\section*{Printed references}}
-\defbibheading{<<online>>}{\section*{Online references}}
\bibliography{...}
\begin{document}
...
-\chapter{References}
-\printbibliography[<<heading=printed>>,<<nottype=online>>]
-\printbibliography[<<heading=online>>,<<type=online>>]
+\printbibheading
+\printbibliography[<<nottype=online>>,heading=subbibliography,
+ <<title={Printed Sources}>>]
+\printbibliography[<<type=online>>,heading=subbibliography,
+ <<title={Online Sources}>>]
+
\end{document}
\end{ltxexample}
%
You may also use more than two subdivisions:
\begin{lstlisting}[style=latex]{}
-\chapter{References}
-\printbibliography[<<type=article>>]
-\printbibliography[<<type=book>>]
-\printbibliography[<<nottype=article>>,<<nottype=book>>]
+\printbibliography[<<type=article>>,...]
+\printbibliography[<<type=book>>,...]
+\printbibliography[<<nottype=article>>,<<nottype=book>>,...]
\end{lstlisting}
%
It is even possible to give a chain of different types of filters:
@@ -3744,23 +3781,22 @@ This would print all works cited in reference section~2 whose entry type is \bib
\begin{ltxexample}
\documentclass{...}
\usepackage{biblatex}
-\defbibheading{<<primary>>}{\section*{Primary Sources}}
-\defbibheading{<<secondary>>}{\section*{Secondary Sources}}
\bibliography{...}
\begin{document}
...
-\chapter{Bibliography}
-\printbibliography[<<heading=primary>>,<<keyword=primary>>]
-\printbibliography[<<heading=secondary>>,<<keyword=secondary>>]
+\printbibheading
+\printbibliography[<<keyword=primary>>,heading=subbibliography,%
+ <<title={Primary Sources}>>]
+\printbibliography[<<keyword=secondary>>,heading=subbibliography,%
+ <<title={Secondary Sources}>>]
\end{document}
\end{ltxexample}
%
Dividing a bibliography into primary and secondary sources is possible with a \bibfield{keyword} filter, as shown in the above example. In this case, with only two subdivisions, it would be sufficient to use one keyword as filter criterion:
\begin{lstlisting}[style=latex]{}
-\chapter{Bibliography}
-\printbibliography[<<heading=primary>>,<<keyword=primary>>]
-\printbibliography[<<heading=secondary>>,<<notkeyword=primary>>]
+\printbibliography[<<keyword=primary>>,...]
+\printbibliography[<<notkeyword=primary>>,...]
\end{lstlisting}
%
Since \sty{biblatex} has no way of knowing if an item in the bibliography is considered to be primary or secondary literature, we need to supply the bibliography filter with the required data by adding a \bibfield{keywords} field to each entry in the \file{bib} file. These keywords may then be used as targets for the \opt{keyword} and \opt{notkeyword} filters, as shown above. It may be a good idea to add such keywords right away while building a \file{bib} file.
@@ -3780,23 +3816,22 @@ An alternative way of subdividing the list of references are bibliography catego
<<\DeclareBibliographyCategory>>{<<secondary>>}
<<\addtocategory>>{<<primary>>}{key1,key3,key6}
<<\addtocategory>>{<<secondary>>}{key2,key4,key5}
-\defbibheading{primary}{\section*{Primary Sources}}
-\defbibheading{secondary}{\section*{Secondary Sources}}
\bibliography{...}
\begin{document}
...
-\chapter{Bibliography}
-\printbibliography[heading=primary,<<category=primary>>]
-\printbibliography[heading=secondary,<<category=secondary>>]
+\printbibheading
+\printbibliography[<<category=primary>>,heading=subbibliography,%
+ <<title={Primary Sources}>>]
+\printbibliography[<<category=secondary>>,heading=subbibliography,%
+ <<title={Secondary Sources}>>]
\end{document}
\end{ltxexample}
%
In this case it would also be sufficient to use one category only:
\begin{lstlisting}[style=latex]{}
-\chapter{References}
-\printbibliography[heading=primary,<<category=primary>>]
-\printbibliography[heading=secondary,<<notcategory=primary>>]
+\printbibliography[<<category=primary>>,...]
+\printbibliography[<<notcategory=primary>>,...]
\end{lstlisting}
%
It is still a good idea to declare all categories used in the bibliography explicitly because there is a \cmd{bibbycategory} command which automatically loops over all categories. This is equivalent to giving one \cmd{printbibliography} command for every category, in the order in which they were declared.
@@ -3813,7 +3848,7 @@ It is still a good idea to declare all categories used in the bibliography expli
\bibliography{...}
\begin{document}
...
-\chapter{Bibliography}
+\printbibheading
<<\bibbycategory>>
\end{document}
\end{ltxexample}
@@ -3980,7 +4015,7 @@ would become:
...
\end{lstlisting}
%
-and the standard styles would print «Google Books: |4JE_AAAAYAAJ|» instead of the full \acr{URL}. If hyperref support is enabled, the identifier will be a clickable link to Google Books.\footnote{Note that the Google Books \acr{id} seems to be a bit of an <internal> value. As of this writing, there does not seem to be any way to search for an \acr{id} on Google Books. You may prefer to use the \bibfield{url} in this case.}
+and the standard styles would print «Google Books: |XXu4AkRVBBoC|» instead of the full \acr{URL}. If hyperref support is enabled, the identifier will be a clickable link to Google Books.\footnote{Note that the Google Books \acr{id} seems to be a bit of an <internal> value. As of this writing, there does not seem to be any way to search for an \acr{id} on Google Books. You may prefer to use the \bibfield{url} in this case.}
Note that \bibfield{eprint} is a verbatim field. Always give the identifier in its unmodified form. For example, there is no need to replace |_| with |\_|. Also see \secref{aut:cav:epr} on how to add dedicated support for other eprint resources.
@@ -4013,17 +4048,17 @@ This section provides additional usage hints and addresses some common problems
\subsubsection{Usage with \acr{KOMA}-Script classes}
\label{use:cav:scr}
-When using \sty{biblatex} in conjunction with one of the \sty{scrbook}, \sty{scrreprt}, or \sty{scrartcl} classes, the headings \texttt{bibliography} and \texttt{shorthands} from \secref{use:bib:hdg} are responsive to the bibliography"=related options of these classes.\footnote{This applies to the traditional syntax of these options (\opt{bibtotoc} and \opt{bibtotocnumbered}) as well as to the \keyval syntax introduced in \acr{KOMA}-Script 3.x, \ie to \kvopt{bibliography}{nottotoc}, \kvopt{bibliography}{totoc}, and \kvopt{bibliography}{totocnumbered}, but only if these options are set globally in the optional argument to \cmd{documentclass}.} You can override the default headings by using the \opt{heading} option of \cmd{printbibliography} and \cmd{printshorthands}. See \secref{use:bib:bib, use:bib:los, use:bib:hdg} for details. All default headings are adapted at load-time such that they blend with the behavior of these classes. If one of the above classes is detected, \sty{biblatex} will also provide the following additional tests which may be useful in custom heading definitions:
+When using \sty{biblatex} in conjunction with one of the \sty{scrbook}, \sty{scrreprt}, or \sty{scrartcl} classes, the headings \texttt{bibliography} and \texttt{shorthands} from \secref{use:bib:hdg} are responsive to the bibliography"=related options of these classes.\footnote{This applies to the traditional syntax of these options (\opt{bibtotoc} and \opt{bibtotocnumbered}) as well as to the \keyval syntax introduced in \acr{KOMA}-Script 3.x, \ie to \kvopt{bibliography}{nottotoc}, \kvopt{bibliography}{totoc}, and \kvopt{bibliography}{totocnumbered}, The global \kvopt{toc}{bibliography} and \kvopt{toc}{bibliographynumbered} options as well as their aliases are detected as well. In any case, the options must be set globally in the optional argument to \cmd{documentclass}.} You can override the default headings by using the \opt{heading} option of \cmd{printbibliography}, \cmd{printbibheading} and \cmd{printshorthands}. See \secref{use:bib:bib, use:bib:los, use:bib:hdg} for details. All default headings are adapted at load-time such that they blend with the behavior of these classes. If one of the above classes is detected, \sty{biblatex} will also provide the following additional tests which may be useful in custom heading definitions:
\begin{ltxsyntax}
\cmditem{ifkomabibtotoc}{true}{false}
-Expands to \prm{true} if the class option \opt{bibtotoc} or \opt{bibtotocnumbered} has been set, and to \prm{false} otherwise. This also applies to the new syntax \kvopt{bibliography}{totoc} and \kvopt{bibliography}{totocnumbered}, but only if the options are set globally in the optional argument to \cmd{documentclass}.
+Expands to \prm{true} if the class would add the bibliography to the table of contents, and to \prm{false} otherwise.
\cmditem{ifkomabibtotocnumbered}{true}{false}
-Expands to \prm{true} if the class option \opt{bibtotocnumbered} has been set, and to \prm{false} otherwise. This also applies to the new syntax \kvopt{bibliography}{totocnumbered}, but only if the option is set globally in the optional argument to \cmd{documentclass}.
+Expands to \prm{true} if the class would add the bibliography to the table of contents as a numbered section, and to \prm{false} otherwise. If this test yields \prm{true}, \cmd{ifkomabibtotoc} will always yield \prm{true} as well, but not vice versa.
\end{ltxsyntax}
@@ -4210,7 +4245,7 @@ The \sty{biblatex} package supports citations in any arbitrary format, hence cit
Addison-Wesley\bibbdsep{} 1994}}}
\end{lstlisting}
%
-In this case, the contents of the entire \env{thebibliography} environment are effectively transferred via the \file{aux} file. The data is read from the \file{bbl} file, written to the \file{aux} file, read back from the \file{aux} file and then kept in memory. The bibliography itself is still generated as the \file{bbl} file is read in. The \sty{biblatex} package would also be forced to cycle all data through the \file{aux} file. This implies a certain overhead and is also redundant because the data has to be kept in memory anyway.
+In this case, the contents of the entire \env{thebibliography} environment are effectively transferred via the \file{aux} file. The data is read from the \file{bbl} file, written to the \file{aux} file, read back from the \file{aux} file and then kept in memory. The bibliography itself is still generated as the \file{bbl} file is read in. The \sty{biblatex} package would also be forced to cycle all data through the \file{aux} file. This implies processing overhead and is also redundant because the data has to be kept in memory anyway.
The traditional procedure is based on the assumption that the full bibliographic data of an entry is only required in the bibliography and that all citations use short labels. This makes it very effective in terms of memory requirements, but it also implies that it does not scale well. Therefore, \sty{biblatex} takes a different approach. First of all, the document structure is slightly different. \cmd{bibliography} is given in the preamble and does not print anything, \cmd{bibliographystyle} is omitted entirely (all features are controlled by package options), the bibliography is printed using \cmd{printbibliography}:
@@ -4284,11 +4319,14 @@ Before we go over the individual components of a bibliography style, consider th
\begin{ltxexample}
\ProvidesFile{example.bbx}[2006/03/15 v1.0 biblatex bibliography style]
-\renewenvironment*{thebibliography}{...}{...}
-\renewenvironment*{theshorthands}{...}{...}
-\renewcommand*{\thebibitem}{...}
-\renewcommand*{\thelositem}{...}
-
+\defbibenvironment{bibliography}
+ {...}
+ {...}
+ {...}
+\defbibenvironment{shorthands}
+ {...}
+ {...}
+ {...}
\InitializeBibliographyStyle{...}
\DeclareBibliographyDriver{article}{...}
\DeclareBibliographyDriver{book}{...}
@@ -4330,17 +4368,17 @@ giving <\texttt{somekey}> without a value is equivalent to <\kvopt{somekey}{true
\cmditem{DeclareEntryOption}{key}[value]{code}
-Similar to \cmd{DeclareBibliographyOption} but defines options which are settable on a per"=entry basis in the \bibfield{options} field from \secref{bib:fld:spc}. The \prm{code} will be executed whenever \sty{biblatex} prepares the data of the entry for use by a citation command or a bibliography driver.
+Similar to \cmd{DeclareBibliographyOption} but defines options which are settable on a per"=entry basis in the \bibfield{options} field from \secref{bib:fld:spc}. The \prm{code} is executed whenever \sty{biblatex} prepares the data of the entry for use by a citation command or a bibliography driver.
\end{ltxsyntax}
\subsubsection{Bibliography environments}
\label{aut:bbx:env}
-Apart from defining bibliography drivers, the bibliography style is also responsible for the commands \cmd{thebibitem} and \cmd{thelositem} as well as the corresponding environments \env{thebibliography} and \env{theshorthands}. With \sty{biblatex}, these commands and environments are released from any responsibilities which are not related to typesetting the actual reference lists. They do not need to write any data to the \file{aux} file and they do not handle the heading of the bibliography or any pre- or postnotes. You may redefine them freely. The environment \env{thebibliography} controls the layout of the bibliography, the corresponding \cmd{thebibitem} command is executed at the start of every bibliography entry inside this environment. Here is a definition suitable for a bibliography style which does not print any labels in the bibliography:
+Apart from defining bibliography drivers, the bibliography style is also responsible for the environments which control the layout of the bibliography and the list of shorthands. These environments are defined with \cmd{defbibenvironment}. By default, \cmd{printbibliography} uses the environment \opt{bibliography}. Here is a definition suitable for a bibliography style which does not print any labels in the bibliography:
\begin{lstlisting}[style=latex]{}
-\renewenvironment*{thebibliography}
+\defbibenvironment{bibliography}
{\list
{}
{\setlength{\leftmargin}{\bibhang}%
@@ -4348,13 +4386,13 @@ Apart from defining bibliography drivers, the bibliography style is also respons
\setlength{\itemsep}{\bibitemsep}%
\setlength{\parsep}{\bibparsep}}}
{\endlist}
-\renewcommand*{\thebibitem}{\item}
+ {\item}
\end{lstlisting}
%
-This definition employs a \env{list} environment with hanging indentation, using the \cmd{bibhang} length register provided by \sty{biblatex}. It allows for a certain degree of configurability by using \cmd{bibitemsep} and \cmd{bibparsep}, two length registers provided by \sty{biblatex} for this very purpose (see \secref{aut:fmt:len}). Since we are using a \env{list} environment, we redefine \cmd{thebibitem} such that it expands to \cmd{item}. The \texttt{author-year} and \texttt{author-title} bibliography styles use a definition similar to this example.
+This definition employs a \env{list} environment with hanging indentation, using the \cmd{bibhang} length register provided by \sty{biblatex}. It allows for a certain degree of configurability by using \cmd{bibitemsep} and \cmd{bibparsep}, two length registers provided by \sty{biblatex} for this very purpose (see \secref{aut:fmt:len}). The \texttt{authoryear} and \texttt{authortitle} bibliography styles use a definition similar to this example.
\begin{lstlisting}[style=latex]{}
-\renewenvironment*{thebibliography}
+\defbibenvironment{bibliography}
{\list
{\printfield[labelnumberwidth]{labelnumber}}
{\setlength{\labelwidth}{\labelnumberwidth}%
@@ -4365,15 +4403,15 @@ This definition employs a \env{list} environment with hanging indentation, using
\setlength{\parsep}{\bibparsep}}%
\renewcommand*{\makelabel}[1]{\hss##1}}
{\endlist}
-\renewcommand*{\thebibitem}{\item}
+ {\item}
\end{lstlisting}
%
Some bibliography styles print labels in the bibliography. For example, a bibliography style designed for a numeric citation scheme will print the number of every entry such that the bibliography looks like a numbered list. In the first example, the first argument to \cmd{list} was empty. In this example, we need it to insert the number, which is provided by \sty{biblatex} in the \bibfield{labelnumber} field. We also employ several length registers and other facilities provided by \sty{biblatex}, see \secref{aut:fmt:ich, aut:fmt:ilc} for details. The \texttt{numeric} bibliography style uses the definition given above. The \texttt{alphabetic} style is similar, except that \textsf{\texttt{labelnumber}} is replaced by \texttt{labelalpha} and \texttt{labelnumberwidth} by \texttt{labelalphawidth}.
-The list of shorthands is typeset in a similar way. The layout of the list is controlled by the environment \env{theshorthands}, the corresponding \cmd{thelositem} command is executed at the start of every entry inside this environment. A typical example is given below. See \secref{aut:fmt:ich, aut:fmt:ilc} for details on the length registers and facilities used in this example.
+The list of shorthands is handled in a similar way. \cmd{printshorthands} uses the environment \opt{shorthands} by default. A typical example is given below. See \secref{aut:fmt:ich, aut:fmt:ilc} for details on the length registers and facilities used in this example.
\begin{lstlisting}[style=latex]{}
-\renewenvironment*{theshorthands}
+\defbibenvironment{shorthands}
{\list
{\printfield[shorthandwidth]{shorthand}}
{\setlength{\labelwidth}{\shorthandwidth}%
@@ -4384,19 +4422,8 @@ The list of shorthands is typeset in a similar way. The layout of the list is co
\setlength{\parsep}{\bibparsep}%
\renewcommand*{\makelabel}[1]{##1\hss}}}
{\endlist}
+ {\item}
\end{lstlisting}
-%
-The definitions of \env{thebibliography} and \env{theshorthands} need not be based on a \env{list} environment. For example, it is possible to typeset the entire bibliography as one paragraph. This compact format is sometimes used for short reading lists, for example in encyclopedias.
-
-\begin{lstlisting}[style=latex]{}
-\renewenvironment*{thebibliography}
- {\interlinepenalty=0\relax
- \renewcommand*{\thebibitem}{%
- \gdef\thebibitem{\addnbspace\textemdash\space}}}
- {}
-\end{lstlisting}
-%
-In this case, the \env{thebibliography} environment does nothing except making sure that the \cmd{interlinepenalty} is set to a suitable value. \cmd{thebibitem} does not insert \cmd{item} but a dash separated from the text by interword spaces. As mentioned above, \cmd{thebibitem} is executed at the start of every entry. Since we only want a separator between items, but not in front of the first item, we define \cmd{thebibitem} such that it redefines itself when executed for the first time and only prints the separator when subsequently executed. We put the definition inside the \env{thebibliography} environment because we need to reset it at the beginning of every bibliography.
\subsubsection{Bibliography drivers}
\label{aut:bbx:drv}
@@ -4463,13 +4490,21 @@ The following lists and fields are used by \sty{biblatex} to pass data to biblio
The entry key of an item in the \file{bib} file. This is the string used by \sty{biblatex} and \bibtex to identify an entry in the \file{bib} file.
+\fielditem{childentrykey}{string}
+
+When citing a subentry of a reference set, \sty{biblatex} provides the data of the parent \bibtype{set} entry to citation commands. This implies that the \bibfield{entrykey} field holds the entry key of the parent. The entry key of the child entry being cited is provided in the \bibfield{childentrykey} field. This field is only available when citing a subentry of a reference set.
+
\fielditem{entrytype}{string}
The entry type (\bibtype{book}, \bibtype{inbook}, etc.), given in lowercase letters.
+\fielditem{childentrytype}{string}
+
+When citing a subentry of a reference set, \sty{biblatex} provides the data of the parent \bibtype{set} entry to citation commands. This implies that the \bibfield{entrytype} field holds the entry type of the parent. The entry type of the child entry being cited is provided in the \bibfield{childentrytype} field. This field is only available when citing a subentry of a reference set.
+
\fielditem{entrysetcount}{integer}
-This field is only available in the subentries of a \sty{set} entry. It holds an integer indicating the position of a set member in the reference set (starting at \texttt{1}).
+This field holds an integer indicating the position of a set member in the reference set (starting at \texttt{1}). This field is only available in the subentries of a reference set.
\fielditem{namehash}{string}
@@ -4539,7 +4574,33 @@ The author"=year citation scheme usually requires a letter to be appended to the
\paragraph{Date component fields}
\label{aut:bbx:fld:dat}
-See \tabref{aut:bbx:fld:tab1} for an overview of how the date fields in \file{bib} files related to the date fields provided by the style interface.
+See \tabref{aut:bbx:fld:tab1} for an overview of how the date fields in \file{bib} files are related to the date fields provided by the style interface.
+
+\begin{fieldlist}
+
+\fielditem{day}{integer}
+
+This field holds the day component of the \bibfield{date} field. If the date is a range, it holds the day component of the start date.
+
+\fielditem{month}{integer}
+
+This field is the \bibfield{month} as given in the database file or it holds the month component of the \bibfield{date} field. If the date is a range, it holds the month component of the start date.
+
+\fielditem{year}{integer}
+
+This field is the \bibfield{year} as given in the database file or it holds the year component of the \bibfield{date} field. If the date is a range, it holds the year component of the start date.
+
+\fielditem{endday}{integer}
+
+If the date specification in the \bibfield{date} field is a range, this field holds the day component of the end date.
+
+\fielditem{endmonth}{integer}
+
+If the date specification in the \bibfield{date} field is a range, this field holds the month component of the end date.
+
+\fielditem{endyear}{integer}
+
+If the date specification in the \bibfield{date} field is a range, this field holds the year component of the end date. A blank (but defined) \bibfield{endyear} component indicates an open ended \bibfield{date} range.
\begin{table}
\tablesetup
@@ -4559,6 +4620,12 @@ date & 1988 & day & undefined \\
& & endday & undefined \\
& & endmonth & undefined \\
& & endyear & undefined \\
+date & 1997/ & day & undefined \\
+ & & month & undefined \\
+ & & year & 1997 \\
+ & & endday & undefined \\
+ & & endmonth & undefined \\
+ & & endyear & empty \\
urldate & 2009-01-31 & urlday & 31 \\
& & urlmonth & 01 \\
& & urlyear & 2009 \\
@@ -4583,32 +4650,6 @@ eventdate & 1995-01-31/1995-02-05 & eventday & 31 \\
\label{aut:bbx:fld:tab1}
\end{table}
-\begin{fieldlist}
-
-\fielditem{day}{integer}
-
-This field holds the day component of the \bibfield{date} field. If the date is a range, it holds the day component of the start date.
-
-\fielditem{month}{integer}
-
-This field is the \bibfield{month} as given in the database file or it holds the month component of the \bibfield{date} field. If the date is a range, it holds the month component of the start date.
-
-\fielditem{year}{integer}
-
-This field is the \bibfield{year} as given in the database file or it holds the year component of the \bibfield{date} field. If the date is a range, it holds the year component of the start date.
-
-\fielditem{endday}{integer}
-
-If the date specification in the \bibfield{date} field is a range, this field holds the day component of the end date.
-
-\fielditem{endmonth}{integer}
-
-If the date specification in the \bibfield{date} field is a range, this field holds the month component of the end date.
-
-\fielditem{endyear}{integer}
-
-If the date specification in the \bibfield{date} field is a range, this field holds the year component of the end date.
-
\fielditem{origday}{integer}
This field holds the day component of the \bibfield{origdate} field. If the date is a range, it holds the day component of the start date.
@@ -4631,7 +4672,7 @@ If the date specification in the \bibfield{origdate} field is a range, this fiel
\fielditem{origendyear}{integer}
-If the date specification in the \bibfield{origdate} field is a range, this field holds the year component of the end date.
+If the date specification in the \bibfield{origdate} field is a range, this field holds the year component of the end date. A blank (but defined) \bibfield{origendyear} component indicates an open ended \bibfield{origdate} range.
\fielditem{eventday}{integer}
@@ -4655,7 +4696,7 @@ If the date specification in the \bibfield{eventdate} field is a range, this fie
\fielditem{eventendyear}{integer}
-If the date specification in the \bibfield{eventdate} field is a range, this field holds the year component of the end date.
+If the date specification in the \bibfield{eventdate} field is a range, this field holds the year component of the end date. A blank (but defined) \bibfield{eventendyear} component indicates an open ended \bibfield{eventdate} range.
\fielditem{urlday}{integer}
@@ -4679,7 +4720,7 @@ If the date specification in the \bibfield{urldate} field is a range, this field
\fielditem{urlendyear}{integer}
-If the date specification in the \bibfield{urldate} field is a range, this field holds the year component of the end date.
+If the date specification in the \bibfield{urldate} field is a range, this field holds the year component of the end date. A blank (but defined) \bibfield{urlendyear} component indicates an open ended \bibfield{urldate} range.
\end{fieldlist}
@@ -5211,6 +5252,10 @@ Similar to \cmd{ifpages}, but uses the value of a \prm{field} rather than a lite
Expands to \prm{true} if the \prm{string} is a known localization key, and to \prm{false} otherwise. The localization keys defined by default are listed in \secref{aut:lng:key}. New ones may be defined with \cmd{NewBibliographyString}.
+\cmditem{ifbibxstring}{string}{true}{false}
+
+Similar to \cmd{ifbibstring}, but the \prm{string} is expanded.
+
\cmditem{iffieldbibstring}{field}{true}{false}
Similar to \cmd{ifbibstring}, but uses the value of a \prm{field} rather than a literal string in the test. If the \prm{field} is undefined, it expands to \prm{false}.
@@ -5227,6 +5272,10 @@ Expands to \prm{true} when located in a citation, and to \prm{false} otherwise.
Expands to \prm{true} when located in a bibliography, and to \prm{false} otherwise. Note that this command is responsive to the outermost context in which it is used. For example, if a driver defined with \cmd{DeclareBibliographyDriver} executes a citation command defined with \cmd{DeclareCiteCommand}, any \cmd{ifbibliography} tests in the citation code will yield \prm{true}. See \secref{aut:cav:mif} for a practical example.
+\cmditem{ifnatbibmode}{true}{false}
+
+Expands to \prm{true} or \prm{false} depending on the \opt{natbib} option from \secref{use:opt:ldt}.
+
\cmditem{ifciteindex}{true}{false}
Expands to \prm{true} or \prm{false} depending on the \opt{indexing} option from \secref{use:opt:pre}.
@@ -5241,14 +5290,18 @@ Expands to \prm{true} when located in a footnote, and to \prm{false} otherwise.
\cntitem{uniquename}
-In contrast to most facilities in this section, \cnt{uniquename} is a counter and not a test. The counter refers to the \bibfield{labelname} list. Its value is \texttt{0} if the author's or editor's last name is unique, \texttt{1} if adding the other parts of the name (first name, prefix, suffix) as initials will make it unique, and \texttt{2} if the full name is required to form a unique citation. This information is required by author-year and author-title citation schemes which add additional parts of the name when citing different authors with the same last name. For example, if there is one <John Doe> and one <Edward Doe> in the list of references, this counter will be set to \texttt{1} for all works by these authors. If there is one <John Doe> and one <Jane Doe>, the value of the counter will be \texttt{2}. Note that this feature needs to be enabled explicitly with the package option \opt{uniquename}. If the option is disabled, the value of the counter is always zero. If the option is set to \texttt{init}, the counter will be limited to \texttt{1}. This is useful for citations styles which use initials to disambiguate names but never print the full name in citations. Also note that this feature only works with single names. If the \bibfield{labelname} list holds multiple names, the value of the counter is always zero.
+The \cnt{uniquename} counter refers to the \bibfield{labelname} list. Its value is \texttt{0} if the author's or editor's last name is unique, \texttt{1} if adding the other parts of the name (first name, prefix, suffix) as initials will make it unique, and \texttt{2} if the full name is required to form a unique citation. This information is required by author-year and author-title citation schemes which add additional parts of the name when citing different authors with the same last name. For example, if there is one <John Doe> and one <Edward Doe> in the list of references, this counter will be set to \texttt{1} for all works by these authors. If there is one <John Doe> and one <Jane Doe>, the value of the counter will be \texttt{2}. Note that this feature needs to be enabled explicitly with the package option \opt{uniquename}. If the option is disabled, the value of the counter is always zero. If the option is set to \texttt{init}, the counter will be limited to \texttt{1}. This is useful for citations styles which use initials to disambiguate names but never print the full name in citations. Also note that this feature only works with single names. If the \bibfield{labelname} list holds multiple names, the value of the counter is always zero.
+
+\cntitem{parenlevel}
+
+The current nesting level of parentheses and\slash or brackets. This information is only available if the \opt{parentracker} from \secref{use:opt:int} is enabled.
\end{ltxsyntax}
\subsubsection{Tests with \cmd{ifthenelse}}
\label{aut:aux:ife}
-The tests introduced in \secref{aut:aux:tst} may also be used in the first argument of the \cmd{ifthenelse} command provided by the \sty{ifthen} package. The syntax of the tests is slightly different in this case: the \prm{true} and \prm{false} arguments are omitted from the test itself and passed to the \cmd{ifthenelse} command instead. Note that the use of this command implies a certain processing overhead. If you do not need any boolean operators, it is more efficient to use the stand"=alone tests from \secref{aut:aux:tst}.
+The tests introduced in \secref{aut:aux:tst} may also be used in the first argument of the \cmd{ifthenelse} command provided by the \sty{ifthen} package. The syntax of the tests is slightly different in this case: the \prm{true} and \prm{false} arguments are omitted from the test itself and passed to the \cmd{ifthenelse} command instead. Note that the use of this command implies processing overhead. If you do not need any boolean operators, it is more efficient to use the stand"=alone tests from \secref{aut:aux:tst}.
\begin{ltxsyntax}
@@ -5292,6 +5345,11 @@ Defines a macro to be executed via \cmd{usebibmacro} later. The syntax of this c
Similar to \cmd{newbibmacro} but redefines \prm{name}. This command issues an error message if the macro is undefined.
+\cmditem{providebibmacro}{name}[arguments][optional]{definition}
+\cmditem*{providebibmacro*}{name}[arguments][optional]{definition}
+
+Similar to \cmd{newbibmacro} but only defines \prm{name} if it is undefined. This command is similar in concept to \cmd{providecommand}.
+
\cmditem{usebibmacro}{name}
Executes the macro \prm{name}, as defined with \cmd{newbibmacro}. If the macro takes any arguments, they are simply appended after \prm{name}. \cmd{usebibmacro} is robust.
@@ -6199,7 +6257,7 @@ The following keys are typically used in the \bibfield{type} field of \bibtype{t
\paragraph{Labels}
\label{aut:lng:key:lab}
-The following strings are intended for use as labels, \eg <Address: \prm{url}> or <Abstract: \prm{abstract}>.
+The following strings are intended for use as labels, \eg\ <Address: \prm{url}> or <Abstract: \prm{abstract}>.
\begin{keymarglist}
\item[url] The term <address> in the sense of an internet address.
@@ -6217,13 +6275,13 @@ Traditional scholarly expressions used in citations:
\begin{keymarglist}
\item[idem] The term equivalent to the Latin <idem> (<the same [person]>).
-\item[idemsf] The feminine singular form of <idem>.
-\item[idemsm] The masculine singular form of <idem>.
-\item[idemsn] The neuter singular form of <idem>.
-\item[idempf] The feminine plural form of <idem>.
-\item[idempm] The masculine plural form of <idem>.
-\item[idempn] The neuter plural form of <idem>.
-\item[idempp] The plural form of <idem> suitable for a mixed gender list of names.
+\item[idemsf] The feminine singular form of \texttt{idem}.
+\item[idemsm] The masculine singular form of \texttt{idem}.
+\item[idemsn] The neuter singular form of \texttt{idem}.
+\item[idempf] The feminine plural form of \texttt{idem}.
+\item[idempm] The masculine plural form of \texttt{idem}.
+\item[idempn] The neuter plural form of \texttt{idem}.
+\item[idempp] The plural form of \texttt{idem} suitable for a mixed gender list of names.
\item[ibidem] The term equivalent to the Latin <ibidem> (<in the same place>).
\item[opcit] The term equivalent to the Latin term <opere citato> (<[in] the work [already] cited>).
\item[loccit] The term equivalent to the Latin term <loco citato> (<[at] the place [already] cited>).
@@ -6239,6 +6297,8 @@ Other expressions frequently used in citations:
\item[see] The term <see>.
\item[seealso] The expression <see also>.
\item[seenote] An expression like <see note \prm{footnote}> or <as in \prm{footnote}>, used to refer to a previous footnote in a citation.
+\item[backrefpage] An expression like <see page \prm{page}> or <cited on page \prm{page}>, used to introduce back references in the bibliography.
+\item[backrefpages] The plural form of \texttt{backrefpage}, \eg\ <see pages \prm{pages}> or <cited on pages \prm{pages}>.
\item[quotedin] An expression like <quoted in \prm{citation}>, used when quoting a passage which was already a quotation in the cited work.
\item[citedas] An expression like <henceforth cited as \prm{shorthand}>, used to introduce a shorthand in a citation.
\item[thiscite] The expression used in some verbose citation styles to differentiate between the page range of the cited item (typically an article in a journal, collection, or conference proceedings) and the page number the citation refers to. For example: \enquote{Author, Title, in: Book, pp. 45--61, \texttt{thiscite} p. 52.}
@@ -6352,22 +6412,6 @@ This section corresponds to \secref{use:fmt:fmt} in the user part of the manual.
\begin{ltxsyntax}
-\csitem{bibleftparen}
-
-The opening parenthesis.
-
-\csitem{bibrightparen}
-
-The closing parenthesis.
-
-\csitem{bibleftbracket}
-
-The opening square bracket.
-
-\csitem{bibrightbracket}
-
-The closing square bracket.
-
\csitem{bibnamedash}
The dash to be used as a replacement for recurrent authors or editors in the bibliography. The default is an <em> or an <en> dash, depending on the indentation of the list of references.
@@ -6380,6 +6424,10 @@ The separator to be printed after the name used for alphabetizing in the bibliog
The separator to be printed between the fields \bibfield{title} and \bibfield{subtitle}, \bibfield{booktitle} and \bibfield{booksubtitle}, as well as \bibfield{maintitle} and \bibfield{mainsubtitle}. Use this separator instead of \cmd{newunitpunct} at this location. The default is \cmd{newunitpunct}, \ie it is not handled differently from regular unit punctuation but permits convenient reconfiguration.
+\csitem{intitlepunct}
+
+The separator to be printed between the word «in» and the following title in entry types such as \bibtype{article}, \bibtype{inbook}, \bibtype{incollection}, etc. Use this separator instead of \cmd{newunitpunct} at this location. The default definition is a colon plus an interword space.
+
\csitem{bibpagespunct}
The separator to be printed before the \bibfield{pages} field. Use this separator instead of \cmd{newunitpunct} at this location. The default is a comma plus an interword space.
@@ -6512,7 +6560,7 @@ This section corresponds to \secref{use:fmt:len} in the user part of the manual.
\lenitem{bibhang}
-The hanging indentation of the bibliography, if applicable. Bibliography styles which use a \env{list} environment and do not print a label should incorporate this length register in the definition of \env{thebibliography}.
+The hanging indentation of the bibliography. Bibliography styles should incorporate this length in the definition of the bibliography environment, if applicable.
\lenitem{biblabelsep}
@@ -6557,11 +6605,19 @@ A generic command which wraps its argument in quotation marks. If the \sty{csquo
\cmditem{mkbibparens}{text}
-A generic command which wraps its argument in (user-definable) parentheses (see \secref{aut:fmt:fmt}) and prevents nested parentheses.
+A generic command which wraps its argument in parentheses. This command is nestable. When nested, it will alternate between parentheses and brackets, depending on the nesting level.
\cmditem{mkbibbrackets}{text}
-A generic command which wraps its argument in (user-definable) square brackets (see \secref{aut:fmt:fmt}) and prevents nested brackets.
+A generic command which wraps its argument in square brackets. This command is nestable. When nested, it will alternate between brackets and parentheses, depending on the nesting level.
+
+\cmditem{bibopenparen}<text>|{\ltxsyntaxlabelfont\cmd{bibcloseparen}}|
+
+Alternative syntax for \cmd{mkbibparens}. This will also work across groups. Note that \cmd{bibopenparen} and \cmd{bibcloseparen} must always be balanced.
+
+\cmditem{bibopenbracket}<text>|{\ltxsyntaxlabelfont\cmd{bibclosebracket}}|
+
+Alternative syntax for \cmd{mkbibbrackets}. This will also work across groups. Note that \cmd{bibopenbracket} and \cmd{bibclosebracket} must always be balanced.
\cmditem{mkbibfootnote}{text}
@@ -6617,15 +6673,15 @@ This command strips leading zeros from a number. It is intended for date formatt
\optitem{shorthandwidth}
-A special field formatting directive which is used internally by \sty{biblatex}. When the bibliographic data is read from the \file{bbl} file, \sty{biblatex} measures the values of all \bibfield{shorthand} fields and sets the length register \cmd{shorthandwidth} to the width of the widest shorthand (see \secref{aut:fmt:ilc}). In order to determine the correct width, the package considers two factors: the definition of \cmd{bibfont} and this formatting directive. All styles should adjust this directive such that it corresponds to the format used in the \env{theshorthands} environment.
+A special field formatting directive which is used internally by \sty{biblatex}. When the bibliographic data is read from the \file{bbl} file, \sty{biblatex} measures the values of all \bibfield{shorthand} fields and sets the length register \cmd{shorthandwidth} to the width of the widest shorthand (see \secref{aut:fmt:ilc}). In order to determine the correct width, the package considers two factors: the definition of \cmd{bibfont} and this formatting directive. All styles should adjust this directive such that it corresponds to the format used in the list of shorthands.
\optitem{labelnumberwidth}
-Similar to \texttt{shorthandwidth}, but referring to the \bibfield{labelnumber} field and the length register \cmd{labelnumberwidth}. Numeric styles should adjust this directive such that it corresponds to the format used in the \env{thebibliography} environment.
+Similar to \texttt{shorthandwidth}, but referring to the \bibfield{labelnumber} field and the length register \cmd{labelnumberwidth}. Numeric styles should adjust this directive such that it corresponds to the format used in the bibliography.
\optitem{labelalphawidth}
-Similar to \texttt{shorthandwidth}, but referring to the \bibfield{labelalpha} field and the length register \cmd{labelalphawidth}. Alphabetic styles should adjust this directive such that it corresponds to the format used in the \env{thebibliography} environment.
+Similar to \texttt{shorthandwidth}, but referring to the \bibfield{labelalpha} field and the length register \cmd{labelalphawidth}. Alphabetic styles should adjust this directive such that it corresponds to the format used in the bibliography.
\optitem{bibhyperref}
@@ -6650,15 +6706,16 @@ The length registers and counters discussed here are used by \sty{biblatex} to p
\lenitem{shorthandwidth}
-This length register indicates the width of the widest \bibfield{shorthand}. All bibliography styles using a \env{list} environment should incorporate this value in the definition of \env{theshorthands}.
+This length register indicates the width of the widest \bibfield{shorthand}. Bibliography styles should incorporate this length in the definition of the list of shorthands, if applicable.
\lenitem{labelnumberwidth}
-This length register indicates the width of the widest \bibfield{labelnumber}. Numeric bibliography styles using a \env{list} environment should should incorporate this value in the definition of \env{thebibliography}.
+This length register indicates the width of the widest \bibfield{labelnumber}. Numeric bibliography styles
+should incorporate this length in the definition of the bibliography environment.
\lenitem{labelalphawidth}
-This length register indicates the width of the widest \bibfield{labelalpha}. Alphabetic bibliography styles using a \env{list} environment should should incorporate this value in the definition of \env{thebibliography}.
+This length register indicates the width of the widest \bibfield{labelalpha}. Alphabetic bibliography styles should incorporate this length in the definition of the bibliography environment.
\cntitem{maxextraalpha}
@@ -6749,27 +6806,27 @@ The name of the name list currently being processed by \cmd{printnames}. This in
\cmditem{AtBeginBibliography}{code}
-Appends \prm{code} to an internal hook executed at the beginning of the bibliography. The \prm{code} will be executed at the beginning of the actual list of references, after the heading and a possible prenote, in the \env{thebibliography} environment. This command may only be used in the preamble.
+Appends the \prm{code} to an internal hook executed at the beginning of the bibliography. The \prm{code} is executed at the beginning of the list of references, immediately after the \prm{begin code} of \cmd{defbibenvironment}. This command may only be used in the preamble.
\cmditem{AtBeginShorthands}{code}
-Appends \prm{code} to an internal hook executed at the beginning of the list of shorthands. The \prm{code} will be executed at the beginning of the actual list of shorthands, after the heading and a possible prenote, in the \env{theshorthands} environment. This command may only be used in the preamble.
+Appends the \prm{code} to an internal hook executed at the beginning of the list of shorthands. The \prm{code} is executed at the beginning of the list of shorthands, immediately after the \prm{begin code} of \cmd{defbibenvironment}. This command may only be used in the preamble.
\cmditem{AtEveryBibitem}{code}
-Appends \prm{code} to an internal hook executed at the beginning of every item in the bibliography. The \prm{code} will be executed right after \cmd{thebibitem}. The bibliographic data of the respective entry is available at this point. This command may only be used in the preamble.
+Appends the \prm{code} to an internal hook executed at the beginning of every item in the bibliography. The \prm{code} is executed immediately after the \prm{item code} of \cmd{defbibenvironment}. The bibliographic data of the respective entry is available at this point. This command may only be used in the preamble.
\cmditem{AtEveryLositem}{code}
-Appends \prm{code} to an internal hook executed at the beginning of every item in the list of shorthands. The \prm{code} will be executed right after \cmd{thelositem}. The bibliographic data of the respective entry is available at this point. This command may only be used in the preamble.
+Appends the \prm{code} to an internal hook executed at the beginning of every item in the list of shorthands. The \prm{code} is executed immediately after the \prm{item code} of \cmd{defbibenvironment}. The bibliographic data of the respective entry is available at this point. This command may only be used in the preamble.
\cmditem{AtEveryCite}{code}
-Appends \prm{code} to an internal hook executed at the beginning of every citation command. The \prm{code} will be executed immediately before the \prm{precode} of the command (see \secref{aut:cbx:cbx}). No bibliographic data is available at this point. This command may only be used in the preamble.
+Appends the \prm{code} to an internal hook executed at the beginning of every citation command. The \prm{code} is executed immediately before the \prm{precode} of the command (see \secref{aut:cbx:cbx}). No bibliographic data is available at this point. This command may only be used in the preamble.
\cmditem{AtEveryCitekey}{code}
-Appends \prm{code} to an internal hook executed once for every entry key passed to a citation command. The \prm{code} will be executed immediately before the \prm{loopcode} of the command (see \secref{aut:cbx:cbx}). The bibliographic data of the respective entry is available at this point. This command may only be used in the preamble.
+Appends the \prm{code} to an internal hook executed once for every entry key passed to a citation command. The \prm{code} is executed immediately before the \prm{loopcode} of the command (see \secref{aut:cbx:cbx}). The bibliographic data of the respective entry is available at this point. This command may only be used in the preamble.
\cmditem{AtNextCite}{code}
@@ -6781,7 +6838,7 @@ Similar to \cmd{AtEveryCitekey} but only affecting the next entry key. The inter
\cmditem{AtDataInput}[type]{code}
-Appends \prm{code} to an internal hook executed once for every entry as the bibliographic data is imported from the \file{bbl} file. The \prm{type} is the entry type the \prm{code} applies to. If it applies to all entry types, omit the optional argument. The \prm{code} will be executed immediately after the entry has been imported. This command may only be used in the preamble. Note that, if there are any \env{refsection} environments in the document and an entry is cited in more than one of them, the \prm{code} may be executed multiple times for an entry. The \cnt{refsection} counter holds the number of the respective reference section while the data is imported.
+Appends the \prm{code} to an internal hook executed once for every entry as the bibliographic data is imported from the \file{bbl} file. The \prm{type} is the entry type the \prm{code} applies to. If it applies to all entry types, omit the optional argument. The \prm{code} is executed immediately after the entry has been imported. This command may only be used in the preamble. Note that, if there are any \env{refsection} environments in the document and an entry is cited in more than one of them, the \prm{code} may be executed multiple times for an entry. The \cnt{refsection} counter holds the number of the respective reference section while the data is imported.
\end{ltxsyntax}
@@ -6825,7 +6882,7 @@ Another case in which mixing interfaces is helpful are styles using cross"=refer
\begin{enumerate}
\renewcommand*\labelenumi{[\theenumi]}
\setlength{\leftskip}{0.5em}
-\item Audrey Author: \emph{Title of article}. In: [\textln{1}], pp.~134--165.
+\item Audrey Author: \emph{Title of article}. In: [\textln{2}], pp.~134--165.
\item Edward Editor, ed.: \emph{Title of collection}. Publisher: Location, 1995.
\end{enumerate}
@@ -6987,7 +7044,7 @@ This code will yield the following result:
Title <<(.>> Series Number<<)>>
\end{lstlisting}
%
-Here's what happens. The first \cmd{printfield} prints the title. Then \cmd{newunit} marks a unit boundary but does not print anything. The unit punctuation is printed by the \emph{next} \cmd{printfield} command. That's the asynchronous part mentioned before. However, the opening parenthesis is printed immediately before the next \cmd{printfield} inserts the unit punctuation, leading to a misplaced period. When inserting \emph{any} literal text such as parentheses (including literal ones, \cmd{bibleftparen}, \cmd{mkbibparens}), always wrap the text in a \cmd{printtext} command. For the punctuation tracker to work as expected, it needs to know about all literal text inserted by a driver. This is what \cmd{printtext} is all about. \cmd{printtext} interfaces with the punctuation tracker and ensures that the punctuation buffer is inserted before the literal text gets printed. It also sets the internal <new~text> flag. Note there is in fact a third piece of literal text in this example: the space after |\printfield{series}|. In the corrected example, we will use the punctuation tracker to handle that space.
+Here's what happens. The first \cmd{printfield} prints the title. Then \cmd{newunit} marks a unit boundary but does not print anything. The unit punctuation is printed by the \emph{next} \cmd{printfield} command. That's the asynchronous part mentioned before. However, the opening parenthesis is printed immediately before the next \cmd{printfield} inserts the unit punctuation, leading to a misplaced period. When inserting \emph{any} literal text such as parentheses (including those printed by commands such as \cmd{bibopenparen} and \cmd{mkbibparens}), always wrap the text in a \cmd{printtext} command. For the punctuation tracker to work as expected, it needs to know about all literal text inserted by a driver. This is what \cmd{printtext} is all about. \cmd{printtext} interfaces with the punctuation tracker and ensures that the punctuation buffer is inserted before the literal text gets printed. It also sets the internal <new~text> flag. Note there is in fact a third piece of literal text in this example: the space after |\printfield{series}|. In the corrected example, we will use the punctuation tracker to handle that space.
\begin{lstlisting}[style=latex]{}
\printfield{title}%
@@ -7183,9 +7240,9 @@ When developing a citation or bibliography style, you may need to set switches o
\begin{itemize}
-\item The entire list of references printed by \cmd{printbibliography} and similar commands is processed in a group. Each entry in the list is processed in an additional group which encloses \cmd{thebibitem} as well as all driver code.
+\item The entire list of references printed by \cmd{printbibliography} and similar commands is processed in a group. Each entry in the list is processed in an additional group which encloses the \prm{item code} of \cmd{defbibenvironment} as well as all driver code.
-\item The entire list of shorthands printed by \cmd{printshorthands} is processed in a group. Each entry in the list is processed in an additional group which encloses \cmd{thelositem} as well as all driver code.
+\item The entire list of shorthands printed by \cmd{printshorthands} is processed in a group. Each entry in the list is processed in an additional group which encloses the \prm{item code} of \cmd{defbibenvironment} as well as all driver code.
\item All citation commands defined with \cmd{DeclareCiteCommand} are processed in a group holding the complete citation code consisting of the \prm{precode}, \prm{sepcode}, \prm{loopcode}, and \prm{postcode} arguments. The \prm{loopcode} is enclosed in an additional group every time it is executed. If any \prm{wrapper} code has been specified, the entire unit consisting of the wrapper code and the citation code is wrapped in an additional group.
@@ -7225,6 +7282,60 @@ This revision history is a list of changes relevant to users of this package. Ch
\begin{changelog}
+\begin{release}{0.9a}{2010-03-19}
+
+\item Modified citation style \texttt{numeric}\see{use:xbx:cbx}
+\item Modified citation style \texttt{numeric-comp}\see{use:xbx:cbx}
+\item Modified citation style \texttt{numeric-verb}\see{use:xbx:cbx}
+\item Modified citation style \texttt{alphabetic}\see{use:xbx:cbx}
+\item Modified citation style \texttt{alphabetic-verb}\see{use:xbx:cbx}
+\item Modified citation style \texttt{authoryear}\see{use:xbx:cbx}
+\item Modified citation style \texttt{authoryear-comp}\see{use:xbx:cbx}
+\item Modified citation style \texttt{authoryear-ibid}\see{use:xbx:cbx}
+\item Modified citation style \texttt{authoryear-icomp}\see{use:xbx:cbx}
+\item Modified citation style \texttt{authortitle}\see{use:xbx:cbx}
+\item Modified citation style \texttt{authortitle-comp}\see{use:xbx:cbx}
+\item Modified citation style \texttt{authortitle-ibid}\see{use:xbx:cbx}
+\item Modified citation style \texttt{authortitle-icomp}\see{use:xbx:cbx}
+\item Modified citation style \texttt{authortitle-terse}\see{use:xbx:cbx}
+\item Modified citation style \texttt{authortitle-tcomp}\see{use:xbx:cbx}
+\item Modified citation style \texttt{draft}\see{use:xbx:cbx}
+\item Modified citation style \texttt{debug}\see{use:xbx:cbx}
+\item Added option \opt{bibwarn}\see{use:opt:pre}
+\item Added \cmd{printbibheading}\see{use:bib:bib}
+\item Added option \opt{env} to \cmd{printbibliography}\see{use:bib:bib}
+\item Added option \opt{env} to \cmd{printshorthands}\see{use:bib:los}
+\item Added \cmd{defbibenvironment}\see{use:bib:hdg}
+\item Removed \env{thebibliography}\see{aut:bbx:bbx}
+\item Removed \env{theshorthands}\see{aut:bbx:bbx}
+\item Removed \cmd{thebibitem}\see{aut:bbx:bbx}
+\item Removed \cmd{thelositem}\see{aut:bbx:bbx}
+\item Updated documentation\see{aut:bbx:bbx}
+\item Updated documentation\see{aut:bbx:env}
+\item Added \cmd{intitlepunct}\see{use:fmt:fmt}
+\item Added option \opt{parentracker}\see{use:opt:int}
+\item Added option \opt{maxparens}\see{use:opt:int}
+\item Added counter \cnt{parenlevel}\see{aut:aux:tst}
+\item Added \cmd{parentext}\see{use:cit:txt}
+\item Added \cmd{brackettext}\see{use:cit:txt}
+\item Improved \cmd{mkbibparens}\see{aut:fmt:ich}
+\item Improved \cmd{mkbibbrackets}\see{aut:fmt:ich}
+\item Added \cmd{bibopenparen} and \cmd{bibcloseparen}\see{aut:fmt:ich}
+\item Added \cmd{bibopenbracket} and \cmd{bibclosebracket}\see{aut:fmt:ich}
+\item Added special field \bibfield{childentrykey}\see{aut:bbx:fld}
+\item Added special field \bibfield{childentrytype}\see{aut:bbx:fld}
+\item Added \cmd{ifnatbibmode}\see{aut:aux:tst}
+\item Added missing documentation of \cmd{ifbibxstring}\see{aut:aux:tst}
+\item Added \cmd{providebibmacro}\see{aut:aux:msc}
+\item Added localization key \texttt{backrefpage}\see{aut:lng:key}
+\item Added localization key \texttt{backrefpages}\see{aut:lng:key}
+\item Slightly expanded documentation\see{bib:use:dat}
+\item Slightly expanded documentation\see{aut:bbx:fld:dat}
+\item Added support for Finnish (translations by Hannu Väisänen)\see{use:opt:pre}
+\item Updated support for Greek (translations by Prokopis)\see{use:opt:pre}
+
+\end{release}
+
\begin{release}{0.9}{2010-02-14}
\item Added entry type \bibtype{bookinbook}\see{bib:typ:blx}