emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Nicolas Goaziou <mail@nicolasgoaziou.fr>
To: Joost Kremers <joostkremers@fastmail.fm>
Cc: emacs-orgmode@gnu.org
Subject: Re: Question about citation processors [wip-cite branch]
Date: Tue, 04 May 2021 18:22:55 +0200	[thread overview]
Message-ID: <87r1im5uzk.fsf@nicolasgoaziou.fr> (raw)
In-Reply-To: <87bl9qmxy3.fsf@fastmail.fm> (Joost Kremers's message of "Tue, 04 May 2021 12:41:11 +0200")


Joost Kremers <joostkremers@fastmail.fm> writes:

> - A user should be able to insert citations into an Org document. IIUC nothing
>   in org-cite provides any functionality for this, right? Is there a default
>   list of styles a user would expect to be supported, or does this depend solely
>   on the bibliography style one uses?

Org Cite does not provide anything in that area because there nothing to
provide. You can write your own function inserting citations without
plugging it anywhere in Org. For others capabilities (activate, follow,
export), you need Org to cooperate.

If you think my assumption is incorrect, please let me know what kind of
hook would be required.

> - =:active= just means "font-lock", right?

Yes, with the emphasis that more than faces could be provided (e.g.,
help-echo, specific keymap, …). I think that Org Ref only needs this
property (barring its export part).

> - Since I don't plan on writing an exporter, I assume that it is possible to
>   mix and match processors? Say, have one for the =:follow= property, another
>   for =:activate= and a third one for =:export-*=?

Exactly! A processor may only provide an :activate property.

> - What kind of data structure do the =:follow= and =:activate= functions take?
>   Should I just look at =oc-basic.el= or is this written down
>   somewhere?

Processors must be registered using `org-cite-register-processor'
function from "oc.el". See its docstring for details. All arguments are

As an example, "oc-basic.el" is a citation processor. It calls the
function above at the end of the file and registers all three
capabilities (activate, follow and export).

At some point, we will need to write some documentation in the manual,

> - Is there a function or buffer-local variable that gives me a list of all the
>   bibliography files of a buffer? Related to that: if a user has set
>   =org-cite-global-bibliography= and also provides a =#+bibliography= keyword,
>   are both sources used, or only the keyword?

"oc.el" provides a number of hopefully useful tools. Among them,
`org-cite-list-bibliography-files' function returns what you're asking
for. Global variable and keywords are cumulative.


Nicolas Goaziou

  parent reply	other threads:[~2021-05-04 16:24 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-05-04 10:41 Joost Kremers
2021-05-04 13:45 ` Bruce D'Arcus
2021-05-04 14:07   ` Joost Kremers
2021-05-04 15:04     ` Bruce D'Arcus
2021-05-04 15:27       ` Joost Kremers
2021-05-04 19:34         ` Denis Maier
2021-05-04 20:04           ` Joost Kremers
2021-05-04 15:10     ` Bruce D'Arcus
2021-05-04 15:22       ` Joost Kremers
2021-05-04 15:39         ` Bruce D'Arcus
2021-05-04 16:22 ` Nicolas Goaziou [this message]
2021-05-04 19:17   ` Joost Kremers
2021-05-05 14:09     ` Nicolas Goaziou

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:

  List information: https://www.orgmode.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87r1im5uzk.fsf@nicolasgoaziou.fr \
    --to=mail@nicolasgoaziou.fr \
    --cc=emacs-orgmode@gnu.org \
    --cc=joostkremers@fastmail.fm \


* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox


This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).