emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Denis Maier <denismaier@mailbox.org>
To: "Bruce D'Arcus" <bdarcus@gmail.com>,
	"András Simonyi" <andras.simonyi@gmail.com>
Cc: org-mode-email <emacs-orgmode@gnu.org>
Subject: Re: org-cite: make 'suppress-author' a citation 'style'
Date: Mon, 26 Apr 2021 09:53:09 +0200	[thread overview]
Message-ID: <936a4d73-6d16-cb91-f897-1b8037a9cc3a@mailbox.org> (raw)
In-Reply-To: <CAF-FPGMSk45+Dcpk9HrkVNqxOwGCTNeR7e3W0fhpjoRH+8KkkA@mail.gmail.com>

Hi,

just some general remarks on that issue: I tend to think that treating 
"suppress-author" as a mode/style/command would indeed be appropriate. 
As the minus shorthand is inherited from pandoc, it might be worth 
pointing out that pandoc's syntax owes quite a lot to the markdown 
philosophy, which is also emphasized by pandoc:

 > Markdown is intended to be as easy-to-read and easy-to-write as is 
feasible.
 >
 > Readability, however, is emphasized above all else
(https://daringfireball.net/projects/markdown/syntax#philosophy)

That is, markdown tries to use a syntax as concise as possible, without 
verbose commands and such. See e.g. this discussion: 
https://groups.google.com/g/pandoc-discuss/c/ydG9CI_XEEU/m/3LHxvp23BAAJ

The price for this is a certain opaqueness, and, to a certain degree, a 
loss of precision, expressiveness and extensibility.

Anyway, back to the modes question:

#+begin_example
[@doe]

[-@doe]

@doe

@doe [34]

-@doe [34]
#+end_example

gives us in pandos AST:

#+begin_pandoc_ast
[Para [Cite [Citation {citationId = "doe", citationPrefix = [], 
citationSuffix = [], citationMode = NormalCitation, citationNoteNum = 1, 
citationHash = 0}] [Str "[@doe]"]]
,Para [Cite [Citation {citationId = "doe", citationPrefix = [], 
citationSuffix = [], citationMode = SuppressAuthor, citationNoteNum = 2, 
citationHash = 0}] [Str "[-@doe]"]]
,Para [Cite [Citation {citationId = "doe", citationPrefix = [], 
citationSuffix = [], citationMode = AuthorInText, citationNoteNum = 3, 
citationHash = 0}] [Str "@doe"]]
,Para [Cite [Citation {citationId = "doe", citationPrefix = [], 
citationSuffix = [Str "34"], citationMode = AuthorInText, 
citationNoteNum = 4, citationHash = 0}] [Str "@doe",Space,Str "[34]"]]
,Para [Cite [Citation {citationId = "doe", citationPrefix = [], 
citationSuffix = [Str "34"], citationMode = SuppressAuthor, 
citationNoteNum = 5, citationHash = 0}] [Str "@doe",Space,Str "[34]"]]]
#+end_pandoc_ast

So, suppress author is essentially a mode here.

FWIW, it might also be interesting to look at biblatex:
biblatex has a textcite command:
\textcite{doe2021} => Doe (2021)

Now, if you want to cite multiple entries, each with prefix and suffix, 
you'll need a special variant \textcites!
\textcites[12]{foo}[34]{bar} argue ...
=> Foo (2021, p. 12) and Bar (2021, p. 34) argue ...

I'm not sure how that fits into the org context. Interestingly, I 
couldn't find an easy way to get "Doe (2021, p.34; see also Smith 2020) 
... argues". You'd probably have to resort to lower level commands such 
as \citeauthor in combination with other commands.
\citeauthor{doe} \parencites*[34]{doe}{smith}

Denis

Am 25.04.2021 um 22:12 schrieb Bruce D'Arcus:
> On Sun, Apr 25, 2021 at 3:48 PM András Simonyi <andras.simonyi@gmail.com> wrote:
>>
>> Dear All,
>>
>> On Sun, 25 Apr 2021 at 14:50, Bruce D'Arcus <bdarcus@gmail.com> wrote:
>>> How would you deal with these?
>>>
>>> #+begin_example
>>> [cite/-:@doe20; @doe21]
>>> [cite/-:@doe20; see also @smith19]
>>> [cite/text:@doe20; see also @smith19]
>>> #+end_example
>>>
>>> My thought is you want to treat the author of the first listed cite as
>>> suppressed, or placed in-text in the last case, but that you wouldn't
>>> touch the other author?
>>
>> yes, exactly -- since it's difficult to see (at least for me) how the
>> context could supply the author information for the subsequent cites.
> 
> So the output for the first one would be:
> 
> (2020, 2021)
> 
> ..., and not:
> 
> (2020, Doe 2021)
> 
> As in, you would suppress the author not on the first cite (what you
> wrote in the original reply), but the author of the first cite?
> 
> To me, that's the only wrinkle of having this a citation-level style;
> that a processor would need to be smart enough to handle cases like
> that, for output styles that require it.
> 
> But otherwise it's easier and more efficient for the user.
> 
> Bruce
> 
> 



  reply	other threads:[~2021-04-26  7:54 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-04-24 10:52 org-cite: make 'suppress-author' a citation 'style' Bruce D'Arcus
2021-04-24 12:28 ` Bruce D'Arcus
2021-04-24 17:08 ` Nicolas Goaziou
2021-04-24 17:28   ` Bruce D'Arcus
2021-04-24 19:36     ` Bruce D'Arcus
2021-04-24 20:09       ` Nicolas Goaziou
2021-04-24 22:51         ` Bruce D'Arcus
2021-04-25  5:55           ` András Simonyi
2021-04-25 12:50             ` Bruce D'Arcus
2021-04-25 19:48               ` András Simonyi
2021-04-25 20:12                 ` Bruce D'Arcus
2021-04-26  7:53                   ` Denis Maier [this message]
2021-04-26  9:05                     ` Denis Maier
2021-04-26  9:34                     ` Joost Kremers
2021-04-26 11:36                       ` Bruce D'Arcus
2021-04-26  7:51     ` Richard Lawrence
2021-04-26  9:33       ` Bruce D'Arcus
2021-04-27  7:36         ` Richard Lawrence
2021-04-27  7:52           ` Denis Maier
2021-04-27  8:24             ` Richard Lawrence
2021-04-27 10:05             ` Bruce D'Arcus

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=936a4d73-6d16-cb91-f897-1b8037a9cc3a@mailbox.org \
    --to=denismaier@mailbox.org \
    --cc=andras.simonyi@gmail.com \
    --cc=bdarcus@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).