Re: [Geany-devel] editing big files can be too slow with tag reparsing
Le 23/09/2011 03:09, Lex Trotman a écrit : On 23 September 2011 10:34, Matthew Brush mbr...@codebrainz.ca wrote: On 09/22/2011 09:30 AM, Nick Treleaven wrote: Hi, Whilst opening doc/geany.html I found it takes 5s on my machine to load. It's a big document though, still perhaps the HTML tag parser performance could be improved. Well under 1 second to load geany.html here, and editing it is quite smooth as well. Ditto, but of course it depends on the machine. Same here, I don't see any kind of lag with that file. But yeah, depends a lot on the machine's power. Myself, I've found the biggest slowdown is when having lots of tags files, say more than 10 maybe. If I have all my Vala tags (the ones on the Wiki) loaded, Geany basically becomes unusable. IIUC the tags files are not re-loaded so the problem here suggests symbol lookup problems rather than parsing problems. Actually, IIRC Tagmanager updates an array holding all workspace tags every time an update is done, so having many tags file or many open files of a same filetype *may* (?) reduce the performances. No guarantees on that though, there are too many dark corners in Tagmanager (:-') Regards, Colomban ___ Geany-devel mailing list Geany-devel@uvena.de https://lists.uvena.de/cgi-bin/mailman/listinfo/geany-devel
Re: [Geany-devel] editing big files can be too slow with tag reparsing
On 24 September 2011 20:33, Colomban Wendling lists@herbesfolles.org wrote: Le 23/09/2011 03:09, Lex Trotman a écrit : On 23 September 2011 10:34, Matthew Brush mbr...@codebrainz.ca wrote: On 09/22/2011 09:30 AM, Nick Treleaven wrote: Hi, Whilst opening doc/geany.html I found it takes 5s on my machine to load. It's a big document though, still perhaps the HTML tag parser performance could be improved. Well under 1 second to load geany.html here, and editing it is quite smooth as well. Ditto, but of course it depends on the machine. Same here, I don't see any kind of lag with that file. But yeah, depends a lot on the machine's power. Myself, I've found the biggest slowdown is when having lots of tags files, say more than 10 maybe. If I have all my Vala tags (the ones on the Wiki) loaded, Geany basically becomes unusable. IIUC the tags files are not re-loaded so the problem here suggests symbol lookup problems rather than parsing problems. Actually, IIRC Tagmanager updates an array holding all workspace tags every time an update is done, so having many tags file or many open files of a same filetype *may* (?) reduce the performances. No guarantees on that though, there are too many dark corners in Tagmanager (:-') Are you saying that it re-reads all open tags files every time it re-parses a source file? That would certainly make it slow. And if it is just an array, unless the array is indexed or sorted then searching it would be slow for computing the auto-completions. Cheers Lex Regards, Colomban ___ Geany-devel mailing list Geany-devel@uvena.de https://lists.uvena.de/cgi-bin/mailman/listinfo/geany-devel ___ Geany-devel mailing list Geany-devel@uvena.de https://lists.uvena.de/cgi-bin/mailman/listinfo/geany-devel
Re: [Geany-devel] editing big files can be too slow with tag reparsing
Le 22/09/2011 18:30, Nick Treleaven a écrit : Hi, Whilst opening doc/geany.html I found it takes 5s on my machine to load. It's a big document though, still perhaps the HTML tag parser performance could be improved. I think 5s is weird in the first place. I know geany.html is 6.5k-lines file, and that it may have say, 150 tags, but 5s seems way too much IMHO. Maybe we should try to find out why this is so slow on your machine, there might show a Geany bug, performance problem or something else. * What kind of machine did you run (basically, CPU's MHz) * Had you many HTML files open, with many tags each? * Had you many non-HTML files open? ...and any information that might be useful (:-') (BTW, I've seen HTML tag parser is regex-based, maybe that's particularly slow?) But now we have tag reparsing, editing geany.html becomes painful. I know we can disable reparsing, but what else could we do to improve the situation? It's not urgent to solve this problem, unless we want to make reparsing off by default. I like Thomas' idea, see other mail. Regards, Colomban ___ Geany-devel mailing list Geany-devel@uvena.de https://lists.uvena.de/cgi-bin/mailman/listinfo/geany-devel
Re: [Geany-devel] editing big files can be too slow with tag reparsing
[...] How about automagically disabling auto-reparsing per-file if it takes too long (1s?) at runtime? Without needing to change the setting that is. I like the idea. Hi Colomban, Thomas, I disagree, it is a bad idea to turn off a setting that changes the behavior. The user is likely to be confused by the unexpected change in behavior (new symbols no longer in autocompletes, new types not being highlighted etc). Having it automagically turn off is bad. At most, pop up a dialog suggesting turning it off and noting where, but only ever once per session. Although I have a great idea for an animated paper clip in the bottom right corner that can suggest it every couple of seconds ... :) Colomban is right in trying to evaluate where Nicks problem is first, thats far more likely to be productive, this sort of thing is the last option not the first. Cheers Lex ___ Geany-devel mailing list Geany-devel@uvena.de https://lists.uvena.de/cgi-bin/mailman/listinfo/geany-devel
Re: [Geany-devel] editing big files can be too slow with tag reparsing
Am 24.09.2011 13:32, schrieb Lex Trotman: Hi Colomban, Thomas, I disagree, it is a bad idea to turn off a setting that changes the behavior. The user is likely to be confused by the unexpected change in behavior (new symbols no longer in autocompletes, new types not being highlighted etc). Having it automagically turn off is bad. At most, pop up a dialog suggesting turning it off and noting where, but only ever once per session. I too think there should be a notification. But I think turning it of per-file (without touching the actual setting) is also good and the user will appreciate that. Note that it would be turned off in the case symbol generation takes a long time, so it wouldn't go unnoticed if it's deactivated. Colomban is right in trying to evaluate where Nicks problem is first, thats far more likely to be productive, this sort of thing is the last option not the first. I agree. Best regards. ___ Geany-devel mailing list Geany-devel@uvena.de https://lists.uvena.de/cgi-bin/mailman/listinfo/geany-devel
Re: [Geany-devel] TODO: update GTK+ version in Hacking
On Thu, 22 Sep 2011 22:48:46 +0200, Enrico wrote: On Thu, 22 Sep 2011 17:13:19 +0100, Nick wrote: On 21/09/2011 23:06, Matthew Brush wrote: I noticed that this section[1] in the hacking manual mentions: This is because Geany depends on GTK 2.8. API symbols from newer GTK/GLib versions should be avoided to keep the source code building against GTK 2.8. Now fixed. I guess this should be updated to GTK+ 2.12 and to host that version of GTK+ API docs. [1] http://geany.org/manual/dev/hacking.html#gtk-api-documentation I'll leave this for Enrico. Yup, will do soon. Done. I used the Debian Lenny -doc packages for ATK, GLib, GTK and Pango, extracted the documentation and put them on the server next to a tarball of them. Thanks for the reminder. Regards, Enrico -- Get my GPG key from http://www.uvena.de/pub.asc pgpXzuWzVXnJV.pgp Description: PGP signature ___ Geany-devel mailing list Geany-devel@uvena.de https://lists.uvena.de/cgi-bin/mailman/listinfo/geany-devel
Re: [Geany-devel] editing big files can be too slow with tag reparsing
[..] I too think there should be a notification. But I think turning it of per-file (without touching the actual setting) is also good and the user will appreciate that. Per file is a good idea. Note that it would be turned off in the case symbol generation takes a long time, so it wouldn't go unnoticed if it's deactivated. I'm always surprised what users can overlook, but if we notify them, it doesn't matter how unobservant they are :) Colomban is right in trying to evaluate where Nicks problem is first, thats far more likely to be productive, this sort of thing is the last option not the first. I agree. Also Matthew's perceived slowness with lots of tags loaded needs checking, is it reloading them all the time (as Colomban seemed to suggest) or does the symbol table used by tagmanager have O(1), O(log), O(N) or worse performance. Cheers Lex ___ Geany-devel mailing list Geany-devel@uvena.de https://lists.uvena.de/cgi-bin/mailman/listinfo/geany-devel
Re: [Geany-devel] saving plugin settings in a project file
On Fri, 23 Sep 2011 19:52:24 +0200 Thomas Martitz thomas.mart...@student.htw-berlin.de wrote: Am 21.09.2011 18:01, schrieb Dimitar Zhekov: What you need is debug sessions, and they depend on the executable being debugged. It doesn't make sense to use the same breakpoints, watches etc. for more than one program, or two sets of these for the same program. I disagree with the very last statement. If you're working at the same project in different branches you might want to debug different parts. Are you using several branches with a single executable name? I prefer to keep my source directories clean and generate the object and executable files outside them, but at least each branch has it's own output directory. -- E-gards: Jimmy ___ Geany-devel mailing list Geany-devel@uvena.de https://lists.uvena.de/cgi-bin/mailman/listinfo/geany-devel
Re: [Geany-devel] editing big files can be too slow with tag reparsing
On 09/24/2011 05:49 AM, Lex Trotman wrote: Also Matthew's perceived slowness with lots of tags loaded needs checking, is it reloading them all the time (as Colomban seemed to suggest) or does the symbol table used by tagmanager have O(1), O(log), O(N) or worse performance. I'm too afraid to go back into the TagManager code, but IIRC it uses a sorted GPtrArray. I think for each new tag added it qsort()s the array and also removes duplicates by looping over the whole array. Lookups are done with bsearch() on the array I think. Not sure if that matters or is what you asked :) Cheers, Matthew Brush ___ Geany-devel mailing list Geany-devel@uvena.de https://lists.uvena.de/cgi-bin/mailman/listinfo/geany-devel
Re: [Geany-devel] AUTHORS THANKS files
On Fri, 23 Sep 2011 21:03:23 -0700 Matthew Brush mbr...@codebrainz.ca wrote: Ok, just was curious whether the act of submitting code to the Geany project implicitly signed over copyright. I guess it doesn't work like that :) Nope, no copyleft as you might no from GNU or OpenOffice/LibreOffice. Cheers, Frank -- http://frank.uvena.de/en/ pgpB0jllO3oYr.pgp Description: PGP signature ___ Geany-devel mailing list Geany-devel@uvena.de https://lists.uvena.de/cgi-bin/mailman/listinfo/geany-devel
Re: [Geany-devel] AUTHORS THANKS files
On 25 September 2011 07:27, Frank Lanitz fr...@frank.uvena.de wrote: On Thu, 22 Sep 2011 20:33:22 -0700 Matthew Brush mbr...@codebrainz.ca wrote: Would it not make more sense to have a single copyright holder for all files in the project, be it a person (ie. the current lead/maintainer), or an organization (ie. The Geany Software Foundation :) Well, we can discuss about this topic, but establishing will not be that easy as we having the same issue the linux-kernel is having. We just cannot reach anybody who contributed to Geany to ask for a Copyleft which will be needed here. A very good practical point Frank. Hence my suggestion to add something like Copyright 2xxx-2xxx various contributors (as recorded in the change history). to all files. Cheers Lex Cheers, Frank -- http://frank.uvena.de/en/ ___ Geany-devel mailing list Geany-devel@uvena.de https://lists.uvena.de/cgi-bin/mailman/listinfo/geany-devel ___ Geany-devel mailing list Geany-devel@uvena.de https://lists.uvena.de/cgi-bin/mailman/listinfo/geany-devel