Lazarus on Debian is slow lazarus / 9-Editor ---------------------------------------------------------------------- mrdebug · 2012-10-24 12:04 The code editor of Lazarus on Debian Squeeze is very slow. Is slow on scrolling, on showing popups (such as code auto completion)... What do you think about? ---------------------------------------------------------------------- Martin_fr · 2012-10-24 12:20 Have you tried another font? The editor only supports monospaced. But this is not enforced in the options. Choosing a none monospaced font, requires extra time for displaying. ---------------------------------------------------------------------- mrdebug · 2012-10-24 12:51 Using monospace the problem persists. ---------------------------------------------------------------------- Leledumbo · 2012-10-24 13:09 What widgetset? In my experience, gtk2 was always damn slow and I move to qt completely (well, I still distribute my programs in gtk2 flavour in case somebody wants it). ---------------------------------------------------------------------- mrdebug · 2012-10-24 13:49 Yes, you're right. Using qt instead of gtk Lazarus comes very fast. ---------------------------------------------------------------------- Martin_fr · 2012-10-24 14:06 GTK has one of the slower text painting, compared to other WidgetSet (in Lazarus). Yet, it can work decent. There are several things that affect it: 1) Proportional fonts, as mentioned. Includes some monospaced fonts, that for some reasons are not 100% monospaced (maybe replace some chars that are not in the font) 2) Sub pixel painting, same effect. SynEdit requires every char to start at a full pixel. If it does not, it slows down Both of the above can be tested for: Compile the IDE with "SYNFONTDEBUG" defined ( -dSYNFONTDEBUG .  Then start it from console. The output will contain many lines like: QuoteTheFontStock.CalcFontAdvance: Final result for %s  Width=%d  Overhang=%d  eto=%s"eto" is either followed by true, or false. If it is followed by "true" (even if only once, out of many) then it will be slower. 3) scrolling. There is a very very low percentage of GTK systems, that do not scroll correctly. That is the call to just move the existing bitmap, does not do anything. On those platforms, when scrolling SynEdit must repaint the entire text each time, instead of just painting the line(s) that scrolled in. Define "SYNSCROLLDEBUG" slow: ScrollAfterTopLineChanged does invalided (scroll failed) Delta= fast: ScrollAfterTopLineChanged did scroll Delta=