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: Sat, 27 May 2006 23:22:17 +0200
User-agent: Gnus/5.11 (Gnus v5.11) Emacs/22.0.50 (gnu/linux)

address@hidden (Kim F. Storm) writes:

> Richard Stallman <address@hidden> writes:
>
>>        You can request a display update, but only if no input is pending,
>>      with @code{(sit-for 0)}.  To force a display update even when input is
>>      pending, do this:
>>
>>      @example
>>      (let ((redisplay-dont-pause t))
>>        (sit-for 0))
>>      @end example
>>
>>     Yes, I see a contradiction here.  Setting `redisplay-dont-pause' does
>>     not have the declared effect, to wit "to force a display update even
>>     when input is pending".
>>
>> I think that text in the manual is mistaken.  `redisplay-dont-pause'
>> only affects redisplay itself.  It has no effect on sit-for, which
>> isn't (strictly speaking) redisplay.
>>
>> We could change the code, or change the manual.
>> I am not sure which is better.
>
> Here is a fix for the code.
>
> *** dispnew.c 01 May 2006 10:07:42 +0200      1.363
> --- dispnew.c 27 May 2006 22:53:42 +0200      
> ***************
> *** 6406,6412 ****
>     swallow_events (display);
>   
>     if (detect_input_pending_run_timers (display) || !NILP 
> (Vexecuting_kbd_macro))
> !     return Qnil;
>   
>     if (initial_display)
>       redisplay_preserve_echo_area (2);
> --- 6406,6415 ----
>     swallow_events (display);
>   
>     if (detect_input_pending_run_timers (display) || !NILP 
> (Vexecuting_kbd_macro))
> !     {
> !       if (!redisplay_dont_pause || sec || usec)
> !     return Qnil;
> !     }
>   
>     if (initial_display)
>       redisplay_preserve_echo_area (2);

Is there a particular reason that you used " || sec || usec" here?  It
makes (sit-for 0) a special case, and I am not sure why.

-- 
David Kastrup, Kriemhildstr. 15, 44793 Bochum




reply via email to

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