Language resets itself to "default"

@ Jason:
I saw German localized Xojo IDE in the past. Does it makes things different ?
Projects built with it displays some menus in German.

I searched hours ago in ash web site to download Xojo, but I do not found any link, so I cannot make more comment on the subject.

No - what languages the IDE is localized into has no impact on what happens in your built applications.

One thing many people have run into is with using some versions of macOSLib which had a lot of menu item localizations in it. If you were not aware they were there this could make unusual things happen with submissions to the App Store and also may result in some menu items being localized unexpectedly.

This is getting off topic so I started a new thread for localization:

https://forum.xojo.com/52216-localization-on-macos-windows-linux

OK, so on Mac the only time this setting makes a difference in on a system were none of the localisations are in use for the user. Then it would use the language you specify in Build Settings (rather than showing default values).

None of the blog posts explain how I manage to change the value of the Language property in the IDE. The property can’t be changed by IDE scripting. I do change some values in the IDE like BundleID and name.

I think the problem is here:

[quote]For example, if you leave both the constant language and build language as “Default” then “Default” becomes “English” for users that build with an English system and becomes “French” for users that build with a French system.

To prevent this confusion, always at least choose a specific language in the Build setting. Alternatively, don’t use “Default” for your constants and instead always choose the exact language for each constant.[/quote]

When I didn’t know better I started giving my dynamic constants values for default, german and english like this:

[quote]
kMoveTrashThunderbird

1
1313085439
134217984
0
Moving mails to the trash doesn’t work for Thunderbird.
97

0
1
Moving mails to the trash doesn’t work for Thunderbird.


0
4
Das Bewegen der Mails in den Papierkorb funktioniert für Thunderbird nicht.


[/quote]

My working hypothesis for the moment is the following:
-The default value for the dynamic constant is not needed.
-When default values for dynamic constants are there the Xojo IDE likes to revert the value of the Language property back to default from the english value that I need.

I still think that the default value of the Language property is confusing and should be removed. Ditto for the default value of the dynamic constants.

So how do I remove the default values for all constants for >500 project items in 6 projects? Regex on xml?

As I said previously. If you want to support English make sure you have an English version of your constants. The same goes for every language you want to support.

On a Mac you will then end up with which ever language they have specified in System preferences. If they have more than one they end up with the first matching one in the list that you support. If you don’t have any that match their list then it uses the language specified in the build settings option.

Take the following examples: Say you’re app has constants for German, English and Italian.

If their system has the preferred language as German, so they get German.

If they have French, Greek and Italian specified they get Italian (as it’s the first they have that you can provide)

If they only have French specified then they don’t match any of your languages so it falls back to the Build Setting Language setting. If that is Default than they get the values specified in the constants Default value. If you remove all of these they get nothing.

That language setting is also what you get in the IDE, so if you remove the values you loose the text from your window editors.

@Ian Kennedy: sigh… I have what you describe. And it still doesn’t work properly:

I want to remove the Default Value and not constants for the languages.

Removing the Default Value doesn’t change anything in the IDE. As usual I may be dense but I don’t get what you need the Default Value for or why you need “Default” as language for the IDE.

Default is the language you get if they don’t support any of the other languages that you have listed. In your case on a Mac if you don’t have English or German listed as a preferred language in System Preferences then you with get the text of the Default values.

If you change the build language then you will get that language by default if you support none of them.

[quote=422888:@Emile Schwarz]@ Jason:
I saw German localized Xojo IDE in the past. Does it makes things different ?
Projects built with it displays some menus in German.

I searched hours ago in ash web site to download Xojo, but I do not found any link, so I cannot make more comment on the subject.[/quote]
This is true, the site https://www.application-systems.de/xojo/variante1.html doesn’t list any downloads. You can buy that from there, but no free downloads available.

In past years when I bought a Xojo license from ASH, I even did not get a response, but covered that it has been linked to my Xojo account anyway. For my understanding, since then the only working way to get a license is to buy from Xojo, Inc. directly.

And for localized Xojo GUI, unfortunately Xojo decided to abandon that, but finally it’s a better understanding from reading Language Reference lyrics.