From: Leo Liu Date: Mon, 21 Mar 2011 17:48:36 +0000 (+0800) Subject: Fix history adding in ido-read-internal X-Git-Tag: emacs-pretest-24.0.90~104^2~275^2~527 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=af896da66a50ca020c8cb8293c4bf5ddfb0cb448;p=emacs.git Fix history adding in ido-read-internal Assume, for example, the head of matches is "RSS" and user input is "rs". If the user hit RET, "RSS" is selected but "rs" is added to the history. This commit fixes this inconsistency. --- diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 5c119c37323..a52abe07b1f 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,8 @@ +2011-03-21 Leo Liu + + * ido.el (ido-read-internal): Add ido-selected to history instead + of user input. + 2011-03-21 Stefan Monnier * subr.el (deferred-action-list, deferred-action-function): diff --git a/lisp/ido.el b/lisp/ido.el index 2a5c7cf2f0e..df7516993b7 100644 --- a/lisp/ido.el +++ b/lisp/ido.el @@ -1978,7 +1978,9 @@ If INITIAL is non-nil, it specifies the initial input string." (ido-completing-read t) (ido-require-match require-match) (ido-use-mycompletion-depth (1+ (minibuffer-depth))) - (show-paren-mode nil)) + (show-paren-mode nil) + ;; Postpone history adding till later + (history-add-new-input nil)) ;; prompt the user for the file name (setq ido-exit nil) (setq ido-final-text @@ -2158,6 +2160,7 @@ If INITIAL is non-nil, it specifies the initial input string." (t (setq done t)))))) + (and history (add-to-history history ido-selected)) ido-selected)) (defun ido-edit-input ()