选择 Mac OS X 的语言

选择 Mac OS X 的语言

启动程序时,除其他事项外,它会检查 Mac OS X 的语言和文本设置并确定工作语言。“如果程序支持列表中的语言,它将用于程序中的菜单和消息。如果不支持您的第一语言,将使用第二语言”。

如何使程序仅对列表中的某种(第二种)语言具有吸引力?

例子:

  • 整个系统以英语运行,当您启动“程序”时,它会以英语运行并且不懂俄语。
  • 整个系统使用俄语,如果你运行一个“程序”,它会使用英语和俄语。

需要英语系统,但“程序”需要俄语。

“语言切换器”不起作用,因为默认情况下它只有英语。 谢谢-

答案1

我的.bash_profile 中有以下两个函数:

# default language order: German, Swiss German, Swiss French, French, ...
langreset() { defaults write NSGlobalDomain AppleLanguages "(de, de-CH, fr-CH, fr, en, es, it, en-US)"; }
langfoo() { defaults write NSGlobalDomain AppleLanguages "($1, de, de-CH, fr-CH, fr, en, es, it, en-US)"; }

第二个函数的逻辑明显存在漏洞,但效果还不错。如果我想启动意大利语应用程序,我会输入

langfoo it
# run the app, either as a unix command, 
# double-click, QuickSilver, "open /path/to/app"...

# To return to the default language order, type
langreset

这不会修改 LANG shell 环境变量,但 unix 程序似乎可以很好地处理新语言。如果您不想通过命令行进行操作,您当然可以将这些命令包装在 AppleScript 中,将其变成应用程序,然后以此方式启动它。Applescript 可以通过一个小对话框提示输入。

如果您希望某个特定的应用程序始终以一种特定的语言启动:

defaults write ch.sudo.cyberduck AppleLanguages "(Dutch,English)"

您可以通过搜索 ~/Library/Preferences/ 找到应用程序首选项(即 ch.sudo.cyberduck)文件

答案2

编辑:

在 Finder 10.6.4 中不再支持切换单个应用程序。

“推荐的解决方法”是在应用程序之前切换语言。如果语言切换器不起作用(并且它从今年 2 月起就开始支持俄语!)您可能必须手动切换。

据我所知,语言切换器应该适合您。

答案3

语言切换器只是将这样的 AppleLanguages 数组添加到应用程序的属性列表中:

defaults write com.apple.TextEdit AppleLanguages -array ru

您可以使用 -AppleLanguages 参数暂时使用另一种语言打开应用程序:

/Applications/TextEdit.app/Contents/MacOS/TextEdit -AppleLanguages '(ru)'

您可以使用 查看标识符列表defaults read -g AppleLanguages

相关内容