branch: elpa/evil-numbers
commit 0bbf3a8161a24adea9e95eafce8b8f1a288ef43c
Author: Campbell Barton <[email protected]>
Commit: Campbell Barton <[email protected]>
Cleanup: store unicode subscript/superscript in constants
---
evil-numbers.el | 23 ++++++++++++++++-------
1 file changed, 16 insertions(+), 7 deletions(-)
diff --git a/evil-numbers.el b/evil-numbers.el
index b7a7057268..c7de3af9e0 100644
--- a/evil-numbers.el
+++ b/evil-numbers.el
@@ -69,6 +69,9 @@
(require 'evil)
+(defconst evil-numbers--chars-superscript "⁰¹²³⁴⁵⁶⁷⁸⁹")
+(defconst evil-numbers--chars-subscript "₀₁₂₃₄₅₆₇₈₉")
+
(defconst evil-numbers--superscript-alist
(cons
(cons ?- ?⁻)
@@ -78,7 +81,7 @@
(lambda (i)
(cons
(string-to-char (number-to-string i))
- (aref "⁰¹²³⁴⁵⁶⁷⁸⁹" i)))
+ (aref evil-numbers--chars-superscript i)))
(number-sequence 0 9)))))
(defconst evil-numbers--subscript-alist
@@ -90,7 +93,7 @@
(lambda (i)
(cons
(string-to-char (number-to-string i))
- (aref "₀₁₂₃₄₅₆₇₈₉" i)))
+ (aref evil-numbers--chars-subscript i)))
(number-sequence 0 9)))))
(defgroup evil-numbers nil
@@ -190,8 +193,8 @@ Return non-nil on success, leaving the point at the end of
the number."
;; Find decimal literals (super-script).
(evil-numbers--search-and-replace
- '(("⁺⁻" . \?)
- ("⁰¹²³⁴⁵⁶⁷⁸⁹" . +))
+ `(("⁺⁻" . \?)
+ (,evil-numbers--chars-superscript . +))
1 ;; Sign group.
2 ;; Number group.
amount 10 beg end padded
@@ -199,8 +202,8 @@ Return non-nil on success, leaving the point at the end of
the number."
;; Find decimal literals (sub-script).
(evil-numbers--search-and-replace
- '(("₊₋" . \?)
- ("₀₁₂₃₄₅₆₇₈₉" . +))
+ `(("₊₋" . \?)
+ (,evil-numbers--chars-subscript . +))
1 ;; Sign group.
2 ;; Number group.
amount 10 beg end padded
@@ -232,7 +235,13 @@ Return non-nil on success, leaving the point at the end of
the number."
(throw 'result t))
(setq point-last (point))
- (unless (re-search-forward "[[:xdigit:]⁰¹²³⁴⁵⁶⁷⁸⁹₀₁₂₃₄₅₆₇₈₉]" end t)
+ (unless (re-search-forward
+ (concat "["
+ "[:xdigit:]"
+ evil-numbers--chars-superscript
+ evil-numbers--chars-subscript
+ "]")
+ end t)
(throw 'result nil)))))))
;;;###autoload (autoload 'evil-numbers/inc-at-pt "evil-numbers" nil t)