From fe331b9486d4bac31a559067c565b30474246cea Mon Sep 17 00:00:00 2001 From: Andras Simonyi Date: Sun, 5 May 2024 11:07:45 +0200 Subject: [PATCH] oc-csl: Remove spaces before citations in superscript * lisp/oc-csl.el (org-cite-csl--create-structure): Remove spaces before citation if it is in superscript. (org-cite-csl--style-cite-superscript-p): New function to check whether the used CSL style produces citations in superscript. --- lisp/oc-csl.el | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/lisp/oc-csl.el b/lisp/oc-csl.el index becdaed81..9bbe5e29d 100644 --- a/lisp/oc-csl.el +++ b/lisp/oc-csl.el @@ -134,6 +134,7 @@ (declare-function citeproc-render-bib "ext:citeproc") (declare-function citeproc-hash-itemgetter-from-any "ext:citeproc") (declare-function citeproc-add-subbib-filters "ext:citeproc") +(declare-function citeproc-style-cite-superscript-p "ext:citeproc") (declare-function org-element-interpret-data "org-element" (data)) (declare-function org-element-map "org-element" (data types fun &optional info first-match no-recursion with-affiliated)) @@ -435,6 +436,13 @@ INFO is the export state, as a property list." (citeproc-proc-style (org-cite-csl--processor info)))) +(defun org-cite-csl--style-cite-superscript-p (info) + "Non-nil when bibliography style produces citations in superscript. +INFO is the export state, as a property list." + (citeproc-style-cite-superscript-p + (citeproc-proc-style + (org-cite-csl--processor info)))) + (defun org-cite-csl--nocite-p (citation info) "Non-nil when CITATION object's style is nocite. INFO is the export state, as a property list." @@ -681,6 +689,9 @@ INFO is the export state, as a property list." (when (and (not footnote) (org-cite-csl--note-style-p info)) (org-cite-adjust-note citation info) (setq footnote (org-cite-wrap-citation citation info))) + ;; Remove white space before CITATION when it is in superscript. + (when (org-cite-csl--style-cite-superscript-p info) + (org-cite--set-previous-post-blank citation 0 info)) ;; Return structure. (apply #'citeproc-citation-create `(:note-index -- 2.34.1