emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: `isearch-allow-scroll' - a misnomer and a bad design


From: Richard Stallman
Subject: Re: `isearch-allow-scroll' - a misnomer and a bad design
Date: Wed, 21 Sep 2011 16:48:40 -0400

     > 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/



reply via email to

[Prev in Thread] Current Thread [Next in Thread]