branch: externals/vertico
commit bafee1508360af568472ef57e2cd2a8fdc57b101
Author: Daniel Mendler <m...@daniel-mendler.de>
Commit: Daniel Mendler <m...@daniel-mendler.de>

    add minicomp-exit-input
---
 minicomp.el | 15 +++++++++++----
 1 file changed, 11 insertions(+), 4 deletions(-)

diff --git a/minicomp.el b/minicomp.el
index 6a17f49..c5749a8 100644
--- a/minicomp.el
+++ b/minicomp.el
@@ -83,6 +83,7 @@
     (define-key map [remap previous-line-or-history-element] 
#'minicomp-previous)
     (define-key map [remap exit-minibuffer] #'minicomp-exit)
     (define-key map [remap kill-ring-save] #'minicomp-save)
+    (define-key map [C-return] #'minicomp-exit-input)
     (define-key map "\t" #'minicomp-insert)
     map)
   "Minibuffer keymap.")
@@ -371,10 +372,11 @@
   (interactive)
   (minicomp--goto (- minicomp--index 1)))
 
-(defun minicomp-exit ()
-  "Exit minibuffer with current candidate."
-  (interactive)
-  (minicomp-insert)
+(defun minicomp-exit (&optional arg)
+  "Exit minibuffer with current candidate or input if prefix ARG is given."
+  (interactive "P")
+  (unless arg
+    (minicomp-insert))
   (cond
    ((let ((input (minibuffer-contents-no-properties)))
       (or (not minibuffer--require-match)
@@ -389,6 +391,11 @@
       (exit-minibuffer)))
    (t (message "Match required"))))
 
+(defun minicomp-exit-input ()
+  "Exit minibuffer with input."
+  (interactive)
+  (minicomp-exit t))
+
 (defun minicomp-save ()
   "Save current candidate to kill ring."
   (interactive)

Reply via email to