I pulled Lazarus out to give it a second, third or fourth (whichever), chance. I decided to remake an old project of mine that used SynEdit to edit the random map scripts from Age of Empires 2.
The resulting executable with just a SynAnySyn and a SynEdit, with no debug info and full optimization, was a 12.7mb bloated application. There isn't even a menu! This is 50% larger than Lazarus itself. :?
All I have the thing do is load a sample script, load the highlighting settings, and then enable the highlight settings. No really, this is it:
Code:
SynAnySyn1.LoadHighLighter('rms.ini');
SynAnySyn1.Enabled := True;
SynEdit1.Lines.LoadFromFile('ForestLand.rms');
Yeah, wow. I don't know whether to be insulted yet, but I can't even find, let alone compile the SynEdit highlighter generator to compile my real highlighter script. The removal of SynAnySyn for the real highlighter object the generator spits out would probably be better and smaller.
To add insult to injury, take a peek at the following screenshot. Two colors, comment and keyword, are utterly bungled. Roughly one third of all the objects and keywords are missing, unhighlighted, despite their presence in the INI-highlighter definition. Things like "random_placement", "ALPINE_MAP" and a number of others. I didn't bother to add the codes to highlight numbers.
Is it too much to ask that the application work correctly, even if it doesn't fit into the size it should? The older versions of Lazarus crammed it into ~4mb or less yet now it is three times larger. Not to mention that it malfunctions now too.
Please, is this just me? I want to like Lazarus, but every time I touch it something goes wrong, malfunctions, or bloats in crazy or inexplicable ways. Anyone who wants to see for themselves and maybe point out my error(s), you can retrieve the project here.
Bookmarks