On Sat, May 29, 2021 at 12:22 PM Nicolas Goaziou <m...@nicolasgoaziou.fr> wrote: > > Hello, > > "Bruce D'Arcus" <bdar...@gmail.com> writes: > > > On Fri, May 28, 2021 at 4:31 PM András Simonyi <andras.simo...@gmail.com> > > wrote: > > > >> Maybe instead of a full alist mapping backends to citation processors > >> we could have only options to declare a separate processor for > >> latex-based backends and another for non-latex ones? > > > > This would go a long way, and is probably all that's necessary. > > > > Really "latex" is the unique output mode here. > > But one may want to use a different processor for, say, beamer and > regular latex. Both are "latex" based. Worse, all custom back-ends > derived from "latex" are bound to use the same processor.
I indeed hadn't thought about that. > Here's another proposal: > > `org-cite-export-processor' is now an alist, where keys are export > back-ends or t, which is the default key. > > '((latex biblatex bibstyle citestyle) > (beamer natbib nil nil) > (my-latex natbib bibstyle) > (t csl nil nil)) > > The selected processor is the one associated to the back-ends closest to > the current one used for export, by `org-export-derived-backend-p' > order. So if `my-other-latex' is derived from beamer, it will use > (natbib nil nil). > > OTOH, I suggest to stick to a single "cite_export" keyword, which > overrides any selected processor above. IOW > > #+cite_export: basic > > will use basic whatever the current export back-end is. > > In practice, I think it is sufficient. The only case where it may be > limiting is if you need to export with two different back-ends with two > processors different from those set in `org-cite-export-processor'. But > in that situation, I think swapping the cite_export keyword is > acceptable. > > So overall, I think it is a good compromise between simplicity and > power. > > WDYT? I'm not the best person to weigh in on org details, but in general, it looks good to me. Just to confirm, then, this would allow me to specify: 1. oc-csl as default 2. oc-biblatex as default for latex 3. locally override With 3, if on a particular document I didn't want 2, I'd just do this in the document, which would suppress 2 in effect? #+cite_export: csl style ...? Would you have this nil by default, or is there a reasonable default you could set? Bruce