emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[elpa] externals/vertico 1522d9a 07/11: Extract vertico--file-predicate


From: Protesilaos Stavrou
Subject: [elpa] externals/vertico 1522d9a 07/11: Extract vertico--file-predicate
Date: Thu, 8 Apr 2021 07:11:16 -0400 (EDT)

branch: externals/vertico
commit 1522d9a34fa92f3b6dd74465b38094c82961f412
Author: Daniel Mendler <mail@daniel-mendler.de>
Commit: Daniel Mendler <mail@daniel-mendler.de>

    Extract vertico--file-predicate
---
 vertico.el | 18 +++++++++++-------
 1 file changed, 11 insertions(+), 7 deletions(-)

diff --git a/vertico.el b/vertico.el
index 0a23876..a5790e7 100644
--- a/vertico.el
+++ b/vertico.el
@@ -233,18 +233,22 @@
       (nconc (list head) (delq head list))
     list))
 
+(defun vertico--file-predicate ()
+  "Filter predicate for files."
+  (let ((ignore (concat "\\(?:\\`\\|/\\)\\.?\\./\\'"
+                        (and completion-ignored-extensions
+                             (concat "\\|" (regexp-opt 
completion-ignored-extensions) "\\'")))))
+    (if-let (pred minibuffer-completion-predicate)
+        (lambda (x) (and (not (string-match-p ignore x)) (funcall pred x)))
+      (lambda (x) (not (string-match-p ignore x))))))
+
 (defun vertico--recompute-candidates (input metadata)
   "Recompute candidates with INPUT string and METADATA."
-  (let* ((ignore-re (concat "\\(?:\\`\\|/\\)\\.?\\./\\'"
-                            (and completion-ignored-extensions
-                                 (concat "\\|" (regexp-opt 
completion-ignored-extensions) "\\'"))))
-         (all (completion-all-completions
+  (let* ((all (completion-all-completions
                input
                minibuffer-completion-table
                (if minibuffer-completing-file-name
-                   (if-let (pred minibuffer-completion-predicate)
-                       (lambda (x) (and (not (string-match-p ignore-re x)) 
(funcall pred x)))
-                     (lambda (x) (not (string-match-p ignore-re x))))
+                   (vertico--file-predicate)
                  minibuffer-completion-predicate)
                (- (point) (minibuffer-prompt-end))
                metadata))



reply via email to

[Prev in Thread] Current Thread [Next in Thread]