Sign in Join

Live chat for Free Pascal, Lazarus, Delphi and every Pascal programmer.

Mailing lists / lazarus / 2011-06

First impressions of Lazarus under Mac OS X

13 messages · 4 people · –

Reply by email Subscribe to this list Your subscription

Read-only archive. Use j and k to move between messages.

Graeme Geldenhuys

Hi,

I have just downloaded FPC 2.4.4 and Lazarus 0.9.30 from SourceForge. This is the first time I use any development tools under Mac OS X, so this is the experience from a "newbie" point of view [yes, I'm normally working under Linux only]. I hope you take these comments as constructive criticism and not as negative ranting.

1) The Lazarus installer displayed a readme file. There was many punctuation errors in the readme file displayed.

2) The readme files font was rather small (compared to my experience with other Mac software installations that also display readme files).

3) Kudos for placing a Lazarus IDE icon in the Applications folder. Xcode's installation didn't do it, and I had to hunt through the filesystem to find the executable of Xcode. :-)

4) My application dock is aligned to the left edge of my screen - unlike the default bottom centre. Launching Lazarus IDE for the first time, the Object Inspector and the Main Form of the IDE was hidden behind the dock. I've got a screenshot of it if that will help explain it.

5) The main form of the IDE was HUGE. Spanning the whole width of the iMac's display. That just looked totally out of place, but that's maybe just my opinion.

6) The default font in the Lazarus Source window is absolutely hideous! Very pixelated and not anti-aliased. Going to the editor settings, it said it is using Monaco-12, but what is actually being used is a mystery, because it definitely was not Monaco font. I launched the font dialog to select a different font. The OS font dialog showed a preview of Monaco font, and again - nothing like what is used in the editor. I have a screenshot of that too, if it will help. Selecting Monaco-12 in the font dialog and closing the dialog, Lazarus IDE did not update the editor font. I had to physically change the font size to something other than 12pt before the editor options preview window updated. Strangely enough, select Close to accept the new editor changes, the editor font still displayed the very pixelated text. Still not Monaco font either. It seems Lazarus IDE doesn't like Monaco font at all. :)

7) Still being stuck on the unknown font in the editor window, there is some rather strange behaviours. eg: Select a line of text from left to right makes the text "jiggle" (changing there widths) as I select more and more text.

8) To got the source code editor to some sane font, I had to resort to selecting a totally different font, Courier-13 for example, and pressing OK, finally updated the editor. But still the editor text is not anti-aliased, which it was in the Options Dialog preview window!

Anyway, that's my first experience with Lazarus IDE under Mac OS X 10.6.6 on my iMac. Using Lazarus 0.9.30 r30219 FPC 2.4.2 i386-darwin-carbon (as downloaded from SourceForge). Anyway, it wasn't a very impressive first impression of Lazarus. Just thought I would mention this. It seems the Mac version still needs a LOT of work.

Regards, ? - Graeme - _______________________________________________ fpGUI - a cross-platform Free Pascal GUI toolkit http://fpgui.sourceforge.net

Reply by email

Martin
to Graeme Geldenhuys

Read reply to point 8 first, before trying all the other stuff, if at all...

Graeme Geldenhuys wrote 15 lines
6) The default font in the Lazarus Source window is absolutely hideous! Very pixelated and not anti-aliased. Going to the editor settings, it said it is using Monaco-12, but what is actually being used is a mystery, because it definitely was not Monaco font. I launched the font dialog to select a different font. The OS font dialog showed a preview of Monaco font, and again - nothing like what is used in the editor. I have a screenshot of that too, if it will help. Selecting Monaco-12 in the font dialog and closing the dialog, Lazarus IDE did not update the editor font. I had to physically change the font size to something other than 12pt before the editor options preview window updated. Strangely enough, select Close to accept the new editor changes, the editor font still displayed the very pixelated text. Still not Monaco font either. It seems Lazarus IDE doesn't like Monaco font at all. :)

I understand Monaco is supposed to be fixed width?

Default is at line 1348 (SynEdit.pp)
   {$IFDEF LCLcarbon}
     SynDefaultFontName   := 'Monaco'; // Note: carbon is case sensitive
     SynDefaultFontHeight := 12;
     {$DEFINE SynDefaultFont}

If you select from options dialog, does Monaco work in other sizes? Does the "AntiAliasing Checkbox" make a difference?

SynEdit.pp Line 7619 an dfollowing:

procedure TCustomSynEdit.RecalcCharExtent;
var
   i: Integer;
begin
   FFontDummy.Assign(Font);
   with FFontDummy do begin
     // Keep GTK happy => By ensuring a change the XFLD fontname gets
cleared
     Pitch := fpVariable;
     Style := [fsBold];
     Pitch := fpDefault; // <<<<============ this line <<<<================

Try different values there, see if it helps?

Show quoted text 5 lines
7) Still being stuck on the unknown font in the editor window, there is some rather strange behaviours. eg: Select a line of text from left to right makes the text "jiggle" (changing there widths) as I select more and more text.

I Remember that was fixed once......

Can you compile with SYNFONTDEBUG defined, and get console output, or logfile?

Can you test, if it works, if you set "ExtraCharSpacing" to either 1 or -1 (or anything, but 0)

8) To got the source code editor to some sane font, I had to resort to selecting a totally different font, Courier-13 for example, and pressing OK, finally updated the editor. But still the editor text is not anti-aliased, which it was in the Options Dialog preview window!

*** Read me first ***

Now this is odd...

Are the setting saved to the editoropions.xml? (Take a copy of the initial, and then make diffs, after the changes // Or check if they persist on restart.)

If they are saved, are they applied (or still ignored) after restarting lazarus?

Reply by email

Mattias Gaertner
to Graeme Geldenhuys: I have just downloaded FPC 2.4.4 and Lazarus 0.9.30 from SourceForge. This is the first…
Show quoted text 10 lines
Hi, I have just downloaded FPC 2.4.4 and Lazarus 0.9.30 from SourceForge. This is the first time I use any development tools under Mac OS X, so this is the experience from a "newbie" point of view [yes, I'm normally working under Linux only]. I hope you take these comments as constructive criticism and not as negative ranting. 1) The Lazarus installer displayed a readme file. There was many punctuation errors in the readme file displayed.

Needs fixing. Can you create a list/patch?

2) The readme files font was rather small (compared to my experience with other Mac software installations that also display readme files).

As far as I remember this is common on OS X.

Show quoted text 9 lines
3) Kudos for placing a Lazarus IDE icon in the Applications folder. Xcode's installation didn't do it, and I had to hunt through the filesystem to find the executable of Xcode. :-) 4) My application dock is aligned to the left edge of my screen - unlike the default bottom centre. Launching Lazarus IDE for the first time, the Object Inspector and the Main Form of the IDE was hidden behind the dock. I've got a screenshot of it if that will help explain it.

Please create a bug report.

5) The main form of the IDE was HUGE. Spanning the whole width of the iMac's display. That just looked totally out of place, but that's maybe just my opinion.

It simply used percentage values. No maximums.
Maybe some maximums can be added.
This is on all platforms, not only OS X.

6) The default font in the Lazarus Source window is absolutely hideous! Very pixelated and not anti-aliased.

Yes. The default is disabled antialiased for all platforms not only OS X.
The option is just below the font size.

Show quoted text 13 lines
Going to the editor settings, it said it is using Monaco-12, but what is actually being used is a mystery, because it definitely was not Monaco font. I launched the font dialog to select a different font. The OS font dialog showed a preview of Monaco font, and again - nothing like what is used in the editor. I have a screenshot of that too, if it will help. Selecting Monaco-12 in the font dialog and closing the dialog, Lazarus IDE did not update the editor font. I had to physically change the font size to something other than 12pt before the editor options preview window updated. Strangely enough, select Close to accept the new editor changes, the editor font still displayed the very pixelated text. Still not Monaco font either. It seems Lazarus IDE doesn't like Monaco font at all. :)

Apparently you didn't see the option.

Maybe we should set antialiasing by default to true.

7) Still being stuck on the unknown font in the editor window, there is some rather strange behaviours. eg: Select a line of text from left to right makes the text "jiggle" (changing there widths) as I select more and more text.

This happens with non mono space fonts. Not only under carbon. Also on Linux/qt.

8) To got the source code editor to some sane font, I had to resort to selecting a totally different font, Courier-13 for example, and pressing OK, finally updated the editor. But still the editor text is not anti-aliased, which it was in the Options Dialog preview window!

This works here.
Can you give more details?

Show quoted text 5 lines
Anyway, that's my first experience with Lazarus IDE under Mac OS X 10.6.6 on my iMac. Using Lazarus 0.9.30 r30219 FPC 2.4.2 i386-darwin-carbon (as downloaded from SourceForge). Anyway, it wasn't a very impressive first impression of Lazarus. Just thought I would mention this. It seems the Mac version still needs a LOT of work.

It seems your main problems are the defaults.

Mattias

Reply by email

Martin
to Mattias Gaertner
Mattias Gaertner wrote 7 lines
> 7) Still being stuck on the unknown font in the editor window, there > is some rather strange behaviours. eg: Select a line of text from left > to right makes the text "jiggle" (changing there widths) as I select > more and more text. This happens with non mono space fonts. Not only under carbon. Also on Linux/qt.

that can mean 2 things:
- The detection of no-mono in synedit does not work Compile with SYNFONTDEBUG defined, and let me look at it

- LCLIntf.ExtUTF8Out(FDC, X, Y, fuOptions, @ARect, Text, Length, DistArray)
is broken, if DistArray is supplied.

DistArray is a list of pixel widths for each char that should be outputted.

I do remember that this was once fixed for MacOs

Reply by email

Hans-Peter Diettrich
to Graeme Geldenhuys: I have just downloaded FPC 2.4.4 and Lazarus 0.9.30 from SourceForge. This is the first…

Graeme Geldenhuys schrieb:

These issues apply to all platforms:

Show quoted text 5 lines
4) My application dock is aligned to the left edge of my screen - unlike the default bottom centre. Launching Lazarus IDE for the first time, the Object Inspector and the Main Form of the IDE was hidden behind the dock. I've got a screenshot of it if that will help explain it.

This is a known problem for all platforms. I already addressed it in an extension of TScreen, where the usable range of screen or monitor coordinates (BoundsRect?) could take into account a task bar - but this requires according support on all platforms.

Apart from that I'm still waiting for *full* support of negative display coordinates, as occur on my multi-monitor system :-(

5) The main form of the IDE was HUGE. Spanning the whole width of the iMac's display. That just looked totally out of place, but that's maybe just my opinion.

+1 :-(

Half of the screen width would be sufficient on nowadys 16:9 wide flatscreens, with room for a full-height editor window beneath it.

DoDi

Reply by email

Graeme Geldenhuys
to Martin: Read reply to point 8 first, before trying all the other stuff, if at all... I understand…
Martin wrote
Read reply to point 8 first, before trying all the other stuff, if at all...

I'll try everything you mentioned tonight, and reply again to your message. I only have access to the iMac at home.

Show quoted text 6 lines
> 7) Still being stuck on the unknown font in the editor window, there > is some rather strange behaviours. eg: Select a line of text from left > to right makes the text "jiggle" (changing there widths) as I select > more and more text. > I Remember that was fixed once......

Yes, I reported that some months or years ago - under Linux. It was fixed for ,
- Graeme -

fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal http://fpgui.sourceforge.net/

Reply by email

Graeme Geldenhuys
to Mattias Gaertner: On Thu, 23 Jun 2011 21:12:06 +0200 Needs fixing. Can you create a list/patch? As far as I…
Mattias Gaertner wrote
> 1) The Lazarus installer displayed a readme file. There was many > punctuation errors in the readme file displayed. Needs fixing. Can you create a list/patch?

Yes, I'll supply a patch.

Show quoted text 7 lines
> 5) The main form of the IDE was HUGE. Spanning the whole width of the > iMac's display. That just looked totally out of place, but that's > maybe just my opinion. It simply used percentage values. No maximums. Maybe some maximums can be added. This is on all platforms, not only OS X.

So what... is it set to always use 100% of screen width? If so, that's a lousy default. The 21.5" iMac screen resolution is +-1920 pixels wide. That's big. The 27" iMac is well over 2560 pixels wide - makes the problem even worse!

If you haven't noticed, Apple doesn't even have a "Maximize" button like Windows or Linux. Because it doesn't always make sense (or looks pretty) to have windows that wide or tall.

I'd say, default the main form width to something like 1024 pixels. Then let the developer adjust it further if need be.

Show quoted text 6 lines
> 6) The default font in the Lazarus Source window is absolutely > hideous! Very pixelated and not anti-aliased. Yes. The default is disabled antialiased for all platforms not only OS X. The option is just below the font size.

I guess that's another "Windows legacy" feature. ;-) Having "anti-aliased" enabled by default makes more sense, seeing that all platforms default to anti-aliased text for years already. But then, the most popular Windows release, WinXP, anti-aliased text is disabled by default. I don't know what Win7 does. Either way, having in enabled by default seems like a more sensible default.

Oh, and the other reason I probably overlooked that checkbox, is because I thought its functionality wasn't actually implemented. It does nothing under Linux (or Win2000 - the only Windows version I use for testing) - checked or not. No idea if it works for WinXP and later.

Show quoted text 7 lines
> 7) Still being stuck on the unknown font in the editor window, there > is some rather strange behaviours. eg: Select a line of text from left > to right makes the text "jiggle" (changing there widths) as I select > more and more text. This happens with non mono space fonts. Not only under carbon. Also on Linux/qt.

Well it doesn't do that under Linux-GTK2. I just tested with a non mono spaced font.

It seems your main problems are the defaults.

Mostly yes. Hence my comment of "not a good first impression of Lazarus". Defaults are very important in any product. That makes are breaks if someone will bother any further with that product.

I'll retest all the new ideas tonight and when appropriate, report bugs/issues in Mantis.

Regards,
- Graeme -

fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal http://fpgui.sourceforge.net/

Reply by email

Graeme Geldenhuys
to Hans-Peter Diettrich: These issues apply to all platforms: This is a known problem for all platforms. I already…
Hans-Peter Diettrich wrote
This is a known problem for all platforms. I already addressed it in an extension of TScreen, where the usable range of screen or monitor coordinates (BoundsRect?) could take into account a task bar - but this requires according support on all platforms.

I can at least say with certainty that you can detect and query the position of the "taskbar" under Gnome and Windows. How that gets integrated in LCL - well I'll leave that up to somebody that knows LCL internals.

Apart from that I'm still waiting for *full* support of negative display coordinates, as occur on my multi-monitor system :-(

Ah, don't talk about multi-monitors. I use a two monitor setup at work under Linux (Gnome desktop). So many apps are screwed because of this. At it's so damn annoying having popup dialogs/windows appear in the centre of the available desktop space (across both monitors)!

Show quoted text 8 lines
> 5) The main form of the IDE was HUGE. Spanning the whole width of the > iMac's display. That just looked totally out of place, but that's > maybe just my opinion. +1 :-( Half of the screen width would be sufficient on nowadys 16:9 wide flatscreens, with room for a full-height editor window beneath it.

That would indeed be a good set of defaults.

Regards,
- Graeme -

fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal http://fpgui.sourceforge.net/

Reply by email

Graeme Geldenhuys
to Hans-Peter Diettrich: These issues apply to all platforms: This is a known problem for all platforms. I already…
Hans-Peter Diettrich wrote
Apart from that I'm still waiting for *full* support of negative display coordinates, as occur on my multi-monitor system :-(

I'm starting to think that a better idea than the multi-monitors setup, is just one damn huge display. For example, the 27" iMac has a 2560-by-1440 resolution. That?s 78 percent more pixels than the 21.5-inch iMac display. So one HUGE display should be just as good (or even better) than a multi-monitor setup - without the many multi-monitor issues.

Now if only I can figure out how to multi-boot an iMac between Mac OS X and Linux. Better do some web searching.

Regards,
- Graeme -

fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal http://fpgui.sourceforge.net/

Reply by email

Mattias Gaertner
to Graeme Geldenhuys: Yes, I'll supply a patch. So what... is it set to always use 100% of screen width? If so,…
Show quoted text 13 lines
[...] >> 5) The main form of the IDE was HUGE. Spanning the whole width of the >> iMac's display. That just looked totally out of place, but that's >> maybe just my opinion. > > It simply used percentage values. No maximums. > Maybe some maximums can be added. > This is on all platforms, not only OS X. So what... is it set to always use 100% of screen width? If so, that's a lousy default. The 21.5" iMac screen resolution is +-1920 pixels wide. That's big. The 27" iMac is well over 2560 pixels wide - makes the problem even worse!

I added a maximum.

If you haven't noticed, Apple doesn't even have a "Maximize" button like Windows or Linux. Because it doesn't always make sense (or looks pretty) to have windows that wide or tall.

OS X has a maximize/restore button. But many programs do not use the full screen width. For some programs this is ok, sometimes even great. But for some programs like safari I don't understand this decision.

I'd say, default the main form width to something like 1024 pixels. Then let the developer adjust it further if need be.

I used 1200.

Show quoted text 8 lines
>> 6) The default font in the Lazarus Source window is absolutely >> hideous! Very pixelated and not anti-aliased. > > Yes. The default is disabled antialiased for all platforms not only OS > X. > The option is just below the font size. I guess that's another "Windows legacy" feature. ;-)

No.
Antialiasing didn't work on all platforms. The text was unreadable.

Show quoted text 5 lines
[...] Oh, and the other reason I probably overlooked that checkbox, is because I thought its functionality wasn't actually implemented. It does nothing under Linux (or Win2000 - the only Windows version I use for testing) - checked or not. No idea if it works for WinXP and later.

You overlooked a checkbox, because you know it is there?

Well, I guess at least newbies don't have that problem.

[...] Well it doesn't do that under Linux-GTK2. I just tested with a non mono spaced font.

Yes, the distarray is implemented for gtk. But it slows down a lot. Gtk is like a locomotive. It likes big chunks of load.

[...] I'll retest all the new ideas tonight and when appropriate, report bugs/issues in Mantis.

Thanks.

Mattias

Reply by email

Martin
to Graeme Geldenhuys: Yes, I'll supply a patch. So what... is it set to always use 100% of screen width? If so,…
Graeme Geldenhuys wrote 14 lines
> Yes. The default is disabled antialiased for all platforms not only OS > X. > The option is just below the font size. I guess that's another "Windows legacy" feature. ;-) Having "anti-aliased" enabled by default makes more sense, seeing that all platforms default to anti-aliased text for years already. But then, the most popular Windows release, WinXP, anti-aliased text is disabled by default. I don't know what Win7 does. Either way, having in enabled by default seems like a more sensible default. Oh, and the other reason I probably overlooked that checkbox, is because I thought its functionality wasn't actually implemented. It does nothing under Linux (or Win2000 - the only Windows version I use for testing) - checked or not. No idea if it works for WinXP and later.

It works fine on Vista.

And I did actually have it off for a long time (that is until, I bothered finding a font ("Deja Vu"), that 'worked' with anti aliasing

"Courier New" for me does not work with anti aliasing. The difference between bold and not bold text is barely noticable, when anti aliased. (on w32). At least at my preferred font size...

Show quoted text 8 lines
>> 7) Still being stuck on the unknown font in the editor window, there >> is some rather strange behaviours. eg: Select a line of text from left >> to right makes the text "jiggle" (changing there widths) as I select >> more and more text. > This happens with non mono space fonts. Not only under carbon. Also on > Linux/qt. Well it doesn't do that under Linux-GTK2. I just tested with a non mono spaced font.

It can even happen with mono spaced fonts, if the font uses sub pixel positioning. E.g, if the first char is at pixel 0, the 2nd char at pixel 5.33, the 3rd at pixel 10.66 ....

Because SynEdit does not support it, and starts output always on a full pixel. By default SynEdit outputs whole words (or more, if there is no color/style change) as a single TextOut.
With a block selection, you get a color/style change in the middle of the word. So the 2nd part of the word is moved to where synedit thinks it should be (and a full pixel.

Same problem for proportional fonts.

If SynEdit detects, that a font may be proportional, or have sub pixels, or other features then it calls TextOut with a list of "to be enforced" charwidths. Telling the OS (or LCL/Widgetset) to output each char at the desired position.

So either Mac/Carbon/WidgetSet does not obey this charwidth-list. Or detection in SynEdit is broken (SynEdit can be forced to use the list, by using ExtraCharSpacing" option

Reply by email

Graeme Geldenhuys
to Mattias Gaertner: On Fri, 24 Jun 2011 09:15:09 +0200 I added a maximum. OS X has a maximize/restore button.…
Mattias Gaertner wrote
OS X has a maximize/restore button. But many programs do not use the full screen width.

That's what I meant by "unlike Windows or Linux". Just about every app I tried under Mac OS X doesn't maximize to full screen width and height.

But for some programs like safari I don't understand this decision.

Simple. It's easier to read narrow columns of text. So they maximize vertically only.
BTW: Linux has this feature too. You can maximize both directions (default), or vertical or horizontal.

> I'd say, default the main form width to something like 1024 pixels. Then > let the developer adjust it further if need be. I used 1200.

That will be much better. Thanks.

You overlooked a checkbox, because you know it is there?

No, I ignore the checkbox by default, because it never worked on any of the platforms I use Lazarus on daily. That's Ubuntu Linux (many versions) and Win2000.

Another really odd Lazarus feature under OS X, is when you minimize the main form. Only the main form is minimized, all the others are still visible. So you have to minimize them one by one. Trying to restore the main form was rather tricky too (well for me at least, as I'm a OS X newbie). Eventually I found out how. I had to right click the icon in the dock, and then select the main form from the list of windows (it has a little diamond next to it). I would have expected the "whole" Lazarus to minimize when I minimized the main form. And restore all windows when I click the Lazarus icon in the dock. But then again, maybe that's just me?

Regards,
- Graeme -

fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal http://fpgui.sourceforge.net/

Reply by email

Hans-Peter Diettrich
to Graeme Geldenhuys: I can at least say with certainty that you can detect and query the position of the…
Show quoted text 7 lines
> Apart from that I'm still waiting for *full* support of negative display > coordinates, as occur on my multi-monitor system :-( Ah, don't talk about multi-monitors. I use a two monitor setup at work under Linux (Gnome desktop). So many apps are screwed because of this. At it's so damn annoying having popup dialogs/windows appear in the centre of the available desktop space (across both monitors)!

Every window manager, that offers a CenterDesktop position, also should allow the user to redirect this to CenterMonitor. But who cares about *useful* functionality, nowadays :-(

DoDi

Reply by email