From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Richard Stallman Newsgroups: gmane.emacs.devel Subject: Re: `isearch-allow-scroll' - a misnomer and a bad design Date: Wed, 21 Sep 2011 16:48:40 -0400 Message-ID: References: <20110911103940.GA3246@acm.acm> <3C4B7E318EB04AE4B7DB9FD0E4C67629@us.oracle.com> <20110911173012.GA3088@acm.acm> <20110912093651.GA3249@acm.acm> <20110913142732.GB3081@acm.acm> <7E2EE144B11D413583E1E659CDE15186@us.oracle.com> <8739g0vyuy.fsf@mail.jurta.org> <4E6FF63A.4070604@gmail.com> <2F1337889F394491BA778ACA46799812@us.oracle.com> <874o07m3ay.fsf@maru.md5i.com> <87r539c0qx.fsf@uwakimon.sk.tsukuba.ac.jp> Reply-To: rms@gnu.org NNTP-Posting-Host: lo.gmane.org Content-Type: text/plain; charset=ISO-8859-15 X-Trace: dough.gmane.org 1316638138 22588 80.91.229.12 (21 Sep 2011 20:48:58 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Wed, 21 Sep 2011 20:48:58 +0000 (UTC) Cc: md5i@md5i.com, dan.colascione@gmail.com, emacs-devel@gnu.org, juri@jurta.org, monnier@iro.umontreal.ca, dmoncayo@gmail.com, acm@muc.de, yandros@mit.edu, drew.adams@oracle.com To: "Stephen J. Turnbull" Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Wed Sep 21 22:48:52 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 1R6Tiu-0003ls-P6 for ged-emacs-devel@m.gmane.org; Wed, 21 Sep 2011 22:48:52 +0200 Original-Received: from localhost ([::1]:56049 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1R6Tiu-0004H3-EA for ged-emacs-devel@m.gmane.org; Wed, 21 Sep 2011 16:48:52 -0400 Original-Received: from eggs.gnu.org ([140.186.70.92]:43975) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1R6Tir-0004Gn-Dd for emacs-devel@gnu.org; Wed, 21 Sep 2011 16:48:50 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1R6Tiq-0005za-79 for emacs-devel@gnu.org; Wed, 21 Sep 2011 16:48:49 -0400 Original-Received: from fencepost.gnu.org ([140.186.70.10]:53760) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1R6Tiq-0005zW-1p for emacs-devel@gnu.org; Wed, 21 Sep 2011 16:48:48 -0400 Original-Received: from rms by fencepost.gnu.org with local (Exim 4.71) (envelope-from ) id 1R6Tii-0000zy-Jw; Wed, 21 Sep 2011 16:48:40 -0400 In-reply-to: <87r539c0qx.fsf@uwakimon.sk.tsukuba.ac.jp> (stephen@xemacs.org) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 3) X-Received-From: 140.186.70.10 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:144171 Archived-At: > This reasoning is based on thinking of Isearch as a kind of a mode, > but that's exactly what we should avoid. Why? That's like saying, "thinking of Shovel as a kind of a digging implement" is exactly what we should avoid! "Digging implement" describes a purpose. The purpose of Isearch is searching; if you called it a "searching feature", that would be undeniable, and the analogy to "digging implement" would be valid. 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. 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). 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. >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. It is very common to use C-v to exit an Isearch. This change would be a painful surprise. 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. -- Dr Richard Stallman President, Free Software Foundation 51 Franklin St Boston MA 02110 USA www.fsf.org www.gnu.org Skype: No way! That's nonfree (freedom-denying) software. Use free telephony http://directory.fsf.org/category/tel/