[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#15839: 24.3.50; `isearch-allow-scroll': be able to scroll point off
From: |
Drew Adams |
Subject: |
bug#15839: 24.3.50; `isearch-allow-scroll': be able to scroll point off screen temporarily |
Date: |
Sun, 10 Nov 2013 08:52:00 -0800 (PST) |
> > That restriction is general for Emacs, and it generally makes
> > sense.
>
> It makes sense, but it would also be desirable to make it
> customizable.
I agree.
> > It does not necessarily make sense during Isearch, however. Why?
>
> To some extent I can see that it is slightly different in the
> Isearch context. I'm not sure if it is sufficiently different to
> justify changing the default in Isearch, but I'm not necessarily
> opposed to it either.
No need to change the default. `isearch-allow-scroll' should default
to nil (less confusing, probably). The only change for it would be
to provide a special value, e.g., `unlimited', which would not impose
a limit on how much you can scroll.
(Scrolling beyond the current limit when the value is `unlimited'
should lazy-highlight whatever is shown, and resuming search should
resume from the search hit current before scrolling. IOW, scrolling
should not change which search hit is current.)
> IOW, I agree with both feature requests.
Great.
> > 2. What's more, the lazy highlighting of search hits is even more
> > limited currently. When you scroll to the current limit, there
> > can be lots of search hits that are not highlighted.
>
> Yes, that's a bug.
I don't see that all the time, BTW. I don't have a recipe to repro it.
The more important bugs are these:
a. Scrolling backwards is not limited currently (it should be
unlimited only when the option value is `unlimited', i.e., after the
requested enhancement).
b. Forward scrolling after backward scrolling throws everything off
currently: the highlighting that should apply only to the current
search hit (face `isearch') is applied to the entire window (buffer?).
Bug (b) is the most serious, but I'm guessing that (b) and (a) are
due to the same code problem.