Mercurial > emacs
diff lisp/ido.el @ 112206:cf323f3bfe7f
* ido.el (ido-may-cache-directory): Move "too-big" check later.
(ido-next-match, ido-prev-match): Fix stray reordering of matching
items when cycling through the matches.
author | Kim F. Storm <storm@cua.dk> |
---|---|
date | Thu, 13 Jan 2011 17:26:40 +0100 |
parents | 7e4ae0dd59c9 |
children | 417b1e4d63cd |
line wrap: on
line diff
--- a/lisp/ido.el Thu Jan 13 16:44:41 2011 +0100 +++ b/lisp/ido.el Thu Jan 13 17:26:40 2011 +0100 @@ -1289,8 +1289,6 @@ (defun ido-may-cache-directory (&optional dir) (setq dir (or dir ido-current-directory)) (cond - ((ido-directory-too-big-p dir) - nil) ((and (ido-is-root-directory dir) (or ido-enable-tramp-completion (memq system-type '(windows-nt ms-dos)))) @@ -1299,6 +1297,8 @@ (ido-cache-unc-valid)) ((ido-is-ftp-directory dir) (ido-cache-ftp-valid)) + ((ido-directory-too-big-p dir) + nil) (t t))) (defun ido-pp (list &optional sep) @@ -3072,8 +3072,8 @@ (if ido-matches (let ((next (cadr ido-matches))) (setq ido-cur-list (ido-chop ido-cur-list next)) - (setq ido-rescan t) - (setq ido-rotate t)))) + (setq ido-matches (ido-chop ido-matches next)) + (setq ido-rescan nil)))) (defun ido-prev-match () "Put last element of `ido-matches' at the front of the list." @@ -3081,8 +3081,8 @@ (if ido-matches (let ((prev (car (last ido-matches)))) (setq ido-cur-list (ido-chop ido-cur-list prev)) - (setq ido-rescan t) - (setq ido-rotate t)))) + (setq ido-matches (ido-chop ido-matches prev)) + (setq ido-rescan nil)))) (defun ido-next-match-dir () "Find next directory in match list.