Hello Joey,
Just a quick note to thank you for your work on this. I use Chicago
which is close enough to SBL that I can use it. I'll test it for a
while and report any issues I encounter.
Jelle
On Thu, Dec 9, 2021 at 12:47 AM Joey McCollum via ntg-context
wrote:
>
> A while ago, I mentioned in a thread on the mailing list that I was working
> on a new bibliographic rendering for the SBL citation style. After additional
> testing and implementation of various features (e.g., an authorconversion
> that inverts the first author and prints all subsequent authors in normal
> order, an author-title sort order for bibliographic entries, support for
> shorthands/abbreviations, support for Citation Style Language locators, and
> support for biblatex-style citation macros that intelligently move
> punctuation that follows them). While optimizations for performance,
> simplifications of the code, and new feature additions are still desirable,
> the module is in working condition and can now be incorporated in a future
> ConTeXt update. The new .lua and .mkvi files for the SBL rendering, updated
> publ-aut.lua and publ-imp-author.mkvi files, and some new code intended to be
> incorporated into publ-ini.lua and publ-ini.mkiv can all be found in project
> GitHub repo at the https://github.com/jjmccollum/context-sbl.
>
> While I worked on this module, Denis Maier (who provided valuable feedback
> and suggestions throughout) and I put together a wish list of new features we
> would like to see implemented in the publications support core modules. We
> put together the list with Hans and Alan in mind, but any help is
> appreciated! The list follows:
>
> Probably the most urgent need is for field inheritance mappings through
> crossrefs to be fixed. These should be customizable in bibliographic
> specification .lua files (e.g., publ-imp-sbl.lua), or at the very least, they
> should follow the pattern of biblatex. As it is currently implemented, field
> inheritance seems to map any field from the cross-referenced entry to a field
> of the same name in the current entry if it doesn't have a field of this name
> already. But this causes serious problems when one needs to check if an entry
> has a given field (such as "shorthand") at all; specifically, the \btxdoif
> macro will execute its argument if the current entry or any entry it
> cross-references contains a field with that name. What we want is a more
> disambiguated mapping of inherited fields: for many common entry types (such
> as @book, @collection, @reference, @proceedings, and @inbook, @incollection,
> @inreference, and @inproceedings), biblatex maps the title field of the
> cross-referenced entry to a different-named field in the lower-level entry
> (e.g., maintitle -> booktitle -> title, maineditor -> bookeditor -> editor,
> etc.).
> A mechanism for setting default field values (e.g., "pagination", "options")
> by category in the .lua file for a given specification. (In the SBL spec, for
> instance, an entry of category @ancienttext or @classictext should have
> options={skipbib=true} by default.) If the user actually specifies this field
> in an entry, then the default value would be overwritten.
> If it hasn't been done already, the \btxdoifelsecitedone macro defined in the
> cont-new.mkiv file in https://github.com/jjmccollum/context-sbl should be
> implemented in publ-ini.lua and publ-ini.mkiv.
> Related to the previous entry, the ability to remove existing entry tags from
> the "collected" or "tobesaved" lists defined in publ-ini.lua. This would
> allow us to override the usual list registry rules of \cite based on the
> values of, say, an entry's category, "type" field or "options" field.
> General support for the useauthor, useeditor, usetranslator, skipbib, and
> skipbiblist entry options from biblatex. These could be implemented as
> citation-level btx options (currently, useauthor already is implemented for
> the SBL style).
> Support for disambiguation in "author" citations made with the "name"
> authorconversion. Publications support already allows us to map different
> versions of the same name (e.g., "John Doe" and "J. Doe" to a single value.
> But ideally, the publications support module should also check if surnames
> are shared by distinct authors, and if so, it should then check for distinct
> first and middle initials, and then distinct full names, until it finds a
> difference. The shortest distinct renderings should then be used for the
> "name" authorconversion. Different bibliographic renderings have different
> rules for this, so implementations of these different rules (detailed at
> https://docs.citationstyles.org/en/stable/specification.html#disambiguation)
> would be ideal.
> General support for ibidem (same entry), idem (same author), and op. cit.
> (same title) tracking in the publ-ini module. These could be implemented with
> default settings that could be overridden as nee