Unwanted language localization

I was surprised to see on the Mac App Store that my app was localized to Japanese, German, and a few other languages, including Bengali! I looked in my resources folder and sure enough I see these folders:

bn.lproj
de.lproj
en.lproj
fr.lproj

That was with Carbon and RS2012R2.1. I’ve now built with Xojo Cocoa b21 with the same result. I haven’t added any localizations myself (default is English). I do have MacOSLib in my project, could that be the culprit? Does anyone know why these folders are there (what project settings would do this)? And more importantly, how to get rid of them? Thanks.

you CAN just delete the dirs from your bundle
and FWI on OS X you can localize after compiling by adding suitable dirs & files :stuck_out_tongue:

As for why they are there usually the culprit is dynamic constants

It sounds like there might be partial translations from a third party module, maybe the MacOSLib.

It would take you a long time to go through each constant and strip the translations, so the only option I can see is to delete the unwanted translations after build time.

Whats is in the files ?
That would make it easy to search for

I opened the bn.lproj file Localizable.strings and here is a sample:

??“CocoaMenuItemRedo.LocalizedText” = “??? ???”;
“CocoaMenuItemCut.LocalizedText” = “???”;
“CocoaMenuItemCopy.LocalizedText” = “???”;
“CocoaMenuItemPaste.LocalizedText” = “???”;
“CocoaMenuItemDelete.LocalizedText” = “??? ???”;
“CocoaMenuItemSelectAll.LocalizedText” = “?? ???”;
“CocoaMenuItemEditLink.LocalizedText” = “???”;
“MenuItemFormatMenu.LocalizedText” = “???”;
“CocoaMenuItemList.LocalizedText” = “???…”;
“MenuItemViewMenu.LocalizedText” = “???”;

[quote=9258:@Jonathan Ashwell]I opened the bn.lproj file Localizable.strings and here is a sample:

??“CocoaMenuItemRedo.LocalizedText” = “??? ???”;
“CocoaMenuItemCut.LocalizedText” = “???”;
“CocoaMenuItemCopy.LocalizedText” = “???”;
“CocoaMenuItemPaste.LocalizedText” = “???”;
“CocoaMenuItemDelete.LocalizedText” = “??? ???”;
“CocoaMenuItemSelectAll.LocalizedText” = “?? ???”;
“CocoaMenuItemEditLink.LocalizedText” = “???”;
“MenuItemFormatMenu.LocalizedText” = “???”;
“CocoaMenuItemList.LocalizedText” = “???…”;
“MenuItemViewMenu.LocalizedText” = “???”;
…[/quote]

That would be Charles’ doing.

Yes, Macoslib has lots of languages in its standard menus and they get carried over.

Thanks. Assuming they’re not all in one place (I couldn’t find it if they are), rooting them out will be a problem because the next time I update MacOSLib they’ll return. So it seems the easiest solution is to open the Xojo build and remove all but en.lprj from the Resources folder. I don’t much about scripting, I’m afraid. Could someone give me a hint where to start on how to get this done in a post-build script?

something like this:

dim dest as string
dest = CurrentBuildLocation +"/" + chr(34) + CurrentBuildAppName + ".app/Contents/Resources/"  + chr(34)
call doshellcommand("rm " + dest + "bn.lprog")
call doshellcommand("rm " + dest + "de.lprog")

etc.

Thank you very much.