emacs-devel
[Top][All Lists]
Advanced

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

Re: Unfreezing the display during auto-repeated scrolling. Simpler appro


From: Tassilo Horn
Subject: Re: Unfreezing the display during auto-repeated scrolling. Simpler approach.
Date: Sun, 23 Nov 2014 20:44:39 +0100
User-agent: Gnus/5.130012 (Ma Gnus v0.12) Emacs/25.0.50 (gnu/linux)

Alan Mackenzie <address@hidden> writes:

Hi Alan,

>> But I've applied your patch and run "make", fired up a new emacs and
>> set `use-default-face-for-fast-scrolling' to t, then found a large
>> file and pressed and held `C-v'.  I couldn't see any difference
>> compared to not having the option enabled.  All the text that's
>> passing by is still fontified and scrolling doesn't seem faster.
>
> The main point is, text continues to pass by.  What was happening was
> that on an auto-repeated C-v, Emacs would hang (without scrolling),
> and after releasing the key, it took quite a few seconds before the
> display would be updated.  During this time Emacs was completely
> unresponsive.
>
> With `use-default-face-for-fast-scrolling' at nil, all the text
> scrolled over gets fontified, and lesser machines (such as mine)
> cannot keep up.  With the option set to t, only the text being
> displayed gets fontified.  The appearance may be of text continually
> scrolling, but this is an illusion; only parts of the scrolled over
> text get fontified and displayed.
>
> To see the effect, make your window as large as possible (mine was 66
> lines deep) and try with a file like .../src/xdisp.c.  Toggle
> font-lock-mode off and on between each try.  If you still don't see any
> difference, then your machine is powerful enough not to need the feature.

Oh, indeed.  My machine is pretty fast at least for a laptop, but when
holding C-v the display freezes very quickly as you say.  With
`use-default-face-for-fast-scrolling' I don't get such freezes, so this
looks like a very good feature to me (2nd best after "make the display
engine faster").

But still I think the variable's name is a bit misleading.  I expected
to see the text that scrolls by black on white, i.e., using the default
face similar to having `jit-lock-defer-time' set to some non-nil value.
But instead the text that scrolls by and is visible is fontified using
the normal font-lock faces.

Bye,
Tassilo



reply via email to

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