I think FSF's feature for (not) searching invisible text sucks the way
they currently implement it. Because of this, I've redone it.
To see what I mean, start FSFmacs, make an invisible overlay in
*scratch*, put the `isearch-open-invisible' property, and play.
1) If the current match only partially overlaps the overlay, it is not
opened.
2) If isearch-hide-immediately is t (the default), the overlay is
closed when you advance the match. However, if you press backspace
to restore the match back into the overlay, it is not reopened.
3) The interface for "modes [that] would want to open the overlays
temporary during isearch in their own way" (the
`isearch-open-invisible-temporary' property) is simply splendid.
Just look at the difference between opening and closing funcall.
4) The function names are totally weird, including spelling mistakes.
Damn me if I can understand why isearch-open-necessary-overlays is
called thus.
Opinions?