Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

OSX: how to localize the name appearing when the mouse flies over the app icon in the dock?

When the user's mouse flies over the app icon in the dock, the name of the app appears on the app icon.

According to the tests I just performed, it seams that the name which appears corresponds to the "Product Name" defined in the project target (in "Build Settings" menu).

The question is: how can I localize this target product name in order to have my app name in the correct language when the user puts its mouse over my app icon ?

Or is there any other method to localize the app name which appears when the user puts its mouse over my app icon ?

Thanks !

like image 449
Regis_AG Avatar asked Dec 29 '12 18:12

Regis_AG


2 Answers

After so many years this problem still troubled me (and likely thousands of other programmers) for more than an hour.

Given that the link in the accepted answer above by Daij-Djan is already dead (Updated link is now at https://kb.applingua.com/2015/10/how-to-localize-app-names/), I'm writing yet another answer with my added cases.

Make sure you have done the following:

  1. Info.plist is not ticked for your target
  2. Info.plist has "Application has localized display name" set to YES
  3. Info.plist has "Bundle name" (CFBundleName) and its value is "$(PRODUCT_NAME)" (Don't ask me why. If I set this to some other value, it doesn't work.)
  4. Info.plist has no entry of "Bundle display name" (CFBundleDisplayName)
  5. InfoPlist.strings is ticked for your target
  6. InfoPlist.strings is ticked for all languages (in my case, Base and English only.) at least the Base language.
  7. InfoPlist.strings has both "CFBundleDisplayName" and "CFBundleName" entries

The above worked for me. I was primarily missing the "$(PRODUCT_NAME)" value part for the past hour.

If that still doesn't work, you should try creating a brand new XCode project and try to name the app into something else by following the above guides. Then, compare the Info.plist and your real project's Info.plist and see what's the difference. That's exactly how I find out about the "$(PRODUCT_NAME)" requirement.

like image 156
ewcy Avatar answered Nov 15 '22 10:11

ewcy


have an info InfoPlist.strings file in which you have localized CFBundleDisplayName, you can also localize the NSHumanReadableCopyrigh et al.

It is indeed required to follow strictly the steps mentioned in this article: http://kb.applingua.com/2011/10/how-to-localize-app-names/

like image 35
Daij-Djan Avatar answered Nov 15 '22 09:11

Daij-Djan