Richard Stallman <[EMAIL PROTECTED]> writes:
> Normal redisplay is restarted whenever it is interrupted by user
> input. For example, pressing and holding the down-arrow key will be
> "randomly jumpy" -- depending on the speed of the computer vs. the key
> "repeat rate" of the keyboard.
>
> Emacs defers redisplay to input to make sure it does not
> fall behind.
>
> The only way to get "more fluent" display updates is by setting
> redisplay-dont-pause.
>
> I can't imagine what you mean by "more fluent" display updates, but if
> you observe that the keyboard key repeat mechanism is causing
> redisplay to be pre-empted, it means that keys are coming faster than
> Emacs can redisplay them. If Emacs does not pre-empt redisplay in
> such a case, it WILL fall behind. And when you take your finger off
> the key, you will have to wait some length of time for Emacs to finish
> executing and redisplaying the keys that were buffered.
>
> The value of redisplay pre-emption is precisely for cases like this.
It doesn't have to...
The idea is:
(A) Don't _start_ redisplay if there is pending input,
i.e. process all available input before starting redisplay.
(B) Don't _interrupt_ redisplay once it has started.
Except for special cases, (A) is how emacs works already.
And (B) is what you get by setting `redisplay-dont-pause'.
AFAICS, with this method Emacs can just as easily keep up with user
input without redisplay pre-emption. It just processes input
in bigger "lumps".
Of course, with either method, if input comes quicker than emacs can
process it, we never get a redisplay.
That is why I suggested some time back to have a user option to define
the max. interval between redisplay -- to give the user visible feedback
even when emacs is busy. This is unrelated to redisplay-dont-pause!
So setting redisplay-dont-pause doesn't harm in most cases ...
i.e. unless you have a very slow computer *) where even a single
full redisplay does indeed take a noticeable amount of time.
Unfortunetely, redisplay-dont-pause _also_ controls whether
sit-for does an immediate redisplay ... which we may not want
to happen in general. But it probably doesn't matter...
*) ... or is using a real VDU over a 9600 bps line -- oh, I remember
those happy days :-)
--
Kim F. Storm <[EMAIL PROTECTED]> http://www.cua.dk
_______________________________________________
emacs-pretest-bug mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/emacs-pretest-bug