(Quick note for anyone following this thread: I've figured out how to
implement different typesetting rules for list, inline, and short-form
citations; you can see how I've done this in the publ-imp-sbl.mkvi file in
the https://github.com/jjmccollum/context-sbl repository.)
I have another question related to abbreviations/synonyms in connection
with bibliographies. When a bibliographic entry has a "shorthand" field and
I cite it using \cite[alternative=short], I would like to add its shorthand
to the abbreviations list, with a longer citation as its "in-full" form. My
first thought was that I could accomplish this with something like the
following:
```
\startsetups btx:sbl:cite:short
...
\btxdoif {shorthand} {
\abbreviation[\currentbtxtag]{\btxflush{shorthand}}{\btxflush{title}}
}
...
\stopsetups
```
But even if I invoke \placelistofabbreviations with the "criterium=all"
option, nothing appears in the list.
In some ways, this issue is related to the now-resolved issue "Which way to
type greek letters in synonym list?" from 2010. The problem is that in this
case, I have to use a macro even in the first input to \abbreviation (in
brackets), because I don't know what it is in advance. In addition, if the
second and third inputs to \abbreviation (in curly braces) are not expanded
until the list is printed, then they will be empty/undefined at the time
when they are needed.
I'm not as familiar with how to deal with expansion problems, so I could
use someone's expertise here. Is there a simple way to define an
abbreviation using the expanded values of macros as above? And is there a
way to invoke an abbreviation/synonym at this level of abstraction?
(Something like \inshort[\currentbtxtag]?)
Thanks!
Joey
On Sun, Aug 22, 2021 at 6:11 PM Joey McCollum
Just continuing to talk my way through the inner workings of the ConTeXt Publication modules. It looks like three "long" citation forms are defined in publ-imp-cite.mkvi:
\startsetups btx:cite:listelement \fastsetup{\s!btx:\s!cite:concat} \fastsetup{\s!btx:\s!cite:lefttext} \ifx\currentbtxfirst\empty \fastsetup{\s!btx:\s!cite:\s!empty} \else \texdefinition {\s!btx:\s!cite:inject} { \btxcitereference \currentbtxfirst } \fi \fastsetup{\s!btx:\s!cite:righttext} \stopsetups
\startsetups \s!btx:\s!cite:entry \fastsetup{\s!btx:\s!cite:concat} \fastsetup{\s!btx:\s!cite:lefttext} \btxhandleciteentry \fastsetup{\s!btx:\s!cite:righttext} \stopsetups
\startsetups \s!btx:\s!cite:footnote \startfootnote \fastsetup{btx:cite:entry} \stopfootnote \stopsetups
Intuitively, I would expect btx:cite:listelement [why not \s!btx:\s!cite:listelement?] to handle rendering a bibliographic entry for the bibliography proper (i.e., the list typically placed at the end of a document), while \s!btx:\s!cite:entry would handle in-text citations. The third setup, \s!btx:\s!cite:footnote, simply renders the "entry"-style citation in a footnote.
But as far as I can tell, the "listelement" setup is never used outside of publ-imp-cite.mkvi. Only the "entry" setup appears to be used. Meanwhile, the \btxcitereference and \btxhandleciteentry macros (invoked in these setups) appear to be defined in publ-ini.mkiv:
\unexpanded\def\btx_cite_reference_inject {\ifconditional\c_btx_cite_reference_injected \else \dontleavehmode \iftrialtypesetting \else \ifx\currentbtxbacklink\empty % can be made empty when combining author / year \else\ifnum\currentbtxbacklink>\zerocount \btx_cite_reference_inject_indeed \settrue\c_btx_cite_reference_injected \fi\fi \fi \fi}
...
\let\btxcitereference\btx_cite_reference_inject
...
\unexpanded\def\btxhandleciteentry {\dontleavehmode \begingroup \def\currentbtxcitealternative{entry}% \setbtxparameterset\s!cite\currentbtxcitealternative % needs checking \btxcitereference \btx_entry_inject \endgroup}
My next step will be to figure out what these are doing, but I'm still not sure if the module accommodates rendering in-text "entry" citations differently than citations in the list.
Joey
On Mon, Aug 9, 2021 at 8:55 AM Joey McCollum
wrote: Henning's suggestion for abbreviations should work fine for that issue. I could simply use the shorthand in the "series" and "journal" fields and set up the appropriate \abbreviation calls in the document or environment.
As for the larger issue of bibliographies, I've started working on publ-imp-sbl.lua and publ-imp-sbl.mkvi files. I knew I would need this for my own project soon, and I felt it would be useful to myself and the ConTeXt community if I could at least get a rudimentary version working. I'm presently using the reference for examples from the *SBL Handbook of Style*, 2nd edition, available at https://github.com/dcpurton/biblatex-sbl/blob/master/test/biblatex-sbl-examp... .
Like you say, some parts are tricky. SBL uses "entry"-style citations by default and doesn't seem to make use of other common alternatives (such as "authoryear"). I can think of some existing alternatives that might get used in specific cases (e.g., "author", "title"), but the recommended shorthand has the form "shortauthor, shorttitle" (i.e., the last name(s) of the author(s) only, followed by a comma and a shortened form of the title as specified in the "shorttitle" field). I could make this the sbl style's implementation of the "short" alternative, since the LaTeX-style bracketed number references are foreign to SBL style anyway, but if would be preferable just to introduce another alternative (something like "authortitle"), then I could also try to do that.
For my immediate purposes, I won't need much more than the @book, @article, @inbook, and @incollection entries, so my focus will be on getting those right, but if anyone is interested in helping, I'll gladly take help. (But it would probably be better to discuss the details in a separate e-mail thread.)
Joey
On Mon, Aug 9, 2021 at 4:12 AM Denis Maier via ntg-context < ntg-context@ntg.nl> wrote:
-----Ursprüngliche Nachricht----- Von: ntg-context
Im Auftrag von Henning Hraban Ramm via ntg-context Gesendet: Samstag, 7. August 2021 22:40 An: mailing list for ConTeXt users Cc: Henning Hraban Ramm Betreff: Re: [NTG-context] Short forms and abbreviations in bibliography Am 07.08.2021 um 21:53 schrieb Joey McCollum via ntg-context
: A separate list of abbreviations would then list "LSAWS" alongside "Linguistic Studies in Ancient West Semitic" (and likewise for other journal/series abbreviations).
Regarding abbreviations have a look at https://wiki.contextgarden.net/Command/definesynonyms
It should be as easy as
\abbreviation{LSAWS}{Linguistic Studies in Ancient West Semitic}
The full name of \quote{LSAWS} is \infull{LSAWS}.
\placelistofabbreviations
I had a case where mostly abbreviations were used in the text but the full name should appear in the index. I can provide the setup (including Lua functions), if it might help you.
Can’t help with bibliographies, sorry.
SBL is a tricky beast anyway. There were some discussions regarding implementing Chicago Manual of Style a couple of weeks ago. Develelopments on that front could also be useful for SBL. Don't know what came out of this though.
Denis
Hraban ________________________________________________________________ ___________________ If your question is of interest to others as well, please add an entry
to the Wiki!
maillist : ntg-context@ntg.nl /
http://www.ntg.nl/mailman/listinfo/ntg-context
webpage : http://www.pragma-ade.nl / http://context.aanhet.net archive : https://bitbucket.org/phg/context-mirror/commits/ wiki : http://contextgarden.net ________________________________________________________________ ___________________
___________________________________________________________________________________ If your question is of interest to others as well, please add an entry to the Wiki!
maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context webpage : http://www.pragma-ade.nl / http://context.aanhet.net archive : https://bitbucket.org/phg/context-mirror/commits/ wiki : http://contextgarden.net
___________________________________________________________________________________