Subject: bug#21277: 25.0.50; char-fold search is a screw, and I can't see how to disable

From: Tassilo Horn <[email-masked]>
Date: Tue, 18 Aug 2015 14:30:35 +0200

Richard Stallman <[email-masked]> writes:

>   > That has nothing to do with char-fold, this feature already exists since
>   > 24.3 and is called lax-whitespace.
>
> How come it did not occur in the Emacs I was running before last week?
> I built that from master a few months ago.
>
> Anyway, it is a total screw.  Who likes this as a default?

I like that behavior because I frequently search for "some text" in
prose, and then it allows me to find also the matches where the two
words are wrapped around.

But I think the `isearch-lax-whitespace' feature can still be improved:

1. The `isearch-lax-whitespace' docstring speaks of "ordinary
   incremental search" which I've read as "non-regex isearch".  But it
   seems that regex isearch is also affected.  I'd just strip the
   "ordinary".

2. More importantly, isearching for C-j SPC matches any sequence of two
   whitespace characters, e.g., it matches between here  and  here, too.
                                                       ^^   ^^
I had expected that only space characters in the search string are
replaced by `search-whitespace-regexp' but it seems that any whitespace
character is replaced by it.  I think this is not good.

And IMHO, it would be a good idea to disable lax-whitespace for the
current search as soon as the search string contains a non-space
whitespace character.  I think if the user explicitly types C-j, C-i,
etc. she's probably not interested in treating spaces as any-whitespace
but wants to distinguish newlines from tabs and spaces.

Bye,
Tassilo