emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
* [RFC PATCH] oc-csl: Add support for title, locators and bibentry styles
@ 2022-08-02 11:14 András Simonyi
  2022-08-02 12:08 ` Bruce D'Arcus
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: András Simonyi @ 2022-08-02 11:14 UTC (permalink / raw)
  To: emacs-orgmode list

[-- Attachment #1: Type: text/plain, Size: 649 bytes --]

Dear All,

the attached patch adds support for three new citation styles which
recently got supported by citeproc-el:

- cite/title or cite/ti to cite only the title of an item,
- cite/locators or cite/l to cite only the locators, and
- cite/bibentry or cite/b to cite the full bibliography entry.

I put "RFC" in the subject because I'm not entirely sure about naming
the "bibentry" style, since "bibentry" is natbib terminology, I think,
and biblatex's corresponding command is \fullcite, but I find
"bibentry" slightly more adequate. Also, do we need the "ti"
abbreviation for the "title" style?

thanks and best wishes,
András

[-- Attachment #2: 0001-oc-csl-Add-support-for-title-locators-and-bibentry-c.patch --]
[-- Type: text/x-patch, Size: 2297 bytes --]

From 09b3619693cf4979212d828a0452741e00fca8a4 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andr=C3=A1s=20Simonyi?= <andras.simonyi@gmail.com>
Date: Tue, 2 Aug 2022 11:32:17 +0200
Subject: [PATCH] oc-csl: Add support for title, locators and bibentry citation
 styles

---
 lisp/oc-csl.el | 25 +++++++++++++++++++++++--
 1 file changed, 23 insertions(+), 2 deletions(-)

diff --git a/lisp/oc-csl.el b/lisp/oc-csl.el
index 0b2fe5c41..d84c97e69 100644
--- a/lisp/oc-csl.el
+++ b/lisp/oc-csl.el
@@ -61,7 +61,10 @@
 ;; - noauthor (na), including bare (b), caps (c) and bare-caps (bc) variants,
 ;; - nocite (n),
 ;; - year (y), including a bare (b) variant,
-;; - text (t). including caps (c), full (f), and caps-full (cf) variants,
+;; - text (t), including caps (c), full (f), and caps-full (cf) variants,
+;; - title (ti), including a bare (b) variant,
+;; - locators (l), including a bare (b) variant,
+;; - bibentry (b), including a bare (b) variant,
 ;; - default style, including bare (b), caps (c) and bare-caps (bc) variants.
 ;;
 ;; Using "*" as a key in a nocite citation includes all available items in
@@ -349,6 +352,21 @@ a property list."
        (pcase variant
 	 ((or "bare" "b") '(:mode year-only :suppress-affixes t))
 	 (_ '(:mode year-only))))
+      ;; "bibentry" style
+      (`(,(or "bibentry" "b") . ,variant)
+       (pcase variant
+	 ((or "bare" "b") '(:mode bib-entry :suppress-affixes t))
+	 (_ '(:mode bib-entry))))
+      ;; "locators" style
+      (`(,(or "locators" "l") . ,variant)
+       (pcase variant
+	 ((or "bare" "b") '(:mode locator-only :suppress-affixes t))
+	 (_ '(:mode locator-only))))
+      ;; "title" style
+      (`(,(or "title" "ti") . ,variant)
+       (pcase variant
+	 ((or "bare" "b") '(:mode title-only :suppress-affixes t))
+	 (_ '(:mode title-only))))
       ;; "text" style.
       (`(,(or "text" "t") . ,variant)
        (pcase variant
@@ -730,7 +748,10 @@ property list."
     (("year" "y") ("bare" "b"))
     (("text" "t") ("caps" "c") ("full" "f") ("caps-full" "cf"))
     (("nil") ("bare" "b") ("caps" "c") ("bare-caps" "bc"))
-    (("nocite" "n"))))
+    (("nocite" "n"))
+    (("title" "ti") ("bare" "b"))
+    (("bibentry" "b") ("bare" "b"))
+    (("locators" "l") ("bare" "b"))))
 
 (provide 'oc-csl)
 ;;; oc-csl.el ends here
-- 
2.25.1


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [RFC PATCH] oc-csl: Add support for title, locators and bibentry styles
  2022-08-02 11:14 [RFC PATCH] oc-csl: Add support for title, locators and bibentry styles András Simonyi
@ 2022-08-02 12:08 ` Bruce D'Arcus
  2022-08-07  9:46 ` Ihor Radchenko
  2022-08-09 15:38 ` Rudolf Adamkovič
  2 siblings, 0 replies; 6+ messages in thread
From: Bruce D'Arcus @ 2022-08-02 12:08 UTC (permalink / raw)
  To: András Simonyi; +Cc: emacs-orgmode list

On Tue, Aug 2, 2022 at 7:14 AM András Simonyi <andras.simonyi@gmail.com> wrote:

> the attached patch adds support for three new citation styles which
> recently got supported by citeproc-el:
>
> - cite/title or cite/ti to cite only the title of an item,
> - cite/locators or cite/l to cite only the locators, and
> - cite/bibentry or cite/b to cite the full bibliography entry.
>
> I put "RFC" in the subject because I'm not entirely sure about naming
> the "bibentry" style, since "bibentry" is natbib terminology, I think,
> and biblatex's corresponding command is \fullcite, but I find
> "bibentry" slightly more adequate.

I agree; there's no ideal name that I can see, and it fits better in
the existing style naming scheme.

We (well someone :-)) should add the same to the natbib and biblatex
processors, though I believe natbib has a wrinkle where you also have
to add a preamble line or something.

> Also, do we need the "ti" abbreviation for the "title" style?

I think so.

Bruce


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [RFC PATCH] oc-csl: Add support for title, locators and bibentry styles
  2022-08-02 11:14 [RFC PATCH] oc-csl: Add support for title, locators and bibentry styles András Simonyi
  2022-08-02 12:08 ` Bruce D'Arcus
@ 2022-08-07  9:46 ` Ihor Radchenko
  2022-08-08 17:01   ` András Simonyi
  2022-08-09 15:38 ` Rudolf Adamkovič
  2 siblings, 1 reply; 6+ messages in thread
From: Ihor Radchenko @ 2022-08-07  9:46 UTC (permalink / raw)
  To: András Simonyi; +Cc: emacs-orgmode list

András Simonyi <andras.simonyi@gmail.com> writes:

> the attached patch adds support for three new citation styles which
> recently got supported by citeproc-el:
>
> - cite/title or cite/ti to cite only the title of an item,
> - cite/locators or cite/l to cite only the locators, and
> - cite/bibentry or cite/b to cite the full bibliography entry.

LGTM in general, but please add a proper commit message.
See https://orgmode.org/worg/org-contribute.html#commit-messages

Also, it would be useful to explain a bit what bibentry stands for.
Maybe provide an example.

> I put "RFC" in the subject because I'm not entirely sure about naming
> the "bibentry" style, since "bibentry" is natbib terminology, I think,
> and biblatex's corresponding command is \fullcite, but I find
> "bibentry" slightly more adequate. Also, do we need the "ti"
> abbreviation for the "title" style?

I guess Bruce has answered all the questions.


-- 
Ihor Radchenko,
Org mode contributor,
Learn more about Org mode at https://orgmode.org/.
Support Org development at https://liberapay.com/org-mode,
or support my work at https://liberapay.com/yantar92


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [RFC PATCH] oc-csl: Add support for title, locators and bibentry styles
  2022-08-07  9:46 ` Ihor Radchenko
@ 2022-08-08 17:01   ` András Simonyi
  2022-08-09 12:03     ` Ihor Radchenko
  0 siblings, 1 reply; 6+ messages in thread
From: András Simonyi @ 2022-08-08 17:01 UTC (permalink / raw)
  To: Ihor Radchenko; +Cc: emacs-orgmode list

[-- Attachment #1: Type: text/plain, Size: 324 bytes --]

Dear All,

On Sun, 7 Aug 2022 at 11:45, Ihor Radchenko <yantar92@gmail.com> wrote:

> LGTM in general, but please add a proper commit message.
[...]
> Also, it would be useful to explain a bit what bibentry stands for.

thanks, I've attached a new patch implementing these recommendations.

best wishes,
András

[-- Attachment #2: 0001-oc-csl-Add-support-for-title-locators-and-bibentry-c.patch --]
[-- Type: text/x-patch, Size: 2941 bytes --]

From 361e78eca47d2a6472064ae37d43e9c1e131faa3 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andr=C3=A1s=20Simonyi?= <andras.simonyi@gmail.com>
Date: Tue, 2 Aug 2022 11:32:17 +0200
Subject: [PATCH] oc-csl: Add support for title, locators and bibentry citation
 styles

* lisp/oc-csl.el: Register the newly added citation styles "title",
"locators and "bibentry" as supported by the "csl" export processor.
(org-cite-csl--create-structure-params): Add support for the creation
of citation structures with the new citation styles.
---
 lisp/oc-csl.el | 31 +++++++++++++++++++++++++++----
 1 file changed, 27 insertions(+), 4 deletions(-)

diff --git a/lisp/oc-csl.el b/lisp/oc-csl.el
index 0b2fe5c41..7fcc1f1f2 100644
--- a/lisp/oc-csl.el
+++ b/lisp/oc-csl.el
@@ -61,11 +61,16 @@
 ;; - noauthor (na), including bare (b), caps (c) and bare-caps (bc) variants,
 ;; - nocite (n),
 ;; - year (y), including a bare (b) variant,
-;; - text (t). including caps (c), full (f), and caps-full (cf) variants,
+;; - text (t), including caps (c), full (f), and caps-full (cf) variants,
+;; - title (ti), including a bare (b) variant,
+;; - locators (l), including a bare (b) variant,
+;; - bibentry (b), including a bare (b) variant,
 ;; - default style, including bare (b), caps (c) and bare-caps (bc) variants.
 ;;
-;; Using "*" as a key in a nocite citation includes all available items in
-;; the printed bibliography.
+;; Using "*" as a key in a nocite citation includes all available
+;; items in the printed bibliography.  The "bibentry" citation style,
+;; similarly to biblatex's \fullcite, creates a citation which is
+;; similar to the bibliography entry.
 
 ;; CSL styles recognize "locator" in citation references' suffix.  For example,
 ;; in the citation
@@ -349,6 +354,21 @@ a property list."
        (pcase variant
 	 ((or "bare" "b") '(:mode year-only :suppress-affixes t))
 	 (_ '(:mode year-only))))
+      ;; "bibentry" style
+      (`(,(or "bibentry" "b") . ,variant)
+       (pcase variant
+	 ((or "bare" "b") '(:mode bib-entry :suppress-affixes t))
+	 (_ '(:mode bib-entry))))
+      ;; "locators" style
+      (`(,(or "locators" "l") . ,variant)
+       (pcase variant
+	 ((or "bare" "b") '(:mode locator-only :suppress-affixes t))
+	 (_ '(:mode locator-only))))
+      ;; "title" style
+      (`(,(or "title" "ti") . ,variant)
+       (pcase variant
+	 ((or "bare" "b") '(:mode title-only :suppress-affixes t))
+	 (_ '(:mode title-only))))
       ;; "text" style.
       (`(,(or "text" "t") . ,variant)
        (pcase variant
@@ -730,7 +750,10 @@ property list."
     (("year" "y") ("bare" "b"))
     (("text" "t") ("caps" "c") ("full" "f") ("caps-full" "cf"))
     (("nil") ("bare" "b") ("caps" "c") ("bare-caps" "bc"))
-    (("nocite" "n"))))
+    (("nocite" "n"))
+    (("title" "ti") ("bare" "b"))
+    (("bibentry" "b") ("bare" "b"))
+    (("locators" "l") ("bare" "b"))))
 
 (provide 'oc-csl)
 ;;; oc-csl.el ends here
-- 
2.25.1


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [RFC PATCH] oc-csl: Add support for title, locators and bibentry styles
  2022-08-08 17:01   ` András Simonyi
@ 2022-08-09 12:03     ` Ihor Radchenko
  0 siblings, 0 replies; 6+ messages in thread
From: Ihor Radchenko @ 2022-08-09 12:03 UTC (permalink / raw)
  To: András Simonyi; +Cc: emacs-orgmode list

András Simonyi <andras.simonyi@gmail.com> writes:

> Dear All,
>
> On Sun, 7 Aug 2022 at 11:45, Ihor Radchenko <yantar92@gmail.com> wrote:
>
>> LGTM in general, but please add a proper commit message.
> [...]
>> Also, it would be useful to explain a bit what bibentry stands for.
>
> thanks, I've attached a new patch implementing these recommendations.

Thanks!
Applied onto main via c7d484130 with minor amendments adding "." at the
end of comment sentences.
https://git.savannah.gnu.org/cgit/emacs/org-mode.git/commit/?id=c7d484130c19c0a1fe172a8d76b9cfc296d2ed54


-- 
Ihor Radchenko,
Org mode contributor,
Learn more about Org mode at https://orgmode.org/.
Support Org development at https://liberapay.com/org-mode,
or support my work at https://liberapay.com/yantar92


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [RFC PATCH] oc-csl: Add support for title, locators and bibentry styles
  2022-08-02 11:14 [RFC PATCH] oc-csl: Add support for title, locators and bibentry styles András Simonyi
  2022-08-02 12:08 ` Bruce D'Arcus
  2022-08-07  9:46 ` Ihor Radchenko
@ 2022-08-09 15:38 ` Rudolf Adamkovič
  2 siblings, 0 replies; 6+ messages in thread
From: Rudolf Adamkovič @ 2022-08-09 15:38 UTC (permalink / raw)
  To: András Simonyi, emacs-orgmode list

András Simonyi <andras.simonyi@gmail.com> writes:

> - cite/locators or cite/l to cite only the locators, and

THANK YOU for working on this!  I have tried the "locators" style, and
it works great.  At last, we can write in the APA style with no hacks!

P.S.  Not a fan of using "ti" for the title.  I would go for "T" for
"Title", or "p" for "publication", or "s" for "subject", or something
like that.

Rudy
-- 
"It is no paradox to say that in our most theoretical moods we may be
nearest to our most practical applications."
-- Alfred North Whitehead, 1861-1947

Rudolf Adamkovič <salutis@me.com> [he/him]
Studenohorská 25
84103 Bratislava
Slovakia


^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2022-08-09 16:10 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-08-02 11:14 [RFC PATCH] oc-csl: Add support for title, locators and bibentry styles András Simonyi
2022-08-02 12:08 ` Bruce D'Arcus
2022-08-07  9:46 ` Ihor Radchenko
2022-08-08 17:01   ` András Simonyi
2022-08-09 12:03     ` Ihor Radchenko
2022-08-09 15:38 ` Rudolf Adamkovič

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 read-only IMAP folder(s) and NNTP newsgroup(s).