branch: master
commit 4ad1ab2f96eeb10d672273cdcca2089ed7ca5286
Author: Oleh Krehel <[email protected]>
Commit: Oleh Krehel <[email protected]>

    ivy.el (ivy-tab-space): New defcustom
    
    * ivy.el (ivy-partial-or-done): Insert an extra space when
      `ivy-tab-space' is non-nil. This is useful to complete partially and
      start a new group at once.
    
    Fixes #73
---
 ivy.el |    7 ++++++-
 1 files changed, 6 insertions(+), 1 deletions(-)

diff --git a/ivy.el b/ivy.el
index 9a0557f..e8204dd 100644
--- a/ivy.el
+++ b/ivy.el
@@ -269,6 +269,10 @@ When ARG is t, exit with current text, ignoring the 
candidates."
             (t
              (ivy-done))))))
 
+(defcustom ivy-tab-space nil
+  "When non-nil, `ivy-partial-or-done' should insert a space."
+  :type 'boolean)
+
 (defun ivy-partial-or-done ()
   "Complete the minibuffer text as much as possible.
 When called twice in a row, exit the minibuffer with the current
@@ -287,7 +291,8 @@ candidate."
                                         ivy--old-cands))))
       (delete-region (minibuffer-prompt-end) (point-max))
       (setcar (last parts) new)
-      (insert (mapconcat #'identity parts " ") " "))))
+      (insert (mapconcat #'identity parts " ")
+              (if ivy-tab-space " " "")))))
 
 (defun ivy-immediate-done ()
   "Exit the minibuffer with the current input."

Reply via email to