On Wed, Nov 4, 2015 at 10:18 AM, Aaron Ecay 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 >