[Geany-devel] editing big files can be too slow with tag reparsing - HTML

Jiří Techet techet at xxxxx
Wed Sep 28 21:05:47 UTC 2011


On Tue, Sep 27, 2011 at 14:17, Nick Treleaven
<nick.treleaven at btinternet.com> wrote:
> On 26/09/2011 23:00, Colomban Wendling wrote:
>>
>> Le 26/09/2011 13:48, Nick Treleaven a écrit :
>>>
>>> I'm reduced to using Windows. I guess the reason is the regex code that
>>> is really old which is used for Windows builds.
>>
>> Maybe yeah, but I find it a little weird you see *so much* slowness...
>>
>> For comparison, on my machine [1] parsing and updating the list takes
>> less than 60ms for geany.html.
>
> Just to be sure, are you seeing the 'built-in regex' debug message:
>
> 12:42:07: (null) INFO           : GTK 2.22.0, GLib 2.26.0, built-in regex
>
>>> It might help to update
>>> it from CTags (we had a patch from Jiri Techet but it didn't look like
>>> it would build on Windows, i.e. wasn't from CTags).
>>
>> Maybe we could use GRegex now we have a GLib recent enough?
>>
>> Anyway tagamanger/regex.c looks like a few glibc source file
>> concatenated with a 0xff separator, I'd then guess any POSIX RE
>> implementation (e.g. today's glibc's one) would do, wouldn't it?
>
> That's probably what Jiri did, but I noticed CTags had some modifications to
> build on Windows. Perhaps glibc would work, but I think taking it from ctags
> is safer.

Basically I took the (then) latest versions of the regex files plus
the makefile from ctags. The patch still applies by the way. I've just
diffed the result of my patch with the ctags regex and there aren't
big differences. What I've forgotten include into my patch is a
conditional include under windows in regex_internal.h so if you want
to use my patch, substitute this file with the ctags one. I haven't
tested it under Windows myself so I don't know what happens.

Cheers,

Jiri



More information about the Devel mailing list