diff options
Diffstat (limited to 'Master/texmf-dist/doc/latex/biblatex/CHANGES.md')
-rw-r--r-- | Master/texmf-dist/doc/latex/biblatex/CHANGES.md | 122 |
1 files changed, 122 insertions, 0 deletions
diff --git a/Master/texmf-dist/doc/latex/biblatex/CHANGES.md b/Master/texmf-dist/doc/latex/biblatex/CHANGES.md index 6bc039b0134..ed0c8706740 100644 --- a/Master/texmf-dist/doc/latex/biblatex/CHANGES.md +++ b/Master/texmf-dist/doc/latex/biblatex/CHANGES.md @@ -1,3 +1,125 @@ +# RELEASE NOTES FOR VERSION 3.12 +- **INCOMPATIBLE CHANGE** The syntax for defining data annotations in the + BibLaTeXML data source format has changed to accommodate named + annotations. Annotations are no longer attributes but are fully-fledged + elements. It is not expected that this will impact any current users. +- **INCOMPATIBLE CHANGE** The field/fieldset argument to the `\translit` + command is now mandatory to allow for a new optional argument which + restricts transliteration to entries with particular `langid` fields. +- The field `sortyear` is an integer field now and not a literal. This is + because the `sortX` fields should be the same datatype as the `X` field + as sorting depends on this. This fixes an issue where years were not + sorted properly as integers. `sortyear` was sometimes used to tune date + sorting as in "1984-1", "1984-2" etc. for multi-volume collections with + the same year. However, this is really an abuse of the sorting template + system since this should be done by having a semantically more granular + sorting item to differentiate below the year level (typically, `volume` + does this for multi-volume works and this is already part of all default + sorting templates). The example .bib that comes with biblatex has been + changed to remove such `sortyear` abuses and the sorting is not impacted + as they examples using this already have either `volume` or `sorttitle` + which made this abuse of `sortyear` unnecessary anyway. +- The field `number` is a literal field now and not an integer. This allows for + a wider range of possible input such as "S1", "Suppl. 1", "1-3". + If you want to sort by `number` and only have integers in there, you should + consider using a custom data model to turn `number` back into an integer type + field, since sorting integers as literals has performance implications and + might lead to undesired sorting such as "1", "10", "2". +- **INCOMPATIBLE CHANGE** Removed the 'semi-hidden' option `noerroretextools`. + If you want to load `noerroretextools` now, you need to define the macro + `\blx@noerroretextools` instead. This can for example be done with + ``` + \usepackage{etoolbox} + \cslet{blx@noerroretextools}\empty + \usepackage{biblatex} + ``` + or + ``` + \makeatletter + \let\blx@noerroretextools\@empty + \makeatother + \usepackage{biblatex} + ``` + You still need to make sure that all macros used by `biblatex` are restored + to their `etoolbox` definitions before loading `biblatex`. +- New macro `\abx@missing@entry` to style missing entrykeys in citations. +- Added field format deprecation macros `\DeprecateFieldFormatWithReplacement` + and friends. +- Add `\ifdateyearsequal` to check if two dates have the same year and era + date part. Since `year`s are always non-negative integers and the 'sign' is + stored as the `era`, you should use `\ifdateyearsequal` instead of a simple + `\iffieldequals{#1year}{#2year}` to compare years. The latter can lead to + undesired results if the years have opposite signs, but are otherwise the + same. +- New values `part+`, `chapter+`, `section+` and `subsection+` for 'section'- + valued options `refsection`, `refsegment` and `citereset`. These options + are then executed at not only the specified level of sectioning, but also + all higher levels. +- Add second optional argument to `\DeclareDelimAlias*`. +- Allow keywords for dataonly/skipped entries as well. +- Added `maxcitecounter`. +- Deprecate `\labelnamepunct` in favour of the context-sensitive + `nametitledelim`. + For compatibility reasons `\labelnamepunct` still pops up in the code here + and there, but `nametitledelim` should be preferred now. +- The `xstring` package is not loaded by default any more. + Style developers whose styles make use of that package should load it + explicitly. +- `authoryear.bbx` now has a macro `bbx:ifmergeddate` that can be used to + check whether the date has been printed at the beginning of an entry + and can thus be suppressed later in the `date` and `issue+date` macros. + The macro works like a test and expands to the `<true>` branch if the date + has been merged and can be suppressed, it expands to `<false>` if the date + has not been merged. In practice `\printdate` should then be issued + if and only if the test yields false. + + This change means that the definition of the `date` macro can be the same for + all mergedate settings and that only `bbx:ifmergeddate` is redefined for + each different value. No backwards compatibility issues are expected, + but style authors are encouraged to test the changes and see if the new + macro could be useful for their styles. +- For a long time `biblatex` has defined `\enquote` if `csquotes` was not + loaded. This behaviour was not documented, the official command intended + for quotation marks was always `\mkbibquote`. Because `biblatex` should not + (re)define user-level commands that are not primarily associated with + citations or the bibliography, from this release on `\enquote` is not defined + any more, instead the internal command `\blx@enquote` is defined and used. + The same holds for `\initoquote`, `\initiquote`, `\textooquote`, + `\textcoquote`, `\textoiquote`, `\textciquote`. + `biblatex` still defines the internal commands `\@quotelevel`, `\@quotereset` + and `\@setquotesfcodes` if `csquotes` is not loaded. + + Users are encouraged to use `csquotes` for proper quotation marks, but can + get back the old behaviour with + ``` + \makeatletter + \providerobustcmd*{\enquote}{\blx@enquote} + \makeatother + ``` + or + ``` + \newrobustcmd*{\enquote}{\mkbibquote} + ``` +- Add new list wrapper and name wrapper formats (`\DeclareListWrapperFormat`, + `\DeclareNameWrapperFormat`) to style a (name) lists in its entirety. + This is useful because name and lists formats normally style only one + particular item of the list. The wrapper format can be used to easily format + the entire list in italics, for example. +- `\DeclareCitePunctuationPosition` can be used to configure the punctuation + position for citation commands similar to the optional `position` argument + of `\DeclareAutoCiteCommand`. +- If the `\pdfmdfivesum` primitive is available (via `pdftexcmds`' + `\pdf@mdfivesum`) the `labelprefix` value is hashed for internal use, making + it safer for construction of macro names and the like. If you don't like + that you can turn off the behaviour by redefining `\blx@mdfivesum`. The + fallback in case `\pdf@mdfivesum` is unavailable is + ``` + \let\blx@mdfivesum\@firstofone + ``` + + As before the labelprefix value is fully expanded before use. If its contents + are unexpandable you need to avoid expansion with `\detokenize`. + # RELEASE NOTES FOR VERSION 3.11 - `\printbiblist` now supports `driver` and `biblistfilter` options to change the defaults set by the biblistname. |