X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcode%2Fquery.lisp;h=4dc5d6ac92ebbdd60a59215f5a17146aa6038f0a;hb=f59d43f28fb757db168e46399b7c8ab04cc6620b;hp=4cbe3f8bb675b80e99f266f07decebfa5b9ee59b;hpb=96de323a7da5d9f72473b48625dcb6d084ec0a3b;p=sbcl.git diff --git a/src/code/query.lisp b/src/code/query.lisp index 4cbe3f8..4dc5d6a 100644 --- a/src/code/query.lisp +++ b/src/code/query.lisp @@ -18,8 +18,7 @@ (defun query-read-line () (force-output *query-io*) - (string-trim #.(concatenate 'string '(#\Space #\Tab)) - (read-line *query-io*))) + (string-trim " " (read-line *query-io*))) (defun maybe-print-query (hint format-string &rest format-args) (fresh-line *query-io*) @@ -31,7 +30,7 @@ (defun clarify-legal-query-input (yes no) (format *query-io* "~&Please type \"~A\" for yes or \"~A\" for no.~%" - yes no)) + yes no)) (defun y-or-n-p (&optional format-string &rest arguments) #!+sb-doc @@ -40,24 +39,24 @@ n or N as a negative answer. It asks again if you enter any other characters." (flet ((print-query () - (maybe-print-query "(y or n)" format-string arguments))) + (apply #'maybe-print-query "(y or n)" format-string arguments))) (loop (print-query) - (case (query-read-char) - ((#\y #\Y) (return t)) - ((#\n #\N) (return nil)) - (t (clarify-legal-query-input "y" "n")))))) - + (case (query-read-char) + ((#\y #\Y) (return t)) + ((#\n #\N) (return nil)) + (t (clarify-legal-query-input "y" "n")))))) + (defun yes-or-no-p (&optional format-string &rest arguments) #!+sb-doc "YES-OR-NO-P is similar to Y-OR-N-P, except that it clears the input buffer, beeps, and uses READ-LINE to get the strings YES or NO." (flet ((print-query () - (maybe-print-query "(yes or no)" format-string arguments))) + (apply #'maybe-print-query "(yes or no)" format-string arguments))) (beep *query-io*) (loop (print-query) - (let ((input (query-read-line))) - (cond - ((string-equal input "yes") (return t)) - ((string-equal input "no") (return nil)) - (t (clarify-legal-query-input "yes" "no"))))))) + (let ((input (query-read-line))) + (cond + ((string-equal input "yes") (return t)) + ((string-equal input "no") (return nil)) + (t (clarify-legal-query-input "yes" "no")))))))