GNU bug report logs - #8948
24.0.50; y-or-n-p doesn't support scroll-o-w like yes-or-no-p

Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.

Package: emacs; Reported by: Thierry Volpiatto <thierry.volpiatto <at> gmail.com>; merged with #8418; dated Tue, 28 Jun 2011 04:44:01 UTC; Maintainer for emacs is bug-gnu-emacs <at> gnu.org.
Merged 8418 8948. Request was from Glenn Morris <rgm <at> gnu.org> to control <at> debbugs.gnu.org. Full text available.

Message received at 8948 <at> debbugs.gnu.org:


Received: (at 8948) by debbugs.gnu.org; 4 Jul 2011 19:46:24 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Jul 04 15:46:24 2011
Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.69)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1Qdp67-00056h-Pd
	for submit <at> debbugs.gnu.org; Mon, 04 Jul 2011 15:46:23 -0400
Received: from ironport2-out.teksavvy.com ([206.248.154.183]
	helo=ironport2-out.pppoe.ca)
	by debbugs.gnu.org with esmtp (Exim 4.69)
	(envelope-from <monnier <at> iro.umontreal.ca>) id 1Qdp65-00056U-SL
	for 8948 <at> debbugs.gnu.org; Mon, 04 Jul 2011 15:46:22 -0400
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: Av0EAKAXEk5FxIxr/2dsb2JhbABTp3t4iHrBK4Y2BJ5chCw
X-IronPort-AV: E=Sophos;i="4.65,474,1304308800"; d="scan'208";a="120412028"
Received: from 69-196-140-107.dsl.teksavvy.com (HELO pastel.home)
	([69.196.140.107])
	by ironport2-out.pppoe.ca with ESMTP/TLS/ADH-AES256-SHA;
	04 Jul 2011 15:46:15 -0400
Received: by pastel.home (Postfix, from userid 20848)
	id 6183558DBA; Mon,  4 Jul 2011 15:46:15 -0400 (EDT)
From: Stefan Monnier <monnier <at> iro.umontreal.ca>
To: Deniz Dogan <deniz <at> dogan.se>
Subject: Re: bug#8948: 24.0.50;
	y-or-n-p doesn't support scroll-o-w like yes-or-no-p
Message-ID: <jwvy60d4ytd.fsf-monnier+emacs <at> gnu.org>
References: <874o3a1s7g.fsf <at> gmail.com> <8739irxt7f.fsf <at> gmail.com>
	<4E0CCED0.20604 <at> dogan.se> <4E0D926F.1070109 <at> dogan.se>
Date: Mon, 04 Jul 2011 15:46:15 -0400
In-Reply-To: <4E0D926F.1070109 <at> dogan.se> (Deniz Dogan's message of "Fri, 01
	Jul 2011 11:25:03 +0200")
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: -2.1 (--)
X-Debbugs-Envelope-To: 8948
Cc: 8948 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.11
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <http://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>,
	<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <http://debbugs.gnu.org/pipermail/debbugs-submit>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <http://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>,
	<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Sender: debbugs-submit-bounces <at> debbugs.gnu.org
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
X-Spam-Score: -2.1 (--)

>> I'm not so sure that's a suitable solution. What if someone wants yet
>> another command to work in `y-or-n-p'?
> Here is an alternative solution which utilizes the current global map if the
> answer is not found in query-replace-map.
> I'm not sure this is suitable either since there is no telling what kind of
> interactive commands that can mess things up for the user.

Maybe a simpler option is to use a read-from-minibuffer and then set
overriding-terminal-local-map to a keymap that just holds
a few bindings?
That might also be a good approach for query-replace, BTW.


        Stefan




Information forwarded to owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org:
bug#8948; Package emacs. Full text available.

Message received at submit <at> debbugs.gnu.org:


Received: (at submit) by debbugs.gnu.org; 1 Jul 2011 09:25:50 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Jul 01 05:25:50 2011
Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.69)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1QcZyv-0003Vi-RO
	for submit <at> debbugs.gnu.org; Fri, 01 Jul 2011 05:25:50 -0400
Received: from eggs.gnu.org ([140.186.70.92])
	by debbugs.gnu.org with esmtp (Exim 4.69)
	(envelope-from <deniz <at> dogan.se>) id 1QcZyt-0003VW-Oe
	for submit <at> debbugs.gnu.org; Fri, 01 Jul 2011 05:25:48 -0400
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
	(envelope-from <deniz <at> dogan.se>) id 1QcZym-0006Vm-R1
	for submit <at> debbugs.gnu.org; Fri, 01 Jul 2011 05:25:42 -0400
X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on eggs.gnu.org
X-Spam-Level: 
X-Spam-Status: No, score=-2.6 required=5.0 tests=BAYES_00,RCVD_IN_DNSWL_LOW
	autolearn=unavailable version=3.3.1
Received: from lists.gnu.org ([140.186.70.17]:34867)
	by eggs.gnu.org with esmtp (Exim 4.71)
	(envelope-from <deniz <at> dogan.se>) id 1QcZym-0006Vh-D4
	for submit <at> debbugs.gnu.org; Fri, 01 Jul 2011 05:25:40 -0400
Received: from eggs.gnu.org ([140.186.70.92]:42231)
	by lists.gnu.org with esmtp (Exim 4.71)
	(envelope-from <deniz <at> dogan.se>) id 1QcZyk-0007b4-Ax
	for bug-gnu-emacs <at> gnu.org; Fri, 01 Jul 2011 05:25:40 -0400
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
	(envelope-from <deniz <at> dogan.se>) id 1QcZyi-0006V8-2o
	for bug-gnu-emacs <at> gnu.org; Fri, 01 Jul 2011 05:25:37 -0400
Received: from ch-smtp05.sth.basefarm.net ([80.76.153.6]:41726)
	by eggs.gnu.org with esmtp (Exim 4.71)
	(envelope-from <deniz <at> dogan.se>) id 1QcZyh-0006V0-GE
	for bug-gnu-emacs <at> gnu.org; Fri, 01 Jul 2011 05:25:35 -0400
Received: from c80-216-105-155.bredband.comhem.se ([80.216.105.155]:53112
	helo=[192.168.0.10])
	by ch-smtp05.sth.basefarm.net with esmtp (Exim 4.76)
	(envelope-from <deniz <at> dogan.se>) id 1QcZyK-00041L-IV
	for bug-gnu-emacs <at> gnu.org; Fri, 01 Jul 2011 11:25:14 +0200
Message-ID: <4E0D926F.1070109 <at> dogan.se>
Date: Fri, 01 Jul 2011 11:25:03 +0200
From: Deniz Dogan <deniz <at> dogan.se>
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64;
	rv:5.0) Gecko/20110624 Thunderbird/5.0
MIME-Version: 1.0
To: bug-gnu-emacs <at> gnu.org
Subject: Re: bug#8948: 24.0.50;
	y-or-n-p doesn't support scroll-o-w like yes-or-no-p
References: <874o3a1s7g.fsf <at> gmail.com> <8739irxt7f.fsf <at> gmail.com>
	<4E0CCED0.20604 <at> dogan.se>
In-Reply-To: <4E0CCED0.20604 <at> dogan.se>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
X-Originating-IP: 80.216.105.155
X-Scan-Result: No virus found in message 1QcZyK-00041L-IV.
X-Scan-Signature: ch-smtp05.sth.basefarm.net 1QcZyK-00041L-IV
	95f31bc6fb81ed9d1c1a13e582106944
X-detected-operating-system: by eggs.gnu.org: Genre and OS details not
	recognized.
X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 3)
X-Received-From: 140.186.70.17
X-Spam-Score: -5.8 (-----)
X-Debbugs-Envelope-To: submit
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.11
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <http://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>,
	<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <http://debbugs.gnu.org/pipermail/debbugs-submit>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <http://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>,
	<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Sender: debbugs-submit-bounces <at> debbugs.gnu.org
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
X-Spam-Score: -5.9 (-----)

On 2011-06-30 21:30, Deniz Dogan wrote:
> On 2011-06-30 16:57, Thierry Volpiatto wrote:
>> Thierry Volpiatto<thierry.volpiatto <at> gmail.com> writes:
>>
>>> Hi,
>>> after discussion about bug#8927, i discover that
>>> from a yes-or-no-p i can scroll-other-window, but not from a
>>> y-or-n-p.
>>
>> This allow scrolling from a y-or-n-p:
>>
>>
>> #+BEGIN_SRC lisp
>> (defun y-or-n-p (prompt)
>> "Ask user a \"y or n\" question. Return t if answer is \"y\".
>> PROMPT is the string to display to ask the question. It should
>> end in a space; `y-or-n-p' adds \"(y or n) \" to it.
>>
>> No confirmation of the answer is requested; a single character is enough.
>> Also accepts Space to mean yes, or Delete to mean no. \(Actually, it uses
>> the bindings in `query-replace-map'; see the documentation of that
>> variable
>> for more information. In this case, the useful bindings are `act',
>> `skip',
>> `recenter', and `quit'.\)
>>
>> Under a windowing system a dialog box will be used if
>> `last-nonmenu-event'
>> is nil and `use-dialog-box' is non-nil."
>> ;; ¡Beware! when I tried to edebug this code, Emacs got into a weird
>> state
>> ;; where all the keys were unbound (i.e. it somehow got triggered
>> ;; within read-key, apparently). I had to kill it.
>> (let ((answer 'recenter))
>> (if (and (display-popup-menus-p)
>> (listp last-nonmenu-event)
>> use-dialog-box)
>> (setq answer
>> (x-popup-dialog t `(,prompt ("yes" . act) ("No" . skip))))
>> (setq prompt (concat prompt
>> (if (eq ?\s (aref prompt (1- (length prompt))))
>> "" " ")
>> "(y or n) "))
>> (while
>> (let* ((key
>> (let ((cursor-in-echo-area t))
>> (when minibuffer-auto-raise
>> (raise-frame (window-frame (minibuffer-window))))
>> (read-key (propertize (if (or (eq answer 'recenter)
>> (eq com 'scroll-other-window)
>> (eq com 'scroll-other-window-down))
>> prompt
>> (concat "Please answer y or n. "
>> prompt))
>> 'face 'minibuffer-prompt)))))
>> (setq answer (lookup-key query-replace-map (vector key) t))
>> (setq com (lookup-key global-map (vector key) t))
>> (cond
>> ((eq com 'scroll-other-window)
>> (with-selected-window (minibuffer-window)
>> (scroll-other-window 1)) t)
>> ((eq com 'scroll-other-window-down)
>> (with-selected-window (minibuffer-window)
>> (scroll-other-window -1)) t)
>> ((memq answer '(skip act)) nil)
>> ((eq answer 'recenter) (recenter) t)
>> ((memq answer '(exit-prefix quit)) (signal 'quit nil) t)
>> (t t)))
>> (ding)
>> (discard-input)))
>> (let ((ret (eq answer 'act)))
>> (unless noninteractive
>> (message "%s %s" prompt (if ret "y" "n")))
>> ret)))
>>
>> #+END_SRC
>>
>
>
> I'm not so sure that's a suitable solution. What if someone wants yet
> another command to work in `y-or-n-p'?
>

Here is an alternative solution which utilizes the current global map if 
the answer is not found in query-replace-map.

I'm not sure this is suitable either since there is no telling what kind 
of interactive commands that can mess things up for the user.



=== modified file 'lisp/subr.el'
--- lisp/subr.el	2011-06-21 08:55:22 +0000
+++ lisp/subr.el	2011-07-01 09:23:35 +0000
@@ -2158,15 +2158,16 @@
  No confirmation of the answer is requested; a single character is enough.
  Also accepts Space to mean yes, or Delete to mean no.  \(Actually, it uses
  the bindings in `query-replace-map'; see the documentation of that 
variable
-for more information.  In this case, the useful bindings are `act', `skip',
-`recenter', and `quit'.\)
+for more information.  If the character is not found within that map, it
+looks in the current global map instead.\)

  Under a windowing system a dialog box will be used if `last-nonmenu-event'
  is nil and `use-dialog-box' is non-nil."
    ;; ¡Beware! when I tried to edebug this code, Emacs got into a weird 
state
    ;; where all the keys were unbound (i.e. it somehow got triggered
    ;; within read-key, apparently).  I had to kill it.
-  (let ((answer 'recenter))
+  (let (answer
+        (valid-answer t))
      (if (and (display-popup-menus-p)
               (listp last-nonmenu-event)
               use-dialog-box)
@@ -2181,7 +2182,7 @@
                    (let ((cursor-in-echo-area t))
                      (when minibuffer-auto-raise
                        (raise-frame (window-frame (minibuffer-window))))
-                    (read-key (propertize (if (eq answer 'recenter)
+                    (read-key (propertize (if valid-answer
                                                prompt
                                              (concat "Please answer y 
or n.  "
                                                      prompt))
@@ -2189,9 +2190,14 @@
              (setq answer (lookup-key query-replace-map (vector key) t))
              (cond
               ((memq answer '(skip act)) nil)
-             ((eq answer 'recenter) (recenter) t)
               ((memq answer '(exit-prefix quit)) (signal 'quit nil) t)
-             (t t)))
+             (t (setq answer (lookup-key (current-global-map) (vector 
key) t))
+                (if (not (commandp answer))
+                    (progn
+                      (setq valid-answer nil)
+                      t)
+                  (call-interactively answer)
+                  (setq valid-answer t)))))
          (ding)
          (discard-input)))
      (let ((ret (eq answer 'act)))





Information forwarded to owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org:
bug#8948; Package emacs. Full text available.

Message received at submit <at> debbugs.gnu.org:


Received: (at submit) by debbugs.gnu.org; 30 Jun 2011 19:31:02 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Jun 30 15:31:01 2011
Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.69)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1QcMx3-0008CK-F1
	for submit <at> debbugs.gnu.org; Thu, 30 Jun 2011 15:31:01 -0400
Received: from eggs.gnu.org ([140.186.70.92])
	by debbugs.gnu.org with esmtp (Exim 4.69)
	(envelope-from <deniz <at> dogan.se>) id 1QcMx1-0008C8-0L
	for submit <at> debbugs.gnu.org; Thu, 30 Jun 2011 15:30:59 -0400
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
	(envelope-from <deniz <at> dogan.se>) id 1QcMwu-0001gJ-9o
	for submit <at> debbugs.gnu.org; Thu, 30 Jun 2011 15:30:53 -0400
X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on eggs.gnu.org
X-Spam-Level: 
X-Spam-Status: No, score=-2.6 required=5.0 tests=BAYES_00,RCVD_IN_DNSWL_LOW
	autolearn=unavailable version=3.3.1
Received: from lists.gnu.org ([140.186.70.17]:53729)
	by eggs.gnu.org with esmtp (Exim 4.71)
	(envelope-from <deniz <at> dogan.se>) id 1QcMwt-0001g7-PO
	for submit <at> debbugs.gnu.org; Thu, 30 Jun 2011 15:30:52 -0400
Received: from eggs.gnu.org ([140.186.70.92]:41659)
	by lists.gnu.org with esmtp (Exim 4.71)
	(envelope-from <deniz <at> dogan.se>) id 1QcMwr-00012h-S8
	for bug-gnu-emacs <at> gnu.org; Thu, 30 Jun 2011 15:30:51 -0400
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
	(envelope-from <deniz <at> dogan.se>) id 1QcMwp-0001ex-R3
	for bug-gnu-emacs <at> gnu.org; Thu, 30 Jun 2011 15:30:49 -0400
Received: from ch-smtp04.sth.basefarm.net ([80.76.153.5]:56865)
	by eggs.gnu.org with esmtp (Exim 4.71)
	(envelope-from <deniz <at> dogan.se>) id 1QcMwp-0001ej-76
	for bug-gnu-emacs <at> gnu.org; Thu, 30 Jun 2011 15:30:47 -0400
Received: from c80-216-105-155.bredband.comhem.se ([80.216.105.155]:59245
	helo=[192.168.0.10])
	by ch-smtp04.sth.basefarm.net with esmtp (Exim 4.76)
	(envelope-from <deniz <at> dogan.se>) id 1QcMwZ-0000Lc-Es
	for bug-gnu-emacs <at> gnu.org; Thu, 30 Jun 2011 21:30:33 +0200
Message-ID: <4E0CCED0.20604 <at> dogan.se>
Date: Thu, 30 Jun 2011 21:30:24 +0200
From: Deniz Dogan <deniz <at> dogan.se>
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64;
	rv:5.0) Gecko/20110624 Thunderbird/5.0
MIME-Version: 1.0
To: bug-gnu-emacs <at> gnu.org
Subject: Re: bug#8948: 24.0.50;
	y-or-n-p doesn't support scroll-o-w like yes-or-no-p
References: <874o3a1s7g.fsf <at> gmail.com> <8739irxt7f.fsf <at> gmail.com>
In-Reply-To: <8739irxt7f.fsf <at> gmail.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
X-Originating-IP: 80.216.105.155
X-Scan-Result: No virus found in message 1QcMwZ-0000Lc-Es.
X-Scan-Signature: ch-smtp04.sth.basefarm.net 1QcMwZ-0000Lc-Es
	3f61c1534530bcef7e998a50983f9f71
X-detected-operating-system: by eggs.gnu.org: Genre and OS details not
	recognized.
X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 3)
X-Received-From: 140.186.70.17
X-Spam-Score: -5.6 (-----)
X-Debbugs-Envelope-To: submit
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.11
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <http://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>,
	<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <http://debbugs.gnu.org/pipermail/debbugs-submit>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <http://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>,
	<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Sender: debbugs-submit-bounces <at> debbugs.gnu.org
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
X-Spam-Score: -5.7 (-----)

On 2011-06-30 16:57, Thierry Volpiatto wrote:
> Thierry Volpiatto<thierry.volpiatto <at> gmail.com>  writes:
>
>> Hi,
>> after discussion about bug#8927, i discover that
>> from a yes-or-no-p i can scroll-other-window, but not from a
>> y-or-n-p.
>
> This allow scrolling from a y-or-n-p:
>
>
> #+BEGIN_SRC lisp
> (defun y-or-n-p (prompt)
>    "Ask user a \"y or n\" question.  Return t if answer is \"y\".
> PROMPT is the string to display to ask the question.  It should
> end in a space; `y-or-n-p' adds \"(y or n) \" to it.
>
> No confirmation of the answer is requested; a single character is enough.
> Also accepts Space to mean yes, or Delete to mean no.  \(Actually, it uses
> the bindings in `query-replace-map'; see the documentation of that variable
> for more information.  In this case, the useful bindings are `act', `skip',
> `recenter', and `quit'.\)
>
> Under a windowing system a dialog box will be used if `last-nonmenu-event'
> is nil and `use-dialog-box' is non-nil."
>    ;; ¡Beware! when I tried to edebug this code, Emacs got into a weird state
>    ;; where all the keys were unbound (i.e. it somehow got triggered
>    ;; within read-key, apparently).  I had to kill it.
>    (let ((answer 'recenter))
>      (if (and (display-popup-menus-p)
>               (listp last-nonmenu-event)
>               use-dialog-box)
>          (setq answer
>                (x-popup-dialog t `(,prompt ("yes" . act) ("No" . skip))))
>        (setq prompt (concat prompt
>                             (if (eq ?\s (aref prompt (1- (length prompt))))
>                                 "" " ")
>                             "(y or n) "))
>        (while
>            (let* ((key
>                    (let ((cursor-in-echo-area t))
>                      (when minibuffer-auto-raise
>                        (raise-frame (window-frame (minibuffer-window))))
>                      (read-key (propertize (if (or (eq answer 'recenter)
>                                                    (eq com 'scroll-other-window)
>                                                    (eq com 'scroll-other-window-down))
>                                                prompt
>                                              (concat "Please answer y or n.  "
>                                                      prompt))
>                                            'face 'minibuffer-prompt)))))
>              (setq answer (lookup-key query-replace-map (vector key) t))
>              (setq com (lookup-key global-map (vector key) t))
>              (cond
>                ((eq com 'scroll-other-window)
>                 (with-selected-window (minibuffer-window)
>                   (scroll-other-window 1)) t)
>                ((eq com 'scroll-other-window-down)
>                 (with-selected-window (minibuffer-window)
>                   (scroll-other-window -1)) t)
>                ((memq answer '(skip act)) nil)
>                ((eq answer 'recenter) (recenter) t)
>                ((memq answer '(exit-prefix quit)) (signal 'quit nil) t)
>                (t t)))
>          (ding)
>          (discard-input)))
>      (let ((ret (eq answer 'act)))
>        (unless noninteractive
>          (message "%s %s" prompt (if ret "y" "n")))
>        ret)))
>
> #+END_SRC
>


I'm not so sure that's a suitable solution.  What if someone wants yet 
another command to work in `y-or-n-p'?

Deniz




Information forwarded to owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org:
bug#8948; Package emacs. Full text available.

Message received at submit <at> debbugs.gnu.org:


Received: (at submit) by debbugs.gnu.org; 30 Jun 2011 14:58:14 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Jun 30 10:58:13 2011
Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.69)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1QcIh3-0003Rg-2H
	for submit <at> debbugs.gnu.org; Thu, 30 Jun 2011 10:58:13 -0400
Received: from eggs.gnu.org ([140.186.70.92])
	by debbugs.gnu.org with esmtp (Exim 4.69)
	(envelope-from <geb-bug-gnu-emacs <at> m.gmane.org>) id 1QcIgz-0003RT-Nw
	for submit <at> debbugs.gnu.org; Thu, 30 Jun 2011 10:58:11 -0400
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
	(envelope-from <geb-bug-gnu-emacs <at> m.gmane.org>) id 1QcIgs-0006UO-8h
	for submit <at> debbugs.gnu.org; Thu, 30 Jun 2011 10:58:04 -0400
X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on eggs.gnu.org
X-Spam-Level: 
X-Spam-Status: No, score=-4.2 required=5.0 tests=BAYES_00,FREEMAIL_FROM,
	RCVD_IN_DNSWL_MED,T_RP_MATCHES_RCVD,T_TO_NO_BRKTS_FREEMAIL
	autolearn=unavailable version=3.3.1
Received: from lists.gnu.org ([140.186.70.17]:55645)
	by eggs.gnu.org with esmtp (Exim 4.71)
	(envelope-from <geb-bug-gnu-emacs <at> m.gmane.org>) id 1QcIgs-0006UK-3K
	for submit <at> debbugs.gnu.org; Thu, 30 Jun 2011 10:58:02 -0400
Received: from eggs.gnu.org ([140.186.70.92]:34123)
	by lists.gnu.org with esmtp (Exim 4.71)
	(envelope-from <geb-bug-gnu-emacs <at> m.gmane.org>) id 1QcIgp-0000kt-L5
	for bug-gnu-emacs <at> gnu.org; Thu, 30 Jun 2011 10:58:01 -0400
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
	(envelope-from <geb-bug-gnu-emacs <at> m.gmane.org>) id 1QcIgl-0006Tk-Uh
	for bug-gnu-emacs <at> gnu.org; Thu, 30 Jun 2011 10:57:59 -0400
Received: from lo.gmane.org ([80.91.229.12]:52637)
	by eggs.gnu.org with esmtp (Exim 4.71)
	(envelope-from <geb-bug-gnu-emacs <at> m.gmane.org>) id 1QcIgl-0006Tf-By
	for bug-gnu-emacs <at> gnu.org; Thu, 30 Jun 2011 10:57:55 -0400
Received: from list by lo.gmane.org with local (Exim 4.69)
	(envelope-from <geb-bug-gnu-emacs <at> m.gmane.org>) id 1QcIgk-0006Ny-4S
	for bug-gnu-emacs <at> gnu.org; Thu, 30 Jun 2011 16:57:54 +0200
Received: from 43.77.197.77.rev.sfr.net ([77.197.77.43])
	by main.gmane.org with esmtp (Gmexim 0.1 (Debian))
	id 1AlnuQ-0007hv-00
	for <bug-gnu-emacs <at> gnu.org>; Thu, 30 Jun 2011 16:57:53 +0200
Received: from thierry.volpiatto by 43.77.197.77.rev.sfr.net with local
	(Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00
	for <bug-gnu-emacs <at> gnu.org>; Thu, 30 Jun 2011 16:57:53 +0200
X-Injected-Via-Gmane: http://gmane.org/
To: bug-gnu-emacs <at> gnu.org
From: Thierry Volpiatto <thierry.volpiatto <at> gmail.com>
Subject: Re: bug#8948: 24.0.50;
	y-or-n-p doesn't support scroll-o-w like yes-or-no-p
Date: Thu, 30 Jun 2011 16:57:40 +0200
Lines: 270
Message-ID: <8739irxt7f.fsf <at> gmail.com>
References: <874o3a1s7g.fsf <at> gmail.com>
Mime-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Complaints-To: usenet <at> dough.gmane.org
X-Gmane-NNTP-Posting-Host: 43.77.197.77.rev.sfr.net
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (gnu/linux)
Cancel-Lock: sha1:hGlv5OTg+MwQIlRbWao+IV3ifzc=
X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 3)
X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 3)
X-Received-From: 140.186.70.17
X-Spam-Score: -4.3 (----)
X-Debbugs-Envelope-To: submit
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.11
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <http://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>,
	<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <http://debbugs.gnu.org/pipermail/debbugs-submit>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <http://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>,
	<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Sender: debbugs-submit-bounces <at> debbugs.gnu.org
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
X-Spam-Score: -4.3 (----)

Thierry Volpiatto <thierry.volpiatto <at> gmail.com> writes:

> Hi,
> after discussion about bug#8927, i discover that 
> from a yes-or-no-p i can scroll-other-window, but not from a
> y-or-n-p.

This allow scrolling from a y-or-n-p:


#+BEGIN_SRC lisp
(defun y-or-n-p (prompt)
  "Ask user a \"y or n\" question.  Return t if answer is \"y\".
PROMPT is the string to display to ask the question.  It should
end in a space; `y-or-n-p' adds \"(y or n) \" to it.

No confirmation of the answer is requested; a single character is enough.
Also accepts Space to mean yes, or Delete to mean no.  \(Actually, it uses
the bindings in `query-replace-map'; see the documentation of that variable
for more information.  In this case, the useful bindings are `act', `skip',
`recenter', and `quit'.\)

Under a windowing system a dialog box will be used if `last-nonmenu-event'
is nil and `use-dialog-box' is non-nil."
  ;; ¡Beware! when I tried to edebug this code, Emacs got into a weird state
  ;; where all the keys were unbound (i.e. it somehow got triggered
  ;; within read-key, apparently).  I had to kill it.
  (let ((answer 'recenter))
    (if (and (display-popup-menus-p)
             (listp last-nonmenu-event)
             use-dialog-box)
        (setq answer
              (x-popup-dialog t `(,prompt ("yes" . act) ("No" . skip))))
      (setq prompt (concat prompt
                           (if (eq ?\s (aref prompt (1- (length prompt))))
                               "" " ")
                           "(y or n) "))
      (while
          (let* ((key
                  (let ((cursor-in-echo-area t))
                    (when minibuffer-auto-raise
                      (raise-frame (window-frame (minibuffer-window))))
                    (read-key (propertize (if (or (eq answer 'recenter)
                                                  (eq com 'scroll-other-window)
                                                  (eq com 'scroll-other-window-down))
                                              prompt
                                            (concat "Please answer y or n.  "
                                                    prompt))
                                          'face 'minibuffer-prompt)))))
            (setq answer (lookup-key query-replace-map (vector key) t))
            (setq com (lookup-key global-map (vector key) t))
            (cond
              ((eq com 'scroll-other-window)
               (with-selected-window (minibuffer-window)
                 (scroll-other-window 1)) t)
              ((eq com 'scroll-other-window-down)
               (with-selected-window (minibuffer-window)
                 (scroll-other-window -1)) t)
              ((memq answer '(skip act)) nil)
              ((eq answer 'recenter) (recenter) t)
              ((memq answer '(exit-prefix quit)) (signal 'quit nil) t)
              (t t)))
        (ding)
        (discard-input)))
    (let ((ret (eq answer 'act)))
      (unless noninteractive
        (message "%s %s" prompt (if ret "y" "n")))
      ret)))

#+END_SRC

>
>
> In GNU Emacs 24.0.50.17 (i686-pc-linux-gnu, GTK+ Version 2.24.4)
>  of 2011-06-27 on thierry-MM061
> Windowing system distributor `The X.Org Foundation', version 11.0.11001000
> Important settings:
>   value of $LC_ALL: nil
>   value of $LC_COLLATE: nil
>   value of $LC_CTYPE: nil
>   value of $LC_MESSAGES: nil
>   value of $LC_MONETARY: nil
>   value of $LC_NUMERIC: nil
>   value of $LC_TIME: nil
>   value of $LANG: fr_FR.utf8
>   value of $XMODIFIERS: nil
>   locale-coding-system: utf-8-unix
>   default enable-multibyte-characters: t
>
> Major mode: Emacs-Lisp
>
> Minor modes in effect:
>   TeX-PDF-mode: t
>   eldoc-mode: t
>   minibuffer-depth-indicate-mode: t
>   auto-image-file-mode: t
>   show-paren-mode: t
>   display-time-mode: t
>   diff-auto-refine-mode: t
>   recentf-mode: t
>   savehist-mode: t
>   shell-dirtrack-mode: t
>   tooltip-mode: t
>   mouse-wheel-mode: t
>   file-name-shadow-mode: t
>   global-font-lock-mode: t
>   font-lock-mode: t
>   auto-composition-mode: t
>   auto-encryption-mode: t
>   auto-compression-mode: t
>   column-number-mode: t
>   line-number-mode: t
>   transient-mark-mode: t
>
> Recent input:
> <down> <down> <down> <down> <down> <down> <down> <down> 
> <down> <down> <down> <down> <down> <down> <down> <down> 
> <down> <down> <down> <down> <down> <down> <down> <down> 
> <down> <down> <down> <down> <down> <down> <down> <down> 
> <down> <down> <down> <down> <down> <down> <down> <down> 
> <down> <down> <down> <down> <down> <down> <down> <down> 
> <down> <down> <down> <down> <down> <down> <down> <down> 
> <down> <down> <down> <down> <down> <down> <down> <down> 
> <down> <down> <down> <down> <down> <down> <down> <down> 
> <down> <down> <down> <down> <down> <down> <down> <down> 
> <down> <down> <down> <down> <down> <down> <down> <down> 
> <down> <down> <down> <down> <down> <down> <down> <down> 
> <down> <down> <down> <down> <down> <down> <down> <down> 
> <down> <down> <down> <down> <down> <down> <down> <down> 
> <down> <down> <down> <down> <down> <down> <down> <down> 
> <down> <down> <down> <down> <down> <down> <down> <down> 
> <down> <down> <down> <down> <down> <down> <down> <down> 
> <down> <down> <down> <down> <down> <down> <down> <down> 
> <down> <down> <down> <down> <down> <down> <down> <down> 
> <down> <down> <down> <down> <down> <down> <down> <down> 
> <down> <down> <down> <down> <down> <down> <down> <down> 
> <down> <down> <down> <down> <down> <down> <down> <down> 
> <down> <down> <down> <down> <down> <down> <down> <down> 
> <down> <down> <down> <down> <down> <down> <down> <down> 
> <down> <down> <down> <down> <down> <down> <down> <down> 
> <down> <down> <down> <down> <down> <down> <down> <down> 
> C-c R y e s <return> C-< q C-< C-x C-² <f7> m L <up> 
> <up> <up> <up> <up> <up> <up> <up> <up> <up> <up> <up> 
> <up> <up> <up> <up> <up> <up> <up> <up> C-u <return> 
> 2 <backspace> 5 6 <return> <down> <down> <down> <down> 
> <down> <down> <down> <down> <down> <down> <down> <down> 
> <down> <down> <down> <down> <down> <down> <down> <down> 
> <down> <down> <up> <up> <up> <up> <up> <up> <up> <up> 
> <up> <right> C-SPC C-f C-f C-f C-f C-f C-f C-f C-f 
> M-w q q y M-x r e p o <return>
>
> Recent messages:
> Fetching headers for gmane.emacs.bugs...done
> Scoring...done
> Generating summary...done
> No more unseen articles
> No more unread articles
> Mark set
> No more unread newsgroups
> Are you sure you want to quit reading news? (y or n)  y
> (No changes need to be saved)
>
>
> Load-path shadows:
> None found.
>
> Features:
> (shadow epa-mail emacsbug flow-fill help-mode xmtn-dvc dvc-status
> xmtn-conflicts xmtn-ids xmtn-match xmtn-automate xmtn-compat xmtn-run
> xmtn-basic-io xmtn-base w3m-cookie w3m-bookmark w3m-tabmenu w3m-session
> dabbrev tramp-cache tramp-sh qp align url-cache url-http url-gw url-auth
> w3m-form smiley gnus-cite gnus-async gnus-bcklg mail-extr gnus-ml
> nndraft nnmh nndoc utf-7 nnimap utf7 nnml nnfolder rot13 netrc
> network-stream starttls tls gnus-agent gnus-srvr gnus-score score-mode
> nnvirtual gnus-msg nntp gnus-cache gnus-dired gnus-registry registry
> eieio-base ert find-func debug view cal-iso preview prv-emacs tex-buf
> reftex-vcr reftex-dcr reftex-auc reftex reftex-vars font-latex latex
> tex-style tex latexenc vc-git xgit-dvc xgit xgit-annotate dvc-annotate
> xgit-log js cc-mode cc-fonts cc-menus cc-cmds cc-styles cc-align
> cc-engine cc-vars cc-defs conf-mode sh-script vc-rcs imenu xhg-dvc xhg
> xhg-annotate xhg-mq xhg-log bzr-core xdarcs-core xgit-core xhg-core
> xmtn-minimal tla smerge-mode newcomment dvc-state dvc-config dvc-diff
> dvc-fileinfo diff dvc-cmenu dvc-about dvc-version dvc-revlist uniquify
> em-unix em-script em-prompt em-ls em-hist em-pred em-glob em-dirs
> em-cmpl em-basic esh-opt em-banner em-alias esh-var esh-io esh-cmd
> esh-ext esh-proc esh-groups eshell esh-module esh-mode align-let server
> googlecl google-maps google-maps-static google-maps-geocode
> google-maps-base json simple-call-tree el-expectations el-mock csv2org
> iedit zop-to-char mule-util elscreen smallurl mm-url xml-weather
> rectangle-utils tv-utils eldoc-eval eldoc pcvs pcvs-parse pcvs-info
> pcvs-defs auto-document autodoc mb-depth ioccur moz cl-info
> slime-xref-browser slime-banner slime-tramp slime-asdf slime-fancy
> slime-fontifying-fu slime-package-fu slime-references slime-scratch
> slime-presentations slime-fuzzy slime-fancy-inspector slime-c-p-c
> slime-editing-commands slime-autodoc slime-parse slime-repl slime
> hideshow hyperspec slime-autoloads boxquote rect image-file newsticker
> newst-treeview newst-plainview newst-reader newst-ticker newst-backend
> ledger-config ledger esh-arg esh-util lpr woman man two-column em-term
> term ehelp electric esh-toggle em-xtra flymake pdbtrack no-word
> regex-tool whitespace paren time dired-tar dired-extension image-dired
> yaoddmuse skeleton sgml-mode emms-mplayer-config emms-playlist-limit
> emms-volume emms-volume-amixer emms-i18n emms-history emms-score
> emms-stream-info emms-metaplaylist-mode emms-bookmarks
> emms-lastfm-client parse-time emms-cue emms-mode-line-icon emms-browser
> sort emms-playlist-sort emms-last-played emms-player-xine
> emms-player-mpd tq emms-playing-time emms-lyrics emms-url hl-line
> emms-tag-editor emms-mark emms-mode-line emms-cache emms-info-ogginfo
> emms-info-mp3info emms-playlist-mode emms-player-vlc emms-player-mplayer
> emms-info emms-streams later-do emms-source-playlist emms-source-file
> emms-player-simple emms-setup emms emms-compat winner dvc-init bzr-gnus
> tla-gnus xgit-gnus xhg-gnus gnus-art mm-uu mml2015 mm-view mml-smime
> smime dig nnir gnus-sum nnoo gnus-group gnus-undo nnmail mail-source
> gnus-start gnus-spec gnus-int gnus-range gnus-win gnus gnus-ems nnheader
> dvc-gnus tla-core tla-autoconf tla-defs dvc-log vc vc-dispatcher
> dvc-unified dvc-tips dired-x ediff-merg ediff-diff ediff-wind ediff-help
> ediff-util ediff-mult ediff-init ediff dvc-autoloads dvc-core dvc-lisp
> dvc-buffers dvc-ui dvc-register dvc-utils dvc-emacs ewoc dvc-defs
> dvc-site psvn log-edit pcvs-util add-log diff-mode htmlize-hack htmlize
> muse-colors muse-docbook muse-texinfo texnfo-upd texinfo muse-latex
> muse-html muse-xml-common muse-wiki cus-edit cus-start cus-load
> muse-publish muse-project muse-protocols muse-regexps muse
> muse-nested-tags muse-mode muse-autoloads org-config-thierry org-crypt
> cal-china lunar solar cal-dst cal-bahai cal-islam cal-hebrew holidays
> hol-loaddefs vc-hg org-wl org-w3m org-vm org-rmail org-mhe org-mew
> org-irc org-jsinfo org-infojs org-html org-exp ob-exp org-exp-blocks
> org-info org-gnus org-docview org-bibtex org-bbdb org-agenda appt
> diary-lib diary-loaddefs org-annotation-helper org-capture org-mks
> remember org-remember org-datetree config-w3m mime-w3m w3m doc-view
> jka-compr image-mode timezone w3m-hist w3m-fb w3m-ems w3m-ccl ccl
> w3m-favicon w3m-image w3m-proc w3m-util mime eword-decode mel path-util
> mime-parse std11 luna mime-def alist mcharset mcs-20 mcs-e20 pces
> pces-e20 pces-20 broken pcustom poe pym static apel-ver product w3m-load
> addressbook-bookmark message sendmail rfc822 mml mml-sec mm-decode
> mm-bodies mm-encode mail-parse rfc2231 rfc2047 rfc2045 ietf-drums
> mailabbrev mail-utils gmm-utils mailheader firefox-protocol
> bookmark-uzbl-handler bookmark-firefox-handler url url-proxy url-privacy
> url-expand url-methods url-history url-cookie url-util url-parse
> url-vars mailcap bookmark-extensions org ob-emacs-lisp ob-tangle ob-ref
> ob-lob ob-table org-footnote org-src ob-comint ob-keys ob ob-eval
> org-complete org-list org-faces org-compat org-entities org-macs
> noutline outline cal-menu calendar cal-loaddefs bookmark pp recentf
> tree-widget wid-edit savehist init-anything-thierry descbinds-anything
> anything-ipython ipython python-mode info-look ansi-color executable
> shell pcomplete shell-history anything-complete anything-show-completion
> anything-obsolete anything-match-plugin anything-delicious xml
> anything-mercurial anything-config browse-url rx grep compile comint
> ring tramp tramp-compat format-spec tramp-loaddefs dired-aux ffap
> thingatpt anything warnings epa-file epa derived epg epg-config
> auth-source eieio byte-opt bytecomp byte-compile cconv macroexp assoc
> gnus-util time-date mm-util mail-prsvr password-cache dired regexp-opt
> usage-memo punycode idna naquadah-theme eev-thierry edmacro kmacro
> iterator eev-all eev-mini-steps eev-browse-url eev-langs eev-compose
> eev-glyphs disp-table eev-insert eev-steps eev-bounded eev easy-mmode
> advice help-fns advice-preload w3m-wget preview-latex tex-site
> auto-loads info easymenu cl tooltip ediff-hook vc-hooks lisp-float-type
> mwheel x-win x-dnd tool-bar dnd fontset image fringe lisp-mode register
> page menu-bar rfn-eshadow timer select scroll-bar mouse jit-lock
> font-lock syntax facemenu font-core frame cham georgian utf-8-lang
> misc-lang vietnamese tibetan thai tai-viet lao korean japanese hebrew
> greek romanian slovak czech european ethiopic indian cyrillic chinese
> case-table epa-hook jka-cmpr-hook help simple abbrev minibuffer loaddefs
> button faces cus-face files text-properties overlay sha1 md5 base64
> format env code-pages mule custom widget hashtable-print-readable
> backquote make-network-process dbusbind dynamic-setting
> font-render-setting move-toolbar gtk x-toolkit x multi-tty emacs)

-- 
A+ Thierry
Get my Gnupg key:
gpg --keyserver pgp.mit.edu --recv-keys 59F29997 





Information forwarded to owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org:
bug#8948; Package emacs. Full text available.

Message received at submit <at> debbugs.gnu.org:


Received: (at submit) by debbugs.gnu.org; 28 Jun 2011 04:43:57 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Jun 28 00:43:57 2011
Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.69)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1QbQ9U-0002oa-LL
	for submit <at> debbugs.gnu.org; Tue, 28 Jun 2011 00:43:57 -0400
Received: from eggs.gnu.org ([140.186.70.92])
	by debbugs.gnu.org with esmtp (Exim 4.69)
	(envelope-from <thierry.volpiatto <at> gmail.com>) id 1QbQ9R-0002oB-4q
	for submit <at> debbugs.gnu.org; Tue, 28 Jun 2011 00:43:54 -0400
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
	(envelope-from <thierry.volpiatto <at> gmail.com>) id 1QbQ9K-0007hV-Je
	for submit <at> debbugs.gnu.org; Tue, 28 Jun 2011 00:43:48 -0400
X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on eggs.gnu.org
X-Spam-Level: 
X-Spam-Status: No, score=-2.6 required=5.0 tests=BAYES_00,FREEMAIL_FROM,
	RCVD_IN_DNSWL_LOW, T_DKIM_INVALID,
	T_TO_NO_BRKTS_FREEMAIL autolearn=unavailable version=3.3.1
Received: from lists.gnu.org ([140.186.70.17]:57035)
	by eggs.gnu.org with esmtp (Exim 4.71)
	(envelope-from <thierry.volpiatto <at> gmail.com>) id 1QbQ9K-0007hR-I8
	for submit <at> debbugs.gnu.org; Tue, 28 Jun 2011 00:43:46 -0400
Received: from eggs.gnu.org ([140.186.70.92]:45526)
	by lists.gnu.org with esmtp (Exim 4.71)
	(envelope-from <thierry.volpiatto <at> gmail.com>) id 1QbQ9I-00029x-Ep
	for bug-gnu-emacs <at> gnu.org; Tue, 28 Jun 2011 00:43:46 -0400
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
	(envelope-from <thierry.volpiatto <at> gmail.com>) id 1QbQ9D-0007g2-AR
	for bug-gnu-emacs <at> gnu.org; Tue, 28 Jun 2011 00:43:44 -0400
Received: from mail-ww0-f49.google.com ([74.125.82.49]:35612)
	by eggs.gnu.org with esmtp (Exim 4.71)
	(envelope-from <thierry.volpiatto <at> gmail.com>) id 1QbQ9D-0007fy-1M
	for bug-gnu-emacs <at> gnu.org; Tue, 28 Jun 2011 00:43:39 -0400
Received: by wwf22 with SMTP id 22so4281269wwf.30
	for <bug-gnu-emacs <at> gnu.org>; Mon, 27 Jun 2011 21:43:37 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma;
	h=domainkey-signature:from:to:subject:date:message-id:user-agent
	:mime-version:content-type:content-transfer-encoding;
	bh=Q2p1/MFghbKPjLaF8CXbSx1fbqt3vLWKnOGlf+JgILw=;
	b=FoMCPrq5oSmPxqBJ9bCF+Rr8ija+fSbB9IBMkKbu2zE8N83IZ163Q9/lGUpcHsaQVN
	cnBpVaAVjse9kh3mA+le4KjFJHWW1XyXt1VZwCIQXxOHyzF2M8sD7zblvcefOkrRtv0k
	7P/NEWcDbz9U2d6KtDVaeDvgrJtnGRvSSZp4Q=
DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma;
	h=from:to:subject:date:message-id:user-agent:mime-version
	:content-type:content-transfer-encoding;
	b=JwXVqwhszCrxHMmcoPnVqA6payA+X7qnmnAmvZ1oiYf6fh5Arg3aI3x2fgV081bCxv
	m+7wn7Qlbf/1gGDfbLzPyKwhhwIw6cB9NOsTuh5QGu3aofe5v4FF0F0YEH+/k8Mer8RW
	eLmHmfhCWMbsDVeRwcDIBBxRU2ucFybZAHvSE=
Received: by 10.216.60.74 with SMTP id t52mr335327wec.30.1309236217414;
	Mon, 27 Jun 2011 21:43:37 -0700 (PDT)
Received: from thierry-MM061 (43.77.197.77.rev.sfr.net [77.197.77.43])
	by mx.google.com with ESMTPS id w58sm3078305weq.1.2011.06.27.21.43.33
	(version=TLSv1/SSLv3 cipher=OTHER);
	Mon, 27 Jun 2011 21:43:35 -0700 (PDT)
From: Thierry Volpiatto <thierry.volpiatto <at> gmail.com>
To: bug-gnu-emacs <at> gnu.org
Subject: 24.0.50; y-or-n-p doesn't support scroll-o-w like yes-or-no-p
Date: Tue, 28 Jun 2011 06:43:31 +0200
Message-ID: <874o3a1s7g.fsf <at> gmail.com>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 2)
X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 3)
X-Received-From: 140.186.70.17
X-Spam-Score: -5.3 (-----)
X-Debbugs-Envelope-To: submit
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.11
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <http://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>,
	<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <http://debbugs.gnu.org/pipermail/debbugs-submit>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <http://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>,
	<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Sender: debbugs-submit-bounces <at> debbugs.gnu.org
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
X-Spam-Score: -5.3 (-----)

Hi,
after discussion about bug#8927, i discover that=20
from a yes-or-no-p i can scroll-other-window, but not from a
y-or-n-p.



In GNU Emacs 24.0.50.17 (i686-pc-linux-gnu, GTK+ Version 2.24.4)
 of 2011-06-27 on thierry-MM061
Windowing system distributor `The X.Org Foundation', version 11.0.11001000
Important settings:
  value of $LC_ALL: nil
  value of $LC_COLLATE: nil
  value of $LC_CTYPE: nil
  value of $LC_MESSAGES: nil
  value of $LC_MONETARY: nil
  value of $LC_NUMERIC: nil
  value of $LC_TIME: nil
  value of $LANG: fr_FR.utf8
  value of $XMODIFIERS: nil
  locale-coding-system: utf-8-unix
  default enable-multibyte-characters: t

Major mode: Emacs-Lisp

Minor modes in effect:
  TeX-PDF-mode: t
  eldoc-mode: t
  minibuffer-depth-indicate-mode: t
  auto-image-file-mode: t
  show-paren-mode: t
  display-time-mode: t
  diff-auto-refine-mode: t
  recentf-mode: t
  savehist-mode: t
  shell-dirtrack-mode: t
  tooltip-mode: t
  mouse-wheel-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  column-number-mode: t
  line-number-mode: t
  transient-mark-mode: t

Recent input:
<down> <down> <down> <down> <down> <down> <down> <down>=20
<down> <down> <down> <down> <down> <down> <down> <down>=20
<down> <down> <down> <down> <down> <down> <down> <down>=20
<down> <down> <down> <down> <down> <down> <down> <down>=20
<down> <down> <down> <down> <down> <down> <down> <down>=20
<down> <down> <down> <down> <down> <down> <down> <down>=20
<down> <down> <down> <down> <down> <down> <down> <down>=20
<down> <down> <down> <down> <down> <down> <down> <down>=20
<down> <down> <down> <down> <down> <down> <down> <down>=20
<down> <down> <down> <down> <down> <down> <down> <down>=20
<down> <down> <down> <down> <down> <down> <down> <down>=20
<down> <down> <down> <down> <down> <down> <down> <down>=20
<down> <down> <down> <down> <down> <down> <down> <down>=20
<down> <down> <down> <down> <down> <down> <down> <down>=20
<down> <down> <down> <down> <down> <down> <down> <down>=20
<down> <down> <down> <down> <down> <down> <down> <down>=20
<down> <down> <down> <down> <down> <down> <down> <down>=20
<down> <down> <down> <down> <down> <down> <down> <down>=20
<down> <down> <down> <down> <down> <down> <down> <down>=20
<down> <down> <down> <down> <down> <down> <down> <down>=20
<down> <down> <down> <down> <down> <down> <down> <down>=20
<down> <down> <down> <down> <down> <down> <down> <down>=20
<down> <down> <down> <down> <down> <down> <down> <down>=20
<down> <down> <down> <down> <down> <down> <down> <down>=20
<down> <down> <down> <down> <down> <down> <down> <down>=20
<down> <down> <down> <down> <down> <down> <down> <down>=20
C-c R y e s <return> C-< q C-< C-x C-=C2=B2 <f7> m L <up>=20
<up> <up> <up> <up> <up> <up> <up> <up> <up> <up> <up>=20
<up> <up> <up> <up> <up> <up> <up> <up> C-u <return>=20
2 <backspace> 5 6 <return> <down> <down> <down> <down>=20
<down> <down> <down> <down> <down> <down> <down> <down>=20
<down> <down> <down> <down> <down> <down> <down> <down>=20
<down> <down> <up> <up> <up> <up> <up> <up> <up> <up>=20
<up> <right> C-SPC C-f C-f C-f C-f C-f C-f C-f C-f=20
M-w q q y M-x r e p o <return>

Recent messages:
Fetching headers for gmane.emacs.bugs...done
Scoring...done
Generating summary...done
No more unseen articles
No more unread articles
Mark set
No more unread newsgroups
Are you sure you want to quit reading news? (y or n)  y
(No changes need to be saved)


Load-path shadows:
None found.

Features:
(shadow epa-mail emacsbug flow-fill help-mode xmtn-dvc dvc-status
xmtn-conflicts xmtn-ids xmtn-match xmtn-automate xmtn-compat xmtn-run
xmtn-basic-io xmtn-base w3m-cookie w3m-bookmark w3m-tabmenu w3m-session
dabbrev tramp-cache tramp-sh qp align url-cache url-http url-gw url-auth
w3m-form smiley gnus-cite gnus-async gnus-bcklg mail-extr gnus-ml
nndraft nnmh nndoc utf-7 nnimap utf7 nnml nnfolder rot13 netrc
network-stream starttls tls gnus-agent gnus-srvr gnus-score score-mode
nnvirtual gnus-msg nntp gnus-cache gnus-dired gnus-registry registry
eieio-base ert find-func debug view cal-iso preview prv-emacs tex-buf
reftex-vcr reftex-dcr reftex-auc reftex reftex-vars font-latex latex
tex-style tex latexenc vc-git xgit-dvc xgit xgit-annotate dvc-annotate
xgit-log js cc-mode cc-fonts cc-menus cc-cmds cc-styles cc-align
cc-engine cc-vars cc-defs conf-mode sh-script vc-rcs imenu xhg-dvc xhg
xhg-annotate xhg-mq xhg-log bzr-core xdarcs-core xgit-core xhg-core
xmtn-minimal tla smerge-mode newcomment dvc-state dvc-config dvc-diff
dvc-fileinfo diff dvc-cmenu dvc-about dvc-version dvc-revlist uniquify
em-unix em-script em-prompt em-ls em-hist em-pred em-glob em-dirs
em-cmpl em-basic esh-opt em-banner em-alias esh-var esh-io esh-cmd
esh-ext esh-proc esh-groups eshell esh-module esh-mode align-let server
googlecl google-maps google-maps-static google-maps-geocode
google-maps-base json simple-call-tree el-expectations el-mock csv2org
iedit zop-to-char mule-util elscreen smallurl mm-url xml-weather
rectangle-utils tv-utils eldoc-eval eldoc pcvs pcvs-parse pcvs-info
pcvs-defs auto-document autodoc mb-depth ioccur moz cl-info
slime-xref-browser slime-banner slime-tramp slime-asdf slime-fancy
slime-fontifying-fu slime-package-fu slime-references slime-scratch
slime-presentations slime-fuzzy slime-fancy-inspector slime-c-p-c
slime-editing-commands slime-autodoc slime-parse slime-repl slime
hideshow hyperspec slime-autoloads boxquote rect image-file newsticker
newst-treeview newst-plainview newst-reader newst-ticker newst-backend
ledger-config ledger esh-arg esh-util lpr woman man two-column em-term
term ehelp electric esh-toggle em-xtra flymake pdbtrack no-word
regex-tool whitespace paren time dired-tar dired-extension image-dired
yaoddmuse skeleton sgml-mode emms-mplayer-config emms-playlist-limit
emms-volume emms-volume-amixer emms-i18n emms-history emms-score
emms-stream-info emms-metaplaylist-mode emms-bookmarks
emms-lastfm-client parse-time emms-cue emms-mode-line-icon emms-browser
sort emms-playlist-sort emms-last-played emms-player-xine
emms-player-mpd tq emms-playing-time emms-lyrics emms-url hl-line
emms-tag-editor emms-mark emms-mode-line emms-cache emms-info-ogginfo
emms-info-mp3info emms-playlist-mode emms-player-vlc emms-player-mplayer
emms-info emms-streams later-do emms-source-playlist emms-source-file
emms-player-simple emms-setup emms emms-compat winner dvc-init bzr-gnus
tla-gnus xgit-gnus xhg-gnus gnus-art mm-uu mml2015 mm-view mml-smime
smime dig nnir gnus-sum nnoo gnus-group gnus-undo nnmail mail-source
gnus-start gnus-spec gnus-int gnus-range gnus-win gnus gnus-ems nnheader
dvc-gnus tla-core tla-autoconf tla-defs dvc-log vc vc-dispatcher
dvc-unified dvc-tips dired-x ediff-merg ediff-diff ediff-wind ediff-help
ediff-util ediff-mult ediff-init ediff dvc-autoloads dvc-core dvc-lisp
dvc-buffers dvc-ui dvc-register dvc-utils dvc-emacs ewoc dvc-defs
dvc-site psvn log-edit pcvs-util add-log diff-mode htmlize-hack htmlize
muse-colors muse-docbook muse-texinfo texnfo-upd texinfo muse-latex
muse-html muse-xml-common muse-wiki cus-edit cus-start cus-load
muse-publish muse-project muse-protocols muse-regexps muse
muse-nested-tags muse-mode muse-autoloads org-config-thierry org-crypt
cal-china lunar solar cal-dst cal-bahai cal-islam cal-hebrew holidays
hol-loaddefs vc-hg org-wl org-w3m org-vm org-rmail org-mhe org-mew
org-irc org-jsinfo org-infojs org-html org-exp ob-exp org-exp-blocks
org-info org-gnus org-docview org-bibtex org-bbdb org-agenda appt
diary-lib diary-loaddefs org-annotation-helper org-capture org-mks
remember org-remember org-datetree config-w3m mime-w3m w3m doc-view
jka-compr image-mode timezone w3m-hist w3m-fb w3m-ems w3m-ccl ccl
w3m-favicon w3m-image w3m-proc w3m-util mime eword-decode mel path-util
mime-parse std11 luna mime-def alist mcharset mcs-20 mcs-e20 pces
pces-e20 pces-20 broken pcustom poe pym static apel-ver product w3m-load
addressbook-bookmark message sendmail rfc822 mml mml-sec mm-decode
mm-bodies mm-encode mail-parse rfc2231 rfc2047 rfc2045 ietf-drums
mailabbrev mail-utils gmm-utils mailheader firefox-protocol
bookmark-uzbl-handler bookmark-firefox-handler url url-proxy url-privacy
url-expand url-methods url-history url-cookie url-util url-parse
url-vars mailcap bookmark-extensions org ob-emacs-lisp ob-tangle ob-ref
ob-lob ob-table org-footnote org-src ob-comint ob-keys ob ob-eval
org-complete org-list org-faces org-compat org-entities org-macs
noutline outline cal-menu calendar cal-loaddefs bookmark pp recentf
tree-widget wid-edit savehist init-anything-thierry descbinds-anything
anything-ipython ipython python-mode info-look ansi-color executable
shell pcomplete shell-history anything-complete anything-show-completion
anything-obsolete anything-match-plugin anything-delicious xml
anything-mercurial anything-config browse-url rx grep compile comint
ring tramp tramp-compat format-spec tramp-loaddefs dired-aux ffap
thingatpt anything warnings epa-file epa derived epg epg-config
auth-source eieio byte-opt bytecomp byte-compile cconv macroexp assoc
gnus-util time-date mm-util mail-prsvr password-cache dired regexp-opt
usage-memo punycode idna naquadah-theme eev-thierry edmacro kmacro
iterator eev-all eev-mini-steps eev-browse-url eev-langs eev-compose
eev-glyphs disp-table eev-insert eev-steps eev-bounded eev easy-mmode
advice help-fns advice-preload w3m-wget preview-latex tex-site
auto-loads info easymenu cl tooltip ediff-hook vc-hooks lisp-float-type
mwheel x-win x-dnd tool-bar dnd fontset image fringe lisp-mode register
page menu-bar rfn-eshadow timer select scroll-bar mouse jit-lock
font-lock syntax facemenu font-core frame cham georgian utf-8-lang
misc-lang vietnamese tibetan thai tai-viet lao korean japanese hebrew
greek romanian slovak czech european ethiopic indian cyrillic chinese
case-table epa-hook jka-cmpr-hook help simple abbrev minibuffer loaddefs
button faces cus-face files text-properties overlay sha1 md5 base64
format env code-pages mule custom widget hashtable-print-readable
backquote make-network-process dbusbind dynamic-setting
font-render-setting move-toolbar gtk x-toolkit x multi-tty emacs)

--=20
A+ Thierry
Get my Gnupg key:
gpg --keyserver pgp.mit.edu --recv-keys 59F29997=20




Acknowledgement sent to Thierry Volpiatto <thierry.volpiatto <at> gmail.com>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. Full text available.
Report forwarded to owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org:
bug#8948; Package emacs. Full text available.
Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.
Last modified: Tue, 20 Sep 2011 19:45:02 UTC

GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997 nCipher Corporation Ltd, 1994-97 Ian Jackson.