Handle old term form
sub verboas if it is
sub-verbo(the new form).
Update to latest locales in CSL repository.
Makefile: Fix update-locales target.
Keep explicit "et al." (#102, Albert Krewinkel).
Add any references in
CitationItem[API change]. This corresponds to the
itemDatathat can appear in the JSON representation of a citation item.
Add Ord, Eq instances for
Add Term parameter to TagTerm [API change].
Add TagPrefix, TagSuffix constructors to Tag [API change].
Make sure that extracted AuthorOnly names have the correct formatting (#55).
Do case-insensitive sorting, like Zotero (#91).
Ignore "ibid" entries in computing ambiguities.
Improved disambiguation for author-in-text citations.
In disambiguating, convert author-in-text to normal citations. Otherwise we disambiguate incorrectly.
Fix title disambiguation with note style (#90). Previously we'd been calculating ambiguities by generating renderings for citation items independently of context. This meant that we didn't detect ambiguities in "subsequent" citations (which might e.g. just have an author).
Ensure we don't do collapsing of items across a prefix or suffix (#89). If we have
[@doe99; for contrasting views see @smith33; @doe00], we don't want to get collapsing to
(Doe 1999, 2000; for contrasting views, see Smith 1933). This isn't strictly by the spec, but it gives better results.
Allow collapsing after an initial prefix.
- Ensure that position evaluates false inside bibliography (#99).
CiteprocOptions[API change]. When this is set to True, we hyperlink bibliography entries according to the draft of the CSL v1.02 spec (Appendix VI). When an entry has a DOI, PMCID, PMID, or URL available but none of these are rendered by the style, add a link to the title (or, if no title is present, the whole entry), using the URL for the DOI, PMCID, PMID, or URL (in that order of priority). (Benjamin Bray, #88.)
In generating citation labels, only use
issueddate. Not, for example,
lookupQuotes. [API change]
localizeQuotesmethod to CiteprocOutput class [API change].
Citeproc.CslJson, Citeproc.Pandoc: Implement
localizeQuotesafter rendering. This ensures that quotes are properly localized and flipflopped. Previously this was done in
renderCslJson(for CSL JSON) and in pandoc (for Pandoc Inlines). It is more consistent to do this as part of the rendering pipeline, in citeproc itself.
Citeproc.CslJson: Drop the Locale parameter from the signature of
renderCslJson[breaking API change]. It was only needed for quote localization, which now occurs outside of this function.
Citeproc.Pandoc: use a Span with class csl-quoted for quotes, rather than a Quoted inline. This way we can leave Quoted elements passed in by pandoc alone, and we won't get strange effects like the one described in #87 (where
"behaves differently when in a citation suffix).
Default to Shifted with
icuflag (#83). This makes the library behave similarly whether compiled with
icuor with the default
unicode-collationand prevents test failures with
Require recent text-icu with icu flag. Older versions don't build with newer versions of icu4c.
Support links in CslJson (Benjamin Bray). Currently they are only supported in rendering, not parsing (in support of #88).
Allow test cases to specify CiteprocOptions (Benjamin Bray).
Update locales from upstream.
Add new CSL tests to repository.
- Change Pandoc
inNoteso it creates a
csl-noterather than a
Note. This should make it easier to integrate citations with ordinary notes in pandoc.
- Do not hyperlink author-only citations (#77). If we do this we get two consecutive hyperlinks for author-in-text forms.
movePunctuationInsideQuotes: only move
!, as per the CSL spec.
- Change Pandoc
- We now use Lang from unicode-collation rather than defining our own. The type constructor has changed, as has the signature of parseLang.
- Use unicode-collation by default for more accurate sorting.
- text-icu will still be used if the icu flag is set. This may give better performance, at the cost of depending on a large C library.
- Change type of SortKeyValue so it doesn't embed Lang. [API change] Instead, we now store a language-specific collator in the Eval Context.
- Move compSortKeyValues from Types to Eval.
- Add curly open quote to word splitters in normalizeSortKey.
- Improve date sorting: use the format YYYY0000 if no month, day, and YYYYMM00 if no day when generating sort keys.
- Special treatment of literal "others" as last name in a list (#61). When we convert bibtex/biblatex bibliographies, the form "and others" yields a last name with nameLiteral = "others". We detect this and generate a localized "and others" (et al).
- Make abbreviations case-insensitive (#45).
- Fix bug introduced by the fix to #61 (#74). In certain circumstances, we could get doubled "et al.".
- Depend on unicode-collation unconditionally (#71). It is necessary even when text-icu is used, because of Text.Collate.Lang.
- Rename tests in extra/ so they fall into categories.
makeReferenceMapto return a cleaned-up list of references as well as a reference map. The cleanup-up list removes references with duplicate ids. When there are multiple references with the same id, the last one is included and the others discarded. [API change]
- In parsing abbreviations JSON, ignore top-level fields besides "default" (#57), e.g. "info" which is used in Zotero's default abbreviations file.