branch: externals-release/org
commit 3bb0cb9398404291b0ced5d14a2577b4a158432e
Author: Nicolas Goaziou <[email protected]>
Commit: Nicolas Goaziou <[email protected]>
oc: Fix § locator name
* lisp/oc-csl.el (org-cite-csl--label-regexp): § is not a word start,
so adjust regexp accordingly. Also fix mistake introduced in
c4a357f1926ff43545c9891425c94b2771ab4e84.
(org-cite-csl--parse-reference): Ignore any space after locator name.
---
lisp/oc-csl.el | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/lisp/oc-csl.el b/lisp/oc-csl.el
index 07916cd..89719d3 100644
--- a/lisp/oc-csl.el
+++ b/lisp/oc-csl.el
@@ -271,10 +271,10 @@ If nil then the Chicago author-date style is used as a
fallback.")
;; Prior to Emacs-27.1 argument of `regexp' form must be a string literal.
;; It is the reason why `rx' is avoided here.
(rx-to-string
- `(seq word-start
+ `(seq (or line-start space)
(regexp ,(regexp-opt (mapcar #'car org-cite-csl--label-alist) t))
(0+ digit)
- (or word-start line-end space ? ))
+ (or word-end line-end space " "))
t)
"Regexp matching a label in a citation reference suffix.
Label is in match group 1.")
@@ -426,7 +426,9 @@ The result is a association list. Keys are: `id',
`prefix',`suffix',
((re-search-forward org-cite-csl--label-regexp nil t)
(setq location-start (match-beginning 0))
(setq label (cdr (assoc (match-string 1) org-cite-csl--label-alist)))
- (setq locator-start (match-end 1)))
+ (goto-char (match-end 1))
+ (skip-chars-forward "[:space:] ")
+ (setq locator-start (point)))
((re-search-forward (rx digit) nil t)
(setq location-start (match-beginning 0))
(setq label "page")