emacs-devel
[Top][All Lists]
Advanced

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

Re: redisplay-dont-pause does not work


From: David Kastrup
Subject: Re: redisplay-dont-pause does not work
Date: Tue, 06 Jun 2006 11:58:13 +0200
User-agent: Gnus/5.11 (Gnus v5.11) Emacs/22.0.50 (gnu/linux)

address@hidden (Kim F. Storm) writes:

> Lars Hansen <address@hidden> writes:
>
>> Kim F. Storm wrote:
>>
>>>(defun redisplay-now (&optional object)
>>>  "Force immediate display update of all windows.
>>>If optional arg object is a frame, update display of that frame only.
>>>If optional arg object is a window, update display of that window only.
>>>If object is a buffer or buffer name, update display of all windows
>>>displaying that buffer."
>>>  ;; There is currently no way to update individual windows, so
>>>  ;; update everything.
>>>  (let ((redisplay-dont-pause t))
>>>    (sit-for 0)))
>
> Thinking some more about this, I'm a bit puzzled about what specific
> purpose anyone would have from doing this ...   
>
> In most cases, if there are no changes to other parts of the frame,
> redisplay will not spend time on updating them...  So if the concern
> is that updating all windows/frames is performance related, I think
> that's a non-issue.
>
> And even if it _does_ redisplay all windows/frames, only the actual
> changes to the display are actually propagated to the screen.
>
>
> So I'm back to supporting the original proposal of having an explicit
> "redisplay now" functionality ... but I propose to implement it as a
> special call to sit-for: (sit-for t) or perhaps as
> (sit-for 0 'redisplay-dont-pause).

If we are going to be mess around with sit-for's argument, we might as
well use

(sit-for -1)

This is perfectly logical, since then no input has been seen during
the time interval [0, limit].

-- 
David Kastrup, Kriemhildstr. 15, 44793 Bochum




reply via email to

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