[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#56682: Fix the long lines font locking related slowdowns
From: |
Eli Zaretskii |
Subject: |
bug#56682: Fix the long lines font locking related slowdowns |
Date: |
Sat, 06 Aug 2022 09:07:01 +0300 |
> Date: Fri, 5 Aug 2022 23:23:25 +0300
> Cc: 56682@debbugs.gnu.org, gregory@heytings.org, monnier@iro.umontreal.ca
> From: Dmitry Gutov <dgutov@yandex.ru>
>
> > We need to look at more than just M->. C-n/C-p, C-v/M-v, C-l are also
> > important, as are the time it takes from typing M-x or M-: until you
> > see the prompt in the minibuffer, and the time to update the display
> > after inserting or deleting a single character.
>
> I'm not seeing any particular sluggishness in these operations when
> visiting dictionary.json.
Numbers, please. You have a very fast machine, so what doesn't look
sluggish on your system could very well be so on others.
> > Thanks, so I guess we may have a solution for JSON files, if disabling
> > syntax-propertize-function doesn't have any downsides. What about
> > other modes that we see in files with long lines, like XML?
>
> Someone will need to test it with some typical large file. xml-mode
> (alias to nxml-mode) does have a syntax-propertize-function, but it's
> probably faster than js-syntax-propertize.
>
> > And how scalable is the solution you propose, i.e. how it behaves in
> > JSON files with a much longer lines?
>
> parse-partial-sexp is O(length of text span)
Isn't that the part you proposed to remove? I was asking about the
remaining parts.
> Meaning, it scales linearly. You'll see a 10x delay in a JSON file that
> is 10x as large.
Linear scaling is less optimal than O(0), which is what the current
solution produces.
- bug#56682: Fix the long lines font locking related slowdowns, (continued)
- bug#56682: Fix the long lines font locking related slowdowns, Eli Zaretskii, 2022/08/05
- bug#56682: Fix the long lines font locking related slowdowns, Dmitry Gutov, 2022/08/05
- bug#56682: Fix the long lines font locking related slowdowns, Eli Zaretskii, 2022/08/05
- bug#56682: Fix the long lines font locking related slowdowns, Dmitry Gutov, 2022/08/05
- bug#56682: Fix the long lines font locking related slowdowns, Eli Zaretskii, 2022/08/05
- bug#56682: Fix the long lines font locking related slowdowns, Dmitry Gutov, 2022/08/05
- bug#56682: Fix the long lines font locking related slowdowns, Eli Zaretskii, 2022/08/05
- bug#56682: Fix the long lines font locking related slowdowns, Dmitry Gutov, 2022/08/05
- bug#56682: Fix the long lines font locking related slowdowns, Eli Zaretskii, 2022/08/05
- bug#56682: Fix the long lines font locking related slowdowns, Dmitry Gutov, 2022/08/05
- bug#56682: Fix the long lines font locking related slowdowns,
Eli Zaretskii <=
- bug#56682: Fix the long lines font locking related slowdowns, Dmitry Gutov, 2022/08/06
- bug#56682: Fix the long lines font locking related slowdowns, Eli Zaretskii, 2022/08/06
- bug#56682: Fix the long lines font locking related slowdowns, Gregory Heytings, 2022/08/06
- bug#56682: Fix the long lines font locking related slowdowns, Gregory Heytings, 2022/08/06
- bug#56682: Fix the long lines font locking related slowdowns, Dmitry Gutov, 2022/08/06
- bug#56682: Fix the long lines font locking related slowdowns, Gregory Heytings, 2022/08/06
- bug#56682: Fix the long lines font locking related slowdowns, Dmitry Gutov, 2022/08/07
- bug#56682: Fix the long lines font locking related slowdowns, Dmitry Gutov, 2022/08/06
- bug#56682: Fix the long lines font locking related slowdowns, Gregory Heytings, 2022/08/06
- bug#56682: Fix the long lines font locking related slowdowns, Dmitry Gutov, 2022/08/07