[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#45898: 27.1; wedged in redisplay again
From: |
Stefan Monnier |
Subject: |
bug#45898: 27.1; wedged in redisplay again |
Date: |
Thu, 30 Jun 2022 13:22:29 -0400 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux) |
>> and then tried to move around in the buffer, search with Isearch, and
>> insert a few chars.
>> I don't notice any difference with or without the patch :-(
>
> If you start moving with C-n or C-v, Emacs becomes unusable
> approximately around the same buffer position with and without the
> patch?
Yup. And moving at the end of the file with C-p and M-v is also "about
as bad".
> If so, I guess the expensive part is somewhere else.
Unsuprisingly so: none of `C-n/C-p/C-v/...` involve font-lock or
jit-lock either during their operation or during the
subsequent redisplay phase in the current code: the one-line is all
fontified once and for all when you open the file and after that
font-lock is not involved any more (until you make an edit, that is).
The only operation where I can see an improvement is when editing the
file near the beginning where the `master` code take a couple seconds
per edit (the time to refontify the whole line/buffer) whereas with the
patch it takes a fraction of a second (definitely not immediate, tho).
It also does open up the file a bit faster, but it pays for it by taking
more time to jump to the end:
- open file: master=5s patch=3s
- M-> : master=10s patch=14s
[ Note: these time measurements are *very* approximate. ]
So while we do get some benefit occasionally by chunking, the chunking
itself slows us down.
> I'd install this patch regardless, because it sounds like TRT not to
> let syntactic fontifications run amok this way. We do similar stuff
> in bidi.c for similar reasons.
OK, I pushed it to `master`. The improvement is far from convincing,
but I tend to agree that it's "The Right Thing".
- bug#45898: 27.1; wedged in redisplay again, (continued)
- bug#45898: 27.1; wedged in redisplay again, Eli Zaretskii, 2022/06/25
- bug#45898: 27.1; wedged in redisplay again, Gerd Möllmann, 2022/06/25
- bug#45898: 27.1; wedged in redisplay again, Eli Zaretskii, 2022/06/25
- bug#45898: 27.1; wedged in redisplay again, Gerd Möllmann, 2022/06/25
- bug#45898: 27.1; wedged in redisplay again, Eli Zaretskii, 2022/06/25
- bug#45898: 27.1; wedged in redisplay again, Gerd Möllmann, 2022/06/25
- bug#45898: 27.1; wedged in redisplay again, Stefan Monnier, 2022/06/29
- bug#45898: 27.1; wedged in redisplay again, Eli Zaretskii, 2022/06/29
- bug#45898: 27.1; wedged in redisplay again, Stefan Monnier, 2022/06/29
- bug#45898: 27.1; wedged in redisplay again, Eli Zaretskii, 2022/06/30
- bug#45898: 27.1; wedged in redisplay again,
Stefan Monnier <=
- bug#45898: 27.1; wedged in redisplay again, Eli Zaretskii, 2022/06/30
- bug#45898: 27.1; wedged in redisplay again, Stefan Monnier, 2022/06/30
- bug#45898: 27.1; wedged in redisplay again, Lars Ingebrigtsen, 2022/06/14
- bug#45898: 27.1; wedged in redisplay again, Eli Zaretskii, 2022/06/14
- bug#45898: 27.1; wedged in redisplay again, Lars Ingebrigtsen, 2022/06/09
- bug#45898: 27.1; wedged in redisplay again, Po Lu, 2022/06/09
- bug#45898: 27.1; wedged in redisplay again, Eli Zaretskii, 2022/06/09
- bug#45898: 27.1; wedged in redisplay again, Lars Ingebrigtsen, 2022/06/09
- bug#45898: 27.1; wedged in redisplay again, Eli Zaretskii, 2022/06/09
bug#45898: 27.1; wedged in redisplay again, Eli Zaretskii, 2022/06/25