From mboxrd@z Thu Jan 1 00:00:00 1970 Path: main.gmane.org!not-for-mail From: Francesco Potorti` Newsgroups: gmane.emacs.devel Subject: Re: [CVS] f7, f8 bound.. Date: 10 Sep 2002 14:17:37 +0200 Sender: emacs-devel-admin@gnu.org Message-ID: <87ptvmavj2.fsf@pot.cnuce.cnr.it> References: <87lm6xiruh.fsf@computer.localdomain> <5xu1liwmu6.fsf@kfs2.cua.dk> <200208261526.g7QFQX624783@rum.cs.yale.edu> <5xu1lgu1e4.fsf@kfs2.cua.dk> <200208271621.g7RGLNm30516@rum.cs.yale.edu> <5xhehfe3aj.fsf@kfs2.cua.dk> <5x4rdfdzu6.fsf@kfs2.cua.dk> <200208281413.g7SEDkT03872@rum.cs.yale.edu> <5xvg5thgw8.fsf@kfs2.cua.dk> <200208291724.g7THOJZ11366@rum.cs.yale.edu> <5xd6roult6.fsf@kfs2.cua.dk> NNTP-Posting-Host: localhost.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: main.gmane.org 1031660355 11982 127.0.0.1 (10 Sep 2002 12:19:15 GMT) X-Complaints-To: usenet@main.gmane.org NNTP-Posting-Date: Tue, 10 Sep 2002 12:19:15 +0000 (UTC) Cc: storm@cua.dk, monnier+gnu/emacs@rum.cs.yale.edu, miles@gnu.org, deego@glue.umd.edu, emacs-devel@gnu.org Return-path: Original-Received: from quimby.gnus.org ([80.91.224.244]) by main.gmane.org with esmtp (Exim 3.35 #1 (Debian)) id 17ojz6-00036t-00 for ; Tue, 10 Sep 2002 14:19:12 +0200 Original-Received: from monty-python.gnu.org ([199.232.76.173]) by quimby.gnus.org with esmtp (Exim 3.12 #1 (Debian)) id 17okZW-0001mI-00 for ; Tue, 10 Sep 2002 14:56:50 +0200 Original-Received: from localhost ([127.0.0.1] helo=monty-python.gnu.org) by monty-python.gnu.org with esmtp (Exim 4.10) id 17ojzB-0004jh-00; Tue, 10 Sep 2002 08:19:17 -0400 Original-Received: from list by monty-python.gnu.org with tmda-scanned (Exim 4.10) id 17ojxk-0004iI-00 for emacs-devel@gnu.org; Tue, 10 Sep 2002 08:17:48 -0400 Original-Received: from mail by monty-python.gnu.org with spam-scanned (Exim 4.10) id 17ojxi-0004i6-00 for emacs-devel@gnu.org; Tue, 10 Sep 2002 08:17:47 -0400 Original-Received: from pot.cnuce.cnr.it ([146.48.83.182]) by monty-python.gnu.org with esmtp (Exim 4.10) id 17ojxd-0004hb-00; Tue, 10 Sep 2002 08:17:41 -0400 Original-Received: from pot by pot.cnuce.cnr.it with local (Exim 3.35 #1 (Debian)) id 17ojxZ-0000Hk-00; Tue, 10 Sep 2002 14:17:37 +0200 Original-To: rms@gnu.org In-Reply-To: Original-Lines: 34 User-Agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.2.90 Errors-To: emacs-devel-admin@gnu.org X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.0.11 Precedence: bulk List-Help: List-Post: List-Subscribe: , List-Id: Emacs development discussions. List-Unsubscribe: , List-Archive: Xref: main.gmane.org gmane.emacs.devel:7802 X-Report-Spam: http://spam.gmane.org/gmane.emacs.devel:7802 I would like to change that so if an error occurs while defining a macro, emacs will query the user whether he wants to continue adding to the macro, end and save it, or discard it. WDYT? The question would be very annoying. I think it should terminate and define the macro. If the user wants to ignore that definition, he can. If the user wants to add to it, he can do that too. That is only part of the problem. It often occurs to me that, while I'm defining a long macro, I make a mistake in the middle of it. The current behaviour is discarding the work done so far, so I have to restart from the beginning. The behaviour Richard proposes is to stop recording the macro (without discarding it), so I'd have to restart with a series of undos, in order to get rid of the modifications I did with the interrupted macro definition, then restart with C-uC-x(, which reexecutes the macro defined so far and then allows me to continue defining it. Also, this requires some thinking, because after doing the undo and the redo I must be careful to remember where exactly I had made a mistake. Generally speaking, the possible choices one would want are: - aborting the definition (the current behaviour) - ending the definition with or without the last command - continuing the definition with or without the last command As Miles says, however, only one question is needed: Error occured; ignore last command? (y or n) without interrupting the recording of the macro. This would leave the user the whole range of choices: they can abort with C-g, they can continue, they can end with C-x), and they can choose whether they want the last command included.