Hi,
This relates to the new bug report:
http://bugs.freepascal.org/view.php?id=13322
Code Folding seems to have gone way overboard! It simply makes the editor look like a mess at the moment (Lazarus svn trunk revision). What is the end goal of code folding? Maybe is in the middle of the overall goal and I am simply acting to quickly. Either way, I will voice my concerns...
In older versions of Lazarus the Code Folding [+] was in logical places. begin..end blocks. Now they appear on Implementation sections, uses classes, procedure/function level, begin..end block of procedure/function, begin..end block of if statements, var blocks etc... You end up with code looking as follows (code folding plusses everywhere)!
==============================
[+]implementation
[+]uses
MyUnit1;[+]procedure MyTest
[+]var
x: integer;[+]begin
[+] if x > 0 then begin
bla bla bal
end;
end;==============================
I would much rather prefer a more sanely and less verbose code folding that does the following:
==============================
implementation
uses
myUnit1;
[+]procedure MyTest
var
x: integer;
begin
if x > 0 then begin
bla bla bal
end;
end;
==============================At the moment it is more like trying to spot a line of code that doesn't have a [+] in the gutter!! This is just causing clutter and not actually adding any value as far as I can see. Especially now that the code folding lines and +/- signs are inside the editor code area and not the gutter area. OK, so we all know synedit now supports code folding, but we don't need it on every line. Maybe Lazarus should have a Code Folding verbosity level going from 'Normal Code Folding' to 'Insane Code Folding'.
This brings me to another point. Initially the Code Folding was not as verbose, so I tied the "Draw Code Divider" feature into the Code Folding feature. But now that Code Folding is so verbose it now makes no more sense and seems to get broken quite often. Maybe the "draw code divider" should become a separate feature and not tied into the code folding. The idea of "draw code divider" was simply to draw a horizontal line at the end of each procedure or method (like visual basic 6 did). I have no interest in drawing horizontal divider lines wherever code folding can occur. And with the current verbose level of code folding and horizontal lines (if they work) you will actually struggle to see your code between the whole mess.
Your thoughts?
Regards,
- Graeme -
_______________________________________________
fpGUI - a cross-platform Free Pascal GUI toolkit
http://opensoft.homeip.net/fpgui/
