From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Alan Mackenzie Newsgroups: gmane.emacs.devel Subject: Re: `isearch-allow-scroll' - a misnomer and a bad design Date: Thu, 22 Sep 2011 10:35:06 +0000 Message-ID: <20110922103506.GA3134@acm.acm> References: <2F1337889F394491BA778ACA46799812@us.oracle.com> <874o07m3ay.fsf@maru.md5i.com> <87r539c0qx.fsf@uwakimon.sk.tsukuba.ac.jp> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: dough.gmane.org 1316687966 29465 80.91.229.12 (22 Sep 2011 10:39:26 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Thu, 22 Sep 2011 10:39:26 +0000 (UTC) Cc: md5i@md5i.com, dan.colascione@gmail.com, emacs-devel@gnu.org, juri@jurta.org, monnier@iro.umontreal.ca, dmoncayo@gmail.com, "Stephen J. Turnbull" , yandros@mit.edu, drew.adams@oracle.com To: Richard Stallman Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Thu Sep 22 12:39:19 2011 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([140.186.70.17]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1R6ggY-00065O-RB for ged-emacs-devel@m.gmane.org; Thu, 22 Sep 2011 12:39:19 +0200 Original-Received: from localhost ([::1]:35860 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1R6ggY-0005AV-1I for ged-emacs-devel@m.gmane.org; Thu, 22 Sep 2011 06:39:18 -0400 Original-Received: from eggs.gnu.org ([140.186.70.92]:53225) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1R6ggV-0005AQ-Js for emacs-devel@gnu.org; Thu, 22 Sep 2011 06:39:16 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1R6ggT-0005wc-Vz for emacs-devel@gnu.org; Thu, 22 Sep 2011 06:39:15 -0400 Original-Received: from colin.muc.de ([193.149.48.1]:24192 helo=mail.muc.de) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1R6ggT-0005w0-Lp for emacs-devel@gnu.org; Thu, 22 Sep 2011 06:39:13 -0400 Original-Received: (qmail 56403 invoked by uid 3782); 22 Sep 2011 10:39:10 -0000 Original-Received: from acm.muc.de (pD9556380.dip.t-dialin.net [217.85.99.128]) by colin.muc.de (tmda-ofmipd) with ESMTP; Thu, 22 Sep 2011 12:39:07 +0200 Original-Received: (qmail 3337 invoked by uid 1000); 22 Sep 2011 10:35:06 -0000 Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.21 (2010-09-15) X-Delivery-Agent: TMDA/1.1.12 (Macallan) X-Primary-Address: acm@muc.de X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 193.149.48.1 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:144184 Archived-At: Hi, Richard. On Wed, Sep 21, 2011 at 04:48:40PM -0400, Richard Stallman wrote: > Whether something is a mode is a question about how people understand > its interface. > Isearch is not supposed to be a mode. It is supposed to be a command > which searches for the printing character string you type, and you can > edit the search string in simple limited ways. Unrelated editing > commands end searcch and do their normal editing. > The only control characters that originally didn't exit the Isearch > were C-r and C-s -- which are the commands to enter Isearch. Yes. But such a "feature pure" Isearch wouldn't serve users' needs very well, particularly in such a rich environment as Emacs. > Then I added M-y, which was ok because M-y would always be an error if > it exited an Isearch (since the previous command was not a yank). Ah. _NOW_ I understand why `isearch-yank-kill' is on M-y. :-) (At least, was on M-y.) > But then people started making other commands special, destroying the > clear simplicity. As a result of those, Isearch is now more complex > and people start to think of it as a mode. Thus, they propose changes > that make it more like a mode, and make it even more complex, and even > less of a command that searches for the printing character string you > type. I use Isearching almost constantly, and expect most users do too. I'd be unhappy and less productive if its many features (I think I use most of them) were not there. In fact, I'd write them if they weren't. ;-) > >From this point of view, the whole point of Alan's changes (and of > Drew's suggestion as well) is to *reduce* the modality of isearch. > With Alan's option *on*, scrolling commands now work as they do > elsewhere in Emacs: the visible portion of the buffer at hand > changes, without disturbing the state of the buffer or the search. > I never noticed Alan's proposal, but now that I see what it is, I am > against it. With all due respect, what you said back in 2003 (on the 1st March) was: "I have no objections to it if it is disabled by default.". Then, I thought it should have been enabled by default. Now I see that it shouldn't be. > It is very common to use C-v to exit an Isearch. This change would be > a painful surprise. It would. That is why it needs an option setting for this to happen. I think that, likewise, `isearch-allow-prefix' should be nil by default. > The idea that being in a search is a state that commands "shouldn't > disturb" is the result of thinking of it as a mode. It is normal > for editing commands to stop searching and edit instead. Is scrolling "editing" here? I would have said no, since it doesn't change the buffer and doesn't move point. > -- > Dr Richard Stallman -- Alan Mackenzie (Nuremberg, Germany).