[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/consult 1ce90d2e21: Unfortunately the fix of #512 was b
From: |
ELPA Syncer |
Subject: |
[elpa] externals/consult 1ce90d2e21: Unfortunately the fix of #512 was broken |
Date: |
Sat, 19 Feb 2022 20:57:22 -0500 (EST) |
branch: externals/consult
commit 1ce90d2e21c7bcbca2ce1a83a827ab98099ee892
Author: Daniel Mendler <mail@daniel-mendler.de>
Commit: Daniel Mendler <mail@daniel-mendler.de>
Unfortunately the fix of #512 was broken
Implement a better key normalization using `define-key`.
---
consult.el | 22 ++++++++++++----------
1 file changed, 12 insertions(+), 10 deletions(-)
diff --git a/consult.el b/consult.el
index 7bc825309a..406d5b3de3 100644
--- a/consult.el
+++ b/consult.el
@@ -1268,17 +1268,19 @@ FACE is the cursor face."
(pop preview-key)))
keys))
-(defun consult--preview-key-pressed-p (preview-key cand)
- "Return t if PREVIEW-KEY has been pressed given the current candidate CAND."
+(defun consult--preview-key-debounce (preview-key cand)
+ "Return debounce value of PREVIEW-KEY given the current candidate CAND."
(when (and (consp preview-key) (memq :keys preview-key))
(setq preview-key (funcall (plist-get preview-key :predicate) cand)))
- (setq preview-key (consult--preview-key-normalize preview-key))
- (let ((keys (this-single-command-keys)))
- (cdr (or (seq-find (lambda (x)
- (and (not (eq (car x) 'any))
- (lookup-key `(keymap (,(car x) . ignore)) keys)))
- preview-key)
- (assq 'any preview-key)))))
+ (let ((map (make-sparse-keymap))
+ (keys (this-single-command-keys))
+ any)
+ (dolist (x (consult--preview-key-normalize preview-key))
+ (if (eq (car x) 'any)
+ (setq any (cdr x))
+ (define-key map (car x) (cdr x))))
+ (setq keys (lookup-key map keys))
+ (if (numberp keys) keys any)))
(defun consult--with-preview-1 (preview-key state transform candidate fun)
"Add preview support for FUN.
@@ -1298,7 +1300,7 @@ and CANDIDATE."
(with-selected-window (or
(minibuffer-selected-window) (next-window))
(let ((transformed (funcall transform input
cand))
(new-preview (cons input cand)))
- (when-let (debounce
(consult--preview-key-pressed-p preview-key transformed))
+ (when-let (debounce
(consult--preview-key-debounce preview-key transformed))
(when timer
(cancel-timer timer)
(setq timer nil))
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [elpa] externals/consult 1ce90d2e21: Unfortunately the fix of #512 was broken,
ELPA Syncer <=