X-Git-Url: https://code.delx.au/gnu-emacs/blobdiff_plain/e4e46889223296e8875548d278340b21db449a4a..01fcc3a532872b29784a4d888ab9cc1aef0eed01:/lisp/ido.el diff --git a/lisp/ido.el b/lisp/ido.el index 88b84268ff..008561aa26 100644 --- a/lisp/ido.el +++ b/lisp/ido.el @@ -1,6 +1,6 @@ ;;; ido.el --- interactively do things with buffers and files -;; Copyright (C) 1996-2012 Free Software Foundation, Inc. +;; Copyright (C) 1996-2013 Free Software Foundation, Inc. ;; Author: Kim F. Storm ;; Based on: iswitchb by Stephen Eglen @@ -2389,7 +2389,10 @@ If cursor is not at the end of the user input, move to end of input." (ido-buffer-internal 'insert 'insert-buffer "Insert buffer: " nil ido-text 'ido-enter-insert-file)) ((eq ido-exit 'dired) - (dired (concat ido-current-directory (or ido-text "")))) + (funcall (cond ((eq method 'other-window) 'dired-other-window) + ((eq method 'other-frame) 'dired-other-frame) + (t 'dired)) + (concat ido-current-directory (or ido-text "")))) ((eq ido-exit 'ffap) (find-file-at-point)) @@ -3764,7 +3767,11 @@ This is to make them appear as if they were \"virtual buffers\"." ido-enable-flex-matching (> (length ido-text) 1) (not ido-enable-regexp)) - (setq re (mapconcat #'regexp-quote (split-string ido-text "" t) ".*")) + (setq re (concat (regexp-quote (string (aref ido-text 0))) + (mapconcat (lambda (c) + (concat "[^" (string c) "]*" + (regexp-quote (string c)))) + (substring ido-text 1) ""))) (if ido-enable-prefix (setq re (concat "\\`" re))) (mapc