|
From: | Urs Liska |
Subject: | Re: Frescobaldi slowed down [WAS: Re: Emacs lilypond mode formatting and indenting] |
Date: | Mon, 28 Jan 2019 09:02:22 +0100 |
User-agent: | Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.2.1 |
Am 28.01.19 um 08:18 schrieb Andrew
Bernard:
Other than with LilyPond the issue is not the complexity of the *score* but that of the *input files*, which correlates typically but not always. I had this problem with two projects: one was a huge (150 page)
orchestral score that was organized in >5.000 input files, the
other had very short 2-3 page songs with one large input of
several thousand lines each because (from auto-converted input)
every element had a "\tweak id". The basic error here in Frescobaldi's code is that (I think) upon every change the whole document is parsed again (following all includes) to provide the data for autocompletion and syntax highlighting. As this happens in the single application thread this is blocking everything else. Essentially there should only be two (minor) things to be done to completely and instantly make the problem go away:
While this is conceptually pretty clear I haven't dared yet to investigate it in the code base yet because I haven't understood yet how Frescobaldi actually does its highlighting. But I recently changed the way Frescobaldi handles external jobs/processes, and that might make it more straightforward and compartmentalized to approach the issue. I can't afford starting this but if you (well, or anyone else) would be interested going after it I'd certainly be there to assist. Urs
|
[Prev in Thread] | Current Thread | [Next in Thread] |