[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [O] org-element checks make flyspell prohibitively slow
From: |
Matt Lundin |
Subject: |
Re: [O] org-element checks make flyspell prohibitively slow |
Date: |
Fri, 21 Mar 2014 13:56:56 -0500 |
User-agent: |
Gnus/5.13001 (Ma Gnus v0.10) Emacs/24.3 (gnu/linux) |
Hi Nicolas,
Nicolas Goaziou <address@hidden> writes:
> Matt Lundin <address@hidden> writes:
>
>> The rewrite of org-mode-flyspell-verify in commit
>> 4a27c2b4b67201e0b23f431bdaeb6460b31e1394 (Nov 21, 2013) makes navigating
>> org-mode files with large chunks of text very slow.
>
> [...]
>
>> => Org-mode version 8.2.5h (release_8.2.5h-757-gc444e4 @
>> /home/matt/org-mode/lisp/)
>
> Could you update and try again? Parser's cache was inadvertently
> disabled. I re-enabled it.
Yes, I can confirm that it is faster now. Thanks.
>> core/acl 2.2.52-2 [installed]
>> Access control list utilities, libraries and headers
>> core/archlinux-keyring 20140220-1 [installed]
>> Arch Linux PGP keyring
>> core/attr 2.4.47-1 [installed]
>> Extended attribute support library for ACL support
>> core/autoconf 2.69-1 (base-devel) [installed]
>> A GNU tool for automatically configuring source code
>> core/automake 1.14.1-1 (base-devel) [installed]
>> A GNU tool for automatically creating Makefiles
>>
>> All in all, it's 12680 lines....
>
> Note that it is a contrived example: the whole buffer is a single
> paragraph containing around 150 objects. The current algorithm for
> `org-element-context' is clearly not on par with such a density of
> objects per paragraph.
Yes, it is indeed a contrived example. I originally thought I had a use
for it --- i.e., analyzing the packages I had installed --- but soon
realized that such a task is better accomplished in a separate text
file.
> Also, cache cannot help here, because each time you edit a paragraph,
> all objects within are removed from the cache (because, AFAIK, there
> is no way to know if the edition altered a previously parsed object or
> not, so, as a security measure, all of them are wiped out) and you
> have to parse them again.
>
> Therefore, navigation should be fast but editing (with flyspell-mode
> enabled) is going to be slow.
Good to know.
Thanks again!
Matt