emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: John Kitchin <jkitchin@andrew.cmu.edu>
To: Rasmus <rasmus@gmx.us>
Cc: emacs-orgmode@gnu.org
Subject: Re: Citation processing via Zotero + zotxt
Date: Thu, 03 Dec 2015 20:49:49 -0500	[thread overview]
Message-ID: <m2mvtrgeyq.fsf@andrew.cmu.edu> (raw)
In-Reply-To: <87mvtrqdv4.fsf@gmx.us>

>> What do you think?
>
> My guess is that it is orders of magnitudes harder with author (year) and
> footnotes and whatnot.

footnotes... The only place I can see this is in org/odt export. In org
I can see it ok with the approach I described. For odt, I guess it would
be about the same, if you know the markup code to insert for a footnote.
Other formats are continuous pages, so the footnotes would end up at the
end of the document.

> But bibtex.el helps in some regards (indeed in an
> ancestor to this thread we discussed whether bibtex.el + reftex.el could
> be used).  Then comes the formatting and sorting of the bibliography, also
> when using different languages (Marcin talks about this) or types of
> publications (bibtex.el lists 27 when you switch the dialect to
> biblatex)...

CSL does not currently support multiple languages according to
http://citationstyles.org/styles/, although a fork of zotero is supposed
to support it. CSL also does not support composite citations, e.g. that
are common in chemistry journals. It doesn't support journal
abbreviations.

If a reference type is not listed in the CSL, it also will not be
supported by CSL I suppose.

I also suppose the CSL must be backend specific to output formats
appropriate to org, html, LaTeX, markdown, etc... for any particular
style.

The point is there is no single solution now, or ever that will easily
handle all reference databases, all reference types, to any output, in
arbitrary format/style.

We should not try to support all of these things. We could support a
small number of things that could be improved or increased in the
future.

> As a small example comes out of your example which has mistakes such as
> "17()".

this is from missing information in the bibtex file, and the single
format string in reftex. This kind of error is easy to fix. More
difficult changes are to the authors (e.g. initials, et al after 3
authors, etc...), journal abbreviations, and for different types of
references.

For a blogpost I consider that acceptable. For a publication/proposal
not so much. For that, I would use LaTeX export which wouldn't have that
issue. A key point here is I don't think you can have it both ways. A
bibtex file with LaTeX markup of equations cannot be used to make an
html/org/markdown/etc.. bibliography that looks right without handling
the LateX markup in it and converting it some way to the right format. A
bibtex file that uses strings to switch between full journal names and
abbreviated journal names will be challenging for any system other than
bibtex. This is not special to bibtex, it is general to any reference
database I think. CSL does not save us from this.

No doubt there are many corner cases that could be problematic. I don't
have the feeling there would be more than using CSL though. Good luck
getting the CSL to make the in text citations clickable hyperlinks with
tooltips of the citation in html. I would rather learn to use elisp for
this than CSL for that sole purpose.

> The fact that the documentation of biblatex-chicago (a biblatex *style*)
> is 149 pages might also serve as a warning.

The CSL for this is only 651 lines
(https://github.com/citation-style-language/styles/blob/master/chicago-author-date.csl).
Its either very concise, or not complete ;)

There are plenty of warning signs ;) If you want perfect
biblatex-chicago, I think the answer is use biblatex. The issue as I see
it is one of balancing something that mostly works, and is improveable
and something that currently doesn't exist for org-mode for something
other than latex.

> Note, I use a similar system myself when exporting citations outside of
> latex (lookup stuff from bibtex and cross-fingers), but fitted to
> author-year.  It’s certainly doable when you know your fixed needs, but it
> is harder to convince yourself it’s a good general solution.
>
> It would be nice if you could prove me wrong.

I cannot. I don't think you are wrong. The only time-tested, publication
quality solutions for citations in my opinion right now are bib(la)tex, MS
Word/reference manager, and "by hand". Even these get "edited" in their
final print versions by journals.

I think we can provide some fixed solutions for non-LaTeX exports that
will be pretty good. At least until a proven external cite-processor
solution exists.

As a finishing thought:

Just imagine if this CSL snippet (https://github.com/citation-style-language/styles/blob/master/acs-nano.csl):
<citation collapse="citation-number">
    <sort>
      <key variable="citation-number"/>
    </sort>
    <layout delimiter="," vertical-align="sup">
      <text variable="citation-number"/>
    </layout>
  </citation>

was really this much more readable sexp form :)

(citation (:collapse "citation-number")
          (sort ()
           (key (:variable "citation-number")))
          (layout (:delimiter "," :vertical-align "sup")
                  (text (:variable "citation-number"))))

It might start making more sense to think of a lisp based citation
processor. It might even address some limitations of bib(la)tex.

Now, about those cross-references and labels...

>
> Rasmus

--
Professor John Kitchin
Doherty Hall A207F
Department of Chemical Engineering
Carnegie Mellon University
Pittsburgh, PA 15213
412-268-7803
@johnkitchin
http://kitchingroup.cheme.cmu.edu

  reply	other threads:[~2015-12-04  1:49 UTC|newest]

Thread overview: 37+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-11-28 20:16 Citation processing via Zotero + zotxt Richard Lawrence
2015-11-30  8:12 ` Martin Yrjölä
2015-12-01  0:32   ` John Kitchin
2015-12-01  2:59     ` Richard Lawrence
2015-12-03  0:27       ` Matt Lundin
2015-12-03  1:41         ` Christian Wittern
2015-12-03 14:25           ` Matt Lundin
2015-12-03  4:32         ` Richard Lawrence
2015-12-03 15:27           ` Matt Lundin
2015-12-03 17:56             ` Richard Lawrence
2015-12-03 19:14               ` Thomas S. Dye
2015-12-03 22:05                 ` Rasmus
2015-12-03 20:45               ` Matt Lundin
2015-12-03 21:04                 ` Matt Lundin
2015-12-03 23:31         ` John Kitchin
2015-12-04  0:03           ` Rasmus
2015-12-04  1:49             ` John Kitchin [this message]
2015-12-05 21:18               ` Matt Lundin
2015-12-05 22:23                 ` John Kitchin
2015-12-04  2:06           ` Matt Lundin
2015-12-04 11:22             ` John Kitchin
2015-12-04 14:13               ` Matt Lundin
2015-12-05  1:23                 ` John Kitchin
2015-12-04  9:20           ` Eric S Fraga
2015-12-01  9:34     ` Ramon Diaz-Uriarte
2015-11-30 11:35 ` Eric S Fraga
2015-11-30 12:02   ` Ramon Diaz-Uriarte
     [not found] ` <CAN_Dec-JCmwQ2bc=U93rRaPMYyXOiN_PRbtyya9x396r3qqMrg@mail.gmail.com>
2015-12-01 12:12   ` Fwd: " Matt Price
2015-12-01 15:28     ` Eric S Fraga
2015-12-01 15:51       ` Richard Lawrence
2015-12-01 19:20         ` Matt Price
2015-12-01 21:34         ` Eric S Fraga
2015-12-01 21:51     ` Matt Lundin
2015-12-02 15:21       ` Richard Lawrence
2015-12-01 14:36 ` Rasmus
2015-12-01 19:37   ` Matt Price
2015-12-02 15:58   ` Richard Lawrence

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=m2mvtrgeyq.fsf@andrew.cmu.edu \
    --to=jkitchin@andrew.cmu.edu \
    --cc=emacs-orgmode@gnu.org \
    --cc=rasmus@gmx.us \
    /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).