[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[O] [PATCH 2/6] Fix alphabetic string matching operators
From: |
Sebastian Reuße |
Subject: |
[O] [PATCH 2/6] Fix alphabetic string matching operators |
Date: |
Sun, 11 Mar 2018 16:43:48 +0100 |
* org.el (org-string<): Add.
(org-op-to-function): Use it.
(org-string> etc.): Use collated comparison.
Cf. commit 551d2f1fe.
---
lisp/org.el | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/lisp/org.el b/lisp/org.el
index ac1ad3c75..edae502a8 100644
--- a/lisp/org.el
+++ b/lisp/org.el
@@ -14045,7 +14045,7 @@ (defun org-op-to-function (op &optional stringp)
"Turn an operator into the appropriate function."
(setq op
(cond
- ((equal op "<" ) '(< string< org-time<))
+ ((equal op "<" ) '(< org-string< org-time<))
((equal op ">" ) '(> org-string> org-time>))
((member op '("<=" "=<")) '(<= org-string<= org-time<=))
((member op '(">=" "=>")) '(>= org-string>= org-time>=))
@@ -14054,9 +14054,10 @@ (defun org-op-to-function (op &optional stringp)
(nth (if (eq stringp 'time) 2 (if stringp 1 0)) op))
(defun org<> (a b) (not (= a b)))
-(defun org-string<= (a b) (or (string= a b) (string< a b)))
-(defun org-string>= (a b) (not (string< a b)))
-(defun org-string> (a b) (and (not (string= a b)) (not (string< a b))))
+(defun org-string< (a b) (string-collate-lessp a b))
+(defun org-string<= (a b) (or (string= a b) (string-collate-lessp a b)))
+(defun org-string>= (a b) (not (string-collate-lessp a b)))
+(defun org-string> (a b) (and (not (string= a b)) (not (string-collate-lessp
a b))))
(defun org-string<> (a b) (not (string= a b)))
(defun org-time= (a b) (setq a (org-2ft a) b (org-2ft b)) (and (> a 0) (> b
0) (= a b)))
(defun org-time< (a b) (setq a (org-2ft a) b (org-2ft b)) (and (> a 0) (> b
0) (< a b)))
--
2.16.2