emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: "András Simonyi" <simonyi@all.hu>
To: Nicolas Goaziou <mail@nicolasgoaziou.fr>
Cc: tumashu <tumashu@163.com>, emacs-orgmode <emacs-orgmode@gnu.org>,
	John Kitchin <jkitchin@andrew.cmu.edu>
Subject: Re: Should wip-cite branch be merged to master?
Date: Sun, 22 Apr 2018 20:17:47 +0200	[thread overview]
Message-ID: <87in8jaywk.fsf@all.hu> (raw)
In-Reply-To: <871sf9f2ak.fsf@nicolasgoaziou.fr>

Dear All,

thanks for bringing this up. I definitely agree that it'd be too early to merge
the wip-cite branch. In fact, having added (experimental) support for it in
citeproc-org I've been planning to propose some changes/extensions to the syntax
but I wanted to wait until citeproc-org and citeproc-el become available as
MELPA packages which still isn't the case (citeproc-el is already there but
citeproc-org still needs some work before I can submit it). Anyhow, since the
topic has come up, here is how I see the situation (sorry for the length):

From the citeproc-el/CSL point of view, the current syntax is perfect with the
notable exception of the provided citation commands. Currently only `cite' and
`(cite)' are supported, where the latter seems to be intended to provide the
parenthetical version of a basic citation, e.g. in an author-date style `cite'
would produce something like `Smith 2018` while `(cite)' `(Smith 2018)'. Now I
think that for author-date styles `cite' should produce the parenthetical
version and that `(cite)' probably shouldn't be among the commands at all. The
main reason is that most citation processors (biblatex, CSL processors etc.)
support not only author-date citation styles but footnote-based ones as well,
and the concept of a `parenthetical citation' doesn't really make sense for the
latter. A more abstract characterization which is applicable to all styles is
that normally references are not part of the main text, they are set off either
by brackets or in a note. Since this is the most frequent, basic form, I think
this the one which should be produced by the `cite' syntax, that is, when used
in normal text `cite' should produce something like `(Smith 2018)' for
author-date styles and a note with the reference for note styles.

In addition to `cite', the following additional variants would be very
useful, and would probably cover the majority of use-cases:

- "bare cite": the same as cite, but doesn't separate the reference from
   the main text (no brackets/note);

- "suppress author": removes the author's name from the citation.

- "textual cite": includes the author's name in the main text but sets
  off the rest of the citation.

A proposal for the syntax of the additional forms: bare cite could be indicated
by a `-' suffix, suppress author by a `*' and textual cite by a `t' resulting in
the variants

| command       | result in author-date styles |
|---------------+------------------------------|
| cite          | (Smith 2017)                 |
| citet         | Smith (2017)                 |
| cite-         | Smith 2017                   |
| cite*         | (2017)                       |
| cite*-/cite-* | 2017                         |

(omitting some combinatorial possibilities that don't make practical sense). 

It would be a nice extra to also provide commands for adding an item to the list
of references without actually citing it (`nocite' command), and for adding
literal cites (that provide the full text of the citation, and whose sole
function is to let the processor know that a citation occurred at a certain
location) but these are obviously not so important as the ones in the above
table.

The citeproc-el wiki contains a bit more information about this proposal:

https://github.com/andras-simonyi/citeproc-el/wiki/Citation-types-and-commands

I'd be glad to hear your views regarding these issues.

best regards,

András

  >> There is a package which support wip-cite:
  >> https://github.com/andras-simonyi/citeproc-org, should wip-cite
  >> branch be merged to master now?

  > Merging wip-cite branch with master, and integration of citeproc-org
  > into Org core, could be discussed with the author of the library, and,
  > of course, with anyone interested in using the @cite syntax. For
  > example, I need to know if that syntax, along with citeproc-org, covers
  > enough use-cases for citations, if it brings more value than using,
  > e.g., Org Ref, which already exists, how it could be improved, etc.

  > I have the feeling that it is a bit early for Org 9.2. Anyway, I'm
  > Cc'ing András and John for their opinion about it. I'd love to hear from
  > everyone involved in the last round of discussion about the subject,
  > too.



  > Regards,

  > --
  > Nicolas Goaziou

  parent reply	other threads:[~2018-04-22 18:17 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-04-20 23:01 tumashu
2018-04-21  7:26 ` Nicolas Goaziou
2018-04-21  8:43   ` Christian Moe
2018-04-22 18:17   ` András Simonyi [this message]
2018-04-23 19:42     ` John Kitchin
2018-04-25 19:19     ` Richard Lawrence
2018-04-26 23:34       ` Bastien
2018-04-27 21:07   ` András Simonyi
2018-04-27 23:34     ` Nicolas Goaziou

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=87in8jaywk.fsf@all.hu \
    --to=simonyi@all.hu \
    --cc=emacs-orgmode@gnu.org \
    --cc=jkitchin@andrew.cmu.edu \
    --cc=mail@nicolasgoaziou.fr \
    --cc=tumashu@163.com \
    --subject='Re: Should wip-cite branch be merged to master?' \
    /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

Code repositories for project(s) associated with this 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 NNTP newsgroup(s).