emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Matt Price <moptop99@gmail.com>
To: Matt Price <moptop99@gmail.com>, Org Mode <emacs-orgmode@gnu.org>
Subject: Re: contributing to work on citations
Date: Wed, 4 Nov 2015 17:25:41 -0500	[thread overview]
Message-ID: <CAN_Dec-Nh+-C1B_THOYGPen53RPz_EZawRPnLCcejhg3yFQkRg@mail.gmail.com> (raw)
In-Reply-To: <87si4lvlm8.fsf@gmail.com>

[-- Attachment #1: Type: text/plain, Size: 5665 bytes --]

On Wed, Nov 4, 2015 at 10:18 AM, Aaron Ecay <aaronecay@gmail.com> wrote:

> Hi Matt,
>
> Thanks for your willingness to help with the project.
>
> 2015ko urriak 30an, Matt Price-ek idatzi zuen:
> >
> > So, from the "some projects" thread I have the sense there is a group of
> > users with some interest in improving citation support. What is the best
> > way to kickstart that process? it seems to me that, at a minimum, the
> > following is needed:
> >
> > 1. Finalization of the citation syntax.
> >
> > IIUC, This involves refining and merging the work in the wip-cite git
> > branch.
>
> There was a very voluminous discussion on this last time.  Lots of
> people proposed various additions.  I’d be inclined to go with whatever
> syntax is implemented currently, and let any needed extensions sort
> themselves out through real-world testing.
>

OK, great.  Does this mean just checking out the org-wip-cite branch? Or
has someone perhaps merged more recent changes into wip-cite somewhere
else?

>
> >
> > 2. Choice of a citation creation tool
> >
> > IIUC, the two main candidates are pandoc-citeproc and citeproc-js/node.
> > Pandoc-citeproc works well but requires users to install the whole pandoc
> > infrastructure, and needs to be wrapped in a thin tool for use with org.
> > Citeproc-node has fewer dependencies (I guess), but needs to be updated
> to
> > support additional output formats (e.g. latex, odt, and org) and is a
> > little more elaborate to run from the command line (runs as a service,
> can
> > only be communicated with over http).
>
> IIUC, citeproc-node just wraps citeproc-js, which has a “normal” API.
> So it should be possible to write a CLI wrapper for citeproc-js.  (But I
> have not studied citeproc-js at all, so I could be wrong).
>

I am not sure but I don't think it's trivial; and alas i am slow at eveyr
kind of coding, but I will certainly look into this.

>
> My plan is to create preliminary citation support based on Richard’s
> haskell tool, with the intention of moving to a JS-based tool when
> possible.  So implementing a work-alike of Richard’s tool in JS would be
> a good development.
>
>
OK, I'll pay more attention to Richard's tool and how it works, with the
goal of making something like a drop-in replacement.

> >
> > 3. Handling of citation links in the various export engines
> > Functions must be written to handle citations in, at minimum, latex,
> html,
> > and org
> >
> > 4. Interface with backends
> > Org should be able to talk to bibtex and zotero databases, at least (and
> > maybe more).
>
> The code I wrote should have enough hooks to enable this.  But I haven’t
> looked at zotero at all.  If zotero support is important to you, you
> could investigate the “lookup types” in the citation code I wrote, see
> if they are adequate, and try to use them to implement zotero lookup.
> From the docstring:
>
> "Types of citation lookup backends.
>
> Alist from type to list of:
>
> - Function called at the beginning of export, with the rest of
>   the keyword line after #+BIBDB: type, and the info plist.
>   Should cache whatever it needs in the info plist.
>
> - Function to lookup a citation.  Called with the key and the
>   info plist.  Will be memoized by
>   `org-export-cite--lookup' (TODO).  Should return an alist of
>   keys and values about the citation (author, year, title, etc.)
>
> - A boolean; non-nil = this lookup type is remote.  All local
>   lookups will be tried before any remote one is.
>   TODO: not yet implemented"
>
>
I'll start here.  Thanks for the pointer.


> >
> > A lot of this work has already been done. Richard has written
> org-citeproc
> > as a wrapper for pandoc-citeproc https://github.com/wyleyr/org-citeproc
> .
> > Aaron has written some functions for org-citeproc in the wip-cite-awe
> > branch. Nicolas has developed the syntax in wip-cite. I even have a fork
> of
> > citeproc-node that could be used to develop the missing features we need.
> > And of course John has org-ref (
> >
> http://kitchingroup.cheme.cmu.edu/blog/2014/05/13/Using-org-ref-for-citations-and-references/
> )
>
> The org-ref features provide a good aspirational horizon for us, I think.
> I.e. org’s core should aim to support almost all of them eventually.  But
> the support for citation syntax is not so far along that creating such
> support is an immediate prospect.
>
> > while Erik H has zotxt-emacs for Zotero integration (
> > https://github.com/egh/zotxt-emacs).
> >
> > What would be the best next move? It seems to me there are enough moving
> > parts that the process will be quite a bit easier if we co-ordinate.
>
> Based on the interests you’ve expressed, I think working on the JS
> citation processor and/or zotero integration would be good contributions
> you can make.  But you can work on other things as well.  I think the
> best way to coordinate will be to keep the list apprised of your
> progress.  If you have push access, you can push WIP code as branches in
> the org-mode repository.  (Otherwise, you can use github or some other
> git host, or ask for push access.)
>
>
OK, will do. I think it would be great if you, Nicolas, Richard, and Erik H
if he's still interested, could also keep the rest of us up to date with
your efforts -- in all likelihood you will be moving faster than me (though
I can speak for Will, Bill and John).  I'll try to stay current with what
you're doing and make what contributtions I can.  thanks Aaron!


> Thanks again,
>
> --
> Aaron Ecay
>

[-- Attachment #2: Type: text/html, Size: 7595 bytes --]

  parent reply	other threads:[~2015-11-04 22:25 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-10-30 20:17 contributing to work on citations Matt Price
2015-11-04 15:18 ` Aaron Ecay
2015-11-04 19:37   ` Will Monroe
2015-11-04 19:49     ` William Denton
2015-11-04 20:20     ` John Wiegley
2015-11-04 22:25   ` Matt Price [this message]
2015-11-06  1:41   ` Matt Price
2015-11-06 13:10     ` Aaron Ecay
2015-11-06 17:14       ` Matt Price
2015-11-22 20:32         ` Richard Lawrence
2015-11-08 11:17     ` Rasmus

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:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  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=CAN_Dec-Nh+-C1B_THOYGPen53RPz_EZawRPnLCcejhg3yFQkRg@mail.gmail.com \
    --to=moptop99@gmail.com \
    --cc=emacs-orgmode@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* 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

	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

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).