changeset 71269:851a15a8f318

(ido-take-first-match, ido-push-dir-first): New commands. (ido-init-completion-maps): Bind them to M-SPC and M-v.
author Kim F. Storm <storm@cua.dk>
date Wed, 07 Jun 2006 22:05:05 +0000
parents c1e786f7db92
children 63644e16659a
files lisp/ido.el
diffstat 1 files changed, 18 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/ido.el	Wed Jun 07 22:04:52 2006 +0000
+++ b/lisp/ido.el	Wed Jun 07 22:05:05 2006 +0000
@@ -1538,6 +1538,7 @@
     (define-key map "\C-t" 'ido-toggle-regexp)
     (define-key map "\C-z" 'ido-undo-merge-work-directory)
     (define-key map [(control ?\s)] 'ido-restrict-to-matches)
+    (define-key map [(meta ?\s)] 'ido-take-first-match)
     (define-key map [(control ?@)] 'ido-restrict-to-matches)
     (define-key map [right] 'ido-next-match)
     (define-key map [left] 'ido-prev-match)
@@ -1565,6 +1566,7 @@
     (define-key map "\C-l" 'ido-reread-directory)
     (define-key map [(meta ?d)] 'ido-wide-find-dir-or-delete-dir)
     (define-key map [(meta ?b)] 'ido-push-dir)
+    (define-key map [(meta ?v)] 'ido-push-dir-first)
     (define-key map [(meta ?f)] 'ido-wide-find-file-or-pop-dir)
     (define-key map [(meta ?k)] 'ido-forget-work-directory)
     (define-key map [(meta ?m)] 'ido-make-directory)
@@ -2805,12 +2807,28 @@
       (ido-delete-backward-word-updir 1)
     (ido-wide-find-dir)))
 
+(defun ido-take-first-match ()
+  "Use first matching item as input text."
+  (interactive)
+  (when ido-matches
+    (setq ido-text-init (car ido-matches))
+    (setq ido-exit 'refresh)
+    (exit-minibuffer)))
+
 (defun ido-push-dir ()
   "Move to previous directory in file name, push current input on stack."
   (interactive)
   (setq ido-exit 'push)
   (exit-minibuffer))
 
+(defun ido-push-dir-first ()
+  "Move to previous directory in file name, push first match on stack."
+  (interactive)
+  (if ido-matches
+      (setq ido-text (car ido-matches)))
+  (setq ido-exit 'push)
+  (exit-minibuffer))
+
 (defun ido-pop-dir (arg)
   "Pop directory from input stack back to input.
 With \\[universal-argument], pop all element."