[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/vertico 7d52afe744 1/4: vertico-repeat: If called from
From: |
ELPA Syncer |
Subject: |
[elpa] externals/vertico 7d52afe744 1/4: vertico-repeat: If called from minibuffer, filter by current command |
Date: |
Sun, 10 Jul 2022 05:58:03 -0400 (EDT) |
branch: externals/vertico
commit 7d52afe74429e0ca18c3cde41b88aac3d687e949
Author: Daniel Mendler <mail@daniel-mendler.de>
Commit: Daniel Mendler <mail@daniel-mendler.de>
vertico-repeat: If called from minibuffer, filter by current command
---
extensions/vertico-repeat.el | 20 ++++++++++++++------
1 file changed, 14 insertions(+), 6 deletions(-)
diff --git a/extensions/vertico-repeat.el b/extensions/vertico-repeat.el
index 9875a15f96..ae893ef736 100644
--- a/extensions/vertico-repeat.el
+++ b/extensions/vertico-repeat.el
@@ -111,21 +111,29 @@ This function must be registered as
`minibuffer-setup-hook'."
(defun vertico-repeat-last (&optional session)
"Repeat last Vertico completion SESSION."
(interactive
- (list (or (car vertico-repeat-history)
+ (list (or (if vertico-repeat--command
+ (seq-find (lambda (x) (eq (car x) vertico-repeat--command))
+ vertico-repeat-history)
+ (car vertico-repeat-history))
(user-error "No repeatable Vertico session"))))
- (minibuffer-with-setup-hook
- (apply-partially #'vertico-repeat--restore session)
- (command-execute (setq this-command (car session)))))
+ (if (and vertico-repeat--command (eq vertico-repeat--command (car session)))
+ (vertico-repeat--restore session)
+ (minibuffer-with-setup-hook
+ (apply-partially #'vertico-repeat--restore session)
+ (command-execute (setq this-command (car session))))))
;;;###autoload
(defun vertico-repeat-select ()
"Select a Vertico session from the session history and repeat it."
(interactive)
- (let* ((trimmed
+ (let* ((cmd vertico-repeat--command)
+ (trimmed
(delete-dups
(or
(cl-loop
- for session in vertico-repeat-history collect
+ for session in vertico-repeat-history
+ if (or (not cmd) (eq (car session) cmd))
+ collect
(list
(symbol-name (car session))
(replace-regexp-in-string