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

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

[elpa] externals/consult f9930cbe82 1/2: consult--with-preview-1: Minor


From: ELPA Syncer
Subject: [elpa] externals/consult f9930cbe82 1/2: consult--with-preview-1: Minor fix of minibuffer state capturing
Date: Sat, 28 Jan 2023 03:57:28 -0500 (EST)

branch: externals/consult
commit f9930cbe82db784cf1950581d3f699b63d246e1d
Author: Daniel Mendler <mail@daniel-mendler.de>
Commit: Daniel Mendler <mail@daniel-mendler.de>

    consult--with-preview-1: Minor fix of minibuffer state capturing
---
 consult.el | 20 +++++++++++---------
 1 file changed, 11 insertions(+), 9 deletions(-)

diff --git a/consult.el b/consult.el
index 278082d5d2..2bc85e72e7 100644
--- a/consult.el
+++ b/consult.el
@@ -1548,7 +1548,7 @@ The result can be passed as :state argument to 
`consult--read'." type)
   "Add preview support for FUN.
 See `consult--with-preview' for the arguments
 PREVIEW-KEY, STATE, TRANSFORM and CANDIDATE."
-  (let ((input "") narrow selected timer last-preview)
+  (let ((mb-input "") mb-narrow selected timer last-preview)
     (consult--minibuffer-with-setup-hook
         (if (and state preview-key)
             (lambda ()
@@ -1575,8 +1575,9 @@ PREVIEW-KEY, STATE, TRANSFORM and CANDIDATE."
                     (lambda ()
                       (when-let ((cand (funcall candidate)))
                         (with-selected-window (active-minibuffer-window)
-                          (let ((input (minibuffer-contents-no-properties))
-                                (new-preview (cons input cand)))
+                          (let* ((input (minibuffer-contents-no-properties))
+                                 (narrow consult--narrow)
+                                 (new-preview (list input narrow cand)))
                             (with-selected-window (or 
(minibuffer-selected-window) (next-window))
                               (when-let ((transformed (funcall transform 
narrow input cand))
                                          (debounce 
(consult--preview-key-debounce preview-key transformed)))
@@ -1600,17 +1601,18 @@ PREVIEW-KEY, STATE, TRANSFORM and CANDIDATE."
                                     (setq last-preview new-preview))))))))))
               (consult--append-local-post-command-hook
                (lambda ()
-                 (setq input (minibuffer-contents-no-properties)
-                       narrow consult--narrow)
+                 (setq mb-input (minibuffer-contents-no-properties)
+                       mb-narrow consult--narrow)
                  (funcall consult--preview-function))))
           (lambda ()
             (consult--append-local-post-command-hook
-             (lambda () (setq input (minibuffer-contents-no-properties)
-                              narrow consult--narrow)))))
+             (lambda ()
+               (setq mb-input (minibuffer-contents-no-properties)
+                     mb-narrow consult--narrow)))))
       (unwind-protect
           (cons (setq selected (when-let (result (funcall fun))
-                                 (funcall transform narrow input result)))
-                input)
+                                 (funcall transform mb-narrow mb-input 
result)))
+                mb-input)
         (when state
           ;; STEP 5: The preview function should perform its final action
           (funcall state 'return selected))))))



reply via email to

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