emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [O] Citation syntax: a revised proposal


From: Aaron Ecay
Subject: Re: [O] Citation syntax: a revised proposal
Date: Tue, 10 Mar 2015 22:51:13 -0300
User-agent: Notmuch/0.19+52~g1722ea2 (http://notmuchmail.org) Emacs/25.0.50.2 (x86_64-unknown-linux-gnu)

Hi Rasmus,

Thanks for your comments.  Some replies:

2015ko martxoak 10an, Rasmus-ek idatzi zuen:
>> These are then slurped by org, and used to fill in printf-style
>> templates.  Some people mentioned using citations as generated by
>> citeproc-java directly.  However, I don’t believe this is reliable since
>> (as also mentioned), it is difficult to control whether a certain style
>> uses parentheses around a citation or not, whether the citation is
>> capitalized*, the insertion of prefixes/suffixes within the parentheses,
>> etc.
>
> If so, is there *any* advantage is using a processors over say
> bibtex.el/reftex-cite.el/org-bibtex-parser.el?  We'd get a couple of more
> backends, right?  But this step can presumably be handled by other tools
> as necessary.
>
> If we have to do processing to the extend you describe (or I imagine that
> you describe), I'm not sure there's a point in relying on a external tool,
> which we cannot easily extend as opposed to fixing bugs we might encounter
> in reftex-cite or "forking"/reimplementing functions we need from
> there.

I have made citeproc-java give output like:

Smith////2014
Doe////1999
Smith et al.////2005

I parse that into lists of (author, year) pairs by splitting on the
////.  Then I expose a template to elisp: “%p%a (%y%s)” (for prefix,
author, year, and suffix).  This template could be changed however it is
desired by a user: using square brackets instead of round parens, for
example.  I think people will likely want to customize things like this,
and it seems difficult to get such flexibility from CSL.

So far, this has proved much easier than trying to implement all the
“proper” citation functionality in elisp.

CSL also gives the bibliography basically for free, including support
for zillions of highly specific formats.  (We do have to convert it from
HTML, but it is highly structured, in the sense that only a few tags and
styles can occur.  So the conversion can basically just handle those
cases one-by-one.)

>
>> So I think the only solution is to implement the formatting of the
>> in-text portion of citations ourselves, and use citeproc-java only to
>> extract authors and years.
>
> See above.  I then don't see the point.

It’s only the template for author-year in-text citations that I have
implemented in elisp.  CSL still gives us name parsing, disambiguation,
and bibliography formatting, which are each very complex.

> What I gather is that a big selling point of csl is the plentifulness of
> styles.  But you say we anyway need curated CSL styles to make it
> work.

I need just one such style, for our extraction of author + year for
in-text citations.  CSL styles are still used off-the-shelf for the
bibliography.

>> 2. Is it possible to support for implement importing citations from
>> jabref through the “lookup types” facility in my code?
>
> This is major.  I don't want to Jabref to manage citation and I would
> rather not give it write access to my citation library as it has encoding
> issues.

It would be one among many options: bibtex, org-bibtex, jabref, ...  You
would be free to pick the one(s) that hold your reference database, and
not bother with the others.

I hope that’s helpful,

--
Aaron Ecay



reply via email to

[Prev in Thread] Current Thread [Next in Thread]