emacs-diffs
[Top][All Lists]
Advanced

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

master 8e52a59808e 1/3: Exit with no confirmation (RET) when register-us


From: Thierry Volpiatto
Subject: master 8e52a59808e 1/3: Exit with no confirmation (RET) when register-use-preview
Date: Fri, 8 Dec 2023 11:32:05 -0500 (EST)

branch: master
commit 8e52a59808e9ca1b8e535725eb76b83e409745eb
Author: Thierry Volpiatto <thievol@posteo.net>
Commit: Thierry Volpiatto <thievol@posteo.net>

    Exit with no confirmation (RET) when register-use-preview
    
    is non nil and .
    
    This is done by exiting minibuffer when selected register is empty or
    when just jumping or inserting.
    
    * lisp/register.el (register-read-with-preview): Do it.
---
 lisp/register.el | 16 ++++++++++------
 1 file changed, 10 insertions(+), 6 deletions(-)

diff --git a/lisp/register.el b/lisp/register.el
index 46ec38821e5..a38b531dfc9 100644
--- a/lisp/register.el
+++ b/lisp/register.el
@@ -385,12 +385,16 @@ display such a window regardless."
                                         (minibuffer-message
                                          "Register `%s' is empty" pat))))))
                             (unless (string= pat "")
-                              (if (member pat strs)
-                                  (with-selected-window (minibuffer-window)
-                                    (minibuffer-message msg pat))
-                                (with-selected-window (minibuffer-window)
-                                  (minibuffer-message
-                                   "Register `%s' is empty" pat)))))))))
+                              (with-selected-window (minibuffer-window)
+                                (if (and (member pat strs) (memq act '(set 
modify)))
+                                    (with-selected-window (minibuffer-window)
+                                      (minibuffer-message msg pat))
+                                  ;; An empty register or an existing
+                                  ;; one but the action is insert or
+                                  ;; jump, don't ask for confirmation
+                                  ;; and exit immediately (bug#66394).
+                                  (setq result pat)
+                                  (exit-minibuffer)))))))))
              (setq result (read-from-minibuffer
                            prompt nil map nil nil 
(register-preview-get-defaults act))))
            (cl-assert (and result (not (string= result "")))



reply via email to

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