GNU bug report logs - #62352
Very slow scroll-down-line with a lot of text properties

Previous Next

Package: emacs;

Reported by: "Herman, Geza" <geza.herman <at> gmail.com>

Date: Tue, 21 Mar 2023 20:03:02 UTC

Severity: normal

Done: Eli Zaretskii <eliz <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


Message #11 received at 62352 <at> debbugs.gnu.org (full text, mbox):

From: Herman, Géza <geza.herman <at> gmail.com>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 62352 <at> debbugs.gnu.org
Subject: Re: bug#62352: Very slow scroll-down-line with a lot of text
 properties
Date: Tue, 21 Mar 2023 21:39:03 +0100

On 3/21/23 21:26, Eli Zaretskii wrote:
>> Date: Tue, 21 Mar 2023 21:01:58 +0100
>> From: "Herman, Geza" <geza.herman <at> gmail.com>
>>
>> Emacs can freeze for seconds when scroll-down-line is called multiple
>> times if the buffer contains a lot of text properties.
> Not any text properties: 'face' text properties.  Right?
Probably, I don't know how to check other properties.

> In general, any change in faces causes the display iterator to stop
> and load the new face, before it continues.  They also cause drawing
> on the screen to be in smaller chunks, since each stretch of
> characters in the same face is drawn together.  And this example
> basically changes to a new face every character.  So this is expected
> to display slower than usual.
>
> However, are you saying that this is slower in Emacs 29 than it was in
> Emacs 28?  If so, bisection will be appreciated.
I checked this with emacs 28 now, it behaves the same, so it's not a 
regression.

It seems this issue is scroll-down-line specific. I mean, it doesn't 
happen with the "normal" scrolling (when the point is also moved, not 
just the window start point). If I set scroll-conservatively to 101 
(this way normal scrolling behaves the same as scroll-down-line after 
the point hits the edge of the window), and move upwards with the cursor 
key, scrolling is more-or-less OK. It's a little bit erratic, but no 
freeze happens.




This bug report was last modified 2 years and 117 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.