emacs-devel
[Top][All Lists]
Advanced

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

Re: Can we make set_point_both less expensive?


From: Stefan Monnier
Subject: Re: Can we make set_point_both less expensive?
Date: Fri, 20 Mar 2015 10:14:11 -0400
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.50 (gnu/linux)

> By not running the same hook twice (AFAIAC a bad interaction is only one
> where the function and redisplay try forever to annihilate each other's
> actions).

For me, a bad interaction is one where p-r-f followed by redisplay
followed by p-r-f followed by redisplay doesn't give the right answer.

But with something like `cursor-intangible', there will surely be cases
where that can happen.  E.g. imagine you scroll to a part of the buffer
that's got a cursor-intangible element: redisplay will move point to
a visible (and intangible) part of the buffer, then run p-r-f which
moves point outside of the window, after which redisplay has two
choices: either it decides to scroll to where point is (which would be
wrong, since we've just scrolled so we should move point rather than
scroll), or it moves point back into the intangible element.

> Although one problem of `pre-redisplay-function' is that for my taste
> it already runs a bit too often, for example, whenever we blink
> the cursor.

I agree that running it for cursor blinking is a misfeature.

> But wouldn't we then have to change the signature of functions on
> `pre-redisplay-function'?

Yup.

> In any case, I don't know yet about the major
> use cases you have in mind.

Implement a new `cursor-intangible' property, by having p-r-f move point
away from text with that property.


        Stefan



reply via email to

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