Mercurial > emacs
changeset 70555:4ff0c9f3ea31
* emacs-lisp/crm.el (completing-read-multiple): Properly handle
return value of read-from-minibuffer for empty input.
author | Chong Yidong <cyd@stupidchicken.com> |
---|---|
date | Wed, 10 May 2006 04:00:51 +0000 |
parents | e1a064810f6f |
children | fa894e85781d |
files | lisp/ChangeLog lisp/emacs-lisp/crm.el |
diffstat | 2 files changed, 27 insertions(+), 19 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/ChangeLog Wed May 10 03:32:06 2006 +0000 +++ b/lisp/ChangeLog Wed May 10 04:00:51 2006 +0000 @@ -1,3 +1,8 @@ +2006-05-09 Chong Yidong <cyd@stupidchicken.com> + + * emacs-lisp/crm.el (completing-read-multiple): Properly handle + return value of read-from-minibuffer for empty input. + 2006-05-09 Miles Bader <miles@gnu.org> * comint.el (comint-insert-input): Remove redundant calls to setq
--- a/lisp/emacs-lisp/crm.el Wed May 10 03:32:06 2006 +0000 +++ b/lisp/emacs-lisp/crm.el Wed May 10 04:00:51 2006 +0000 @@ -592,25 +592,28 @@ See the documentation for `completing-read' for details on the arguments: PROMPT, TABLE, PREDICATE, REQUIRE-MATCH, INITIAL-INPUT, HIST, DEF, and INHERIT-INPUT-METHOD." - (let ((minibuffer-completion-table (function crm-collection-fn)) - (minibuffer-completion-predicate predicate) - ;; see completing_read in src/minibuf.c - (minibuffer-completion-confirm - (unless (eq require-match t) require-match)) - (crm-completion-table table) - crm-last-exact-completion - crm-current-element - crm-left-of-element - crm-right-of-element - crm-beginning-of-element - crm-end-of-element - (map (if require-match - crm-local-must-match-map - crm-local-completion-map))) - (split-string (read-from-minibuffer - prompt initial-input map - nil hist def inherit-input-method) - crm-separator))) + (let* ((minibuffer-completion-table (function crm-collection-fn)) + (minibuffer-completion-predicate predicate) + ;; see completing_read in src/minibuf.c + (minibuffer-completion-confirm + (unless (eq require-match t) require-match)) + (crm-completion-table table) + crm-last-exact-completion + crm-current-element + crm-left-of-element + crm-right-of-element + crm-beginning-of-element + crm-end-of-element + (map (if require-match + crm-local-must-match-map + crm-local-completion-map)) + ;; If the user enters empty input, read-from-minibuffer returns + ;; the empty string, not DEF. + (input (read-from-minibuffer + prompt initial-input map + nil hist def inherit-input-method))) + (and def (string-equal input "") (setq input def)) + (split-string input crm-separator))) ;; testing and debugging ;; (defun crm-init-test-environ ()