[Top][All Lists]

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

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

From: Drew Adams
Subject: RE: `isearch-allow-scroll' - a misnomer and a bad design
Date: Wed, 21 Sep 2011 08:10:27 -0700

>     > FWIW: Several people have expressed this idea, with 
>     > which I agree.  C-u should do nothing by itself (and
>     > that includes not exiting Isearch, of course).  Its
>     > only effect should be to provide a prefix
>     > argument to the next command, to extend its behavior.
>     I tend to agree.
> This reasoning is based on thinking of Isearch as a kind of a mode,
> but that's exactly what we should avoid.

What we "should avoid", if anything, is preventing a command bound in
`isearch-mode-map' from receiving a prefix arg, i.e., making `C-u' always exit

Let's not get into how modal Isearch really is or should be - it's not necessary
(or very useful) here.

You would agree that it is possible for out-of-the-box Emacs, and for users, to
bind commands to keys in `isearch-mode-map'.  Whether Isearch is or should be
truly modal is not as important as letting those commands act normally -
including receiving a prefix arg.

You can bind keys in the map to commands that exit Isearch, and you can bind
keys to commands that do not choose to exit Isearch - no problem.  But why
should a command bound in the Isearch keymap not even receive its prefix arg and
decide its own fate?  You have your preference, and we can agree to disagree
about this.

You want `C-u' to exit Isearch and I do not want it to.  I want to let the
command it precedes ("prefix") decide, as always in Emacs.  Some might agree
with you; others might agree with me.

More importantly, I think you have already agreed to giving _users_ the choice,
via an option.

Let's decide which behavior should be the default (have `C-u' exit Isearch or
not), and let's add an option to let users override that default behavior.  End
of story.

reply via email to

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