$Id: RELEASE,v 0.8d 2009/05/30 14:43:06 lehman beta $

RELEASE NOTES FOR VERSION 0.8d

*  Biber beta release

   Biber is a BibTeX replacement written in Perl. It features
   Unicode support and has been designed with the requirements of
   biblatex in mind. See:

   http://biblatex-biber.sourceforge.net/
   
   for details. Beta testers are invited to try it out and report
   any bugs on Biber's SourceForge project page.

*  Package option 'bibtex8' superseded by 'backend'

   The package option 'bibtex8' is superseded by a new option called
   'backend'. The old option is not mentioned in the manual any
   more, but it is still supported for the sake of backwards
   compatibility. In new documents, however, replace it as follows:

   bibtex8=false -> backend=bibtex  (default setting, omissible)
   bibtex8=true	 -> backend=bibtex8
   
RELEASE NOTES FOR VERSION 0.8c

*  Added 'idem' tracker

   I've added an 'idem' tracker which is similar in concept to the
   'ibidem' tracker except that it checks for recurrent author/
   editor names. See the 'idemtracker' package option and the
   \ifciteidem test in the manual.

RELEASE NOTES FOR VERSION 0.8b

*  Added 'usetranslator' option

   The 'usetranslator' option is similar in concept to 'useauthor'
   and 'useeditor' hence usage should be fairly obvious. Style
   authors should note that styles derived from the standard ones
   will support this option if you replace

   \usebibmacro{author}
   \usebibmacro{author/editor}

   with
   
   \usebibmacro{author/translator}
   \usebibmacro{author/editor/translator}
   
   in all relevant drivers.

RELEASE NOTES FOR VERSION 0.8a

*  SourceForge bug/feature trackers

   The user base of biblatex has been growing steadily, reaching a
   point where managing bug reports and feature requests by a
   combination of private email messages and Usenet postings has
   become impractical. I've therefore set up a project page on
   SourceForge:

   http://sourceforge.net/projects/biblatex/

   There's no code on that site and most tools offered by
   SourceForge (like cvs/subversion, web-based forums, etc.) are
   currently disabled. The interesting thing are the trackers:

   http://sourceforge.net/tracker2/?group_id=244752
   
   I've set up two trackers, 'Bugs' for bug reports and 'Features'
   for feature requests. Please use these trackers to report bugs
   and submit feature requests.
   
   I've also added all open bug reports and feature requests sitting
   in my email inbox but I may have missed some messages posted in
   public forums. If you've reported anything which doesn't show up
   on the project page, you can now add it yourself by selecting the
   appropriate tracker and clicking on "Add new artifact".

*  Custom localization modules

   This release adds support for custom localization modules. The
   point is that styles may ship modified lbx files. See
   \DeclareLanguageMapping and the changelog for further hints.

*  Configurable punctuation tracker

   The behavior of punctuation commands like \addcomma is now
   configurable. See \DeclarePunctuationPairs in the manual.

*  Improved 'American-style' punctuation

   I've improved the 'American-style' punctuation feature.
   american.lbx now uses \DeclarePunctuationPairs to adapt the
   punctuation tracker and \mkbibquote supports nested quotes even
   if American punctuation is enabled.

*  Sentence case vs. title case

   By popular request, I've added a macro which converts a string to
   sentence case. See \MakeSentenceCase, \MakeSentenceCase*, and
   \DeclareCaseLangs in the manual. \MakeSentenceCase supports the
   BibTeX convention that anything wrapped in braces is not altered
   when changing the case.
   
   Style authors who make use of the bibmacros in biblatex.def should
   note the following. Saying:
   
   \DeclareFieldFormat{title}{\MakeSentenceCase{#1}}
   
   will not work as expected. That's because biblatex uses macros
   like this one by default:
   
   \newbibmacro*{title}{%
     \ifthenelse{\iffieldundef{title}\AND\iffieldundef{subtitle}}
       {}
       {\printtext[title]{%
	  \printfield[noformat]{title}%
	  \setunit{\subtitlepunct}%
	  \printfield[noformat]{subtitle}}%
	\newunit}%
     \printfield{titleaddon}}
   
   The 'title' format is applied by a \printtext command which
   encloses both the title and the subtitle. \MakeSentenceCase would
   therefore see \printfield commands rather than the field
   contents. If you want to convert all titles to sentence case,
   \MakeSentenceCase must be applied on the inner level, by the
   \printfield commands. To facilitate that, I've modified this and
   similar bibmacros slightly:

   \newbibmacro*{title}{%
     \ifthenelse{\iffieldundef{title}\AND\iffieldundef{subtitle}}
       {}
       {\printtext[title]{%
	  \printfield[titlecase]{title}%
	  \setunit{\subtitlepunct}%
	  \printfield[titlecase]{subtitle}}%
	\newunit}%
     \printfield{titleaddon}}
   
   Instead of 'noformat', the nested \printfield commands now use
   'titlecase' on the inner level. These formats are defined like
   this:

   \DeclareFieldFormat{titlecase}{#1}
   \DeclareFieldFormat{noformat}{#1}
   
   In other words, the default behavior remains unchanged but
   converting all titles to sentence case is as easy as saying:
   
   \DeclareFieldFormat{titlecase}{\MakeSentenceCase{#1}}
   
   You can apply additional formats on a higher level as usual:
   
   \DeclareFieldFormat{title}{\mkbibemph{#1}}
   \DeclareFieldFormat{title}{\mkbibquote{#1}}
   
   Just make sure that \MakeSentenceCase always hooks in on the
   innermost level such that it sees the raw field contents rather
   then data commands or other formatting commands.

RELEASE NOTES FOR VERSION 0.8

As usual, the full changelog is included in biblatex.pdf. What
follows are comments concerning changes 'under the hood' which are
not mentioned in the changelog, things which may break backwards
compatibility, improvements which may not be immediately obvious
from looking at the changelog, and new major features which pertain
to a set of entries in the changelog rather than a single one.

The changelog and the release notes include changes made in the
0.7a-g maintenance releases. If you have been tracking the
development closely, some things may sound familiar.

Note that there have been changes in the LaTeX<->BibTeX data
interface. You may want to delete all the old *.bbl and
<jobname>-blx.bib files before you start using the new version. In
fact biblatex should be able to handle the update on its own but
this will require an additional LaTeX+BibTeX cycle. In other words,
you need to go through one LaTeX/BibTeX/LaTeX cycle to update all
auxiliary files. You can ignore any warnings printed in this
process. After that, the output should stabilize as usual.

*  Hints for style developers

   I'm delighted to see that the first custom biblatex styles start
   showing up on CTAN.
   
   One general note to style authors: unless your style is only a
   minor modification of one of the standard styles which ship with
   biblatex, it's a good idea to make sure it's self-contained,
   i.e., that it doesn't employ \RequireCitationStyle and/or
   \RequireBibliographyStyle to load code from the default styles
   (but feel free to incorporate code by copying it to your style).

   While the core of biblatex is stable by now, there's still
   potential for modifications in the standard styles (see below for
   examples). Having said that, loading standard.bbx should be a
   safe thing to do and you can also rely on code in biblatex.def
   because this file is part of the core of biblatex.

*  New citation and bibliography styles

   I've added some new styles: 'authoryear-ibid' (an author-year
   style with an 'ibidem' feature), 'draft' (which is a, well, draft
   style), and 'reading' (a style for annotated bibliographies and
   personal reading lists with abstracts, annotations, etc.).

*  Overhaul of all citation and bibliography styles

   I've overhauled all styles such that they use LaTeX (=etoolbox)
   rather than plain TeX syntax for the boolean switches. E.g.,
   instead of:

   \newif\ifcbx@bool
   \cbx@booltrue
   \ifcbx@bool ...\else ...\fi
   
   they now use:
   
   \newbool{cbx:bool}
   \booltrue{cbx:bool}
   \ifbool{cbx:bool}{...}{...}
   
   This LaTeX frontend is provided by the etoolbox package.

*  Improved authoryear styles

   The authoryear styles have been improved such that they will
   consider the '(short)title' field if the author/editor is
   missing (or useauthor/useeditor=false is set). Note that these
   styles also consider the 'label' field, if available. In sum,
   the fallback chain in citations used to be:

   author -> editor -> label -> [issue warning]

   and the new chain works as follows: 

   author -> editor -> label -> shorttitle -> title

   The 'shorthand' field, if defined, always takes precedence over
   any other data.

*  Improved verbose-note styles

   The styles verbose-note and verbose-inote can now add a page
   number to the reference pointing to the initial, full citation.
   There is a style option named 'pageref' which enables this
   feature. The page reference is only printed if the initial
   citation is located on a different page or page spread (depending
   on the setting of the 'pagetracker' option).

*  Improved numeric styles

   The numeric styles now support citations referring to set
   members. See the note about reference sets below, the manual, and
   the examples for details.

*  Introducing reference sets

   This release introduces the concept of a reference or entry set.
   A reference set is a group of entries which are cited as a single
   reference and listed as a single item in the bibliography. I'm
   told that this is a matter of particular interest for users in
   physics, chemistry, and possibly some other fields. See the 'set'
   type, the 'entryset' field, and the special field 'entrysetcount'
   in the manual. Also see \entryset and the pointers in the
   changelog.

   If you are familiar with this concept, you may have used the
   mcite or the mciteplus package before. The mcite and mciteplus
   manuals call this type of reference a "collapsed citation". They
   also talk about "grouping citations". The biblatex manual calls
   it "reference set" and "entry set". It's the same thing but note
   that the approach is different. With mcite(plus), sets are
   defined as they are cited for the first time. Essentially, a
   citation like

   \cite{key1,*key2,*key3}
   
   defines a set consisting of three entries (key1, key2, key3). The
   first entry key serves as identifier of the entire set, which may
   subsequently be cited as \cite{key1}. With biblatex, you declare
   sets in the bib file using the @set type, the 'entryset' field,
   and 'entryset' reverse pointers in the child entries:

   @Set{set1,
     entryset = {key1,key2,key3},
     crossref = {key1},
   }
   @Article{key1,
     entryset = {set1},
     ...
   }
   @InCollection{key2,
     entryset = {set1},
     ...
   }
   @InProceedings{key3,
     entryset = {set1},
     ...
   }

   See the pointers in the changelog for further explanation.

*  Support for electronic publishing information (eprint)

   See the 'eprint' and 'eprinttype' fields and related pointers in
   the manual. Support for electronic publishing information has
   been added to all standard bibliography styles.

   This release comes with dedicated support for arXiv references
   which is usable out of the box and also serves as a model for
   adding support for other resources and online archives.

*  Modified 'labelyear' field

   The 'labelyear' field is no longer a string but an integer. The
   conversion of the integer to a string now takes places on the
   LaTeX side of the workflow, i.e., you'll usually have a
   formatting directive like this:

   \DeclareFieldFormat{labelyear}{\mknumalph{#1}}

   The \mknumalph command takes an integer in the range 1-702 as
   its argument and converts it to a string as used in author-year
   citations like "Jones 1995a". The format is:

   \mknumalph{1}   -> a
   \mknumalph{26}  -> z
   \mknumalph{27}  -> aa
   \mknumalph{702} -> zz

   There is also a 'maxlabelyear' counter which holds the highest
   number found in any 'labelyear' field. This may be useful if you
   want to print the 'labelyear' field as a number and pad it out
   with leading zeros.

*  Modified 'labelalpha' field

   There is a similar change concerning the 'labelalpha' field,
   which has been split up into 'labelalpha' and 'extraalpha'. With
   a label like "Jon95a", 'labelalpha' holds "Jon95" while the extra
   letter is handled by 'extraalpha'. 'extraalpha' is similar to
   'labelyear' in that it holds an integer. The conversion of the
   integer to a string takes places on the LaTeX side of the
   workflow, i.e., you'll usually have a formatting directive like
   this:

   \DeclareFieldFormat{extraalpha}{\mknumalph{#1}}

   There is also a 'maxextraalpha' counter which holds the highest
   number found in any 'extraalpha' field.

*  Modified/extended name hashes

   Starting with this release, there are two name hash fields,
   'namehash' and 'fullhash'. See the manual for details.
   Essentially, the difference is that the 'namehash' is derived
   from the visible 'labelname' list (subject to the 'maxnames' and
   'minnames' options) whereas 'fullhash' is always derived from the
   full list.

   Note that the original behavior of 'namehash' in previous
   releases used to be similar to the current behavior of
   'fullhash'. This has caused some confusion. The 'namehash' should
   now be in line with the expectations of most users and style
   authors. Those who actually want the original behavior may still
   use the 'fullhash' field.

*  'edition' field now more flexible/controllable by styles

   In previous biblatex releases, 'edition' was an integer-only
   field. The integer test was performed on the BibTeX side of the
   workflow, in biblatex.bst. Starting with this release, the test
   is performed on the LaTeX side, i.e., in the format definition:

   \DeclareFieldFormat{edition}{%
     \ifinteger{#1}
       {\mkbibordinal{#1}~\bibstring{edition}}
       {#1}%
   }
   
   As you can see, the edition is printed as "Nth edition" if the
   edition field holds an integer, and as a literal string if not.
   This means that you can now put things like "5th, revised and
   expanded edition" in the 'edition' field without having to resort
   to the 'note' field. It also implies that styles get full control
   over the 'edition' field.

   Style authors who adapt this formatting directive should note
   that ordinals are gender-specific in Romanic languages ('edition'
   is a feminine noun in French, Italian, and Spanish, hence the
   ordinal must be feminine as well). In addition to the default
   definition in biblatex.def, the 'edition' field is therefore
   adapted in french.lbx, italian.lbx, and spanish.lbx.

*  Support for bibliographic data in external TeX files

   This release add a \printfile command which is similar to
   \printtext but gets the text from an external file, i.e.,
   \printfile{file.tex} boils down to \printtext{\input{file.tex}}
   but does nothing if the file does not exist. The point of all
   this is that styles which print the fields 'abstract' and/or
   'annotation' may support an alternative way of adding abstracts
   or annotations to the bibliography. biblatex.def provides the
   following code for that:

   \newcommand*{\bibabstractprefix}{bibabstract-}
   \newcommand*{\bibannotationprefix}{bibannotation-}

   \newbibmacro*{annotation}{%
     \iffieldundef{annotation}
       {\printfile[annotation]{\bibannotationprefix
                               \thefield{entrykey}.tex}}%
       {\printfield{annotation}}}

   \newbibmacro*{abstract}{%
     \iffieldundef{abstract}
       {\printfile[abstract]{\bibabstractprefix
                             \thefield{entrykey}.tex}}%
       {\printfield{abstract}}}

   Instead of including the text in the bib file, it may now be
   stored in an external LaTeX file. For example, instead of saying

   @Article{key1,
      abstract = {This is an abstract of entry `key1'.}
      ...

   in the bib file, you create a file named 'bibabstract-key1.tex'
   and put the abstract in this file. The name of the external file
   must be the entry key prefixed with 'bibabstract-' or
   'bibannotation-', respectively. The 'reading' style makes use of
   this. Also note that, when using the reference code above, a field
   in the bib file takes precedence over external files. E.g., the
   'reading' style will not look for 'bibabstract-key1.tex' if the
   'key1' entry in the bib file has an 'abstract' field.

   Note that this feature needs to be enabled explicitly by setting
   the package option 'loadfiles'. The option is disabled by default
   for performance reasons. Using external files is strongly
   recommended if you have long abstracts or a lot of annotations
   since this may increase memory requirements significantly. See
   the changelog for more pointers.

*  Support for 'American-style' punctuation

   Biblatex finally supports 'American-style' punctuation, i.e.,
   certain punctuation marks placed after a closing quote can be
   moved inside the quotes automatically.

   See \DeclareQuotePunctuation and \mkbibquote in the manual. The
   'american' and 'canadian' localization modules enable this
   feature for periods and commas. See the hints in the manual for
   details.

*  \DeclareCapitalPunctuation replaces \(Enable|Disable)CapitalAfter

   The configuration commands \EnableCapitalAfter and
   \DisableCapitalAfter have been removed and are superseded by
   \DeclareQuotePunctuation.

   \DeclareQuotePunctuation works like \EnableCapitalAfter except
   that it takes a list of characters as its argument. The function
   of \DisableCapitalAfter is now implicit (all characters not
   included in the list will not trigger capitalization).
   
   The change affects the configuration interface only. The default
   user-level behavior of biblatex has not changed (capitalization
   after periods, exclamation marks, questions marks; with the
   '(n)german' and '(n)austrian' localization modules also after
   colons).

*  Hyphenation exceptions in bibliography strings

   This release adds an interface for definining hyphenation
   exceptions in lbx files and/or the document preamble. See
   \DeclareHyphenationExceptions and \DefineHyphenationExceptions
   in the manual.

*  Configurable number tests

   The number tests \ifnumeral and \ifnumerals, which are also used
   by \mkpageprefix and \mkpagetotal, may be adapted. See the
   commands \DeclareNumChars, \DeclareRangeChars, and
   \DeclareRangeCommands for details.

*  Added 'firstinits' package option

   By popular request, I've added a package option which switches
   all first names to initials. Use the \iffirstinits test to query
   its state. The test has already been incorporated into the
   formatting directives in biblatex.def. However, authors of custom
   styles using redefined name formatting directives may want to
   incorporate it into their style, too.

*  Added high-level '\bibpagespunct' macro

   \bibpagespunct is a high-level user macro similar to 
   \labelnamepunct and \subtitlepunct. As with the 'firstinits'
   package option, it's incorporated in the standard styles so you
   may want to do the same in custom styles.

*  Added some expert entry options

   See the entry options 'skipbib', 'skiplos', 'skiplab', and
   'dataonly' in the manual. 

   Note that 'skiplab' and 'dataonly' are intended for hacking only!

*  Improved KOMA-Script and Memoir support

   The headings 'bibliography' and 'shorthands' are responsive to
   the 'bibtotoc' and 'bibtotocnumbered' class options of the 'KOMA'
   classes now. See also \ifkomabibtotoc, \ifkomabibtotocnumbered,
   and \ifmemoirbibintoc.

*  Improved natbib compatibility style

   I've added some missing features to the natbib compatibility
   style. Most notably, citation aliasing is now possible. Note that
   this is intended for legacy files only. In newly created files,
   it is preferable to use biblatex's 'shorthand' field.

*  Spaces in file names

   Whether file names may or may not contain spaces generally
   depends on whether or not the underlying TeX binary supports
   that. This is beyond biblatex's control. If the underlying engine
   supports it, biblatex should not have any problems with spaces in
   a file name.

   However, neither traditional BibTeX nor bibtex8 seem to be
   capable of handling .bib files with spaces in their name. For
   .bib files which supply bibliographic data, there is no fix short
   of avoiding spaces in the file name. For the auxiliary .bib file
   automatically generated by biblatex this release adds a
   workaround. Spaces in the name of this file, which is only used
   internally, will be converted to underscores.

*  New language-specific csf files for bibtex8

   I've added some csf file for use with bibtex8 to the 'resources'
   subdirectory. They implement the proper sorting order for German,
   Danish, Norwegian, and Swedish in Latin 1, Latin 9, and Windows
   Ansi encoding.

   German users should note that even bibtex8 is not able to handle
   the German letter \ss properly. You may need to resort to fields
   like 'sortname' and 'sorttitle' even when using these csf files.

*  Extended manual

   In addition to the usual manual updates related to new features,
   I've also added some new material to the 'hints and caveats'
   section in the author guide of the manual.

RELEASE NOTES FOR VERSION 0.7

The changelog of this release is the longest list of changes in any
biblatex release so far. Skimming the full list in biblatex.pdf is
highly recommended. In the following, I will focus on changes 'under
the hood' which are not mentioned in the changelog, point out things
which may break backwards compatibility, and comment on some
improvements which may not be immediately obvious from looking at
the changelog because they pertain to a set of changes rather than a
single one.

*  User and author interface stable

   Starting with this release, the user and author interface of this
   package may be considered as stable. This means that I will try
   to refrain from making syntactically or functionally incompatible
   changes to the core package, unless I'm forced to do so because
   of a bug or because one of the most recently added features turns
   out to be really awkward. Essentially, citation and bibliography
   styles written for this version should work with biblatex 1.0
   with no or at most minor modifications.
   
   Please note that this is a development aim, but there is no
   guarantee. Also note that the definitions in biblatex.def (mainly
   the formatting directives) are not guaranteed to be stable at
   this point. In other words: if you use the default definitions,
   your style will inherit possible improvements in future versions.
   If you use modified formatting directives, you may need to update
   them to integrate new functions. That should be fairly easy,
   though.

*  CTAN staging area for biblatex styles

   There's a new location for contributed biblatex styles, it's:

   macros/latex/exptl/biblatex-contrib/
   
   Contributed styles should go into a subdirectory of the above
   location. E.g., a style called 'MLA' would go into:
   
   macros/latex/exptl/biblatex-contrib/mla/
   
   Note that the exptl/ subtree is intended for experimental or beta
   code. As soon as biblatex hits 1.0 and moves out of exptl/ to

   macros/latex/biblatex/
   
   there's be a corresponding biblatex-contrib. At this point, all
   contributed styles should be considered experimental because the
   core package is still in beta.

*  Removed biblatex.cbx and biblatex.bbx

   I've removed the files biblatex.cbx and biblatex.bbx from the
   distribution. The code formerly found in biblatex.cbx has been
   moved to biblatex.def. The code formerly found in biblatex.bbx
   has been split up. The most generic parts have been moved to
   biblatex.def. The less generic parts, which are closely tied to
   biblatex's standard bibliography style, are now part of
   standard.bbx.

   I've also rearranged some of the bibmacros formerly found in the
   above files and renamed some of them. If you have been using some
   of that code in a custom bibliography style, don't worry, all the
   code is still there, but parts of it may be arranged differently
   (e.g., a bibmacro may have been split up into two macros or two
   macro may have been merged into one) and the names of some
   bibmacros may have changed.

   Note that biblatex.def is always loaded, but standard.bbx is not.
   If you have been using code which is now part of standard.bbx in
   a custom bibliography style, you need to copy the relevant parts
   to your style.

*  New dependency on etoolbox.sty

   Some of the most generic parts of biblatex.sty have been moved to
   an independent package called 'etoolbox', which is now required.
   The package is available from CTAN and may also be useful for
   style authors.

*  Type-specific formatting directives

   All formatting directives may now be defined on a per-type basis;
   e.g.:
   
   \DeclareFieldFormat[article]{title}{\mkbibquote{#1}}
   
   would define the format of the 'title' field of @article entries
   only. The fallback mechanism for formats now works as follows.
   The command \printfield{title}, when used in an @article driver,
   would check for the following formats (in this order):
   
   title [article]
   title
   default
   
   This also applies to cases where a specific formatting directive
   is requested explicitly, i.e. \printfield[myformat]{title}, would
   check for these formats:

   myformat [article]
   myformat
   default

   The point is that you can override formats on a per-type basis
   without having to hack any drivers.

*  Truncation with 'and others' now supported by literal lists

   Truncating a list with 'and others' in the .bib file is now
   supported by both name lists and literal lists. This used to be
   specific to name lists. See \ifandothers and \ifmoreitems as well
   as \finallistdelim and \andmoredelim for details.

*  Introducing entry options and style-specific options

   This release introduces the concept of an entry option and a new
   'options' field. The 'useprefix' field has been replaced by an
   entry option. Instead of:
   
   useprefix = {true}
   
   you now use

   options = {useprefix=true}

   There are two more predefined entry options called 'useauthor' and
   'useeditor'. These options may still be used globally to set the
   default behavior.
   
   In addition to that, Bibliography and citation styles may define
   additional package and entry options. See \DeclareEntryOption and
   \DeclareBibliographyOption for details.

*  Introducing multicite commands

   This release introduces an entirely new class of citation
   commands called 'multicite' commands. The point of a multicite
   command is that its argument may be a fully qualified list of
   citations where each key has its own pre- and postnote. The syntax
   is straightforward. Instead of:
   
   \cite[See][55]{key1}; \cite[12]{key2}; \cite[93]{key3}
   
   you can now say:
   
   \cites[See][55]{key1}[12]{key2}[93]{key3}
   
   This is particularly useful with parenthetical citations and
   citations given in footnotes. It's also possible to assign a pre-
   and/or postnote to the entire list. These global notes are given
   in parentheses:

   \footcites(See)(and chapter 3)[55]{key1}[12]{key2}[93]{key3}
   
   See \cites, \parencites, \footcites, etc. in the manual. There is
   also an \autocites command (a multicite version of \autocite).

   Defining new multicite commands is very easy because they are
   based on the regular citation commands. See the documentation of
   \DeclareMultiCiteCommand for details.

*  Improved trackers and tracking control

   The 'trackers' provided by biblatex have been greatly improved
   and extended. This release also adds new trackers which
   correspond to the requirements of some common citation styles.
   See the package options 'pagetracker', 'citetracker',
   'ibidtracker', 'opcittracker', and 'loccittracker' for all the
   gory details.  Also see \ifciteibid, \ifopcit, and \ifloccit.
   It's possible to control tracking in the document, see
   \pagetrackertrue/false and \citetrackertrue/false for details.
   Note that text commands like \citetitle are now exluded from
   tracking by default. See also the point below.

*  Tracker reset support

   It's possible to reset trackers and citation styles and several
   different levels. For the built-in trackers, see the package
   option 'citereset' as well as the user-level command \citereset.
   For style-specific reset support, see \InitializeCitationStyle,
   \InitializeBibliographyStyle, \OnManualCitation, and the
   user-level command \mancite.

*  New entry types, more custom entry types

   This release adds the entry types 'periodical' and 'patent',
   which are fully supported by the standard styles. Several new
   custom types have also been added. The custom types are not
   supported by default, but they may be useful in custom styles.

*  New field/list subtype: key field/list

   I've introduced a new field/list data subtype called key
   field/key list. They may hold printable data or localization keys
   and work as follows: A test is performed to determine whether the
   value of the field is a known localization key. If so, the
   localized string is printed. If not, the value is printed as is.

*  Improved postnote handling, alternative pagination schemes

   The handling of page numbers in the 'pages' field and in the
   postnote argument to citation commands has been improved
   significantly. Biblatex does range detection now and recognizes
   Roman numerals as numbers. It also supports alternative
   'pagination' schemes (columns, line or verse numbers, etc.).

   See the fields 'pagination' and 'bookpagination' and related
   pointers in the changelog. See also \mkpageprefix, \ppspace,
   \pno, \ppno, \nopp, \psq, \psqq.

*  Support for unique names in citations

   This release introduces support for unique names in citations.
   Some author-year and author-title citation styles require
   unambiguous names in citations. For example, with entries such as

   John Smith 1995
   Edward Smith 1995
   
   citations would be rendered as
   
   J. Smith 1995
   E. Smith 1995
   
   rather than
   
   Smith 1995a
   Smith 1995b
   
   See the package option 'uniquename' and the special counter
   'uniquename' for details. Note that this feature is now enabled
   by default in the following styles: authoryear, authoryear-comp,
   authortitle-terse, authortitle-tcomp.

*  Improved support for numeric labels

   The 'defernums' package option addresses the problem of
   discontinuous numbering when using a numeric style in combination
   with bibliography filters. If this option is enabled, the numeric
   labels are assigned the first time an entry is printed in any
   bibliography. This is similar to the traditional algorithm used
   by LaTeX to assign numeric labels.

*  Alternative, non-inheriting cross-referencing mechanism

   This release introduces an alternative cross-referencing
   mechanism which does not inherit any data. It's useful in styles
   which format cross-referenced entries differently. See the
   description of the field 'xref' and related pointers in the
   manual.

*  Support for different encodings

   Biblatex is now capable of handling .bib files with an encoding
   which is different from the encoding of the .tex file. See the
   'bibencoding' package option for details.

*  More robust handling of citation keys

   This release adds some normalization code which deals with
   special characters in citation keys. A typical example are keys
   which contain an underscore. This should be much more robust now.

*  Renamed fields

   The 'journal' field has been renamed to 'journaltitle' but the
   old name is still supported as an alias. There's also a
   'journalsubtitle' field and fields for the title and the subtitle
   of a single issue. In other words, article entries now support a
   complete set of titles similar to inbook-like entry types:
   journaltitle/issuetitle/title essentially correspond to
   maintitle/booktitle/title.

   The field name 'id' turned out to be incompatible with JabRef.
   Apart from that, the name is a bit too generic for what this
   field holds anyway. It's called 'eid' now (electronic ID) and
   holds an article ID used by online journals or journals which are
   also available online.

*  'labelctitle' replaced by 'singletitle'

   The 'labelctitle' field has removed in favor of a different
   mechanism using a test called \ifsingletitle. The package option
   'labelctitle' has also been renamed to 'singletitle'.

*  Alphabetic label now configurable

   The alphabetic label provided in the 'labelalpha' field is now
   configurable to a certain extend. It is responsive to the global
   package options 'maxnames' and 'minnames'. It's also possible to
   influence the handling of truncated labels by redefining
   \labelalphaothers.

*  Name types

   This release introduces the concept of a name type. This is best
   explained by example. Suppose a book has a compiler rather than
   an editor. In previous versions of this package, there was no way
   to override the string 'editor' and 'edited by'. Starting with
   this release, you may specify 'compiler' as an editor type:

   @book{...,
     editor     = {...},
     editortype = {compiler},
   
   Supported editor types are 'editor' (the default) and 'compiler'.
   Note that this mechanism is hooked up to bibliography strings
   hence it may be extended. See the fields 'authortype',
   'editortype', and 'name[a-c]type' in the manual.

*  Consistent set of wrappers

   I've completed the generic wrapper commands provided by biblatex
   so that they form a complete set. Instead of using the solution
   in the left column of the following list, use the wrapper in the
   right column:

   (...)                   ->   \mkbibparens{...}
   [...]                   ->   \mkbibbrackets{...}
   \footnote{...}          ->   \mkbibfootnote{...}
   \textsuperscript{...}   ->   \mkbibsuperscript{...}
   \emph{...}              ->   \mkbibemph{...}
   \enquote{...}           ->   \mkbibquote{...}
   ``...''                 ->   \mkbibquote{...}

   The wrappers integrate much better with biblatex and they also
   provide additional features.

*  New citation styles, some styles renamed

   I've renamed all verbose citation styles from 'authortitle-*' to
   'verbose-*' and added some new styles. See the changelog for
   details.

*  natbib compatibility style

   To facilitate the move from natbib to biblatex, this release adds
   a special natbib compatibility style which maps natbib's core
   citation commands to equivalent biblatex commands. See the 
   package option 'natbib' for details.

*  All citation commands scan ahead for punctuation

   Starting with this release, all citation commands scan ahead for
   punctuation to avoid double punctuation at the end of a citation.
   This used to be a feature exclusive to \autocite. The 'autopunct'
   package option and the \DeclareAutoPunctuation command will now
   affect all citation commands, not only \autocite.

*  Support for font style adaptation of punctuation

   This release implements an alternative way of dealing with
   punctuation after a field printed in a different font (for
   example, a title printed in italics). The standard (La)TeX way of
   dealing with this problem is to add a small amount of space (the
   so-called italic correction) to avoid clashes between the final
   letter of a word in italics and the following (upright)
   punctuation mark.

   Biblatex is now capable of adapting the punctuation to the font
   of the preceeding field. See '\mkbibemph' and '\setpunctfont' for
   details. Note that this feature is experimental. It may very well
   have a few quirks. Also note that it is disabled by default. Use
   the 'punctfont' package option to enable it.

*  Extended language support: Norwegian, Danish

   This release comes with a norsk.lbx and a danish.lbx file. The
   translations were contributed by Johannes Wilm.

RELEASE NOTES FOR VERSION 0.6

*  Style-independent citations

   This release introduces a special command for style-independent
   citations. The idea behind the \autocite command is to provide
   higher-level citation markup which makes global switching from
   inline citations to citations given in footnotes (or as
   superscripts) possible.

   The \autocite command is built on top of lower-level commands
   like \parencite and \footcite. The citation style provides an
   \autocite definition by way of \DeclareAutoCiteCommand. This
   definition may be activated by way of the 'autocite' package
   option. See the documentation of \autocite in the manual for
   further details.

*  Forcing capitalized name prefixes

   One thing that's been on my personal wishlist for some time is an
   equivalent to natbib's \Citet command. This release finally
   introduces additional citation commands which force capitalized
   name prefixes (provided that there is a prefix and that it is to
   be printed as part of the citation, i.e. the 'useprefix' option
   is enabled). The new citation commands are defined as follows in
   biblatex.cbx:

      \newcommand*{\Cite}{\bibsentence\cite}
      \newcommand*{\Textcite}{\bibsentence\textcite}
      \newcommand*{\Parencite}{\bibsentence\parencite}
      \newcommand*{\Footcite}{\bibsentence\footcite}
      \newcommand*{\Citeauthor}{\bibsentence\citeauthor}

   Here's how it works. Biblatex's punctuation tracker is based on
   TeX's space factor. All the \bibsentence command does is setting
   the space factor to a special sentinel value which is detected by
   \bibstring. The name formatting directive used by all citation
   commands now incorporates the new \ifcapital test. This test is
   true if the punctuation tracker would capitalize a bibliography
   string at this point. If the formatting directive detects the
   sentinel value, it will capitalize the name prefix (if
   applicable). A handy side-effect of this approach is that a
   possible 'prenote' argument is taken into account automatically.
   For example:

      '\cite{vandoren}'      prints 'van Doren 1995'
   
   and

      '\Cite{vandoren}'      prints 'Van Doren 1995'
   
   but

      '\Cite[See]{vandoren}' prints 'See van Doren 1995'.
   
   This also works in conjunction with bibliography strings. For
   example, if the citation style replaces the standard citation by
   something like '\bibstring{ibid}', then

      '\cite{vandoren}'      prints 'ibid.'
   
   but

      '\Cite{vandoren}'      prints 'Ibid.'.
   
   In other words, unless the citation style is doing something very
   unusual, there is no need to define \Cite et al. explicitly with
   \DeclareCiteCommand. The default definitions should work fine in
   all normal cases. If the style doesn't print any names but rather
   numerical or alphabetic citations then nothing is capitalized, so
   that's no problem either.

*  Custom filters for \printbibliography

   See \defbibfilter and the 'filter' option of \printbibliography
   in the manual.

*  Support for unsorted bibliographies

   See the package option 'sorting=none'.

*  Automatic truncation of literal lists

   This release introduces the package options 'maxitems' and
   'minitems' which are similar to 'maxnames' and 'minnames' but
   affect literal lists. There are also corresponding (local)
   options for \printbibliography, \printshorthands, and so on.

*  Improved support for corporate authors and editors
   
   There are two new name lists ('shortauthor' and 'shorteditor')
   which may be helpful when dealing with corporate authors and
   editors. Basically, 'author' and 'editor' are used in the
   bibliography whereas 'shortauthor' and 'shorteditor' are used in
   citations. The point is that you can give a short form of the name
   for use in citations. For example:
   
   @Type{key,
    author = {{National Aeronautics and Space Administration (NASA)}},
    shortauthor = {NASA},
    ...
   }
   
   This will print "NASA" in citations but "National Aeronautics and
   Space Administration (NASA)" in the bibliography. Note that
   'shortauthor' and 'shorteditor' are name lists, not literal
   fields. This means that corporate names must be wrapped in an
   additional pair of curly braces.

*  Improved support for articles: journal series and electronic ID

   Journal series and article IDs are now catered for by the
   standard styles (entry type 'article'). Note that the 'articleid'
   field has been renamed to 'eid'. See the annotated bibliography
   in the 'examples' directory for examples.

*  DOI support

   The 'doi' field is now catered for by the standard styles
   (complete with hyperlinks). See the annotated bibliography in the
   'examples' directory for examples.

*  Fine-grained control of title formatting

   Previous versions of this package provided two formatting
   directives for the title field: 'title' (for entry types like
   'book', 'collection', etc.) and 'titlein' (for 'article',
   'inbook', 'incollection', etc.). I've enhanced this scheme such
   that the format of the title may be defined on a per-type basis.
   In biblatex.def you'll find the following directives for the
   bibliography:

   \DeclareFieldFormat{title:book}{\emph{#1}\isdot}
   \DeclareFieldFormat{title:inbook}{\enquote{#1}\midsentence}
   ...

   as well as dedicated directives for the titles in citations:

   \DeclareFieldFormat{citetitle:book}{\emph{#1}\isdot}
   \DeclareFieldFormat{citetitle:inbook}{\enquote{#1}\midsentence}
   ...

   and in the list of shorthands:

   \DeclareFieldFormat{lostitle:book}{\emph{#1}\isdot}
   \DeclareFieldFormat{lostitle:inbook}{\enquote{#1}\midsentence}
   ...

   I've updated all generic definitions in biblatex.cbx,
   biblatex.bbx, and standard.bbx accordingly. Note that the
   'title:type' directives are used for both the 'title' and the
   'subtitle' field (which are wrapped in a \printtext command
   controlling the formatting, see the 'title+stitle' bibmacro in
   biblatex.bbx for an example of how it works). In other words:
   redefining the 'subtitle' field formatting directive has no
   effect.

*  Rearranged localization keys

   I've rearranged and extended the localization keys quite a bit.
   This also implies several changes in biblatex.bbx.

*  Support for KOMA-Script and Memoir

   The default definitions of the bibliography headings (as defined
   in biblatex.def) are now automatically adapted for the
   KOMA-Script classes and the Memoir class.

*  Improved Spanish support

   The Spanish localization module now handles the Spanish word
   'and' properly ('y' or 'e', depending on the context).

*  Italian support

   This release comes with a new italian.lbx file. The translations
   were contributed by Enrico Gregorio.

RELEASE NOTES FOR VERSION 0.5

   My original plan for 0.5 was to make minor changes only and focus
   on fixing bugs. Since only a few issues turned up (memory issues
   in biblatex.bst), I ended up implementing new things from the
   wishlist. Please note that the wishlist is closed until after
   version 1.0.

*  New author-title citation styles

   I've added some verbose author-title styles which may be of
   interest for users in the humanities. The styles are called
   'authortitle-verb' and 'authortitle-cverb'. The 'traditional
   style has been renamed to 'authortitle-trad' and there is an
   additional new style called 'authortitle-strad'. The styles
   support shorthands and are fully hyperlinked. The links point to
   the first, verbose citation instead of the bibliography so these
   styles may be used without a bibliography, if desired.

   I've also added a matching 'dummy' bibliography style for every
   citation style. The dummy style will simply load one of the more
   generic backend styles. For example, the 'authortitle-verb' style
   loads the 'authortitle' style. The point is that you may simply
   use the 'style' package option instead of 'citestyle' plus
   'bibstyle'.

*  Conditional special fields, optimizations in biblatex.bst

   The special fields 'labelalpha', 'labelctitle', 'labelnumber',
   and 'labelyear' are conditional now. If a style requires one of
   those fields, it needs to request them by setting the
   corresponding package option. E.g., all numeric styles include
   the line

      \ExecuteBibliographyOptions{labelnumber}

   This will instruct biblatex to provide the 'labelnumber' field
   which is undefined by default now. Making these fields
   conditional allows for some memory-related optimizations in
   biblatex.bst.

*  Author-level support for full citations

   This version adds an author-level command which makes it possible
   to execute a bibliography driver in a citation command. See
   '\rundriver' in the manual.

*  Page tracker

   I've implemented a page tracker. The page tracker records the
   real page on which citations, entries in the bibliography, and
   entries in the list of shorthands end up. It can work on a per
   page basis or per double page spread. The page tracker is
   disabled by default. See the package option 'pagetracker' and the
   commands '\iffirstonpage' and '\ifsamepage' in the manual.

*  Unique indentification of reference instances

   Every 'instance' of a reference is now uniquely identified by a
   value of the 'citecount' counter. In other words: this counter is
   incremented for every key processed by any citation command, for
   every item in the bibliography and for every item in the list of
   shorthands. This is required by the page tracker but it's also
   useful if you need to generate a unique anchor name for
   hyperlinks.

*  Extended support for hyperlinks

   I've renamed '\bibhyperlink' to '\bibhyperref' and added generic
   '\bibhypertarget' and '\bibhyperlink' commands. '\bibhyperref'
   creates a link from a citation to the corresponding item in the
   bibliography. '\bibhypertarget' and '\bibhyperlink' are more
   generic and correspond to the '\hypertarget' and '\hyperlink'
   commands of the hyperref package. The point here is that you
   don't need an explicit '\ifhyperref' check. If hyperlinks are
   disabled, these wrappers will simply pass on their text argument.

   As an additional benefit, they also provide better anchor
   placement. The anchors created by '\hypertarget' seem to be
   located at the baseline, i.e. if you click on a link you get the
   impression that your PDF viewer jumps to the line of text just
   below the one you mean.

*  More name lists

   See the 'annotator', 'commentator', 'introduction', 'foreword',
   and 'afterword' lists in the annotated example.

*  Special fields for indexing

   See the 'indextitle' and 'indexsorttitle' fields in the annotated
   example and the indexing examples.

*  Spanish support

   This release comes with a preliminary spanish.lbx file. The
   translations were contributed by Ignacio Fern\'andez Galv\'an.
   Some advanced features are missing from this file because they
   are still under scrutiny but it should nevertheless be perfectly
   funtional.

*  Examples

   I've added a biblatex showcase with some example files in the
   'examples' subdirectory. There's an example for every citation
   style and some generic examples demonstrating multiple
   bibliographies, split bibliographies, indexing, and so on.

RELEASE NOTES FOR VERSION 0.4

*  Wishlist closed

   As of this release, the wishlist is closed until after version
   1.0. There are already more wishes in the pipeline than I can
   implement in time for 1.0...

RELEASE NOTES FOR VERSION 0.3

   The changelog for this release is shockingly long so I'll just
   point out the general developments behind the individual entries
   in the changelog. See the full changelog for all the gory
   details. Note that styles written for version 0.2 will not work
   with 0.3.

*  New data type: literal list

   This release introduces a new data type for literal lists. The
   point of a literal list is that the list is split up at the 'and'
   but the individual items are not dissected further. This is
   intended for fields such as 'location' and 'publisher' since they
   may contain a list of items but these items are not personal
   names.

   I have modified the macro names of the entire data interface for
   lists to match the change. All macros with the term 'list' in
   their name are renamed such that 'list' is replaced by 'name(s)'.
   For example, \printlist is now \printnames, \DeclareListFormat is
   \DeclareNameFormat, and so on. The old names are used for new
   macros which deal with literal lists. The complete list of
   affected macros is given in the changelog. Note that the names of
   the macros which dump the unformatted data have changes as well
   (\biblist -> \thename; \thelist (new); \bibfield -> \thefield).

   These changes will require updates to all custom citation and
   bibliography styles. However, the changes are only a matter of
   some search & replace commands. I'm sorry about the inconvenience
   but I think the new naming scheme is better than having macro
   names like \printliterallist. I've decided to go for it now since
   biblatex is still in beta.

   As part of these changes, the data type of the following fields
   has been changed from 'literal field' to 'literal list':
   location, origlocation, publisher, institution, organization.

*  Support for hyperref

   Hyperref support is available now. This means that citations may
   be transformed into links pointing to the bibliography. All
   standard citation styles support that out of the box, custom
   styles need to use the new hyperref interface. It works like
   this: the anchor (i.e. the target of the link) is set
   automatically by biblatex hence the bibliography style does not
   need to do anything special. The citation style is responsible
   for marking the link area. This is just a matter of passing the
   relevant part of the citation to a special macro or formatting
   directive doing the low-level work. See the changelog for
   pointers to the relevant sections of the manual.

*  Support for back references

   I've added support for back references. The page numbers are
   provided in the 'pageref' field which uses the new literal list
   data type. Printing them is just a matter of \printlist{pageref}.
   Note that you need to enable the 'backref' package option to get
   any back reference data. There is also a bibmacro called
   'pageref' in biblatex.bbx which adds a label. Bibliography styles
   should print the list via \usebibmacro{pageref}. There are two
   related list formatting directives in biblatex.def. The default
   directive just prints the list as is, using a comma as a
   separator. The directive 'pageref:comp' prints a sequence of more
   than two consecutive pages as a range. The easiest way to try it
   out is: \DeclareListAlias{pageref}{pageref:comp}.

   The references are restricted to page numbers, back references to
   sections are not supported. This is a deliberate decision. I
   haven't bothered implementing back references to sections because
   LaTeX's referencing mechanism is notoriously unreliable in this
   respect. It essentially provides two pieces of information: the
   formatted value of the last counter incremented by way of
   \refstepcounter and the page number. The latter value is usually
   unambiguous but the former could refer to just about everything.
   The implications of this become obvious when you're using the
   backref package with its 'ref' option (rather than 'pageref') and
   put \cite commands in footnotes. The bibliography will then
   include something like 'sections 1, 2, 3', but these numbers do
   not refer to sections, these are footnote numbers!

   Getting back references to sections right would require
   reimplementing LaTeX's entire referencing mechanism (or
   interfacing with a package doing that) and I don't want to get
   into that business just yet. I may look into support for the zref
   package later, but that's something for a post-1.0 release of
   biblatex.

*  Rearranged author-title citation styles

   I've rearranged the author-title citation styles because most
   people seem to expect the behavior of the old 'authortitle-verb'
   style from the plain 'authortitle' style. So 'authortitle-verb'
   is the plain 'authortitle' style now. The style formerly known as
   'authortitle' has been renamed to 'authortitle-terse',
   'authortitle-comp' is 'authortitle-cterse' now. I've also added a
   new 'authortitle-comp' style to round off this subset of styles.

*  Handling of thebibliography/theshorthands streamlined

   The handling of thebibliography and theshorthands as well as some
   related facilities has been overhauled and streamlined. See the
   changelog and section 4.2.2 of the manual for details.

*  Handling of 'and others' simplified

   The way biblatex handles the string 'and others', which is used
   in bib files to truncate a list of names, has been overhauled and
   simplified. Essentially, I have removed 'moreauthor' and similar
   fields since biblatex handles this internally now. All style
   authors need to do is use \ifandothers and/or \ifmorenames. See
   the manual for details.

*  Improved \addtocategory

   \addtocategory now cycles its arguments through the aux file.
   This means that it may be used in the preamble and anywhere in
   the document body, even after \printbibliography.

RELEASE NOTES FOR VERSION 0.2

*  Internal changes in bibliography styles

   I have rearranged all bibliography styles. It should be more
   obvious now how many code is shared by the bibliography styles,
   namely all 'driver' code. The shared code has been moved to
   standard.bbx, so think of that as the biblatex standard style.
   This code is used by numeric.bbx, alphabetic.bbx,
   authortitle.bbx, and authoryear.bbx; standard.bbx is not meant to
   be used stand-alone. A few bibmacros have also been moved to
   biblatex.bbx.

*  Internal changes in citation styles

   There is only one change affecting the citation styles. The
   'postnote' bibmacro in biblatex.cbx now automatically inserts a
   prefix like 'p.' or 'pp.' where applicable.

*  Optional argument for \printtext

   \printtext takes an optional argument now. The point is that you
   can use \printtext as a formatting hook. The advantage of this
   approach is that \printtext integrates with the punctuation
   tracking. I have revised biblatex.bbx to use this approach where
   applicable.

*  New fields

   There are several new fields, some of which are supported by the
   standard styles. This has lead to further changes in
   biblatex.bbx, including changes to the names of existing
   bibmacros.
