From mboxrd@z Thu Jan 1 00:00:00 1970 From: Matt Price Subject: Re: Some projects Date: Mon, 26 Oct 2015 20:03:59 -0400 Message-ID: References: <87wpub9jts.fsf@nicolasgoaziou.fr> <877fmazh2f.fsf@gmail.com> <87fv0x1t49.fsf@berkeley.edu> <87vb9tcx5c.fsf@nicolasgoaziou.fr> <87ziz5z2tl.fsf@berkeley.edu> Mime-Version: 1.0 Content-Type: multipart/alternative; boundary=001a113f9ae093433405230ad075 Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:55464) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Zqrk9-0003nH-Qj for emacs-orgmode@gnu.org; Mon, 26 Oct 2015 20:04:03 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Zqrk8-0001Xi-9G for emacs-orgmode@gnu.org; Mon, 26 Oct 2015 20:04:01 -0400 Received: from mail-io0-x229.google.com ([2607:f8b0:4001:c06::229]:35566) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Zqrk8-0001XQ-3k for emacs-orgmode@gnu.org; Mon, 26 Oct 2015 20:04:00 -0400 Received: by iofz202 with SMTP id z202so203909167iof.2 for ; Mon, 26 Oct 2015 17:03:59 -0700 (PDT) In-Reply-To: <87ziz5z2tl.fsf@berkeley.edu> List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Cc: Org Mode --001a113f9ae093433405230ad075 Content-Type: text/plain; charset=UTF-8 On Mon, Oct 26, 2015 at 6:23 PM, Richard Lawrence < richard.lawrence@berkeley.edu> wrote: > Hi Nicolas and all, > > Nicolas Goaziou writes: > > > Richard Lawrence writes: > > > >> Yes, this is my understanding, too. In particular, there does not seem > >> to be an Elisp CSL library, and it would be a lot of work to write > >> one. > > > > Here is a genuine question: what is the difficult part, or if there is > > none, the longer parts of the work? AFAIU, CSL is XML and we can use > > libxml for the low-level parsing. > > I can't speak to how difficult it would really be. But I do think it > would be a lot of work, and tedious, unglamorous work at that. > Essentially it means implementing the CSL specification: > > http://docs.citationstyles.org/en/stable/specification.html > > The specification describes the XML format for CSL styles, which IIUC > are something like XSLT programs: they describe how to transform an > input document tree into an output document tree. So, implementing CSL > is something like implementing a very special-purpose declarative > programming language, which has to handle declarations about every > detail of citation formatting (where to put periods, how to capitalize > names like "von Neumann", whether to use "&" or a translation of "and" > for the current locale, etc.). Lisp is a good language to do this kind > of thing in, but parsing the XML is surely the easy part. > > > Could you give some examples of the UI offered by the citeproc-hs > > library? > > The library I ended up wrapping is actually pandoc-citeproc, which is a > fork of citeproc-hs (which seems to be unmaintained). > The obvious advantage to pandoc-citeproc is that it keeps us close to pandoc, and it would be good to encourage as much compatibility as possible with those guys. The disadvantage is that, from what I can tell, the javascript implementation is the canonical version of citeproc, and the place where improvements are pushed first. So, for instance, if one wanted to implement an org-syntax output format for citeproc, citeproc-js would be the most likely project to support that work. --001a113f9ae093433405230ad075 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable


On Mon, Oct 26, 2015 at 6:23 PM, Richard Lawrence <= ;richard= .lawrence@berkeley.edu> wrote:
Hi Nicolas and all,

Nicolas Goaziou <mail@nicolasg= oaziou.fr> writes:

> Richard Lawrence <= richard.lawrence@berkeley.edu> writes:
>
>> Yes, this is my understanding, too.=C2=A0 In particular, there doe= s not seem
>> to be an Elisp CSL library, and it would be a lot of work to write=
>> one.
>
> Here is a genuine question: what is the difficult part, or if there is=
> none, the longer parts of the work? AFAIU, CSL is XML and we can use > libxml for the low-level parsing.

I can't speak to how difficult it would really be.=C2=A0 But I d= o think it
would be a lot of work, and tedious, unglamorous work at that.
Essentially it means implementing the CSL specification:

http://docs.citationstyles.org/en/stable/= specification.html

The specification describes the XML format for CSL styles, which IIUC
are something like XSLT programs: they describe how to transform an
input document tree into an output document tree.=C2=A0 So, implementing CS= L
is something like implementing a very special-purpose declarative
programming language, which has to handle declarations about every
detail of citation formatting (where to put periods, how to capitalize
names like "von Neumann", whether to use "&" or a t= ranslation of "and"
for the current locale, etc.).=C2=A0 Lisp is a good language to do this kin= d
of thing in, but parsing the XML is surely the easy part.

> Could you give some examples of the UI offered by the citeproc-hs
> library?

The library I ended up wrapping is actually pandoc-citeproc, which i= s a
fork of citeproc-hs (which seems to be unmaintained).
=
The obvious advantage to pandoc-citeproc is that it keeps us= close to pandoc, and it would be good to encourage as much compatibility a= s possible with those guys.

The disadvantage is that, fro= m what I can tell, the javascript implementation is the canonical version o= f citeproc, and the place where improvements are pushed first.=C2=A0 So, fo= r instance, if one wanted to implement an org-syntax output format for cite= proc, citeproc-js would be the most likely project to support that work.=C2= =A0
=C2=A0

--001a113f9ae093433405230ad075--