(For HighSierra )Is there a way to set CFBundleAllowMixedLocalizations to false
Opened this issue · 3 comments
Original report by me.
Currently gets created as true, but if user on HighSierra and configured OSX to use a preferred language that is not English then java applications menu bars do not work - see http://blog.jthink.net/2017/09/fix-for-osx-high-sierra-breaking.html
Can i use appbundler to configure this as false, I could not see a way
Sorry I realized that you dont actually add this key, i had a script amending the Info.plist file created by appbundler and adding in the following
CFBundleHelpBookFolder
SongKongHelp
CFBundleHelpBookName
com.jthink.songkong.Help
CFBundleAllowMixedLocalizations
so i can fix this, but is there way I could configure these entries within AppBundler instead of using my hack
Hi IJabz, thanks for the pointer to the CFBundleAllowMixedLocalizations fix - I'd been searching for a workaround to this problem! Although because of the side-effects with the main menu text I wonder if it would be a good idea to keep this solution in the scripts and outside of appbundler itself.
For another app I use the PListBuddy command-line tool on the mac to manipulate the Info.plist from a script. I think you might be able to use something like the following:
#!shell
/usr/libexec/PlistBuddy filename.plist -c Set :CFBundleAllowMixedLocalizations false
Currently appbundler doesnt add at all, I think in normal circumstances it should add to true as you would want this to fix https://bugs.openjdk.java.net/browse/JDK-8019464, but for time being want to be set to false as English menu text lesser of two evils. Seems to be the kind of thing that should be in AppBundler rather than having to use another tool but yes in meantime PlistBuddy would work for me, thanks I didnt know about it.