changeset 105089:30c99a719e21

(dired-query-alist): Remove spurious backslash. (dired-query): Use read-key.
author Stefan Monnier <monnier@iro.umontreal.ca>
date Fri, 18 Sep 2009 15:35:23 +0000
parents ec0d4293e991
children b9e58ef2bdb6
files lisp/ChangeLog lisp/dired-aux.el
diffstat 2 files changed, 14 insertions(+), 10 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/ChangeLog	Fri Sep 18 15:34:23 2009 +0000
+++ b/lisp/ChangeLog	Fri Sep 18 15:35:23 2009 +0000
@@ -1,3 +1,8 @@
+2009-09-18  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+	* dired-aux.el (dired-query-alist): Remove spurious backslash.
+	(dired-query): Use read-key.
+
 2009-09-18  Adrian Robert  <Adrian.B.Robert@gmail.com>
 
 	* cus-start.el (ns-use-qd-smoothing): Remove.
--- a/lisp/dired-aux.el	Fri Sep 18 15:34:23 2009 +0000
+++ b/lisp/dired-aux.el	Fri Sep 18 15:35:23 2009 +0000
@@ -867,7 +867,7 @@
 	   failures)))))
 
 (defvar dired-query-alist
-  '((?\y . y) (?\040 . y)		; `y' or SPC means accept once
+  '((?y . y) (?\040 . y)		; `y' or SPC means accept once
     (?n . n) (?\177 . n)		; `n' or DEL skips once
     (?! . yes)				; `!' accepts rest
     (?q . no) (?\e . no)		; `q' or ESC skips rest
@@ -876,10 +876,10 @@
 
 ;;;###autoload
 (defun dired-query (qs-var qs-prompt &rest qs-args)
-  ;; Query user and return nil or t.
-  ;; Store answer in symbol VAR (which must initially be bound to nil).
-  ;; Format PROMPT with ARGS.
-  ;; Binding variable help-form will help the user who types the help key.
+  "Query user and return nil or t.
+Store answer in symbol VAR (which must initially be bound to nil).
+Format PROMPT with ARGS.
+Binding variable `help-form' will help the user who types the help key."
   (let* ((char (symbol-value qs-var))
 	 (action (cdr (assoc char dired-query-alist))))
     (cond ((eq 'yes action)
@@ -897,13 +897,12 @@
 	     ;; Actually it looks nicer without cursor-in-echo-area - you can
 	     ;; look at the dired buffer instead of at the prompt to decide.
 	     (apply 'message qprompt qs-args)
-	     (setq char (set qs-var (read-char)))
-	     (while (not (setq elt (assoc char dired-query-alist)))
-	       (message "Invalid char - type %c for help." help-char)
+	     (while (progn (setq char (set qs-var (read-key)))
+                           (not (setq elt (assoc char dired-query-alist))))
+	       (message "Invalid key - type %c for help." help-char)
 	       (ding)
 	       (sit-for 1)
-	       (apply 'message qprompt qs-args)
-	       (setq char (set qs-var (read-char))))
+	       (apply 'message qprompt qs-args))
 	     ;; Display the question with the answer.
 	     (message "%s" (concat (apply 'format qprompt qs-args)
 			      (char-to-string char)))