X-Git-Url: https://git.hcoop.net/bpt/emacs.git/blobdiff_plain/ab422c4d6899b1442cb6954c1829c1fb656b006c..28b6b84d4e91cf39c85f194c29b8e044ae6bac87:/lisp/ido.el diff --git a/lisp/ido.el b/lisp/ido.el index cda4021176..066d8276af 100644 --- a/lisp/ido.el +++ b/lisp/ido.el @@ -1585,6 +1585,8 @@ This function also adds a hook to the minibuffer." (define-key map "\C-p" 'ido-toggle-prefix) (define-key map "\C-r" 'ido-prev-match) (define-key map "\C-s" 'ido-next-match) + (define-key map [?\C-.] 'ido-next-match) + (define-key map [?\C-,] 'ido-prev-match) (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) @@ -2389,7 +2391,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 +3769,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