mirror of
https://git.savannah.gnu.org/git/emacs/org-mode.git
synced 2024-11-22 07:09:47 +00:00
contrib/lisp/org-contacts.el: Remove calls to cl functions
* contrib/lisp/org-contacts.el(org-contacts-test-completion-prefix) (org-contacts-complete-name, org-contacts-db-need-update-p) (org-contacts-filter): Remove calls to cl functions.
This commit is contained in:
parent
5c25ede5d9
commit
02fd5d1c22
@ -165,10 +165,10 @@ This overrides `org-email-link-description-format' if set."
|
||||
(defun org-contacts-db-need-update-p ()
|
||||
"Determine whether `org-contacts-db' needs to be refreshed."
|
||||
(or (null org-contacts-last-update)
|
||||
(some (lambda (file)
|
||||
(or (time-less-p org-contacts-last-update
|
||||
(elt (file-attributes file) 5))))
|
||||
(org-contacts-files))))
|
||||
(org-find-if (lambda (file)
|
||||
(or (time-less-p org-contacts-last-update
|
||||
(elt (file-attributes file) 5))))
|
||||
(org-contacts-files))))
|
||||
|
||||
(defun org-contacts-db ()
|
||||
"Return the latest Org Contacts Database."
|
||||
@ -207,10 +207,10 @@ If both match values are nil, return all contacts."
|
||||
(org-string-match-p name-match
|
||||
(first contact)))
|
||||
(and tags-match
|
||||
(some (lambda (tag)
|
||||
(org-string-match-p tags-match tag))
|
||||
(org-split-string
|
||||
(or (cdr (assoc-string "ALLTAGS" (caddr contact))) "") ":"))))
|
||||
(org-find-if (lambda (tag)
|
||||
(org-string-match-p tags-match tag))
|
||||
(org-split-string
|
||||
(or (cdr (assoc-string "ALLTAGS" (caddr contact))) "") ":"))))
|
||||
collect contact)))
|
||||
|
||||
(when (not (fboundp 'completion-table-case-fold))
|
||||
@ -369,10 +369,13 @@ prefixes rather than just the beginning of the string."
|
||||
completions))
|
||||
|
||||
(defun org-contacts-test-completion-prefix (string collection predicate)
|
||||
(find-if (lambda (el)
|
||||
(and (or (null predicate) (funcall predicate el))
|
||||
(string= string el)))
|
||||
collection))
|
||||
;; Prevents `org-find-if' from redefining `predicate' and going into
|
||||
;; an infinite loop.
|
||||
(lexical-let ((predicate predicate))
|
||||
(org-find-if (lambda (el)
|
||||
(and (or (null predicate) (funcall predicate el))
|
||||
(string= string el)))
|
||||
collection)))
|
||||
|
||||
(defun org-contacts-boundaries-prefix (string collection predicate suffix)
|
||||
(list* 'boundaries (completion-boundaries string collection predicate suffix)))
|
||||
@ -444,7 +447,7 @@ A group FOO is composed of contacts with the tag FOO."
|
||||
collect (org-contacts-format-email contact-name email))))
|
||||
(completion-list (org-contacts-all-completions-prefix
|
||||
string
|
||||
(remove-duplicates completion-list :test #'equalp))))
|
||||
(org-uniquify completion-list))))
|
||||
(when completion-list
|
||||
(list start end
|
||||
(org-contacts-make-collection-prefix completion-list)))))
|
||||
|
Loading…
Reference in New Issue
Block a user