Localization across multiple apps

I wonder if I can get some hints about localization to use/reuse for any kind of app I can make on Xojo. I’m new to this so any hint or doc pointer is really appreciated :innocent:

What you are looking for is called a Dynamic Constant. Create a Constant in a Module and then you can add multiple representations with one for each language you support. Then in the controls, you replace the text with the full name of the constant prefixed with a hash:

#Module1.kMyConstant

On the users computers, if they are running the specified language, it’ll show up automatically.

2 Likes

Please check out Arbed from Thomas Tempelmann. Creating Localised Strings (Dynamic Constant is an old name, ahem) is pretty painful and Arbed can help there. I recently had to change 200 default language values. With a bit of scripting in Arbed this was a matter of minutes.

Also from Thomas Tempelmann is a utility called Open Lingua which has a better interface than Lingua itself. I have made a version of Open Lingua with a Deepl interface and csv export. Deepl gets me about 80% of translations with a button click. I export the data into csv, clean up the data in Excel. Then I let native speakers check the translations and load everything back into Xojo (Xojo + Alfred).

You could add your points to the feature request of exporting multiple languages: <https://xojo.com/issue/22588> . Having only one language is annoying.

3 Likes

use/reuse for any kind of app

if you have a module with constants you can link it to other projects.
a small symbol should appear in a linked file.