diff options
author | Karl Berry <karl@freefriends.org> | 2011-02-13 23:31:33 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2011-02-13 23:31:33 +0000 |
commit | ab5d6cd04710c0e8333450c51d13797d8d72aff0 (patch) | |
tree | c98edfaafa99e837254e2af8d769a171f012344e /Master/texmf-dist/doc/latex/biblatex/biblatex.tex | |
parent | 87c9798fd0683af80bab34cff8a68fc61579c159 (diff) |
biblatex 1.2a (13feb11)
git-svn-id: svn://tug.org/texlive/trunk@21390 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.tex | 1076 |
1 files changed, 723 insertions, 353 deletions
diff --git a/Master/texmf-dist/doc/latex/biblatex/biblatex.tex b/Master/texmf-dist/doc/latex/biblatex/biblatex.tex index a44602b0fa0..65da61c6984 100644 --- a/Master/texmf-dist/doc/latex/biblatex/biblatex.tex +++ b/Master/texmf-dist/doc/latex/biblatex/biblatex.tex @@ -1,32 +1,35 @@ -% $Id: biblatex.tex,v 1.1b 2011/02/04 11:36:21 lehman stable $ +% $Id: biblatex.tex,v 1.2a 2011/02/13 12:05:37 lehman stable $ \documentclass{ltxdockit}[2010/11/19] \usepackage{btxdockit} \usepackage[latin9]{inputenc} \usepackage[american]{babel} \usepackage[strict]{csquotes} \usepackage{tabularx} +\usepackage{longtable} \usepackage{booktabs} \usepackage{shortvrb} \MakeAutoQuote{«}{»} \MakeAutoQuote*{<}{>} \MakeShortVerb{\|} -\rcsid{$Id: biblatex.tex,v 1.1b 2011/02/04 11:36:21 lehman stable $} +\rcsid{$Id: biblatex.tex,v 1.2a 2011/02/13 12:05:37 lehman stable $} -\newcommand*{\BiblatexHome}{http://sourceforge.net/projects/biblatex/} -\newcommand*{\BiblatexOnCTAN}{http://www.ctan.org/tex-archive/macros/latex/contrib/biblatex/} +\newcommand*{\biber}{Biber\xspace} +\newcommand*{\biblatex}{Biblatex\xspace} +\newcommand*{\biblatexhome}{http://sourceforge.net/projects/biblatex/} +\newcommand*{\biblatexctan}{http://www.ctan.org/tex-archive/macros/latex/contrib/biblatex/} \titlepage{% title={The \sty{biblatex} Package}, subtitle={Programmable Bibliographies and Citations}, - url={\BiblatexHome}, + url={\biblatexhome}, author={Philipp Lehman}, email={plehman@gmx.net}, revision={\rcsrevision}, date={\rcstoday}} \hypersetup{% - pdftitle={The biblatex Package}, + pdftitle={The \biblatex Package}, pdfsubject={Programmable Bibliographies and Citations}, pdfauthor={Philipp Lehman}, pdfkeywords={tex, latex, bibtex, bibliography, references, citation}} @@ -34,23 +37,16 @@ % tables \newcolumntype{H}{>{\sffamily\bfseries\spotcolor}l} -\newcolumntype{P}{>{\raggedright}p{100pt}} -\newcolumntype{O}{>{\raggedright\ttfamily}p{40pt}} -\newcolumntype{S}{>{\raggedright\ttfamily}X} -\newcolumntype{N}{>{\sffamily\bfseries\spotcolor}r} -\newcolumntype{n}{>{\raggedleft\let\\\tabularnewline}p{50pt}} - -\providecommand*{\numtablesetup}{\tablesetup} +\newcolumntype{L}{>{\raggedright\let\\\tabularnewline}p} +\newcolumntype{R}{>{\raggedleft\let\\\tabularnewline}p} +\newcolumntype{V}{>{\raggedright\let\\\tabularnewline\ttfamily}p} \newcommand*{\sorttablesetup}{% \tablesetup - \setlength{\tabcolsep}{1pt}% - \def\new{\ensuremath\rightarrow}% - \def\alt{\ensuremath\hookrightarrow}% - \def\str##1{\mbox{\displayverbfont##1}}% - \def\altstr##1{\hfill\alt\hspace{2\tabcolsep}% - \str{##1}\hspace*{2\tabcolsep}}% - \let\fld\bibfield} + \ttfamily + \def\new{\makebox[1.25em][r]{\ensuremath\rightarrow}\,}% + \def\alt{\par\makebox[1.25em][r]{\ensuremath\hookrightarrow}\,}% + \def\note##1{\textrm{##1}}} % markup and misc @@ -76,7 +72,7 @@ \section{Introduction} \label{int} -This document is a systematic reference manual for the \sty{biblatex} package. Look at the sample documents which ship with this package to get a first impression.\fnurl{\BiblatexOnCTAN/doc/examples} +This document is a systematic reference manual for the \sty{biblatex} package. Look at the sample documents which ship with \sty{biblatex} to get a first impression.\fnurl{\biblatexctan/doc/examples} For a quick start guide, browse \secref{int:abt, bib:typ, bib:fld, bib:use, use:opt, use:xbx, use:bib, use:cit, use:use}. \subsection[About]{About \sty{biblatex}} @@ -95,7 +91,7 @@ Please use the \sty{biblatex} project page on SourceForge to report bugs and sub \subsection{Acknowledgments} -The language modules of this package include contributions by (in the order of submission): +The language modules of this package include contributions by the following contributors (in the order of submission): Ignacio Fernández Galván (Spanish), Enrico Gregorio (Italian), Johannes Wilm (Danish\slash Norwegian), @@ -183,7 +179,7 @@ The packages listed in this section are not compatible with \sty{biblatex}. Sinc \begin{marglist} -% FIXME: complete the list +% FIXME: complete list % % amsrefs % apacite @@ -266,11 +262,18 @@ An article in a journal, magazine, newspaper, or other periodical which forms a \typeitem{book} -A book with one or more authors where the authors share credit for the work as a whole. Note that this entry type also covers the function of the \bibtype{inbook} type of traditional \bibtex, see \secref{bib:use:inb} for details. +A single"=volume book with one or more authors where the authors share credit for the work as a whole. This entry type also covers the function of the \bibtype{inbook} type of traditional \bibtex, see \secref{bib:use:inb} for details. \reqitem{author, title, year/date} \optitem{editor, editora, editorb, editorc, translator, annotator, commentator, introduction, foreword, afterword, subtitle, titleaddon, maintitle, mainsubtitle, maintitleaddon, language, origlanguage, volume, part, edition, volumes, series, number, note, publisher, location, isbn, chapter, pages, pagetotal, addendum, pubstate, doi, eprint, eprintclass, eprinttype, url, urldate} +\typeitem{mvbook} + +A multi"=volume \bibtype{book}. For backwards compatibility, multi"=volume books are also supported by the entry type \bibtype{book}. However, it is advisable to make use of the dedicated entry type \bibtype{mvbook}. + +\reqitem{author, title, year/date} +\optitem{editor, editora, editorb, editorc, translator, annotator, commentator, introduction, foreword, afterword, subtitle, titleaddon, language, origlanguage, edition, volumes, series, number, note, publisher, location, isbn, pagetotal, addendum, pubstate, doi, eprint, eprintclass, eprinttype, url, urldate} + \typeitem{inbook} A part of a book which forms a self"=contained unit with its own title. Note that the profile of this entry type is different from standard \bibtex, see \secref{bib:use:inb}. @@ -280,11 +283,11 @@ A part of a book which forms a self"=contained unit with its own title. Note tha \typeitem{bookinbook} -Similar to \bibtype{inbook} but intended for items originally published as a stand-alone book. A typical example are books reprinted in the collected works of an author. +This type is similar to \bibtype{inbook} but intended for works originally published as a stand-alone book. A typical example are books reprinted in the collected works of an author. \typeitem{suppbook} -Supplemental material in a \bibtype{book}. This type is closely related to the \bibtype{inbook} entry type. While \bibtype{inbook} is primarily intended for a part of a book with its own title (\eg a single essay in a collection of essays by the same author), this type is provided for elements such as prefaces, introductions, forewords, afterwords, etc. which often have a generic title only. Style guides may require such items to be formatted differently from other \bibtype{inbook} items. The standard styles will treat this entry type as an alias of \bibtype{inbook}. +Supplemental material in a \bibtype{book}. This type is closely related to the \bibtype{inbook} entry type. While \bibtype{inbook} is primarily intended for a part of a book with its own title (\eg a single essay in a collection of essays by the same author), this type is provided for elements such as prefaces, introductions, forewords, afterwords, etc. which often have a generic title only. Style guides may require such items to be formatted differently from other \bibtype{inbook} items. The standard styles will treat this entry type as an alias for \bibtype{inbook}. \typeitem{booklet} @@ -295,11 +298,18 @@ A book"=like work without a formal publisher or sponsoring institution. Use the \typeitem{collection} -A book with multiple, self"=contained contributions by distinct authors which have their own title. The work as a whole has no overall author but it will usually have an editor. +A single"=volume collection with multiple, self"=contained contributions by distinct authors which have their own title. The work as a whole has no overall author but it will usually have an editor. \reqitem{editor, title, year/date} \optitem{editora, editorb, editorc, translator, annotator, commentator, introduction, foreword, afterword, subtitle, titleaddon, maintitle, mainsubtitle, maintitleaddon, language, origlanguage, volume, part, edition, volumes, series, number, note, publisher, location, isbn, chapter, pages, pagetotal, addendum, pubstate, doi, eprint, eprintclass, eprinttype, url, urldate} +\typeitem{mvcollection} + +A multi"=volume \bibtype{collection}. For backwards compatibility, multi"=volume collections are also supported by the entry type \bibtype{collection}. However, it is advisable to make use of the dedicated entry type \bibtype{mvcollection}. + +\reqitem{editor, title, year/date} +\optitem{editora, editorb, editorc, translator, annotator, commentator, introduction, foreword, afterword, subtitle, titleaddon, language, origlanguage, edition, volumes, series, number, note, publisher, location, isbn, pagetotal, addendum, pubstate, doi, eprint, eprintclass, eprinttype, url, urldate} + \typeitem{incollection} A contribution to a collection which forms a self"=contained unit with a distinct author and title. The \bibfield{author} refers to the \bibfield{title}, the \bibfield{editor} to the \bibfield{booktitle}, \ie the title of the collection. @@ -309,7 +319,7 @@ A contribution to a collection which forms a self"=contained unit with a distinc \typeitem{suppcollection} -Supplemental material in a \bibtype{collection}. This type is similar to \bibtype{suppbook} but related to the \bibtype{collection} entry type. The standard styles will treat this entry type as an alias of \bibtype{incollection}. +Supplemental material in a \bibtype{collection}. This type is similar to \bibtype{suppbook} but related to the \bibtype{collection} entry type. The standard styles will treat this entry type as an alias for \bibtype{incollection}. \typeitem{manual} @@ -327,7 +337,7 @@ A fallback type for entries which do not fit into any other category. Use the fi \typeitem{online} -An online resource. \bibfield{author}, \bibfield{editor}, and \bibfield{year} are omissible in terms of \secref{bib:use:key}. This entry type is intended for sources such as web sites which are intrinsicly online resources. Note that all entry types support the \bibfield{url} field. For example, when adding an article from a journal which happens to be available online, use the \bibtype{article} type and its \bibfield{url} field. +An online resource. \bibfield{author}, \bibfield{editor}, and \bibfield{year} are omissible in terms of \secref{bib:use:key}. This entry type is intended for sources such as web sites which are intrinsicly online resources. Note that all entry types support the \bibfield{url} field. For example, when adding an article from an online journal, it may be preferable to use the \bibtype{article} type and its \bibfield{url} field. \reqitem{author/editor, title, year/date, url} \optitem{subtitle, titleaddon, language, version, note, organization, date, month, year, addendum, pubstate, urldate} @@ -341,22 +351,29 @@ A patent or patent request. The number or record token is given in the \bibfield \typeitem{periodical} -An entire issue of a periodical, such as a special issue of a journal. The title of the periodical is given in the \bibfield{title} field. If the issue has its own title in addition to the main title of the periodical, it goes in the \bibfield{issuetitle} field. The \bibfield{editor} is omissible in terms of \secref{bib:use:key}. +An complete issue of a periodical, such as a special issue of a journal. The title of the periodical is given in the \bibfield{title} field. If the issue has its own title in addition to the main title of the periodical, it goes in the \bibfield{issuetitle} field. The \bibfield{editor} is omissible in terms of \secref{bib:use:key}. \reqitem{editor, title, year/date} \optitem{editora, editorb, editorc, subtitle, issuetitle, issuesubtitle, language, series, volume, number, issue, date, month, year, note, issn, addendum, pubstate, doi, eprint, eprintclass, eprinttype, url, urldate} \typeitem{suppperiodical} -Supplemental material in a \bibtype{periodical}. This type is similar to \bibtype{suppbook} but related to the \bibtype{periodical} entry type. The role of this entry type may be more obvious if you bear in mind that the \bibtype{article} type could also be called \bibtype{inperiodical}. This type may be useful when referring to items such as regular columns, obituaries, letters to the editor, etc. which only have a generic title. Style guides may require such items to be formatted differently from articles in the strict sense of the word. The standard styles will treat this entry type as an alias of \bibtype{article}. +Supplemental material in a \bibtype{periodical}. This type is similar to \bibtype{suppbook} but related to the \bibtype{periodical} entry type. The role of this entry type may be more obvious if you bear in mind that the \bibtype{article} type could also be called \bibtype{inperiodical}. This type may be useful when referring to items such as regular columns, obituaries, letters to the editor, etc. which only have a generic title. Style guides may require such items to be formatted differently from articles in the strict sense of the word. The standard styles will treat this entry type as an alias for \bibtype{article}. \typeitem{proceedings} -The proceedings of a conference. This type is similar to \bibtype{collection}. It supports an optional \bibfield{organization} field which holds the sponsoring institution. The \bibfield{editor} is omissible in terms of \secref{bib:use:key}. +A single"=volume conference proceedings. This type is very similar to \bibtype{collection}. It supports an optional \bibfield{organization} field which holds the sponsoring institution. The \bibfield{editor} is omissible in terms of \secref{bib:use:key}. \reqitem{editor, title, year/date} \optitem{subtitle, titleaddon, maintitle, mainsubtitle, maintitleaddon, eventtitle, eventdate, venue, language, volume, part, volumes, series, number, note, organization, publisher, location, month, isbn, chapter, pages, pagetotal, addendum, pubstate, doi, eprint, eprintclass, eprinttype, url, urldate} +\typeitem{mvproceedings} + +A multi"=volume \bibtype{proceedings} entry. For backwards compatibility, multi"=volume proceedings are also supported by the entry type \bibtype{proceedings}. However, it is advisable to make use of the dedicated entry type \bibtype{mvproceedings} + +\reqitem{editor, title, year/date} +\optitem{subtitle, titleaddon, eventtitle, eventdate, venue, language, volumes, series, number, note, organization, publisher, location, month, isbn, pagetotal, addendum, pubstate, doi, eprint, eprintclass, eprinttype, url, urldate} + \typeitem{inproceedings} An article in a conference proceedings. This type is similar to \bibtype{incollection}. It supports an optional \bibfield{organization} field. @@ -366,11 +383,15 @@ An article in a conference proceedings. This type is similar to \bibtype{incolle \typeitem{reference} -Works of reference such as encyclopedias and dictionaries. This is a more specific variant of the generic \bibtype{collection} entry type. The standard styles will treat this entry type as an alias of \bibtype{collection}. +A single"=volume work of reference such as an encyclopedia or a dictionary. This is a more specific variant of the generic \bibtype{collection} entry type. The standard styles will treat this entry type as an alias for \bibtype{collection}. + +\typeitem{mvreference} + +A multi"=volume \bibtype{reference} entry. The standard styles will treat this entry type as an alias for \bibtype{mvcollection}. For backwards compatibility, multi"=volume references are also supported by the entry type \bibtype{reference}. However, it is advisable to make use of the dedicated entry type \bibtype{mvreference}. \typeitem{inreference} -Articles in a work of reference. This is a more specific variant of the generic \bibtype{incollection} entry type. The standard styles will treat this entry type as an alias of \bibtype{incollection}. +An article in a work of reference. This is a more specific variant of the generic \bibtype{incollection} entry type. The standard styles will treat this entry type as an alias for \bibtype{incollection}. \typeitem{report} @@ -412,11 +433,11 @@ The entry types listed in this section are provided for backwards compatibility \typeitem{conference} -A legacy alias of \bibtype{inproceedings}. +A \bibtex legacy alias for \bibtype{inproceedings}. \typeitem{electronic} -An alias of \bibtype{online}. +An alias for \bibtype{online}. \typeitem{mastersthesis} @@ -432,24 +453,24 @@ Similar to \bibtype{report} except that the \bibfield{type} field is optional an \typeitem{www} -An alias of \bibtype{online}, provided for \sty{jurabib} compatibility. +An alias for \bibtype{online}, provided for \sty{jurabib} compatibility. \end{typelist} \subsubsection{Unsupported Types} \label{bib:typ:ctm} -The types in this section are similar to the custom types \bibtype{customa} to \bibtype{customf}, \ie they will be exported from the \file{bib} file under their proper name rather than as \bibtype{misc} entries. This may be useful in custom bibliography styles. The standard bibliography styles provide no dedicated support for these types. When using the standard styles, they will either be ignored or treated as aliases of a related generic type (see below for details). +The types in this section are similar to the custom types \bibtype{custom[a--f]}, \ie the standard bibliography styles provide no support for these types. When using the standard styles, they will be treated as \bibtype{misc} entries. \begin{typelist} \typeitem{artwork} -Works of the visual arts such as paintings, sculpture, and installations. This type is currently ignored by the standard styles. +Works of the visual arts such as paintings, sculpture, and installations. \typeitem{audio} -Audio recordings, typically on audio \acr{CD}, \acr{DVD}, audio casette, or similar media. This type is currently ignored by the standard styles. See also \bibtype{music}. +Audio recordings, typically on audio \acr{CD}, \acr{DVD}, audio casette, or similar media. See also \bibtype{music}. \typeitem{bibnote} @@ -457,55 +478,55 @@ This special entry type is not meant to be used in the \file{bib} file like othe \typeitem{commentary} -Commentaries which have a status different from regular books, such as legal commentaries. This type is currently ignored by the standard styles. +Commentaries which have a status different from regular books, such as legal commentaries. \typeitem{image} -Images, pictures, photographs, and similar media. This type is currently ignored by the standard styles. +Images, pictures, photographs, and similar media. \typeitem{jurisdiction} -Court decisions, court recordings, and similar things. This type is currently ignored by the standard styles. +Court decisions, court recordings, and similar things. \typeitem{legislation} -Laws, bills, legislative proposals, and similar things. This type is currently ignored by the standard styles. +Laws, bills, legislative proposals, and similar things. \typeitem{legal} -Legal documents such as treaties. This type is currently ignored by the standard styles. +Legal documents such as treaties. \typeitem{letter} -Personal correspondence such as letters, emails, memoranda, etc. This type is currently ignored by the standard styles. +Personal correspondence such as letters, emails, memoranda, etc. \typeitem{movie} -Motion pictures. This type is currently ignored by the standard styles. See also \bibtype{video}. +Motion pictures. See also \bibtype{video}. \typeitem{music} -Musical recordings. This is a more specific variant of \bibtype{audio}. This type is currently ignored by the standard styles. +Musical recordings. This is a more specific variant of \bibtype{audio}. \typeitem{performance} -Musical and theatrical performances as well as other works of the performing arts. This type refers to the event as opposed to a recording, a score, or a printed play. This type is currently ignored by the standard styles. +Musical and theatrical performances as well as other works of the performing arts. This type refers to the event as opposed to a recording, a score, or a printed play. \typeitem{review} -Reviews of some other work. This is a more specific variant of the \bibtype{article} type. The standard styles will treat this entry type as an alias of \bibtype{article}. +Reviews of some other work. This is a more specific variant of the \bibtype{article} type. The standard styles will treat this entry type as an alias for \bibtype{article}. \typeitem{software} -Computer software. This type is currently ignored by the standard styles. +Computer software. \typeitem{standard} -National and international standards issued by a standards body such as the International Organization for Standardization. This type is currently ignored by the standard styles. +National and international standards issued by a standards body such as the International Organization for Standardization. \typeitem{video} -Audiovisual recordings, typically on \acr{DVD}, \acr{VHS} casette, or similar media. This type is currently ignored by the standard styles. See also \bibtype{movie}. +Audiovisual recordings, typically on \acr{DVD}, \acr{VHS} casette, or similar media. See also \bibtype{movie}. \end{typelist} @@ -852,7 +873,7 @@ The name(s) of the publisher(s). See also \secref{bib:use:and}. \fielditem{pubstate}{key} -The publication state of the work, \eg <in press> or <submitted> (to a journal). Known states are \texttt{inpress} and \texttt{submitted}. +The publication state of the work, \eg <in press>. See \secref{aut:lng:key:pst} for known publication states. \fielditem{reprinttitle}{literal} @@ -949,11 +970,11 @@ The fields listed in this section do not hold printable data but serve a differe \fielditem{crossref}{entry key} -This field holds an entry key for \bibtex's cross"=referencing feature. It is used internally by \bibtex. Child entries with a \bibfield{crossref} field inherit all data from the parent entry specified in the \bibfield{crossref} field. If the number of child entries referencing a specific parent entry hits a certain threshold, the parent entry is automatically added to the bibliography even if it has not been cited explicitly. This threshold is settable on the command"=line as \bibtex is launched and defaults to 2.\footnote{Also see the \opt{mincrossrefs} package option in \secref{use:opt:pre:gen}.} Style authors should note that whether or not the \bibfield{crossref} fields of the child entries are defined on the \sty{biblatex} level depends on the availability of the parent entry. If the parent entry is available, the \bibfield{crossref} fields of the child entries will be defined. If not, the child entries still inherit the data from the parent entry but their \bibfield{crossref} fields will be undefined. Whether the parent entry is added to the bibliography implicitly because of the threshold or explicitly because it has been cited does not matter. See also \bibfield{xref}. +This field holds an entry key for the cross"=referencing feature. Child entries with a \bibfield{crossref} field inherit data from the parent entry specified in the \bibfield{crossref} field. If the number of child entries referencing a specific parent entry hits a certain threshold, the parent entry is automatically added to the bibliography even if it has not been cited explicitly. The threshold is settable with the \opt{mincrossrefs} package option from \secref{use:opt:pre:gen}. Style authors should note that whether or not the \bibfield{crossref} fields of the child entries are defined on the \sty{biblatex} level depends on the availability of the parent entry. If the parent entry is available, the \bibfield{crossref} fields of the child entries will be defined. If not, the child entries still inherit the data from the parent entry but their \bibfield{crossref} fields will be undefined. Whether the parent entry is added to the bibliography implicitly because of the threshold or explicitly because it has been cited does not matter. See also the \bibfield{xref} field in this section as well as \secref{bib:cav:ref}. \fielditem{entryset}{comma"=separated values} -This field is specific to \bibtype{set} parent entries and the child entries of the entry set. In the parent entry, it is a comma"=separated list of entry keys which make up an entry set. In the child entries, it is the entry key of the parent. See \secref{use:use:set} for details. +This field is specific to entry sets. See \secref{use:use:set} for details. \fielditem{entrysubtype}{identifier} @@ -969,7 +990,7 @@ The gender of the author or the gender of the editor, if there is no author. The \begin{table} \tablesetup -\begin{tabularx}{\columnwidth}{@{}P@{}P@{}X@{}} +\begin{tabularx}{\columnwidth}{@{}p{100pt}@{}p{100pt}@{}X@{}} \toprule \multicolumn{1}{@{}H}{Language} & \multicolumn{1}{@{}H}{Region/Dialect} & @@ -1001,7 +1022,7 @@ Swedish & Sweden & \opt{swedish} \\ \fielditem{hyphenation}{identifier} -The language of the bibliography entry. The identifier must be a language name known to the \sty{babel} package. This information may be used to switch hyphenation patterns and localize strings in the bibliography. Note that the language names are case sensitive. The languages currently supported by this package are given in \tabref{bib:fld:tab1}. Note that \sty{babel} treats the identifier \opt{english} as an alias of \opt{british} or \opt{american}, depending on the babel version. The \sty{biblatex} package always treats it as an alias of \opt{american}. It is preferable to use the language identifiers \opt{american} and \opt{british} to avoid any possible confusion. Compare \bibfield{language} in \secref{bib:fld:dat}. +The language of the bibliography entry. The identifier must be a language name known to the \sty{babel} package. This information may be used to switch hyphenation patterns and localize strings in the bibliography. Note that the language names are case sensitive. The languages currently supported by this package are given in \tabref{bib:fld:tab1}. Note that \sty{babel} treats the identifier \opt{english} as an alias for \opt{british} or \opt{american}, depending on the babel version. The \sty{biblatex} package always treats it as an alias for \opt{american}. It is preferable to use the language identifiers \opt{american} and \opt{british} to avoid any possible confusion. Compare \bibfield{language} in \secref{bib:fld:dat}. \fielditem{indexsorttitle}{literal} @@ -1045,7 +1066,7 @@ A field used to modify the sorting order of the bibliography. If present, this f \fielditem{xref}{entry key} -This field provides an alternative cross"=referencing mechanism. It differs from \bibfield{crossref} in that the child entry will not inherit any data from the parent entry specified in the \bibfield{xref} field. If the number of child entries referencing a specific parent entry hits a certain threshold, the parent entry is automatically added to the bibliography even if it has not been cited explicitly. This threshold is settable with the \opt{mincrossrefs} package option from \secref{use:opt:pre:gen}. Style authors should note that whether or not the \bibfield{xref} fields of the child entries are defined on the \sty{biblatex} level depends on the availability of the parent entry. If the parent entry is available, the \bibfield{xref} fields of the child entries will be defined. If not, their \bibfield{xref} fields will be undefined. Whether the parent entry is added to the bibliography implicitly because of the threshold or explicitly because it has been cited does not matter. Please refer to \secref{bib:cav:ref} for further explanation. See also \bibfield{crossref}. +This field is an alternative cross"=referencing mechanism. It differs from \bibfield{crossref} in that the child entry will not inherit any data from the parent entry specified in the \bibfield{xref} field. If the number of child entries referencing a specific parent entry hits a certain threshold, the parent entry is automatically added to the bibliography even if it has not been cited explicitly. The threshold is settable with the \opt{mincrossrefs} package option from \secref{use:opt:pre:gen}. Style authors should note that whether or not the \bibfield{xref} fields of the child entries are defined on the \sty{biblatex} level depends on the availability of the parent entry. If the parent entry is available, the \bibfield{xref} fields of the child entries will be defined. If not, their \bibfield{xref} fields will be undefined. Whether the parent entry is added to the bibliography implicitly because of the threshold or explicitly because it has been cited does not matter. See also the \bibfield{crossref} field in this section as well as \secref{bib:cav:ref}. \end{fieldlist} @@ -1087,35 +1108,35 @@ The aliases listed in this section are provided for backwards compatibility with \listitem{address}{literal} -An alias of \bibfield{location}, provided for \bibtex compatibility. Traditional \bibtex uses the slightly misleading field name \bibfield{address} for the place of publication, \ie the location of the publisher, while \sty{biblatex} uses the generic field name \bibfield{location}. See \secref{bib:fld:dat,bib:use:and}. +An alias for \bibfield{location}, provided for \bibtex compatibility. Traditional \bibtex uses the slightly misleading field name \bibfield{address} for the place of publication, \ie the location of the publisher, while \sty{biblatex} uses the generic field name \bibfield{location}. See \secref{bib:fld:dat,bib:use:and}. \fielditem{annote}{literal} -An alias of \bibfield{annotation}, provided for \sty{jurabib} compatibility. See \secref{bib:fld:dat}. +An alias for \bibfield{annotation}, provided for \sty{jurabib} compatibility. See \secref{bib:fld:dat}. \fielditem{archiveprefix}{literal} -An alias of \bibfield{eprinttype}, provided for arXiv compatibility. See \secref{bib:fld:dat,use:use:epr}. +An alias for \bibfield{eprinttype}, provided for arXiv compatibility. See \secref{bib:fld:dat,use:use:epr}. \fielditem{journal}{literal} -An alias of \bibfield{journaltitle}, provided for \bibtex compatibility. See \secref{bib:fld:dat}. +An alias for \bibfield{journaltitle}, provided for \bibtex compatibility. See \secref{bib:fld:dat}. \fielditem{key}{literal} -An alias of \bibfield{sortkey}, provided for \bibtex compatibility. See \secref{bib:fld:spc}. +An alias for \bibfield{sortkey}, provided for \bibtex compatibility. See \secref{bib:fld:spc}. \fielditem{pdf}{verbatim} -An alias of \bibfield{file}, provided for JabRef compatibility. See \secref{bib:fld:dat}. +An alias for \bibfield{file}, provided for JabRef compatibility. See \secref{bib:fld:dat}. \fielditem{primaryclass}{literal} -An alias of \bibfield{eprintclass}, provided for arXiv compatibility. See \secref{bib:fld:dat,use:use:epr}. +An alias for \bibfield{eprintclass}, provided for arXiv compatibility. See \secref{bib:fld:dat,use:use:epr}. \listitem{school}{literal} -An alias of \bibfield{institution}, provided for \bibtex compatibility. The \bibfield{institution} field is used by traditional \bibtex for technical reports whereas the \bibfield{school} field holds the institution associated with theses. The \sty{biblatex} package employs the generic field name \bibfield{institution} in both cases. See \secref{bib:fld:dat,bib:use:and}. +An alias for \bibfield{institution}, provided for \bibtex compatibility. The \bibfield{institution} field is used by traditional \bibtex for technical reports whereas the \bibfield{school} field holds the institution associated with theses. The \sty{biblatex} package employs the generic field name \bibfield{institution} in both cases. See \secref{bib:fld:dat,bib:use:and}. \end{fieldlist} @@ -1150,7 +1171,7 @@ The fields marked as <required> in \secref{bib:typ:blx} are not strictly require You may generally use the \bibfield{label} field to provide a substitute for any missing data required for citations. How the \bibfield{label} field is employed depends on the citation style. The author"=year citation styles which come with this package use the \bibfield{label} field as a fallback if either the \bibfield{author}\slash \bibfield{editor} or the \bibfield{year} is missing. The numeric styles, on the other hand, do not use it at all since the numeric scheme is independent of the available data. The author"=title styles ignore it as well, because the bare \bibfield{title} is usually sufficient to form a unique citation and a title is expected to be available in any case. The \bibfield{label} field may also be used to override the non"=numeric portion of the automatically generated \bibfield{labelalpha} field used by alphabetic citation styles. See \secref{aut:bbx:fld} for details. -Note that traditional \bibtex styles support a \bibfield{key} field which is used for alphabetizing if both \bibfield{author} and \bibfield{editor} are missing. The \sty{biblatex} package treats \bibfield{key} as an alias of \bibfield{sortkey}. In addition to that, it offers very fine-grained sorting controls, see \secref{bib:fld:spc, use:srt} for details. The \sty{natbib} package employs the \bibfield{key} field as a fallback label for citations. Use the \bibfield{label} field instead. +Note that traditional \bibtex styles support a \bibfield{key} field which is used for alphabetizing if both \bibfield{author} and \bibfield{editor} are missing. The \sty{biblatex} package treats \bibfield{key} as an alias for \bibfield{sortkey}. In addition to that, it offers very fine-grained sorting controls, see \secref{bib:fld:spc, use:srt} for details. The \sty{natbib} package employs the \bibfield{key} field as a fallback label for citations. Use the \bibfield{label} field instead. \subsubsection{Corporate Authors and Editors} \label{bib:use:inc} @@ -1203,7 +1224,7 @@ Legacy files which have not been updated for use with \sty{biblatex} will still The following examples demonstrate how to handle different types of titles. Let's start with a five"=volume work which is referred to as a whole: \begin{lstlisting}[style=bibtex]{} -@Book{works, +@MvBook{works, author = {Shakespeare, William}, title = {Collected Works}, volumes = {5}, @@ -1213,7 +1234,7 @@ The following examples demonstrate how to handle different types of titles. Let' The individual volumes of a multi"=volume work usually have a title of their own. Suppose the fourth volume of the \emph{Collected Works} includes Shakespeare's sonnets and we are referring to this volume only: \begin{lstlisting}[style=bibtex]{} -@Book{sonnets, +@Book{works:4, author = {Shakespeare, William}, maintitle = {Collected Works}, title = {Sonnets}, @@ -1224,7 +1245,7 @@ The individual volumes of a multi"=volume work usually have a title of their own If the individual volumes do not have a title, we put the main title in the \bibfield{title} field and include a volume number: \begin{lstlisting}[style=bibtex]{} -@Book{sonnets, +@Book{works:4, author = {Shakespeare, William}, title = {Collected Works}, volume = {4}, @@ -1417,12 +1438,79 @@ The \bibfield{pagination} and \bibfield{bookpagination} fields are key fields. T \subsection{Hints and Caveats} \label{bib:cav} -This section provides some additional hints concerning the \bibtex interface of this package. It also addresses some common problems. +This section provides some additional hints concerning the data interface of this package. It also addresses some common problems. -\subsubsection{Cross Referencing} +\subsubsection{Cross-referencing} \label{bib:cav:ref} -\bibtex's \bibfield{crossref} field provides a handy cross-referencing mechanism which inherits data missing in a child entry from the corresponding parent entry indicated by the value of the \bibfield{crossref} field. Unfortunately, this mechanism is static and uses a one-on-one field mapping. This reduces its usefulness significantly because it will cause problems in quite a few cases. For example, the \bibfield{subtitle} of a cross-referenced \bibtype{collection} entry may end up in the \bibfield{subtitle} field, rather than in the \bibfield{booksubtitle} field, of the corresponding \bibtype{incollection} child entry. It is possible to work around this problem by including an empty \bibfield{subtitle} in the child entry. This package also provides an alternative cross-referencing mechanism. The \bibfield{xref} field differs from \bibfield{crossref} in that the child entry will not inherit \emph{any} data from the parent entry specified in the \bibfield{xref} field. This implies that child entries must include all bibliographic data. The \bibfield{xref} field is merely a pointer which may be used by bibliography styles which format child entries in a special way (see \secref{aut:cav:mif} for an example). If the parent entry is referenced by a certain number of child entries, \sty{biblatex} will automatically execute the equivalent of a \cmd{nocite} command to request it from \bibtex. The threshold is controlled by the \opt{mincrossrefs} package option from \secref{use:opt:pre:gen}. Style authors should note that whether or not the \bibfield{xref} fields of the child entries are defined on the \sty{biblatex} level depends on the availability of the parent entry. If the parent entry is available, the \bibfield{xref} fields of the child entries will be defined. If not, their \bibfield{xref} fields will be undefined. Whether the parent entry is added to the bibliography implicitly because of the threshold or because it has been cited explicitly in the document does not matter. +\paragraph{The \bibfield{crossref} field (\bibtex)} +\label{bib:cav:ref:btx} + +The \bibfield{crossref} field is a convenient way to establish a parent\slash child relation between two associated entries. Unfortunately, \bibtex uses symmetric field mapping which reduces the usefulness of the \bibfield{crossref} field significantly. The are two issues with symmetric field mapping, as seen in the following example: + +\begin{lstlisting}[style=bibtex]{} +@Book{book, + <<author>> = {Author}, + <<bookauthor>> = {Author}, + <<title>> = {Booktitle}, + <<booktitle>> = {Booktitle}, + <<subtitle>> = {Booksubtitle}, + <<booksubtitle>> = {Booksubtitle}, + publisher = {Publisher}, + location = {Location}, + date = {1995}, +} +@InBook{inbook, + crossref = {book}, + title = {Title}, + <<subtitle>> = {}, + pages = {5--25}, +} +\end{lstlisting} +% +As \bibtex is not capable of mapping the \bibfield{title} field of the parent to the \bibfield{booktitle} field of the child, the title of the book needs to be given twice. The style then needs to ignore the \bibfield{booktitle} of the parent since it is only required to work around this fundamental limitation of \bibtex. The problem with the \bibfield{subtitle} field is the inverse of that. Since the \bibfield{subtitle} of the parent would become the \bibfield{subtitle}, rather than in the \bibfield{booksubtitle}, of the child, we need to add an empty \bibfield{subtitle} field to the child entry to prevent inheritance of this field. Of course we also need to duplicate the subtitle in the parent entry to ensure that it is available as \bibfield{booksubtitle} in the child entry. In short, using \bibtex's \bibfield{crossref} field tends to bloat database files and corrupt the data model. + +\paragraph{The \bibfield{crossref} field (Biber)} +\label{bib:cav:ref:bbr} + +With Biber, the limitations of \bibtex's \bibfield{crossref} field belong to the past. Biber features a highly customizable cross-referencing mechanism with flexible data inheritance rules. Duplicating certain fields in the parent entry or adding empty fields to the child entry is longer required. Entries are specified in a natural way: + +\begin{lstlisting}[style=bibtex]{} +@Book{book, + author = {Author}, + title = {Booktitle}, + subtitle = {Booksubtitle}, + publisher = {Publisher}, + location = {Location}, + date = {1995}, +} +@InBook{inbook, + crossref = {book}, + title = {Title}, + pages = {5--25}, +} +\end{lstlisting} +% +The \bibfield{title} field of the parent will be copied to the \bibfield{booktitle} field of the child, the \bibfield{subtitle} becomes the \bibfield{booksubtitle}. The \bibfield{author} of the parent becomes the \bibfield{bookauthor} of the child and, since the child does not provide an \bibfield{author} field, it is also duplicated as the \bibfield{author} of the child. After data inheritance, the child entry is similar to this: + +\begin{lstlisting}[style=bibtex]{} +author = {Author}, +bookauthor = {Author}, +title = {Title}, +booktitle = {Booktitle}, +booksubtitle = {Booksubtitle}, +publisher = {Publisher}, +location = {Location}, +date = {1995}, +pages = {5--25}, +\end{lstlisting} +% +See \apxref{apx:ref} for a list of mapping rules set up by default. Note that all of this is customizable. See \secref{aut:ctm:ref} on how to configure Biber's cross"=referencing mechanism. See also \secref{bib:fld:spc}. + +\paragraph{The \bibfield{xref} field} +\label{bib:cav:ref:ref} + +In addition to the \bibfield{crossref} field, \sty{biblatex} supports a simplified cross"=referencing mechanism based on the \bibfield{xref} field. This is useful if you want to establish a parent\slash child relation between two associated entries but prefer to keep them independent as far as the data is concerned. The \bibfield{xref} field differs from \bibfield{crossref} in that the child entry will not inherit any data from the parent. If the parent is referenced by a certain number of child entries, \sty{biblatex} will automatically add it to the bibliography. The threshold is controlled by the \opt{mincrossrefs} package option from \secref{use:opt:pre:gen}. The \bibfield{xref} field is supported with all backends. See also \secref{bib:fld:spc}. \subsubsection{Capacity Issues} \label{bib:cav:btx} @@ -1443,17 +1531,19 @@ These warning messages could indeed indicate that the entry \texttt{Jones1995} i \file{bibtex8} is a venerable tool as well and will also run out of memory with its default capacity. Switching from traditional \bibtex to \file{bibtex8} is still an improvement because the capacity of the latter may be increased at run"=time via command"=line switches and it also prints unambiguous error messages, for example: \begin{table} -\numtablesetup -\begin{tabularx}{\columnwidth}{@{}S@{}Srnnn@{}} +\tablesetup +\begin{tabularx}{\columnwidth}{@{}>{\raggedright\ttfamily}X% + @{}>{\raggedright\ttfamily}X% + rR{50pt}R{50pt}R{50pt}@{}} \toprule \multicolumn{1}{@{}H}{Parameter} & \multicolumn{1}{@{}H}{Switch} & \multicolumn{4}{@{}H}{Capacity} \\ \cmidrule{3-6} && \multicolumn{1}{@{}H}{Default} & -\multicolumn{1}{@{}N}{\texttt{-{}-big}} & -\multicolumn{1}{@{}N}{\texttt{-{}-huge}} & -\multicolumn{1}{@{}N@{}}{\texttt{-{}-wolfgang}} \\ +\multicolumn{1}{@{}>{\sffamily\bfseries\spotcolor\ttfamily}r}{-{}-big} & +\multicolumn{1}{@{}>{\sffamily\bfseries\spotcolor\ttfamily}r}{-{}-huge} & +\multicolumn{1}{@{}>{\sffamily\bfseries\spotcolor\ttfamily}r@{}}{-{}-wolfgang} \\ \cmidrule(r){1-1}\cmidrule(r){2-2}\cmidrule{3-6} max\_cites & -{}-mcites & 750 & 2000 & 5000 & 7500 \\ max\_ent\_ints & -{}-mentints & 3000 & 4000 & 5000 & 7500 \\ @@ -1467,7 +1557,7 @@ hash\_size & & 5000 & 10000 & 19000 & 35000 \\ \bottomrule \end{tabularx} \caption[Capacity of \bin{bibtex8}]{Capacity and Switches of \bin{bibtex8}} -\label{bib:cav:tab1} +\label{bib:cav:tab2} \end{table} \begin{lstlisting}[style=plain]{} @@ -1475,7 +1565,7 @@ hash\_size & & 5000 & 10000 & 19000 & 35000 \\ Sorry---you've exceeded BibTeX's total number of fields 17250 \end{lstlisting} % -\Tabref{bib:cav:tab1} gives an overview of the various capacity parameters of \file{bibtex8} and the command"=line switches used to increase their default values. There are two ways to increase the capacity on the command"=line. You may use a high"=level switch like |--huge| to select a different set of defaults or low"=level switches such as |--mfields| to modify a single parameter. The first thing you should always do is run \file{bibtex8} with the |--wolfgang| switch. Don't even bother trying anything else. With a very large database, however, even that capacity may be too small. In this case, you need to resort to the low"=level switches. Here is an example of a set of switches which should cope with a \file{bib} file containing about 1000 entries: +\Tabref{bib:cav:tab2} gives an overview of the various capacity parameters of \file{bibtex8} and the command"=line switches used to increase their default values. There are two ways to increase the capacity on the command"=line. You may use a high"=level switch like |--huge| to select a different set of defaults or low"=level switches such as |--mfields| to modify a single parameter. The first thing you should always do is run \file{bibtex8} with the |--wolfgang| switch. Don't even bother trying anything else. With a very large database, however, even that capacity may be too small. In this case, you need to resort to the low"=level switches. Here is an example of a set of switches which should cope with a \file{bib} file containing about 1000 entries: \begin{lstlisting}[style=plain]{} bibtex8 --wolfgang --mcites 30000 --mentints 30000 --mentstrs 40000 @@ -1483,7 +1573,7 @@ bibtex8 --wolfgang --mcites 30000 --mentints 30000 --mentstrs 40000 auxfile \end{lstlisting} % -When taking a closer look at \tabref{bib:cav:tab1}, you will notice that there are two parameters which can not be modified directly, |hash_prime| and |hash_size|. Increasing these values is only possible with the high"=level switches. That is why the above command includes the |--wolfgang| switch in addition to the low"=level switches. This situation is very unfortunate because the hash size effectively sets a cap on some other parameters. For example, |max_strings| can not be greater than |hash_size|. If you hit this cap, all you can do is recompile \file{bibtex8} with a larger capacity. Also note that the |wiz_fn_space| parameter is not related to the \file{bib} file but to the memory requirements of the \file{bst} file. \file{biblatex.bst} needs a value of about 6000. The value 10000 implicitly used by the |--wolfgang| switch is fine. +When taking a closer look at \tabref{bib:cav:tab2}, you will notice that there are two parameters which can not be modified directly, |hash_prime| and |hash_size|. Increasing these values is only possible with the high"=level switches. That is why the above command includes the |--wolfgang| switch in addition to the low"=level switches. This situation is very unfortunate because the hash size effectively sets a cap on some other parameters. For example, |max_strings| can not be greater than |hash_size|. If you hit this cap, all you can do is recompile \file{bibtex8} with a larger capacity. Also note that the |wiz_fn_space| parameter is not related to the \file{bib} file but to the memory requirements of the \file{bst} file. \file{biblatex.bst} needs a value of about 6000. The value 10000 implicitly used by the |--wolfgang| switch is fine. \paragraph{Biber} Biber eliminates all of the above limitations. @@ -1657,7 +1747,7 @@ This solution may be acceptable as a workaround if the data in the \file{bib} fi \subsubsection{Editors and Compiler Scripts} \label{bib:cav:ide} -This section is in the process of being rewritten to match the new script interface used by \sty{biblatex}. For the time being, see the documentation of the \sty{logreq} package\fnurl{http://www.ctan.org/tex-archive/macros/latex/contrib/logreq/} and the Biblatex Developer's Wiki for a draft spec.\fnurl{http://sourceforge.net/apps/mediawiki/biblatex/index.php?title=Workflow_Automation} +This section is in need of an update to match the new script interface used by \sty{biblatex}. For the time being, see the documentation of the \sty{logreq} package\fnurl{http://www.ctan.org/tex-archive/macros/latex/contrib/logreq/} and the Biblatex Developer's Wiki for a draft spec.\fnurl{http://sourceforge.net/apps/mediawiki/biblatex/index.php?title=Workflow_Automation} % FIXME: update! @@ -1731,7 +1821,7 @@ Using any of the <alphabetic> sorting schemes only makes sense in conjunction wi \boolitem[true]{sortcase} -Whether to sort the bibliography and the list of shorthands case"=sensitively. Note that case"=sensitive sorting is only supported by the \bin{bibtex8} and Biber backends. Sorting is always case"=insensitive with legacy \bibtex. See the \opt{backend} option for details. +Whether or not to sort the bibliography and the list of shorthands case"=sensitively. Note that case"=sensitive sorting is only supported by the \bin{bibtex8} and Biber backends. Sorting is always case"=insensitive with legacy \bibtex. See the \opt{backend} option for details. \boolitem[true]{sortupper}[\BiberOnly] @@ -1752,7 +1842,7 @@ The sorting order of the list of shorthands. The following choices are available \boolitem[false]{sortcites} -Whether to sort citations if multiple entry keys are passed to a citation command. If this option is enabled, citations are sorted according to the sorting order of the bibliography. This feature works with all citation styles. +Whether or not to sort citations if multiple entry keys are passed to a citation command. If this option is enabled, citations are sorted according to the sorting order of the bibliography. This feature works with all citation styles. \intitem[3]{maxnames} @@ -1800,33 +1890,33 @@ This option controls multilingual support. When set to \opt{auto}, \sty{biblatex \begin{table} \tablesetup -\begin{tabularx}{\columnwidth}{@{}P@{}P@{}X@{}} +\begin{tabularx}{\columnwidth}{@{}p{100pt}@{}p{100pt}@{}>{\ttfamily}X@{}} \toprule \multicolumn{1}{@{}H}{Language} & \multicolumn{1}{@{}H}{Region/Dialect} & \multicolumn{1}{@{}H}{Identifier} \\ \cmidrule(r){1-1}\cmidrule(r){2-2}\cmidrule{3-3} -Danish & Denmark & \opt{danish} \\ -Dutch & Netherlands & \opt{dutch} \\ -English & USA & \opt{american} \\ - & United Kingdom & \opt{british} \\ - & 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} \\ +Danish & Denmark & danish \\ +Dutch & Netherlands & dutch \\ +English & USA & american \\ + & United Kingdom & british \\ + & Canada & canadian \\ + & Australia & australian \\ + & New Zealand & newzealand \\ +Finnish & Finland & finnish \\ +French & France, Canada & french \\ +German & Germany & german \\ + & Austria & austrian \\ German (new) - & Germany & \opt{ngerman} \\ - & Austria & \opt{naustrian} \\ -Greek & Greece & \opt{greek} \\ -Italian & Italy & \opt{italian} \\ -Norwegian & Norway & \opt{norwegian} \\ -Portuguese& Brazil & \opt{brazilian} \\ - & Portugal & \opt{portuguese} \\ -Spanish & Spain & \opt{spanish} \\ -Swedish & Sweden & \opt{swedish} \\ + & Germany & ngerman \\ + & Austria & naustrian \\ +Greek & Greece & greek \\ +Italian & Italy & italian \\ +Norwegian & Norway & norwegian \\ +Portuguese& Brazil & brazilian \\ + & Portugal & portuguese \\ +Spanish & Spain & spanish \\ +Swedish & Sweden & swedish \\ \bottomrule \end{tabularx} \caption{Supported Languages} @@ -1889,11 +1979,11 @@ This option controls the behavior of \cmd{mkbibfootnote}, \cmd{mkbibendnote}, an \optitem[auto]{hyperref}{\opt{true}, \opt{false}, \opt{auto}} -Whether to transform citations and back references into clickable hyperlinks. This feature requires the \sty{hyperref} package. It also requires support by the selected citation style. All standard styles which ship with this package support hyperlinks. \kvopt{hyperref}{auto} automatically detects if the \sty{hyperref} package has been loaded. +Whether or not to transform citations and back references into clickable hyperlinks. This feature requires the \sty{hyperref} package. It also requires support by the selected citation style. All standard styles which ship with this package support hyperlinks. \kvopt{hyperref}{auto} automatically detects if the \sty{hyperref} package has been loaded. \boolitem[false]{backref} -Whether to print back references in the bibliography. The back references are a list of page numbers indicating the pages on which the respective bibliography entry is cited. If there are \env{refsection} environments in the document, the back references are local to the reference sections. Strictly speaking, this option only controls whether the \sty{biblatex} package collects the data required to print such references. This feature still has to be supported by the selected bibliography style. All standard styles which ship with this package do so. +Whether or not to print back references in the bibliography. The back references are a list of page numbers indicating the pages on which the respective bibliography entry is cited. If there are \env{refsection} environments in the document, the back references are local to the reference sections. Strictly speaking, this option only controls whether the \sty{biblatex} package collects the data required to print such references. This feature still has to be supported by the selected bibliography style. All standard styles which ship with this package do so. \optitem[three]{backrefstyle}{\opt{none}, \opt{three}, \opt{two}, \opt{two+}, \opt{three+}, \opt{all+}} @@ -1984,7 +2074,7 @@ This option automatically executes the \cmd{citereset} command from \secref{use: \boolitem[true]{abbreviate} -Whether to use long or abbreviated strings in citations and in the bibliography. This option affects the localization modules. If this option is enabled, key terms such as <editor> are abbreviated. If not, they are written out. +Whether or not to use long or abbreviated strings in citations and in the bibliography. This option affects the localization modules. If this option is enabled, key terms such as <editor> are abbreviated. If not, they are written out. \optitem[comp]{date}{\opt{short}, \opt{long}, \opt{terse}, \opt{comp}, \opt{iso8601}} @@ -2226,7 +2316,7 @@ This option controls the <idem> tracker which is required by the \cmd{ifciteidem \item[true] Enable the tracker in global mode. \item[false] Disable the tracker. \item[context] Enable the tracker in context"=sensitive mode. In this mode, citations in footnotes and in the body text are tracked separately. -\item[strict] This is an alias of \texttt{true}, provided only for consistency with the other trackers. Since <idem> replacements do not get ambiguous in the same way as <ibidem> or <op.~cit.>, the \texttt{strict} tracking mode does not apply to them. +\item[strict] This is an alias for \texttt{true}, provided only for consistency with the other trackers. Since <idem> replacements do not get ambiguous in the same way as <ibidem> or <op.~cit.>, the \texttt{strict} tracking mode does not apply to them. \item[constrict] This mode is similar to \opt{context} with one additional condition: a reference in a footnote will only be considered as unambiguous if the current citation and the previous citation are given in the same footnote or in immediately consecutive footnotes. \end{valuelist} @@ -2250,27 +2340,27 @@ This option controls the format of all initials generated by \sty{biblatex}. By \boolitem[false]{labelalpha} -Whether to provide the special fields \bibfield{labelalpha} and \bibfield{extraalpha}, see \secref{aut:bbx:fld} for details. +Whether or not to provide the special fields \bibfield{labelalpha} and \bibfield{extraalpha}, see \secref{aut:bbx:fld} for details. \BiberOnlyMark With Biber, this option is also settable on a per-type basis. \boolitem[false]{labelnumber} -Whether to provide the special field \bibfield{labelnumber}, see \secref{aut:bbx:fld} for details. +Whether or not to provide the special field \bibfield{labelnumber}, see \secref{aut:bbx:fld} for details. This option is also settable on a per-type basis. \boolitem[false]{labelyear} -Whether to provide the special fields \bibfield{labelyear} and \bibfield{extrayear}, see \secref{aut:bbx:fld} for details. +Whether or not to provide the special fields \bibfield{labelyear} and \bibfield{extrayear}, see \secref{aut:bbx:fld} for details. \BiberOnlyMark With Biber, this option is also settable on a per-type basis. \boolitem[false]{singletitle} -Whether to provide the data required by the \cmd{ifsingletitle} test, see \secref{aut:aux:tst} for details. +Whether or not to provide the data required by the \cmd{ifsingletitle} test, see \secref{aut:aux:tst} for details. \BiberOnlyMark With Biber, this option is also settable on a per-type basis. \optitem[false]{uniquename}{\opt{true}, \opt{false}, \opt{init}} -Whether to set the \cnt{uniquename} counter, see \secref{aut:aux:tst} for details. This feature is useful in citation styles which add initials or other parts of the name when citing different authors with the same last name. If the citation style uses initials to disambiguate names but never prints the full name in citations, set the option to \texttt{init} rather than \texttt{true}. This difference is crucial because the state of this option will also affect the \cmd{ifsingletitle} test and the \bibfield{extrayear} field. Do not set the option to \texttt{true} in citation styles which only print initials to disambiguate names. +Whether or not to set the \cnt{uniquename} counter, see \secref{aut:aux:tst} for details. This feature is useful in citation styles which add initials or other parts of the name when citing different authors with the same last name. If the citation style uses initials to disambiguate names but never prints the full name in citations, set the option to \texttt{init} rather than \texttt{true}. This difference is crucial because the state of this option will also affect the \cmd{ifsingletitle} test and the \bibfield{extrayear} field. Do not set the option to \texttt{true} in citation styles which only print initials to disambiguate names. \BiberOnlyMark With Biber, this option is also settable on a per-type basis. \end{optionlist} @@ -2380,9 +2470,9 @@ The load-time package options in \secref{use:opt:ldt} must be given in the optio \begin{ltxsyntax} -\cmditem{ExecuteBibliographyOptions}[entry type, \dots]{key=value, \dots} +\cmditem{ExecuteBibliographyOptions}[entrytype, \dots]{key=value, \dots} -This command may also be used in the configuration file to modify the default setting of a package option. Certain options are also settable on a per-type basis. In this case, the optional \prm{entry type} argument specifies the entry type. The \prm{entry type} argument may be a comma"=separated list of values. +This command may also be used in the configuration file to modify the default setting of a package option. Certain options are also settable on a per-type basis. In this case, the optional \prm{entrytype} argument specifies the entry type. The \prm{entrytype} argument may be a comma"=separated list of values. \end{ltxsyntax} @@ -2526,167 +2616,77 @@ This style prints all bibliographic data in tabular format. It is intended for d \subsection{Sorting Options} \label{use:srt} -% \fixme{update} +This package supports various sorting schemes for the bibliography. The sorting scheme is selected with the \opt{sorting} package option from \secref{use:opt:pre:gen}. Apart from the regular data fields there are also some special fields which may be used to optimize the sorting of the bibliography. \Apxref{apx:srt:a1, apx:srt:a2} give an outline of the alphabetic sorting schemes supported by \sty{biblatex}. Chronological sorting schemes are listed in \apxref{apx:srt:chr}. A few explanations concerning these schemes are in order. -\begin{table} -\sorttablesetup -\begin{tabularx}{\columnwidth}{@{}O@{}lrlrlrlrX@{}} -\toprule -\multicolumn{1}{@{}H}{Option} & \multicolumn{9}{@{}H}{Sorting scheme} \\ -\cmidrule(r){1-1}\cmidrule{2-10} -nty &\bibfield{presort}&\new&\bibfield{sortname} - &\new&\bibfield{sorttitle} - &\new&\bibfield{sortyear} - &\new&\bibfield{volume}\\ - &\altstr{mm} &\alt&\bibfield{author} - &\alt&\bibfield{title} - &\alt&\bibfield{year} - &\alt&\str{0000}\\ - & &\alt&\bibfield{editor}\\ - & &\alt&\bibfield{translator}\\ - & &\alt&\bibfield{sorttitle}\\ - & &\alt&\bibfield{title}\\ -\cmidrule(r){1-1}\cmidrule{2-10} -nyt &\bibfield{presort}&\new&\bibfield{sortname} - &\new&\bibfield{sortyear} - &\new&\bibfield{sorttitle} - &\new&\bibfield{volume}\\ - &\altstr{mm} &\alt&\bibfield{author} - &\alt&\bibfield{year} - &\alt&\bibfield{title} - &\alt&\str{0000}\\ - & &\alt&\bibfield{editor}\\ - & &\alt&\bibfield{translator}\\ - & &\alt&\bibfield{sorttitle}\\ - & &\alt&\bibfield{title}\\ -\cmidrule(r){1-1}\cmidrule{2-10} -nyvt &\bibfield{presort}&\new&\bibfield{sortname} - &\new&\bibfield{sortyear} - &\new&\bibfield{volume} - &\new&\bibfield{sorttitle}\\ - &\altstr{mm} &\alt&\bibfield{author} - &\alt&\bibfield{year} - &\alt&\str{0000} - &\alt&\bibfield{title}\\ - & &\alt&\bibfield{editor}\\ - & &\alt&\bibfield{translator}\\ - & &\alt&\bibfield{sorttitle}\\ - & &\alt&\bibfield{title}\\ -\cmidrule(r){1-1}\cmidrule{2-10} -\textrm{all} - &\bibfield{presort}&\new&\bibfield{sortkey}\\ - &\altstr{mm}\\ -\bottomrule -\end{tabularx} -\caption[Alphabetic Sorting I]{Alphabetic Sorting Schemes I} -\label{use:srt:tab1} -\end{table} - -This package supports various sorting schemes for the bibliography. The sorting scheme is selected with the \opt{sorting} package option from \secref{use:opt:pre:gen}. Apart from the regular data fields there are also some special fields which may be used to optimize the sorting of the bibliography. \Tabref{use:srt:tab1, use:srt:tab2} give an outline of the alphabetic sorting schemes supported by this package. Chronological sorting schemes are listed in \tabref{use:srt:tab3}. A few explanations concerning these tables are in order. +The first item considered in the sorting process is always the \bibfield{presort} field of the entry. If this field is undefined, \sty{biblatex} will use the default value <\texttt{mm}> as a presort string. The next item considered is the \bibfield{sortkey} field. If this field is defined, it serves as the master sort key. Apart from the \bibfield{presort} field, no further data is considered in this case. If the \bibfield{sortkey} field is undefined, sorting continues with the name. The package will try using the \bibfield{sortname}, \bibfield{author}, \bibfield{editor}, and \bibfield{translator} fields, in this order. Which fields are considered also depends on the setting of the \opt{useauthor}, \opt{useeditor}, and \opt{usetranslator} options. If all three of them are disabled, the \bibfield{sortname} field is ignored as well. Note that all name fields are responsive to the setting of the global \opt{maxnames} and \opt{minnames} options. If no name field is available, either because all of them are undefined or because \opt{useauthor}, \opt{useeditor}, and \opt{usetranslator} are disabled, \sty{biblatex} will fall back to the \bibfield{sorttitle} and \bibfield{title} fields as a last resort. The remaining items are, in various order: the \bibfield{sortyear} field, if defined, or the first four digits of the \bibfield{year} field otherwise; the \bibfield{sorttitle} field, if defined, or the \bibfield{title} field otherwise; the \bibfield{volume} field, which is padded to four digits with leading zeros, or the string \texttt{0000} otherwise. Note that the sorting schemes shown in \apxref{apx:srt:a2} include an additional item: \bibfield{labelalpha} is the label used by <alphabetic> bibliography styles. Strictly speaking, the string used for sorting is \bibfield{labelalpha}~+ \bibfield{extraalpha}. The sorting schemes in \apxref{apx:srt:a2} are intended to be used in conjunction with alphabetic styles only. -The first item considered in the sorting process is always the \bibfield{presort} field of the entry. If this field is undefined, this package will use the default value <\texttt{mm}> as a presort string. The next item considered is the \bibfield{sortkey} field. If this field is defined, it serves as the master sort key. Apart from the \bibfield{presort} field, no further data is considered in this case. If the \bibfield{sortkey} field is undefined, sorting continues with the name. The package will try using the \bibfield{sortname}, \bibfield{author}, \bibfield{editor}, and \bibfield{translator} fields, in this order. Which fields are considered also depends on the setting of the \opt{useauthor}, \opt{useeditor}, and \opt{usetranslator} options. If all three of them are disabled, the \bibfield{sortname} field is ignored as well. Note that all name fields are responsive to the setting of the global \opt{maxnames} and \opt{minnames} options. If no name field is available, either because all of them are undefined or because \opt{useauthor}, \opt{useeditor}, and \opt{usetranslator} are disabled, this package will fall back to the \bibfield{sorttitle} and \bibfield{title} fields as a last resort. The remaining items are, in various order: the \bibfield{sortyear} field, if defined, or the first four digits of the \bibfield{year} field otherwise; the \bibfield{sorttitle} field, if defined, or the \bibfield{title} field otherwise; the \bibfield{volume} field, which is padded to four digits with leading zeros, or the string \texttt{0000} otherwise. Note that the sorting schemes shown in \tabref{use:srt:tab2} include an additional item: \bibfield{labelalpha} is the label used by <alphabetic> bibliography styles. Strictly speaking, the string used for sorting is \bibfield{labelalpha}~+ \bibfield{extraalpha}. The sorting schemes in \tabref{use:srt:tab2} are intended to be used in conjunction with alphabetic styles only. - -\begin{table} -\sorttablesetup -\begin{tabularx}{\columnwidth}{@{}O@{}lrlrlrlrlrX@{}} -\toprule -\multicolumn{1}{@{}H}{Option} & \multicolumn{11}{@{}H}{Sorting scheme} \\ -\cmidrule(r){1-1}\cmidrule{2-12} -anyt &\bibfield{presort}&\new&\bibfield{labelalpha} - &\new&\bibfield{sortname} - &\new&\bibfield{sortyear} - &\new&\bibfield{sorttitle} - &\new&\bibfield{volume}\\ - &\altstr{mm} && - &\alt&\bibfield{author} - &\alt&\bibfield{year} - &\alt&\bibfield{title} - &\alt&\str{0000}\\ - & &&&\alt&\bibfield{editor}\\ - & &&&\alt&\bibfield{translator}\\ - & &&&\alt&\bibfield{sorttitle}\\ - & &&&\alt&\bibfield{title}\\ -\cmidrule(r){1-1}\cmidrule{2-12} -anyvt &\bibfield{presort}&\new&\bibfield{labelalpha} - &\new&\bibfield{sortname} - &\new&\bibfield{sortyear} - &\new&\bibfield{volume} - &\new&\bibfield{sorttitle}\\ - &\altstr{mm} && - &\alt&\bibfield{author} - &\alt&\bibfield{year} - &\alt&\str{0000} - &\alt&\bibfield{title}\\ - & &&&\alt&\bibfield{editor}\\ - & &&&\alt&\bibfield{translator}\\ - & &&&\alt&\bibfield{sorttitle}\\ - & &&&\alt&\bibfield{title}\\ -\cmidrule(r){1-1}\cmidrule{2-12} -\textrm{all} - &\bibfield{presort}&\new&\bibfield{labelalpha}&\new&\bibfield{sortkey}\\ - &\altstr{mm}\\ -\bottomrule -\end{tabularx} -\caption[Alphabetic Sorting II]{Alphabetic Sorting Schemes II} -\label{use:srt:tab2} -\end{table} - -The chronological sorting schemes presented in \tabref{use:srt:tab3} also make use of the \bibfield{presort} and \bibfield{sortkey} fields, if defined. The next item considered is the \bibfield{sortyear} or the \bibfield{year} field, depending on availability. The \opt{ynt} scheme extracts the first four Arabic figures from the field. If both fields are undefined, the string \texttt{9999} is used as a fallback value. This means that all entries without a year will be moved to the end of the list. The \opt{ydnt} scheme is similar in concept but sorts the year in descending order. As with the \opt{ynt} scheme, the string \texttt{9999} is used as a fallback value. The remaining items are similar to the alphabetic sorting schemes discussed above. Note that the \opt{ydnt} sorting scheme will only sort the date in descending order. All other items are sorted in ascending order as usual. +The chronological sorting schemes presented in \apxref{apx:srt:chr} also make use of the \bibfield{presort} and \bibfield{sortkey} fields, if defined. The next item considered is the \bibfield{sortyear} or the \bibfield{year} field, depending on availability. The \opt{ynt} scheme extracts the first four Arabic figures from the field. If both fields are undefined, the string \texttt{9999} is used as a fallback value. This means that all entries without a year will be moved to the end of the list. The \opt{ydnt} scheme is similar in concept but sorts the year in descending order. As with the \opt{ynt} scheme, the string \texttt{9999} is used as a fallback value. The remaining items are similar to the alphabetic sorting schemes discussed above. Note that the \opt{ydnt} sorting scheme will only sort the date in descending order. All other items are sorted in ascending order as usual. Using special fields such as \bibfield{sortkey}, \bibfield{sortname}, or \bibfield{sorttitle} is usually not required. The \sty{biblatex} package is quite capable of working out the desired sorting order by using the data found in the regular fields of an entry. You will only need them if you want to manually modify the sorting order of the bibliography or if any data required for sorting is missing. Please refer to the field descriptions in \secref{bib:fld:spc} for details on possible uses of the special fields. Also note that using \file{bibtex8} or Biber instead of legacy \file{bibtex} is strongly recommended. -\begin{table} -\sorttablesetup -\def\min#1#2{\str{#1\hspace{0.2em}\textminus\hspace{0.2em}}\bibfield{#2}} -\begin{tabularx}{\columnwidth}{@{}O@{}lrlrlrX@{}} -\toprule -\multicolumn{1}{@{}H}{Option} & \multicolumn{7}{@{}H}{Sorting scheme} \\ -\cmidrule(r){1-1}\cmidrule{2-8} -ynt &\bibfield{presort}&\new&\bibfield{sortyear} - &\new&\bibfield{sortname} - &\new&\bibfield{sorttitle}\\ - &\altstr{mm} &\alt&\bibfield{year} - &\alt&\bibfield{author} - &\alt&\bibfield{title}\\ - & &\alt&\str{9999} - &\alt&\bibfield{editor}\\ - & &&&\alt&\bibfield{translator}\\ - & &&&\alt&\bibfield{sorttitle}\\ - & &&&\alt&\bibfield{title}\\ -\cmidrule(r){1-1}\cmidrule{2-8} -ydnt &\bibfield{presort}&\new&\bibfield{sortyear} (desc.) - &\new&\bibfield{sortname} - &\new&\bibfield{sorttitle}\\ - &\altstr{mm} &\alt&\bibfield{year} (desc.) - &\alt&\bibfield{author} - &\alt&\bibfield{title}\\ - & &\alt&\str{9999} - &\alt&\bibfield{editor}\\ - & &&&\alt&\bibfield{translator}\\ - & &&&\alt&\bibfield{sorttitle}\\ - & &&&\alt&\bibfield{title}\\ -\cmidrule(r){1-1}\cmidrule{2-8} -\textrm{all} - &\bibfield{presort}&\new&\multicolumn{3}{l}{\bibfield{sortkey}}\\ - &\altstr{mm}\\ -\bottomrule -\end{tabularx} -\caption[Chronological Sorting]{Chronological Sorting Schemes} -\label{use:srt:tab3} -\end{table} - \subsection{Bibliography Commands} \label{use:bib} -\subsubsection{The Bibliography} -\label{use:bib:bib} +\subsubsection{Resources} +\label{use:bib:res} \begin{ltxsyntax} -\cmditem{bibliography}{bibfile,...} -\cmditem*{bibliography*}{bibfile,...} +\cmditem{addbibresource}[options]{resource} + +Adds a \prm{resource}, such as a \file{.bib} file, to the default resource list. This command is only available in the preamble. It replaces the \cmd{bibliography} legacy command. Note that files must be specified with their full name, including the extension. Do not omit the \file{.bib} extension from the filename. Also note that the \prm{resource} is a single resource. Invoke \cmd{addbibresource} multiple times to add more resources, for example: + +\begin{lstlisting}[style=latex]{} +\addbibresource{bibfile1.bib} +\addbibresource{bibfile2.bib} +\addbibresource[location=remote]{http://www.citeulike.org/bibtex/group/9517} +\addbibresource[location=remote,label=lan]{ftp://192.168.1.57/~user/file.bib} +\end{lstlisting} +% +Since the \prm{resource} string is read in a verbatim-like mode, it may contain arbitrary characters. The only restriction is that any curly braces must be balanced. The following \prm{options} are available: + +\begin{optionlist*} + +\valitem{label}{identifier} + +Assigns a label to a resource. The \prm{identifier} may be used in place of the full resource name in the optional argument of \env{refsection} (see \ref{use:bib:sec}). + +\valitem[local]{location}{location} + +The location of the resource. The \prm{location} may be either \texttt{local} for local resources or \texttt{remote} for \acr{URL}s. Remote resources require Biber. The protocols \acr{HTTP} and \acr{FTP} are supported. The remote \acr{URL} must be a fully qualified path to a \file{bib} file or a \acr{URL} which returns a \file{bib} file. + +\valitem[file]{type}{type} + +The type of resource. Currently, the only supported type is \texttt{file}. + +\valitem[bibtex]{datatype}{datatype} + +The data type (format) of the resource. The following formats are currently supported: + +\begin{valuelist} + +\item[bibtex] \bibtex format. + +\item[ris]\BiberOnlyMark Research Information Systems (\acr{RIS}) format.\fnurl{http://en.wikipedia.org/wiki/RIS_(file_format)} Note that an \texttt{ID} tag is required in all \acr{RIS} records. The \texttt{ID} value corresponds to the entry key. \acr{RIS} support is experimental. + +\end{valuelist} + +\end{optionlist*} + +\cmditem{addglobalbib}[options]{resource} + +This command differs from \cmd{addbibresource} in that the \prm{resource} is added to the global resource list. The difference between default resources and global resources is only relevant if there are reference sections in the document and the optional argument of \env{refsection} (\secref{use:bib:sec}) is used to specify alternative resources which replace the default resource list. Any global resources are added to all reference sections. + +\cmditem{addsectionbib}[options]{resource} + +This command differs from \cmd{addbibresource} in that the resource \prm{options} are registered but the \prm{resource} not added to any resource list. This is only required for resources which 1) are given exclusively in the optional argument of \env{refsection} (\ref{use:bib:sec}) and 2) require options different from the default settings. In this case, \cmd{addsectionbib} is employed to qualify the \prm{resource} prior to using it by setting the appropriate \prm{options} in the preamble. The \opt{label} option may be useful to assign a short name to the resource. + +\cmditem{bibliography}{bibfile, \dots} -This command specifies the database files. It is only available in the preamble. Its argument is a comma"=separated list of files. Note that the \file{.bib} suffix is omitted from the filename. Invoking this command multiple times to add more files is permissible. The starred version differs from the regular variant in that the files will be treated as global resources. This difference is only relevant if there are any reference sections in the document and the optional argument of \env{refsection} or \cmd{newrefsection} is used to specify alternative sources (see \ref{use:bib:sec}). In this case, the starred version will ensure that the files are added to the file list of all reference sections. In most cases, only the regular version will be used. +The legacy command for adding bibliographic resources, supported for backwards compatibility. Like \cmd{addbibresource}, this command is only available in the preamble and adds resources to the default resource list. Its argument is a comma"=separated list of \file{bib} files. The \file{.bib} extension may be omitted from the filename. Invoking this command multiple times to add more files is permissible. This command is deprecated. Please consider using \cmd{addbibresource} instead. + +\subsubsection{The Bibliography} +\label{use:bib:bib} \cmditem{printbibliography}[key=value, \dots] @@ -2740,21 +2740,21 @@ Print only entries cited in reference section \prm{integer}. The reference secti Print only entries cited in reference segment \prm{integer}. The reference segments are numbered starting at~1. All citations given outside a \env{refsegment} environment are assigned to segment~0. See \secref{use:bib:seg} for details and \secref{use:use:mlt} for usage examples. -\valitem{type}{type} +\valitem{type}{entrytype} -Print only entries whose entry type is \prm{type}. +Print only entries whose entry type is \prm{entrytype}. -\valitem{nottype}{type} +\valitem{nottype}{entrytype} -Print only entries whose entry type is not \prm{type}. This option may be used multiple times. +Print only entries whose entry type is not \prm{entrytype}. This option may be used multiple times. -\valitem{subtype}{type} +\valitem{subtype}{subtype} -Print only entries whose \bibfield{entrysubtype} is defined and \prm{type}. +Print only entries whose \bibfield{entrysubtype} is defined and \prm{subtype}. -\valitem{notsubtype}{type} +\valitem{notsubtype}{subtype} -Print only entries whose \bibfield{entrysubtype} is undefined or not \prm{type}. This option may be used multiple times. +Print only entries whose \bibfield{entrysubtype} is undefined or not \prm{subtype}. This option may be used multiple times. \valitem{keyword}{keyword} @@ -2830,34 +2830,34 @@ This command prints the list of shorthands. It takes one optional argument, whic \subsubsection{Bibliography Sections} \label{use:bib:sec} -The \env{refsection} environment is used in the document body to mark a reference section. This environment is useful if you want separate, independent bibliographies and lists of shorthands in each chapter, section, or any other part of a document. +The \env{refsection} environment is used in the document body to mark a reference section. This environment is useful if you want separate, independent bibliographies and lists of shorthands in each chapter, section, or any other part of a document. Within a reference section, all cited works are assigned labels which are local to the environment. Technically, reference sections are completely independent from document divisions such as \cmd{chapter} and \cmd{section} even though they will most likely be used per chapter or section. See the \opt{refsection} package option in \secref{use:opt:pre:gen} for a way to automate this. Also see \secref{use:use:mlt} for usage examples. \begin{ltxsyntax} -\envitem{refsection}[bibfile,...] +\envitem{refsection}[resource, \dots] -Within a reference section, all cited works are assigned labels which are local to the environment. Reference sections may have their own \file{bib} files, use the optional argument to specify them. If the argument is omitted, the reference section will use the default list of \file{bib} files, as specified with \cmd{bibliography} in the preamble. If the argument is available, the default list will be ignored. Any global \file{bib} files specified with \cmd{bibliography*} are appended to the list in any case. \env{refsection} environments may not be nested, but you may use \env{refsegment} environments within a \env{refsection} to subdivide it into segments. Use the \opt{section} option of \cmd{printbibliography} to select a section when printing the bibliography, and the corresponding option of \cmd{printshorthands} when printing the list of shorthands. Bibliography sections are numbered starting at~\texttt{1}. The number of the current section is also written to the transcript file. All citations given outside a \env{refsection} environment are assigned to section~0. If \cmd{printbibliography} is used within a \env{refsection}, it will automatically select the current section. The \opt{section} option is not required in this case. This also applies to \cmd{printshorthands}. Technically, reference sections are completely independent from document divisions such as \cmd{chapter} and \cmd{section} even though they will most likely be used per chapter or section. See the \opt{refsection} package option in \secref{use:opt:pre:gen} for a way to automate this. Also see \secref{use:use:mlt} for usage examples. +The optional argument is a comma"=separated list of resources specific to the reference section. If the argument is omitted, the reference section will use the default resource list, as specified with \cmd{addbibresource} in the preamble. If the argument is provided, it replaces the default resource list. Global resources specified with \cmd{addglobalbib} are always considered. \env{refsection} environments may not be nested, but you may use \env{refsegment} environments within a \env{refsection} to subdivide it into segments. Use the \opt{section} option of \cmd{printbibliography} to select a section when printing the bibliography, and the corresponding option of \cmd{printshorthands} when printing the list of shorthands. Bibliography sections are numbered starting at~\texttt{1}. The number of the current section is also written to the transcript file. All citations given outside a \env{refsection} environment are assigned to section~0. If \cmd{printbibliography} is used within a \env{refsection}, it will automatically select the current section. The \opt{section} option is not required in this case. This also applies to \cmd{printshorthands}. -\cmditem{newrefsection}[bibfile,...] +\cmditem{newrefsection}[resource, \dots] -This command is similar to the \env{refsection} environment except that it is a stand"=alone command rather than an environment. It automatically ends the previous reference section (if any) and immediately starts a new one. Note that the reference section started by the last \cmd{newrefsection} command in the document will extend to the very end of the document. Use \cmd{endrefsection} if you want to terminate it earlier. Also see the \opt{refsection} package option in \secref{use:opt:pre:gen}. +This command is similar to the \env{refsection} environment except that it is a stand"=alone command rather than an environment. It automatically ends the previous reference section (if any) and immediately starts a new one. Note that the reference section started by the last \cmd{newrefsection} command in the document will extend to the very end of the document. Use \cmd{endrefsection} if you want to terminate it earlier. \end{ltxsyntax} \subsubsection{Bibliography Segments} \label{use:bib:seg} -The \env{refsegment} environment is used in the document body to mark a reference segment. This environment is useful if you want one global bibliography which is subdivided by chapter, section, or any other part of the document. +The \env{refsegment} environment is used in the document body to mark a reference segment. This environment is useful if you want one global bibliography which is subdivided by chapter, section, or any other part of the document. Technically, reference segments are completely independent from document divisions such as \cmd{chapter} and \cmd{section} even though they will typically be used per chapter or section. See the \opt{refsegment} package option in \secref{use:opt:pre:gen} for a way to automate this. Also see \secref{use:use:mlt} for usage examples. \begin{ltxsyntax} \envitem{refsegment} -The difference between a \env{refsection} and a \env{refsegment} environment is that the former creates labels which are local to the environment whereas the latter provides a target for the \opt{segment} filter of \cmd{printbibliography} without affecting the labels. They will be unique across the entire document. \env{refsegment} environments may not be nested, but you may use them in conjunction with \env{refsection} to subdivide a reference section into segments. In this case, the segments are local to the enclosing \env{refsection} environment. Use the \env{refsegment} option of \cmd{printbibliography} to select a segment when printing the bibliography. The reference segments are numbered starting at~\texttt{1} and the number of the current segment will be written to the transcript file. All citations given outside a \env{refsegment} environment are assigned to segment~0. In contrast to the \env{refsection} environment, the current segment is not selected automatically if \cmd{printbibliography} is used within a \env{refsegment} environment. Technically, reference segments are completely independent from document divisions such as \cmd{chapter} and \cmd{section} even though they will typically be used per chapter or section. See the \opt{refsegment} package option in \secref{use:opt:pre:gen} for a way to automate this. Also see \secref{use:use:mlt} for usage examples. +The difference between a \env{refsection} and a \env{refsegment} environment is that the former creates labels which are local to the environment whereas the latter provides a target for the \opt{segment} filter of \cmd{printbibliography} without affecting the labels. They will be unique across the entire document. \env{refsegment} environments may not be nested, but you may use them in conjunction with \env{refsection} to subdivide a reference section into segments. In this case, the segments are local to the enclosing \env{refsection} environment. Use the \env{refsegment} option of \cmd{printbibliography} to select a segment when printing the bibliography. The reference segments are numbered starting at~\texttt{1} and the number of the current segment will be written to the transcript file. All citations given outside a \env{refsegment} environment are assigned to segment~0. In contrast to the \env{refsection} environment, the current segment is not selected automatically if \cmd{printbibliography} is used within a \env{refsegment} environment. \csitem{newrefsegment} -This command is similar to the \env{refsegment} environment except that it is a stand"=alone command rather than an environment. It automatically ends the previous reference segment (if any) and immediately starts a new one. Note that the reference segment started by the last \cmd{newrefsegment} command will extend to the end of the document. Use \cmd{endrefsegment} if you want to terminate it earlier. Also see the \opt{refsegment} package option in \secref{use:opt:pre:gen}. +This command is similar to the \env{refsegment} environment except that it is a stand"=alone command rather than an environment. It automatically ends the previous reference segment (if any) and immediately starts a new one. Note that the reference segment started by the last \cmd{newrefsegment} command will extend to the end of the document. Use \cmd{endrefsegment} if you want to terminate it earlier. \end{ltxsyntax} @@ -2980,13 +2980,13 @@ Defines the custom bibliography filter \prm{name}, to be used via the \opt{filte Matches all entries cited in reference segment \prm{integer}. -\valitem{type}{type} +\valitem{type}{entrytype} -Matches all entries whose entry type is \prm{type}. +Matches all entries whose entry type is \prm{entrytype}. -\valitem{subtype}{type} +\valitem{subtype}{subtype} -Matches all entries whose \bibfield{entrysubtype} is \prm{type}. +Matches all entries whose \bibfield{entrysubtype} is \prm{subtype}. \valitem{keyword}{keyword} @@ -3283,7 +3283,7 @@ Similar to \cmd{fullcite} but puts the entire citation in a footnote and adds a \cmditem{volcite}[prenote]{volume}[page]{key} \cmditem{Volcite}[prenote]{volume}[page]{key} -These commands are similar to \cmd{cite} and \cmd{Cite} but intended for references to multi-volume works which are cited by volume and page number. Instead of the \prm{postnote}, they take a mandatory \prm{volume} and an optional \prm{page} argument. Since they merely compose the postnote and pass it to the \cmd{cite} command provided by the citation style as a \prm{postnote} argument, these commands are style independent. +These commands are similar to \cmd{cite} and \cmd{Cite} but intended for references to multi"=volume works which are cited by volume and page number. Instead of the \prm{postnote}, they take a mandatory \prm{volume} and an optional \prm{page} argument. Since they merely compose the postnote and pass it to the \cmd{cite} command provided by the citation style as a \prm{postnote} argument, these commands are style independent. \cmditem{pvolcite}[prenote]{volume}[page]{key} \cmditem{Pvolcite}[prenote]{volume}[page]{key} @@ -3430,7 +3430,7 @@ Note that the \texttt{mcite} module is not a compatibility module. It provides c \begin{table} \tablesetup -\begin{tabular*}{\linewidth}{@{}p{0.5\linewidth}@{}p{0.5\linewidth}@{}} +\begin{tabular}{@{}V{0.5\textwidth}@{}V{0.5\textwidth}@{}} \toprule \multicolumn{1}{@{}H}{Standard Command} & \multicolumn{1}{@{}H}{\sty{mcite}-like Command} \\ @@ -3445,7 +3445,7 @@ Note that the \texttt{mcite} module is not a compatibility module. It provides c |\Textcite| & |\Mtextcite| \\ |\supercite| & |\msupercite| \\ \bottomrule -\end{tabular*} +\end{tabular} \caption{\sty{mcite}-like commands} \label{use:cit:mct:tab1} \end{table} @@ -3464,7 +3464,7 @@ Once defined, an entry set is handled like any regular entry in a \file{bib} fil \begin{table} \tablesetup -\begin{tabular*}{\linewidth}{@{}p{0.5\linewidth}@{}>{\ttfamily}p{0.15\linewidth}@{}p{0.35\linewidth}@{}} +\begin{tabular}{@{}V{0.5\textwidth}@{}V{0.1\textwidth}@{}p{0.4\textwidth}@{}} \toprule \multicolumn{1}{@{}H}{Input} & \multicolumn{1}{@{}H}{Output} & @@ -3477,7 +3477,7 @@ Once defined, an entry set is handled like any regular entry in a \file{bib} fil |\mcite{glashow}| & [1a] & Citing a set member \\ |\cite{weinberg}| & [1c] & Regular |\cite| works as well \\ \bottomrule -\end{tabular*} +\end{tabular} \caption[\sty{mcite}-like syntax] {\sty{mcite}-like syntax (sample output with \kvopt{style}{numeric} and \opt{subentry} option)} \label{use:cit:mct:tab2} @@ -3879,7 +3879,7 @@ The American localization module uses \cmd{uspunctuation} from \secref{aut:pct:c % By default, the <American punctuation> feature is enabled by the \texttt{american} localization module only. The above code is only required if you want American localization without American punctuation. Since standard punctuation is the package default, it would be redundant with any other language. -It is highly advisable to always specify \texttt{american}, \texttt{british}, \texttt{australian}, etc. rather than \texttt{english} when loading the \sty{babel} package to avoid any possible confusion. Older versions of the \sty{babel} package used to treat \opt{english} as an alias of \opt{british}; more recent ones treat it as an alias of \opt{american}. The biblatex package essentially treats \texttt{english} as an alias of \opt{american}, except for the above feature which is only enabled if \texttt{american} is requested explicitly. +It is highly advisable to always specify \texttt{american}, \texttt{british}, \texttt{australian}, etc. rather than \texttt{english} when loading the \sty{babel} package to avoid any possible confusion. Older versions of the \sty{babel} package used to treat \opt{english} as an alias for \opt{british}; more recent ones treat it as an alias for \opt{american}. The biblatex package essentially treats \texttt{english} as an alias for \opt{american}, except for the above feature which is only enabled if \texttt{american} is requested explicitly. \subsubsection{Spanish} \label{use:loc:esp} @@ -3922,12 +3922,12 @@ The following sections give a basic overview of the \sty{biblatex} package and d \subsubsection{Overview} \label{use:use:int} -Using the \sty{biblatex} package is only slightly different from using traditional \bibtex styles and related packages. Before we get to specific usage scenarios, we will therefore have a look at the structure of a typical document first: +Using the \sty{biblatex} package is slightly different from using traditional \bibtex styles and related packages. Before we get to specific usage scenarios, we will therefore have a look at the structure of a typical document first: \begin{ltxexample} \documentclass{...} \usepackage[...]{biblatex} -<<\bibliography>>{bibfile} +<<\addbibresource>>{<<bibfile.bib>>} \begin{document} <<\cite>>{...} ... @@ -3935,7 +3935,7 @@ Using the \sty{biblatex} package is only slightly different from using tradition \end{document} \end{ltxexample} % -With traditional \bibtex, the \cmd{bibliography} command serves two purposes. It marks the location of the bibliography and it also specifies the \file{bib} file, which may be a single file or a comma"=separated list of files. The file extension is omitted in either case. With \sty{biblatex}, this command only specifies the \file{bib} files and is used in the document preamble rather than in the body. It does not print anything. The bibliography is printed using the \cmd{printbibliography} command which may be used multiple times (see \secref{use:bib} for details). The document body may contain any number of citation commands (\secref{use:cit}). Processing this example file requires that a certain procedure be followed. Suppose our example file is called \path{example.tex} and our bibliographic data is in \path{bibfile.bib}. The procedure, then, is as follows: +With traditional \bibtex, the \cmd{bibliography} command serves two purposes. It marks the location of the bibliography and it also specifies the \file{bib} file(s). The file extension is omitted. With \sty{biblatex}, resources are specified in the preamble with \cmd{addbibresource} using the full name with \file{.bib} suffix. The bibliography is printed using the \cmd{printbibliography} command which may be used multiple times (see \secref{use:bib} for details). The document body may contain any number of citation commands (\secref{use:cit}). Processing this example file requires that a certain procedure be followed. Suppose our example file is called \path{example.tex} and our bibliographic data is in \path{bibfile.bib}. The procedure, then, is as follows: \begin{enumerate} @@ -3982,7 +3982,7 @@ In a collection of articles by different authors, such as a conference proceedin \begin{ltxexample} \documentclass{...} \usepackage{biblatex} -\bibliography{...} +\addbibresource{...} \begin{document} \chapter{...} <<\begin{refsection}>> @@ -4004,7 +4004,7 @@ If \cmd{printbibliography} is used inside a \env{refsection} environment, it aut \usepackage{biblatex} <<\defbibheading>>{<<subbibliography>>}{% \section*{References for Chapter \ref{<<refsection:\therefsection>>}}} -\bibliography{...} +\addbibresource{...} \begin{document} \chapter{...} <<\begin{refsection}>> @@ -4042,7 +4042,7 @@ When using a format with one cumulative bibliography subdivided by chapter (or a \usepackage{biblatex} <<\defbibheading>>{<<subbibliography>>}{% \section*{References for Chapter \ref{<<refsegment:\therefsegment>>}}} -\bibliography{...} +\addbibresource{...} \begin{document} \chapter{...} <<\begin{refsegment}>> @@ -4075,7 +4075,7 @@ It is very common to subdivide a bibliography by certain criteria. For example, \begin{ltxexample} \documentclass{...} \usepackage{biblatex} -\bibliography{...} +\addbibresource{...} \begin{document} ... \printbibheading @@ -4106,7 +4106,7 @@ This would print all works cited in reference section~2 whose entry type is \bib \begin{ltxexample} \documentclass{...} \usepackage{biblatex} -\bibliography{...} +\addbibresource{...} \begin{document} ... \printbibheading @@ -4141,7 +4141,7 @@ An alternative way of subdividing the list of references are bibliography catego <<\DeclareBibliographyCategory>>{<<secondary>>} <<\addtocategory>>{<<primary>>}{key1,key3,key6} <<\addtocategory>>{<<secondary>>}{key2,key4,key5} -\bibliography{...} +\addbibresource{...} \begin{document} ... \printbibheading @@ -4170,7 +4170,7 @@ It is still a good idea to declare all categories used in the bibliography expli \addtocategory{secondary}{key2,key4,key5} <<\defbibheading>>{<<primary>>}{\section*{Primary Sources}} <<\defbibheading>>{<<secondary>>}{\section*{Secondary Sources}} -\bibliography{...} +\addbibresource{...} \begin{document} ... \printbibheading @@ -4261,7 +4261,7 @@ eprinttype = {arxiv}, <<eprintclass>> = {<<cs.DS>>}, \end{lstlisting} % -There are two aliases which ease the integration of arXiv entries. \bibfield{archiveprefix} is treated as an alias of \bibfield{eprinttype}; \bibfield{primaryclass} is an alias of \bibfield{eprintclass}. If hyperlinks are enabled, the eprint identifier will be transformed into a link to \nolinkurl{arxiv.org}. See the package option \opt{arxiv} in \secref{use:opt:pre:gen} for further details. +There are two aliases which ease the integration of arXiv entries. \bibfield{archiveprefix} is treated as an alias for \bibfield{eprinttype}; \bibfield{primaryclass} is an alias for \bibfield{eprintclass}. If hyperlinks are enabled, the eprint identifier will be transformed into a link to \nolinkurl{arxiv.org}. See the package option \opt{arxiv} in \secref{use:opt:pre:gen} for further details. For \acr{JSTOR} references, put the stable \acr{JSTOR} number in the \bibfield{eprint} field and the string \texttt{jstor} in the \bibfield{eprinttype} field: @@ -4545,12 +4545,12 @@ The \sty{biblatex} package supports citations in any arbitrary format, hence cit % 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}: +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. That is why \sty{biblatex} takes a different approach. First of all, the document structure is slightly different. Instead of using \cmd{bibliography} in the document body, database files are specified in the preamble with \cmd{addbibresource}, \cmd{bibliographystyle} is omitted entirely (all features are controlled by package options), and the bibliography is printed using \cmd{printbibliography}: \begin{ltxexample} \documentclass{...} \usepackage[...]{biblatex} -\bibliography{...} +\addbibresource{...} \begin{document} \cite{...} ... @@ -4602,7 +4602,7 @@ With \sty{biblatex}, this entry is essentially exported in the following format: \endentry \end{lstlisting} % -As you can see, the data is presented in a structured format that resembles the structure of a \file{bib} file to some extent. At this point, no decision concerning the final format of the bibliography entry has been made. The formatting of the bibliography and all citations is controlled by \latex macros, which are defined in bibliography and citation style files. +As seen in this example, the data is presented in a structured format that resembles the structure of a \file{bib} file to some extent. At this point, no decision concerning the final format of the bibliography entry has been made. The formatting of the bibliography and all citations is controlled by \latex macros, which are defined in bibliography and citation style files. \subsection{Bibliography Styles} \label{aut:bbx} @@ -4646,13 +4646,13 @@ This command is optional and intended for specialized bibliography styles built Specifies arbitrary \prm{code} to be inserted at the beginning of the bibliography, but inside the group formed by the bibliography. This command is optional. It may be useful for definitions which are shared by several bibliography drivers but not used outside the bibliography. Keep in mind that there may be several bibliographies in a document. If the bibliography drivers make any global assignments, they should be reset at the beginning of the next bibliography. -\cmditem{DeclareBibliographyDriver}{type}{code} +\cmditem{DeclareBibliographyDriver}{entrytype}{code} -Defines a bibliography driver. A <driver> is a macro which handles a specific entry type. The \prm{type} corresponds to the entry type used in \file{bib} files, specified in lowercase letters (see \secref{bib:typ}). The type \texttt{shorthands} has a special meaning. The \texttt{shorthands} driver handles all entries in the list of shorthands. The \prm{type} argument may also be an asterisk. In this case, the driver serves as a fallback which is used if no specific driver for the entry type has been defined. The \prm{code} is arbitrary code which typesets all bibliography entries of the respective \prm{type}. This command is mandatory. Every bibliography style should provide a driver for each entry type. +Defines a bibliography driver. A <driver> is a macro which handles a specific entry type. The \prm{entrytype} corresponds to the entry type used in \file{bib} files, specified in lowercase letters (see \secref{bib:typ}). The type \texttt{shorthands} has a special meaning. The \texttt{shorthands} driver handles all entries in the list of shorthands. The \prm{entrytype} argument may also be an asterisk. In this case, the driver serves as a fallback which is used if no specific driver for the entry type has been defined. The \prm{code} is arbitrary code which typesets all bibliography entries of the respective \prm{entrytype}. This command is mandatory. Every bibliography style should provide a driver for each entry type. -\cmditem{DeclareBibliographyAlias}{alias}{type} +\cmditem{DeclareBibliographyAlias}{alias}{entrytype} -If a bibliography driver covers more than one entry type, this command may be used to define an alias. This command is optional. The \prm{type} argument may also be an asterisk. In this case, the alias serves as a fallback which is used if no specific driver for the entry type has been defined. +If a bibliography driver covers more than one entry type, this command may be used to define an alias. This command is optional. The \prm{entrytype} argument may also be an asterisk. In this case, the alias serves as a fallback which is used if no specific driver for the entry type has been defined. \cmditem{DeclareBibliographyOption}{key}[value]{code} @@ -5082,7 +5082,7 @@ Specifies arbitrary \prm{code} required for a partial reset of the citation styl \cmditem{DeclareCiteCommand}{command}[wrapper]{precode}{loopcode}{sepcode}{postcode} \cmditem*{DeclareCiteCommand*}{command}[wrapper]{precode}{loopcode}{sepcode}{postcode} -This is the core command used to define all citation commands. It takes one optional and five mandatory arguments. The \prm{command} is the command to be defined, for example \cmd{cite}. If the optional \prm{wrapper} argument is given, the entire citation will be passed to the \prm{wrapper} as an argument, \ie the wrapper command must take one mandatory argument.\footnote{Typical examples of wrapper commands are \cmd{mkbibparens} and \cmd{mkbibfootnote}.} The \prm{precode} is arbitrary code to be executed at the beginning of the citation. It will typically handle the \prm{prenote} argument which is available in the \bibfield{prenote} field. It may also be used to initialize macros required by the \prm{loopcode}. The \prm{loopcode} is arbitrary code to be executed for each entry key passed to the \prm{command}. This is the core code which prints the citation labels or any other data. The \prm{sepcode} is arbitrary code to be executed after each iteration of the \prm{loopcode}. It will only be executed if a list of entry keys is passed to the \prm{command}. The \prm{sepcode} will usually insert some kind of separator, such as a comma or a semicolon. The \prm{postcode} is arbitrary code to be executed at the end of the citation. The \prm{postcode} will typically handle the \prm{postnote} argument which is available in the \bibfield{postnote} field.\footnote{The bibliographic data available to the \prm{loopcode} is the data of the entry currently being processed. In addition to that, the data of the first entry is available to the \prm{precode} and the data of the last one is available to the \prm{postcode}. <First> and <last> refer to the order in which the citations are printed. If the \opt{sortcites} package option is active, this is the order of the list after sorting. Note that no bibliographic data is available to the \prm{sepcode}.} The starred variant of \cmd{DeclareCiteCommand} defines a starred \prm{command}. For example, |\DeclareCiteCommand*{cite}| would define |\cite*|.\footnote{Note that the regular variant of \cmd{DeclareCiteCommand} defines a starred version of the \prm{command} implicitly, unless the starred version has been defined before. This is intended as a fallback. The implicit definition is an alias of the regular variant.} +This is the core command used to define all citation commands. It takes one optional and five mandatory arguments. The \prm{command} is the command to be defined, for example \cmd{cite}. If the optional \prm{wrapper} argument is given, the entire citation will be passed to the \prm{wrapper} as an argument, \ie the wrapper command must take one mandatory argument.\footnote{Typical examples of wrapper commands are \cmd{mkbibparens} and \cmd{mkbibfootnote}.} The \prm{precode} is arbitrary code to be executed at the beginning of the citation. It will typically handle the \prm{prenote} argument which is available in the \bibfield{prenote} field. It may also be used to initialize macros required by the \prm{loopcode}. The \prm{loopcode} is arbitrary code to be executed for each entry key passed to the \prm{command}. This is the core code which prints the citation labels or any other data. The \prm{sepcode} is arbitrary code to be executed after each iteration of the \prm{loopcode}. It will only be executed if a list of entry keys is passed to the \prm{command}. The \prm{sepcode} will usually insert some kind of separator, such as a comma or a semicolon. The \prm{postcode} is arbitrary code to be executed at the end of the citation. The \prm{postcode} will typically handle the \prm{postnote} argument which is available in the \bibfield{postnote} field.\footnote{The bibliographic data available to the \prm{loopcode} is the data of the entry currently being processed. In addition to that, the data of the first entry is available to the \prm{precode} and the data of the last one is available to the \prm{postcode}. <First> and <last> refer to the order in which the citations are printed. If the \opt{sortcites} package option is active, this is the order of the list after sorting. Note that no bibliographic data is available to the \prm{sepcode}.} The starred variant of \cmd{DeclareCiteCommand} defines a starred \prm{command}. For example, |\DeclareCiteCommand*{cite}| would define |\cite*|.\footnote{Note that the regular variant of \cmd{DeclareCiteCommand} defines a starred version of the \prm{command} implicitly, unless the starred version has been defined before. This is intended as a fallback. The implicit definition is an alias for the regular variant.} \cmditem{DeclareMultiCiteCommand}{command}[wrapper]{cite}{delimiter} @@ -5228,20 +5228,20 @@ This section introduces the commands used to define the formatting directives re \begin{ltxsyntax} -\cmditem{DeclareFieldFormat}[entry type, \dots]{format}{code} +\cmditem{DeclareFieldFormat}[entrytype, \dots]{format}{code} \cmditem*{DeclareFieldFormat}*{format}{code} -Defines the field format \prm{format}. This formatting directive is arbitrary \prm{code} to be executed by \cmd{printfield}. The value of the field will be passed to the \prm{code} as its first and only argument. The name of the field currently being processed is available to the \prm{code} as \cmd{currentfield}. If an \prm{entry type} is specified, the format is specific to that type. The \prm{entry type} argument may be a comma"=separated list of values. The starred variant of this command is similar to the regular version, except that all type-specific formats are cleared. +Defines the field format \prm{format}. This formatting directive is arbitrary \prm{code} to be executed by \cmd{printfield}. The value of the field will be passed to the \prm{code} as its first and only argument. The name of the field currently being processed is available to the \prm{code} as \cmd{currentfield}. If an \prm{entrytype} is specified, the format is specific to that type. The \prm{entrytype} argument may be a comma"=separated list of values. The starred variant of this command is similar to the regular version, except that all type-specific formats are cleared. -\cmditem{DeclareListFormat}[entry type, \dots]{format}{code} +\cmditem{DeclareListFormat}[entrytype, \dots]{format}{code} \cmditem*{DeclareListFormat}*{format}{code} -Defines the literal list format \prm{format}. This formatting directive is arbitrary \prm{code} to be executed for every item in a list processed by \cmd{printlist}. The current item will be passed to the \prm{code} as its first and only argument. The name of the literal list currently being processed is available to the \prm{code} as \cmd{currentlist}. If an \prm{entry type} is specified, the format is specific to that type. The \prm{entry type} argument may be a comma"=separated list of values. Note that the formatting directive also handles the punctuation to be inserted between the individual items in the list. You need to check whether you are in the middle of or at the end of the list, \ie whether \cnt{listcount} is smaller than or equal to \cnt{liststop}. The starred variant of this command is similar to the regular version, except that all type-specific formats are cleared. +Defines the literal list format \prm{format}. This formatting directive is arbitrary \prm{code} to be executed for every item in a list processed by \cmd{printlist}. The current item will be passed to the \prm{code} as its first and only argument. The name of the literal list currently being processed is available to the \prm{code} as \cmd{currentlist}. If an \prm{entrytype} is specified, the format is specific to that type. The \prm{entrytype} argument may be a comma"=separated list of values. Note that the formatting directive also handles the punctuation to be inserted between the individual items in the list. You need to check whether you are in the middle of or at the end of the list, \ie whether \cnt{listcount} is smaller than or equal to \cnt{liststop}. The starred variant of this command is similar to the regular version, except that all type-specific formats are cleared. -\cmditem{DeclareNameFormat}[entry type, \dots]{format}{code} +\cmditem{DeclareNameFormat}[entrytype, \dots]{format}{code} \cmditem*{DeclareNameFormat}*{format}{code} -Defines the name list format \prm{format}. This formatting directive is arbitrary \prm{code} to be executed for every name in a list processed by \cmd{printnames}. If an \prm{entry type} is specified, the format is specific to that type. The \prm{entry type} argument may be a comma"=separated list of values. The individual parts of a name will be passed to the \prm{code} as separate arguments. These arguments are as follows: +Defines the name list format \prm{format}. This formatting directive is arbitrary \prm{code} to be executed for every name in a list processed by \cmd{printnames}. If an \prm{entrytype} is specified, the format is specific to that type. The \prm{entrytype} argument may be a comma"=separated list of values. The individual parts of a name will be passed to the \prm{code} as separate arguments. These arguments are as follows: \begin{argumentlist}{00} \item[\#1] The last names. If a name consists of a single part only (for example, <Aristotle>), this part will be treated as the last name. @@ -5257,44 +5257,44 @@ Note that name affixes are referred to as the <junior part> of the name in the \ % If a certain part of a name is not available, the corresponding argument will be empty, hence you may use \cmd{ifblank} tests to check for the inidividual parts of a name. The name of the name list currently being processed is available to the \prm{code} as \cmd{currentname}. All initials are sensitive to the \opt{terseinits} package option, see \secref{use:opt:pre:gen} for details. Note that the formatting directive also handles the punctuation to be inserted between separate names and between the individual parts of a name. You need to check whether you are in the middle of or at the end of the list, \ie whether \cnt{listcount} is smaller than or equal to \cnt{liststop}. The starred variant of this command is similar to the regular version, except that all type-specific formats are cleared. -\cmditem{DeclareIndexFieldFormat}[entry type, \dots]{format}{code} +\cmditem{DeclareIndexFieldFormat}[entrytype, \dots]{format}{code} \cmditem*{DeclareIndexFieldFormat}*{format}{code} -Defines the field format \prm{format}. This formatting directive is arbitrary \prm{code} to be executed by \cmd{indexfield}. The value of the field will be passed to the \prm{code} as its first and only argument. The name of the field currently being processed is available to the \prm{code} as \cmd{currentfield}. If an \prm{entry type} is specified, the format is specific to that type. The \prm{entry type} argument may be a comma"=separated list of values. This command is similar to \cmd{DeclareFieldFormat} except that the data handled by the \prm{code} is not intended to be printed but written to the index. Note that \cmd{indexfield} will execute the \prm{code} as is, \ie the \prm{code} must include \cmd{index} or a similar command. The starred variant of this command is similar to the regular version, except that all type-specific formats are cleared. +Defines the field format \prm{format}. This formatting directive is arbitrary \prm{code} to be executed by \cmd{indexfield}. The value of the field will be passed to the \prm{code} as its first and only argument. The name of the field currently being processed is available to the \prm{code} as \cmd{currentfield}. If an \prm{entrytype} is specified, the format is specific to that type. The \prm{entrytype} argument may be a comma"=separated list of values. This command is similar to \cmd{DeclareFieldFormat} except that the data handled by the \prm{code} is not intended to be printed but written to the index. Note that \cmd{indexfield} will execute the \prm{code} as is, \ie the \prm{code} must include \cmd{index} or a similar command. The starred variant of this command is similar to the regular version, except that all type-specific formats are cleared. -\cmditem{DeclareIndexListFormat}[entry type, \dots]{format}{code} +\cmditem{DeclareIndexListFormat}[entrytype, \dots]{format}{code} \cmditem*{DeclareIndexListFormat}*{format}{code} -Defines the literal list format \prm{format}. This formatting directive is arbitrary \prm{code} to be executed for every item in a list processed by \cmd{indexlist}. The current item will be passed to the \prm{code} as its only argument. The name of the literal list currently being processed is available to the \prm{code} as \cmd{currentlist}. If an \prm{entry type} is specified, the format is specific to that type. The \prm{entry type} argument may be a comma"=separated list of values. This command is similar to \cmd{DeclareListFormat} except that the data handled by the \prm{code} is not intended to be printed but written to the index. Note that \cmd{indexlist} will execute the \prm{code} as is, \ie the \prm{code} must include \cmd{index} or a similar command. The starred variant of this command is similar to the regular version, except that all type-specific formats are cleared. +Defines the literal list format \prm{format}. This formatting directive is arbitrary \prm{code} to be executed for every item in a list processed by \cmd{indexlist}. The current item will be passed to the \prm{code} as its only argument. The name of the literal list currently being processed is available to the \prm{code} as \cmd{currentlist}. If an \prm{entrytype} is specified, the format is specific to that type. The \prm{entrytype} argument may be a comma"=separated list of values. This command is similar to \cmd{DeclareListFormat} except that the data handled by the \prm{code} is not intended to be printed but written to the index. Note that \cmd{indexlist} will execute the \prm{code} as is, \ie the \prm{code} must include \cmd{index} or a similar command. The starred variant of this command is similar to the regular version, except that all type-specific formats are cleared. -\cmditem{DeclareIndexNameFormat}[entry type, \dots]{format}{code} +\cmditem{DeclareIndexNameFormat}[entrytype, \dots]{format}{code} \cmditem*{DeclareIndexNameFormat}*{format}{code} -Defines the name list format \prm{format}. This formatting directive is arbitrary \prm{code} to be executed for every name in a list processed by \cmd{indexnames}. The name of the name list currently being processed is available to the \prm{code} as \cmd{currentname}. If an \prm{entry type} is specified, the format is specific to that type. The \prm{entry type} argument may be a comma"=separated list of values. The parts of the name will be passed to the \prm{code} as separate arguments. This command is very similar to \cmd{DeclareNameFormat} except that the data handled by the \prm{code} is not intended to be printed but written to the index. Note that \cmd{indexnames} will execute the \prm{code} as is, \ie the \prm{code} must include \cmd{index} or a similar command. The starred variant of this command is similar to the regular version, except that all type-specific formats are cleared. +Defines the name list format \prm{format}. This formatting directive is arbitrary \prm{code} to be executed for every name in a list processed by \cmd{indexnames}. The name of the name list currently being processed is available to the \prm{code} as \cmd{currentname}. If an \prm{entrytype} is specified, the format is specific to that type. The \prm{entrytype} argument may be a comma"=separated list of values. The parts of the name will be passed to the \prm{code} as separate arguments. This command is very similar to \cmd{DeclareNameFormat} except that the data handled by the \prm{code} is not intended to be printed but written to the index. Note that \cmd{indexnames} will execute the \prm{code} as is, \ie the \prm{code} must include \cmd{index} or a similar command. The starred variant of this command is similar to the regular version, except that all type-specific formats are cleared. \cmditem{DeclareFieldAlias}[entry type]{alias}[format entry type]{format} -Declares \prm{alias} to be an alias of the field format \prm{format}. If an \prm{entry type} is specified, the alias is specific to that type. The \prm{format entry type} is the entry type of the backend format. This is only required when declaring an alias of a type"=specific formatting directive. +Declares \prm{alias} to be an alias for the field format \prm{format}. If an \prm{entrytype} is specified, the alias is specific to that type. The \prm{format entry type} is the entry type of the backend format. This is only required when declaring an alias for a type"=specific formatting directive. \cmditem{DeclareListAlias}[entry type]{alias}[format entry type]{format} -Declares \prm{alias} to be an alias of the literal list format \prm{format}. If an \prm{entry type} is specified, the alias is specific to that type. The \prm{format entry type} is the entry type of the backend format. This is only required when declaring an alias of a type"=specific formatting directive. +Declares \prm{alias} to be an alias for the literal list format \prm{format}. If an \prm{entrytype} is specified, the alias is specific to that type. The \prm{format entry type} is the entry type of the backend format. This is only required when declaring an alias for a type"=specific formatting directive. \cmditem{DeclareNameAlias}[entry type]{alias}[format entry type]{format} -Declares \prm{alias} to be an alias of the name list format \prm{format}. If an \prm{entry type} is specified, the alias is specific to that type. The \prm{format entry type} is the entry type of the backend format. This is only required when declaring an alias of a type"=specific formatting directive. +Declares \prm{alias} to be an alias for the name list format \prm{format}. If an \prm{entrytype} is specified, the alias is specific to that type. The \prm{format entry type} is the entry type of the backend format. This is only required when declaring an alias for a type"=specific formatting directive. \cmditem{DeclareIndexFieldAlias}[entry type]{alias}[format entry type]{format} -Declares \prm{alias} to be an alias of the field format \prm{format}. If an \prm{entry type} is specified, the alias is specific to that type. The \prm{format entry type} is the entry type of the backend format. This is only required when declaring an alias of a type"=specific formatting directive. +Declares \prm{alias} to be an alias for the field format \prm{format}. If an \prm{entrytype} is specified, the alias is specific to that type. The \prm{format entry type} is the entry type of the backend format. This is only required when declaring an alias for a type"=specific formatting directive. \cmditem{DeclareIndexListAlias}[entry type]{alias}[format entry type]{format} -Declares \prm{alias} to be an alias of the literal list format \prm{format}. If an \prm{entry type} is specified, the alias is specific to that type. The \prm{format entry type} is the entry type of the backend format. This is only required when declaring an alias of a type"=specific formatting directive. +Declares \prm{alias} to be an alias for the literal list format \prm{format}. If an \prm{entrytype} is specified, the alias is specific to that type. The \prm{format entry type} is the entry type of the backend format. This is only required when declaring an alias for a type"=specific formatting directive. \cmditem{DeclareIndexNameAlias}[entry type]{alias}[format entry type]{format} -Declares \prm{alias} to be an alias of the name list format \prm{format}. If an \prm{entry type} is specified, the alias is specific to that type. The \prm{format entry type} is the entry type of the backend format. This is only required when declaring an alias of a type"=specific formatting directive. +Declares \prm{alias} to be an alias for the name list format \prm{format}. If an \prm{entrytype} is specified, the alias is specific to that type. The \prm{format entry type} is the entry type of the backend format. This is only required when declaring an alias for a type"=specific formatting directive. \end{ltxsyntax} @@ -5310,7 +5310,7 @@ In addition to the predefined sorting schemes discussed in \secref{use:srt}, it \cmditem{DeclareSortingScheme}{name}{specification}|\BiberOnlyMark| -This command defines the sorting scheme \prm{name}. The \prm{name} is the identifier passed to the \opt{sorting} option (\secref{use:opt:pre:gen}) when selecting the sorting scheme. The \prm{specification} is an undelimited list of \cmd{sort} directives which specify the elements to be considered in the sorting process. Spaces, tabs, and line endings may be used freely to visually arrange the \prm{specification}. Blank lines are not permissible. +Defines the sorting scheme \prm{name}. The \prm{name} is the identifier passed to the \opt{sorting} option (\secref{use:opt:pre:gen}) when selecting the sorting scheme. The \prm{specification} is an undelimited list of \cmd{sort} directives which specify the elements to be considered in the sorting process. Spaces, tabs, and line endings may be used freely to visually arrange the \prm{specification}. Blank lines are not permissible. This command may only be used in the preamble. \cmditem{sort}{elements} @@ -5328,11 +5328,11 @@ This option marks a \cmd{sort} directive as the final one in the \prm{specificat \boolitem{sortcase} -Whether to sort case"=sensitively. The default setting depends on the global \opt{sortcase} option. +Whether or not to sort case"=sensitively. The default setting depends on the global \opt{sortcase} option. \boolitem{sortupper} -Whether to sort in <uppercase before lowercase> (\texttt{true}) or <lowercase before uppercase> order (\texttt{false}). The default setting depends on the global \opt{sortupper} option. +Whether or not to sort in <uppercase before lowercase> (\texttt{true}) or <lowercase before uppercase> order (\texttt{false}). The default setting depends on the global \opt{sortupper} option. \end{optionlist*} @@ -5443,13 +5443,13 @@ In the next example, we define the same scheme in a more elaborate way, consider \begin{ltxsyntax} -\cmditem{DeclareSortExclusion}{entry type, \dots}{field, \dots}|\BiberOnlyMark| +\cmditem{DeclareSortExclusion}{entrytype, \dots}{field, \dots}|\BiberOnlyMark| -Specifies fields to be excluded from sorting on a per-type basis. The \prm{entry type} argument and the \prm{field} argument may be a comma"=separated list of values. A blank \prm{field} argument will clear all exclusions for this \prm{entry type}. +Specifies fields to be excluded from sorting on a per-type basis. The \prm{entrytype} argument and the \prm{field} argument may be a comma"=separated list of values. A blank \prm{field} argument will clear all exclusions for this \prm{entrytype}. This command may only be used in the preamble. -\cmditem{DeclarePresort}[entry type, \dots]{string}|\BiberOnlyMark| +\cmditem{DeclarePresort}[entrytype, \dots]{string}|\BiberOnlyMark| -Specifies are string to be used to automatically populate the \bibfield{presort} field of entries without a \bibfield{presort} field. The \bibfield{presort} may be defined globally or on a per-type basis. If the optional \prm{entry type} argument is given, the \prm{string} applies to the respective entry type. If not, it serves as the global default value. Specifying an \prm{entry type} in conjunction with a blank \prm{string} will clear the type-specific setting. The \prm{entry type} argument may be a comma"=separated list of values. +Specifies are string to be used to automatically populate the \bibfield{presort} field of entries without a \bibfield{presort} field. The \bibfield{presort} may be defined globally or on a per-type basis. If the optional \prm{entrytype} argument is given, the \prm{string} applies to the respective entry type. If not, it serves as the global default value. Specifying an \prm{entrytype} in conjunction with a blank \prm{string} will clear the type-specific setting. The \prm{entrytype} argument may be a comma"=separated list of values. This command may only be used in the preamble. \end{ltxsyntax} @@ -5460,7 +5460,7 @@ Some of the automatically generated fields from \secref{aut:bbx:fld:lab} may be \begin{ltxsyntax} -\cmditem{DeclareLabelname}[entry type, \dots]{specification}|\BiberOnlyMark| +\cmditem{DeclareLabelname}[entrytype, \dots]{specification}|\BiberOnlyMark| Defines the fields to consider when generating the \bibfield{labelname} field (see \secref{aut:bbx:fld:lab}). The \prm{specification} is a comma"=separated list of fields. The fields are checked in the order listed and the first field which is available will be used as \bibfield{labelname}. This is the default definition: @@ -5468,9 +5468,9 @@ Defines the fields to consider when generating the \bibfield{labelname} field (s \DeclareLabelname{shortauthor,author,shorteditor,editor,translator} \end{lstlisting} % -The \bibfield{labelname} field may be customized globally or on a per-type basis. If the optional \prm{entry type} argument is given, the specification applies to the respective entry type. If not, it is applied globally. The \prm{entry type} argument may be a comma"=separated list of values. +The \bibfield{labelname} field may be customized globally or on a per-type basis. If the optional \prm{entrytype} argument is given, the specification applies to the respective entry type. If not, it is applied globally. The \prm{entrytype} argument may be a comma"=separated list of values. This command may only be used in the preamble. -\cmditem{DeclareLabelyear}[entry type, \dots]{specification}|\BiberOnlyMark| +\cmditem{DeclareLabelyear}[entrytype, \dots]{specification}|\BiberOnlyMark| Defines the date components to consider when generating the \bibfield{labelyear} field (see \secref{aut:bbx:fld:lab}). The \prm{specification} is a comma"=separated list of date components. The items are checked in the order listed and the first item which is available will be used as \bibfield{labelyear}. Note that the items are date components, not date fields. This is the default definition: @@ -5478,10 +5478,110 @@ Defines the date components to consider when generating the \bibfield{labelyear} \DeclareLabelyear{year,eventyear,origyear,urlyear} \end{lstlisting} % -The \bibfield{labelyear} field may be customized globally or on a per-type basis. If the optional \prm{entry type} argument is given, the specification applies to the respective entry type. If not, it is applied globally. The \prm{entry type} argument may be a comma"=separated list of values. See also \secref{aut:bbx:fld:dat}. +The \bibfield{labelyear} field may be customized globally or on a per-type basis. If the optional \prm{entrytype} argument is given, the specification applies to the respective entry type. If not, it is applied globally. The \prm{entrytype} argument may be a comma"=separated list of values. This command may only be used in the preamble. See also \secref{aut:bbx:fld:dat}. + +\end{ltxsyntax} + +\subsubsection{Data Inheritance (\bibfield{crossref})} +\label{aut:ctm:ref} + +Biber features a highly customizable cross-referencing mechanism with flexible data inheritance rules. This sections deals with the configuration interface. See \apxref{apx:ref} for the default configuration. Note that customized data inheritance requires Biber. It will not work with any other backend. A note on terminology: the \emph{child} or \emph{target} is the entry with the \bibfield{crossref} field, the \emph{parent} or \emph{source} is the entry the \bibfield{crossref} field points to. The child inherits data from the parent. + +\begin{ltxsyntax} + +\cmditem{DefaultInheritance}[exceptions]{options}|\BiberOnlyMark| + +Configures the default inheritance behavior. This command may only be used in the preamble. The default behavior may be customized be setting the following \prm{options}: + +\begin{optionlist*} + +\boolitem[true]{all} Whether or not to inherit all fields from the parent by default. \kvopt{all}{true} means that the child entry inherits all fields from the parent, unless a more specific inheritance rule has been set up with \cmd{DeclareDataInheritance}. If an inheritance rule is defined for a field, data inheritance is controlled by that rule. \kvopt{all}{false} means that no data is inherited from the parent by default. Each field to be inherited requires an explicit inheritance rule set up with \cmd{DeclareDataInheritance}. The package default is \kvopt{all}{true}. + +\boolitem[false]{override} Whether or not to overwrite target fields with source fields if both are defined. This applies both to automatic inheritance and to explicit inheritance rules. The package default is \kvopt{override}{false}, \ie existing fields of the child entry are not overwritten. + +\end{optionlist*} + +The optional \prm{exceptions} are an undelimited list of \cmd{except} directives. Spaces, tabs, and line endings may be used freely to visually arrange the \prm{exceptions}. Blank lines are not permissible. + +\cmditem{except}{source}{target}{options} + +Sets the \prm{options} for a specific \prm{source} and \prm{target} combination. The \prm{source} and \prm{target} arguments specify the parent and the child entry type. The asterisk matches all types and is permissible in either argument. + +\cmditem{DeclareDataInheritance}{source, \dots}{target, \dots}{rules}|\BiberOnlyMark| + +Declares inheritance rules. The \prm{source} and \prm{target} arguments specify the parent and the child entry type. Either argument may be a single entry type, a comma"=separated list of types, or an asterisk. The asterisk matches all entry types. The \prm{rules} are an undelimited list of \cmd{inherit} and\slash or \cmd{noinherit} directives. Spaces, tabs, and line endings may be used freely to visually arrange the \prm{rules}. Blank lines are not permissible. This command may only be used in the preamble. + +\cmditem{inherit}[option]{source}{target} + +Defines an inheritance rule by mapping a \prm{source} field to a \prm{target} field. The \prm{option} is the \opt{override} option explained above. When set locally, it takes precedence over any global options set with \cmd{DefaultInheritance}. + +\cmditem{noinherit}{source} + +Unconditionally prevents inheritance of the \prm{source} field. + +\csitem{ResetDataInheritance}\BiberOnlyMark Clears all inheritance rules defined with \cmd{DeclareDataInheritance}. This command may only be used in the preamble. \end{ltxsyntax} +Here are some practical examples: + +\begin{lstlisting}[style=latex]{} +\DefaultInheritance{<<all=true>>,<<override=false>>} +\end{lstlisting} +% +This example shows how to configure the default inheritance behavior. The above settings are the package defaults. + +\begin{lstlisting}[style=latex]{} +\DefaultInheritance[ + <<\except>>{<<*>>}{<<online>>}{<<all=false>>} +]{all=true,override=false} +\end{lstlisting} +% +This example is similar to the one above but adds one exception: entries of type \bibtype{online} will, by default, not inherit any data from any parent. + +\begin{lstlisting}[style=latex]{} +\DeclareDataInheritance{<<collection>>}{<<incollection>>}{ + <<\inherit>>{<<title>>}{<<booktitle>>} + \inherit{subtitle}{booksubtitle} + \inherit{titleaddon}{booktitleaddon} +} +\end{lstlisting} +% +So far we have looked at setting up the defaults. For example, \kvopt{all}{true} means that the \bibfield{publisher} field of a source entry is copied to the \bibfield{publisher} field of the target entry. In some cases, however, asymmetric mappings are required. They are defined with \cmd{DeclareDataInheritance}. The above example sets up three typical rules for \bibtype{incollection} entries referencing a \bibtype{collection}. We map the \bibfield{title} and related fields of the source to the corresponding \bibfield{booktitle} fields of the target. + +\begin{lstlisting}[style=latex]{} +\DeclareDataInheritance{<<mvbook,book>>}{<<inbook,bookinbook>>}{ + \inherit{<<author>>}{<<author>>} + \inherit{<<author>>}{<<bookauthor>>} +} +\end{lstlisting} +% +This rule is an example of one-to-many mapping: it maps the \bibfield{author} field of the source to both the \bibfield{author} and the \bibfield{bookauthor} fields of the target in order to allow for compact \bibfield{inbook}\slash \bibfield{bookinbook} entries. The source may be either a \bibtype{mvbook} or a \bibtype{book} entry, the target either an \bibtype{inbook} or a \bibtype{bookinbook} entry. + +\begin{lstlisting}[style=latex]{} +\DeclareDataInheritance{<<*>>}{<<inbook,incollection>>}{ + <<\noinherit>>{<<introduction>>} +} +\end{lstlisting} +% +This rule prevents inheritance of the \bibfield{introduction} field. It applies to all targets of type +\bibtype{inbook} or \bibtype{incollection}, regardless of the source entry type. + +\begin{lstlisting}[style=latex]{} +\DeclareDataInheritance{<<*>>}{<<*>>}{ + \noinherit{abstract} +} +\end{lstlisting} +% +This rule, which applies to all entries, regardless of the source and target entry types, prevents inheritance of the \bibfield{abstract} field. + +\begin{lstlisting}[style=latex]{} +\DefaultInheritance{all=true,override=false} +\ResetDataInheritance +\end{lstlisting} +% +This example demonstrates how to emulate \bibtex's cross"=referencing mechanism. It enables inheritance by default, disables overwriting, and clears all other inheritance rules and mappings. + \subsection{Auxiliary Commands} \label{aut:aux} @@ -5685,6 +5785,22 @@ This command is similar to \cmd{ifmorenames} but checks the current literal list Expands to \prm{true} or \prm{false}, depending on the state of the \opt{firstinits} package option (see \secref{use:opt:pre:int}). This command is intended for use in formatting directives for name lists. +\cmditem{ifkeyword}{keyword}{true}{false} + +Executes \prm{true} if the \prm{keyword} is found in the \bibfield{keywords} field of the entry currently being processed, and \prm{false} otherwise. + +\cmditem{ifentrykeyword}{entrykey}{keyword}{true}{false} + +A variant of \cmd{ifkeyword} which takes an entry key as its first argument. This is useful for testing an entry other than the one currently processed. + +\cmditem{ifcategory}{category}{true}{false} + +Executes \prm{true} if the entry currently being processed has been assigned to a \prm{category} with \cmd{addtocategory}, and \prm{false} otherwise. + +\cmditem{ifentrycategory}{entrykey}{category}{true}{false} + +A variant of \cmd{ifcategory} which takes an entry key as its first argument. This is useful for testing an entry other than the one currently processed. + \cmditem{ifciteseen}{true}{false} Executes \prm{true} if the entry currently being processed has been cited before, and \prm{false} otherwise. This command is robust and intended for use in citation styles. If there are any \env{refsection} environments in the document, the citation tracking is local to these environments. Note that the citation tracker needs to be enabled explicitly with the package option \opt{citetracker}. The behavior of this test depends on the mode the citation tracker is operating in, see \secref{use:opt:pre:int} for details. If the citation tracker is disabled, the test always yields \prm{false}. Also see the \cmd{citetrackertrue} and \cmd{citetrackerfalse} switches in \secref{aut:aux:msc}. @@ -5773,6 +5889,10 @@ Similar to \cmd{ifbibstring}, but the \prm{string} is expanded. 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}. +\cmditem{ifdriver}{entrytype}{true}{false} + +Expands to \prm{true} if a driver for the \prm{entrytype} is available, and to \prm{false} otherwise. + \cmditem{ifcapital}{true}{false} Executes \prm{true} if \sty{biblatex}'s punctuation tracker would capitalize a localization string at the current location, and \prm{false} otherwise. This command is robust. It may be useful for conditional capitalization of certain parts of a name in a formatting directive. @@ -5905,9 +6025,9 @@ These commands save and restore the formatting directive \prm{format}, as define These commands save and restore the formatting directive \prm{format}, as defined with \cmd{DeclareNameFormat}. Both commands work within a local scope. They are mainly provided for use in localization files. -\cmditem{usedriver}{code}{type} +\cmditem{usedriver}{code}{entrytype} -Executes the bibliography driver for an entry \prm{type}. Calling this command in the \prm{loopcode} of a citation command defined with \cmd{DeclareCiteCommand} is a simple way to print full citations similar to a bibliography entry. Commands such as \cmd{newblock}, which are not applicable in a citation, are disabled automatically. Additional initialization commands may be passed as the \prm{code} argument. This argument is executed inside the group in which \cmd{usedriver} runs the respective driver. Note that it is mandatory in terms of the syntax but may be left empty. Also note that this command will automatically switch languages if the \opt{babel} package option is enabled. +Executes the bibliography driver for an \prm{entrytype}. Calling this command in the \prm{loopcode} of a citation command defined with \cmd{DeclareCiteCommand} is a simple way to print full citations similar to a bibliography entry. Commands such as \cmd{newblock}, which are not applicable in a citation, are disabled automatically. Additional initialization commands may be passed as the \prm{code} argument. This argument is executed inside the group in which \cmd{usedriver} runs the respective driver. Note that it is mandatory in terms of the syntax but may be left empty. Also note that this command will automatically switch languages if the \opt{babel} package option is enabled. \cmditem{bibhypertarget}{name}{text} @@ -5929,6 +6049,10 @@ Expands to \prm{true} if the \opt{hyperref} package option is enabled (which imp Similar to the \cmd{docsvlist} command from the \sty{etoolbox} package, except that it takes a field name as its argument. The value of this field is parsed as a comma"=separated list. If the \prm{field} is undefined, this command expands to an empty string. +\cmditem{forcsvfield}{handler}{field} + +Similar to the \cmd{forcsvlist} command from the \sty{etoolbox} package, except that it takes a field name as its argument. The value of this field is parsed as a comma"=separated list. If the \prm{field} is undefined, this command expands to an empty string. + \cmditem{MakeCapital}{text} Similar to \cmd{MakeUppercase} but only coverts the first printable character in \prm{text} to uppercase. Note that the restrictions that apply to \cmd{MakeUppercase} also apply to this command. Namely, all commands in \prm{text} must either be robust or prefixed with \cmd{protect} since the \prm{text} is expanded during capitalization. Apart from Ascii characters and the standard accent commands, this command also handles the active characters of the \sty{inputenc} package as well as the shorthands of the \sty{babel} package. If the \prm{text} starts with a control sequence, nothing is capitalized. This command is robust. @@ -5958,9 +6082,9 @@ title = {An Introduction to {L}a{T}e{X}} % The problem with this convention is that the braces will suppress the kerning on both sides of the enclosed letter. It is preferable to wrap the entire word in braces as shown in the first example. -\cmditem{mkpageprefix}[pagination]{text} +\cmditem{mkpageprefix}[pagination][postpro]{text} -This command is intended for use in field formatting directives which format the page numbers in the \prm{postnote} argument of citation commands and the \bibfield{pages} field of bibliography entries. It will parse its \prm{text} argument and prefix it with <p.> or <pp.> by default. The optional \prm{pagination} argument holds the name of a field indicating the pagination type. This may be either \bibfield{pagination} or \bibfield{bookpagination}, with \bibfield{pagination} being the default. The spacing between the prefix and the \prm{text} may be modified by redefining \cmd{ppspace}. The default is an unbreakable interword space. See \secref{bib:use:pag, use:cav:pag} for further details. See also \cmd{DeclareNumChars}, \cmd{DeclareRangeChars}, \cmd{DeclareRangeCommands}, and \cmd{NumCheckSetup}. Here are two examples from \path{biblatex.def}: +This command is intended for use in field formatting directives which format the page numbers in the \prm{postnote} argument of citation commands and the \bibfield{pages} field of bibliography entries. It will parse its \prm{text} argument and prefix it with <p.> or <pp.> by default. The optional \prm{pagination} argument holds the name of a field indicating the pagination type. This may be either \bibfield{pagination} or \bibfield{bookpagination}, with \bibfield{pagination} being the default. The spacing between the prefix and the \prm{text} may be modified by redefining \cmd{ppspace}. The default is an unbreakable interword space. See \secref{bib:use:pag, use:cav:pag} for further details. See also \cmd{DeclareNumChars}, \cmd{DeclareRangeChars}, \cmd{DeclareRangeCommands}, and \cmd{NumCheckSetup}. The optional \prm{postpro} argument specifies a macro to be used for post-processing the \prm{text}. This must be a macro taking one mandatory argument. If only one optional argument is given, it is taken as \prm{pagination}. Here are two typical examples: \begin{lstlisting}[style=latex]{} \DeclareFieldFormat{postnote}{<<\mkpageprefix[pagination]{#1}>>} @@ -5969,9 +6093,9 @@ This command is intended for use in field formatting directives which format the % The optional argument \bibfield{pagination} in the first example is omissible. -\cmditem{mkpagetotal}[pagination]{text} +\cmditem{mkpagetotal}[pagination][postpro]{text} -This command is similar to \cmd{mkpageprefix} except that it is intended for the \bibfield{pagetotal} field of bibliography entries, \ie it will print «123 pages» rather than «page 123». The optional \prm{pagination} argument defaults to \bibfield{bookpagination}. The spacing inserted between the pagination suffix and the \prm{text} may be modified by redefining the macro \cmd{ppspace}. Here is an example from \path{biblatex.def}: +This command is similar to \cmd{mkpageprefix} except that it is intended for the \bibfield{pagetotal} field of bibliography entries, \ie it will print «123 pages» rather than «page 123». The optional \prm{pagination} argument defaults to \bibfield{bookpagination}. The spacing inserted between the pagination suffix and the \prm{text} may be modified by redefining the macro \cmd{ppspace}. The optional \prm{postpro} argument specifies a macro to be used for post-processing the \prm{text}. This must be a macro taking one mandatory argument. If only one optional argument is given, it is taken as \prm{pagination}. Here is a typical example: \begin{lstlisting}[style=latex]{} \DeclareFieldFormat{pagetotal}{<<\mkpagetotal[bookpagination]{#1}>>} @@ -5979,10 +6103,10 @@ This command is similar to \cmd{mkpageprefix} except that it is intended for the % The optional argument \bibfield{bookpagination} is omissible in this case. -\cmditem{mkpagefirst}[pagination]{text} -\cmditem*{mkpagefirst*}{text} +\cmditem{mkpagefirst}[pagination][postpro]{text} +\cmditem*{mkpagefirst*}[postpro]{text} -This command, which is also intended for use in field formatting directives, will parse its \prm{text} argument for page ranges and print the start page of the range. The regular version uses \cmd{mkpageprefix} to format the \prm{text} after truncation, passing on the \prm{pagination} argument to \cmd{mkpageprefix}. The starred version prints the truncated \prm{text} as is. +This command, which is intended for use in field formatting directives, will parse its \prm{text} argument for page ranges and print the start page of the range. The regular version uses \cmd{mkpageprefix} to format the \prm{text} after truncation, passing the \prm{pagination} and/or \prm{postpro} arguments to \cmd{mkpageprefix}. The starred version prints the truncated \prm{text} as is. The optional \prm{postpro} argument specifies a macro to be used for post-processing the \prm{text}. This must be a macro taking one mandatory argument. \cmditem{DeclareNumChars}{characters} \cmditem*{DeclareNumChars*}{characters} @@ -6799,6 +6923,7 @@ Roles which are related to supplementary material may also be expressed as objec \begin{keymarglist} \item[inpress] The expression <in press>. +\item[inpreparation] The expression <in preparation>, referring to manuscript being prepared for publication. \item[submitted] The expression <submitted>, referring to an article or paper submitted to a journal or conference. \end{keymarglist} @@ -7373,7 +7498,7 @@ This counter is similar to \cnt{citecount} but only available in multicite comma \cntitem{listtotal} -This counter holds the total number of items in the current list. It is intended for use in list formatting directives and does not hold a meaningful value when used anywhere else. As an exception, it may also be used in the second optional argument to \cmd{printnames} and \cmd{printlist}, see \secref{aut:bib:dat} for details. For every list, there is also a counter by the same name which holds the total number of items in the corresponding list. For example, the \cnt{author} counter holds the total number of items in the \bibfield{author} list. This applies to both name lists and literal lists. These counters are similar to \cnt{listtotal} except that they may also be used independently of list formatting directives. For example, a bibliography style might check the \cnt{editor} counter to decide whether to print the term «editor» or rather its plural form «editors» after the list of editors. +This counter holds the total number of items in the current list. It is intended for use in list formatting directives and does not hold a meaningful value when used anywhere else. As an exception, it may also be used in the second optional argument to \cmd{printnames} and \cmd{printlist}, see \secref{aut:bib:dat} for details. For every list, there is also a counter by the same name which holds the total number of items in the corresponding list. For example, the \cnt{author} counter holds the total number of items in the \bibfield{author} list. This applies to both name lists and literal lists. These counters are similar to \cnt{listtotal} except that they may also be used independently of list formatting directives. For example, a bibliography style might check the \cnt{editor} counter to decide Whether or not to print the term «editor» or rather its plural form «editors» after the list of editors. \cntitem{listcount} @@ -7438,9 +7563,9 @@ Similar to \cmd{AtEveryCite} but only affecting the next citation command. The i Similar to \cmd{AtEveryCitekey} but only affecting the next entry key. The internal hook is cleared after being executed once. This command may be used in the document body. -\cmditem{AtDataInput}[type]{code} +\cmditem{AtDataInput}[entrytype]{code} -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. +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{entrytype} 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} @@ -7877,13 +8002,258 @@ In order to minimize the risk of name clashes, \latex packages typically prefix \end{marglist} +\appendix +\section*{Appendix} +\addcontentsline{toc}{section}{Appendix} + +\section{Default \bibfield{crossref} Setup} +\label{apx:ref} + +The following table shows the Biber cross-referencing rules defined by default. +Please refer to \secref{bib:cav:ref, aut:ctm:ref} for explanation. + +\begingroup +\tablesetup +\def\sep{\textrm{, }} +\def\skip{\textrm{--}} +\def\note#1{\textrm{#1}} +\begin{longtable}[l]{% + @{}V{0.2\textwidth}% + @{}V{0.4\textwidth}% + @{}V{0.2\textwidth}% + @{}V{0.2\textwidth}@{}} +\toprule +\multicolumn{2}{@{}H}{Types} & \multicolumn{2}{@{}H}{Fields} \\ +\cmidrule(r){1-2}\cmidrule{3-4} +\multicolumn{1}{@{}H}{Source} & \multicolumn{1}{@{}H}{Target} & +\multicolumn{1}{@{}H}{Source} & \multicolumn{1}{@{}H}{Target} \\ +\cmidrule(r){1-1}\cmidrule(r){2-2}\cmidrule(r){3-3}\cmidrule{4-4} +\endhead +\bottomrule +\endfoot +\textasteriskcentered & \textasteriskcentered & + crossref\par + xref\par + entryset\par + entrysubtype\par + execute\par + label\par + options\par + presort\par + related\par + relatedstring\par + relatedtype\par + shorthand\par + shorthandintro\par + sortkey & + \skip\par \skip\par \skip\par \skip\par + \skip\par \skip\par \skip\par \skip\par + \skip\par \skip\par \skip\par \skip\par + \skip\par \skip \\ +mvbook\sep book & + inbook\sep bookinbook\sep suppbook & + author\par author & + author\par bookauthor \\ +mvbook & + book\sep inbook\sep bookinbook\sep suppbook & + title\par subtitle\par titleaddon\par + shorttitle\par sorttitle\par indextitle\par indexsorttitle & + maintitle\par mainsubtitle\par maintitleaddon\par + \skip\par \skip\par \skip\par \skip \\ +mvcollection\sep mvreference & + collection\sep reference\sep incollection\sep inreference\sep suppcollection & + title\par subtitle\par titleaddon\par + shorttitle\par sorttitle\par indextitle\par indexsorttitle & + maintitle\par mainsubtitle\par maintitleaddon\par + \skip\par \skip\par \skip\par \skip \\ +mvproceedings & + proceedings\sep inproceedings & + title\par subtitle\par titleaddon\par + shorttitle\par sorttitle\par indextitle\par indexsorttitle & + maintitle\par mainsubtitle\par maintitleaddon\par + \skip\par \skip\par \skip\par \skip \\ +book & + inbook\sep bookinbook\sep suppbook & + title\par subtitle\par titleaddon\par + shorttitle\par sorttitle\par indextitle\par indexsorttitle & + booktitle\par booksubtitle\par booktitleaddon\par + \skip\par \skip\par \skip\par \skip \\ +collection\sep reference & + incollection\sep inreference\sep suppcollection & + title\par subtitle\par titleaddon\par + shorttitle\par sorttitle\par indextitle\par indexsorttitle & + booktitle\par booksubtitle\par booktitleaddon\par + \skip\par \skip\par \skip\par \skip \\ +proceedings & + inproceedings & + title\par subtitle\par titleaddon\par + shorttitle\par sorttitle\par indextitle\par indexsorttitle & + booktitle\par booksubtitle\par booktitleaddon\par + \skip\par \skip\par \skip\par \skip \\ +periodical & + article\sep suppperiodical & + title\par subtitle\par + shorttitle\par sorttitle\par indextitle\par indexsorttitle & + journaltitle\par journalsubtitle\par + \skip\par \skip\par \skip\par \skip \\ +\end{longtable} +\endgroup + +\section{Default Sorting Schemes} +\label{apx:srt} + +\subsection[Alphabetic 1]{Alphabetic Schemes 1} +\label{apx:srt:a1} + +The following table shows the standard alphabetic sorting schemes defined by default. Please refer to \secref{use:srt} for explanation. + +\begingroup +\sorttablesetup +\begin{longtable}[l]{@{}% + V{0.100\textwidth}@{}% + L{0.100\textwidth}@{}% + L{0.175\textwidth}@{}% + L{0.175\textwidth}@{}% + L{0.150\textwidth}@{}% + L{0.300\textwidth}@{}} +\toprule +\multicolumn{1}{@{}H}{Option} & \multicolumn{5}{@{}H}{Sorting scheme} \\ +\cmidrule(r){1-1}\cmidrule{2-6} +\endhead +\bottomrule +\endfoot +nty & presort\alt mm & + \new sortname\alt author\alt editor\alt translator\alt sorttitle\alt title & + \new sorttitle\alt title & + \new sortyear\alt year & + \new volume\alt 0000 \\ +nyt & presort\alt mm & + \new sortname\alt author\alt editor\alt translator\alt sorttitle\alt title & + \new sortyear\alt year & + \new sorttitle\alt title & + \new volume\alt 0000 \\ +nyvt & presort\alt mm & + \new sortname\alt author\alt editor\alt translator\alt sorttitle\alt title & + \new sortyear\alt year & + \new volume\alt 0000 & + \new sorttitle\alt title \\ +\textrm{all} & presort\alt mm & + \new sortkey \\ +\end{longtable} +\endgroup + +\subsection[Alphabetic 2]{Alphabetic Schemes 2} +\label{apx:srt:a2} + +The following table shows the alphabetic sorting schemes for \texttt{alphabetic} styles defined by default. Please refer to \secref{use:srt} for explanation. + +\begingroup +\sorttablesetup +\begin{longtable}[l]{@{}% + V{0.100\textwidth}@{}% + L{0.100\textwidth}@{}% + L{0.175\textwidth}@{}% + L{0.175\textwidth}@{}% + L{0.150\textwidth}@{}% + L{0.150\textwidth}@{}% + L{0.150\textwidth}@{}} +\toprule +\multicolumn{1}{@{}H}{Option} & \multicolumn{6}{@{}H}{Sorting scheme} \\ +\cmidrule(r){1-1}\cmidrule{2-7} +\endhead +\bottomrule +\endfoot +anyt & presort\alt mm & + \new labelalpha & + \new sortname\alt author\alt editor\alt translator\alt sorttitle\alt title & + \new sortyear\alt year & + \new sorttitle\alt title & + \new volume\alt 0000 \\ +anyvt & presort\alt mm & + \new labelalpha & + \new sortname\alt author\alt editor\alt translator\alt sorttitle\alt title & + \new sortyear\alt year & + \new volume\alt 0000 & + \new sorttitle\alt title \\ +\textrm{all} & presort\alt mm & + \new labelalpha & + \new sortkey \\ +\end{longtable} +\endgroup + +\subsection[Chronological ]{Chronological Schemes} +\label{apx:srt:chr} + +The following table shows the chronological sorting schemes defined by default. Please refer to \secref{use:srt} for explanation. + +\begingroup +\sorttablesetup +\begin{longtable}[l]{@{}% + V{0.100\textwidth}@{}% + L{0.100\textwidth}@{}% + L{0.225\textwidth}@{}% + L{0.175\textwidth}@{}% + L{0.400\textwidth}@{}} +\toprule +\multicolumn{1}{@{}H}{Option} & \multicolumn{4}{@{}H}{Sorting scheme} \\ +\cmidrule(r){1-1}\cmidrule{2-5} +\endhead +\bottomrule +\endfoot +ynt & presort\alt mm & + \new sortyear\alt year \alt 9999 & + \new sortname\alt author\alt editor\alt translator\alt sorttitle\alt title & + \new sorttitle\alt title \\ +ydnt & presort\alt mm & + \new sortyear\note{ (desc.)}\alt year\note{ (desc.)} \alt 9999 & + \new sortname\alt author\alt editor\alt translator\alt sorttitle\alt title & + \new sorttitle\alt title \\ +\textrm{all} & presort\alt mm & + \new sortkey \\ +\end{longtable} +\endgroup \section{Revision History} +\label{apx:log} This revision history is a list of changes relevant to users of this package. Changes of a more technical nature which do not affect the user interface or the behavior of the package are not included in the list. If an entry in the revision history states that a feature has been \emph{improved} or \emph{extended}, this indicates a modification which either does not affect the syntax and behavior of the package or is syntactically backwards compatible (such as the addition of an optional argument to an existing command). Entries stating that a feature has been \emph{modified}, \emph{renamed}, or \emph{removed} demand attention. They indicate a modification which may require changes to existing styles or documents in some, hopefully rare, cases. The numbers on the right indicate the relevant section of this manual. \begin{changelog} +\begin{release}{1.2a}{2011-02-13} +\item Fix in \cmd{mkbibmonth}\see{aut:fmt:ich} +\end{release} + +\begin{release}{1.2}{2011-02-12} +\item Added entry type \bibtype{mvbook}\see{bib:typ:blx} +\item Added entry type \bibtype{mvcollection}\see{bib:typ:blx} +\item Added entry type \bibtype{mvproceedings}\see{bib:typ:blx} +\item Added entry type \bibtype{mvreference}\see{bib:typ:blx} +\item Introducing remote resources\see{use:bib:res}\BiberOnlyMark +\item Introducing experimental \acr{RIS} support\see{use:bib:res}\BiberOnlyMark +\item Added \cmd{addbibresource}\see{use:bib:res} +\item \cmd{bibliography} now deprecated\see{use:bib:res} +\item \cmd{bibliography*} replaced by \cmd{addglobalbib}\see{use:bib:res} +\item Added \cmd{addsectionbib}\see{use:bib:res} +\item Updated and expanded documentation\see{bib:cav:ref} +\item Introducing smart \bibfield{crossref} data inheritance\see{bib:cav:ref:bbr}\BiberOnlyMark +\item Introducing \bibfield{crossref} configuration interface\see{aut:ctm:ref}\BiberOnlyMark +\item Added \cmd{DefaultInheritance}\see{aut:ctm:ref}\BiberOnlyMark +\item Added \cmd{DeclareDataInheritance}\see{aut:ctm:ref}\BiberOnlyMark +\item Added \cmd{ResetDataInheritance}\see{aut:ctm:ref}\BiberOnlyMark +\item Added \cmd{ifkeyword}\see{aut:aux:tst} +\item Added \cmd{ifentrykeyword}\see{aut:aux:tst} +\item Added \cmd{ifcategory}\see{aut:aux:tst} +\item Added \cmd{ifentrycategory}\see{aut:aux:tst} +\item Added \cmd{ifdriver}\see{aut:aux:tst} +\item Added \cmd{forcsvfield}\see{aut:aux:msc} +\item Extended \cmd{mkpageprefix}\see{aut:aux:msc} +\item Extended \cmd{mkpagetotal}\see{aut:aux:msc} +\item Extended \cmd{mkpagefirst}\see{aut:aux:msc} +\item Added localization key \texttt{inpreparation}\see{aut:lng:key} +\item Rearranged manual slightly, moving some tables to the appendix +\end{release} + \begin{release}{1.1b}{2011-02-04} \item Added option \opt{texencoding}\see{use:opt:pre:gen}\BiberOnlyMark \item Added option \opt{safeinputenc}\see{use:opt:pre:gen}\BiberOnlyMark @@ -7895,7 +8265,7 @@ This revision history is a list of changes relevant to users of this package. Ch \begin{release}{1.1a}{2011-01-08} \item Added unsupported entry type \bibtype{bibnote}\see{bib:typ:ctm} -\item Added \cmd{bibliography*}\see{use:bib:bib} +\item Added \cmd{bibliography*}\see{use:bib:res} \item Fixed some bugs \end{release} |