【发布时间】:2014-05-14 09:45:02
【问题描述】:
我已经基于 Automator 工作流程设置了一个 OSX 服务,该工作流程包含(以及其他)Obj-C 操作。
我已成功本地化 Obj-C 操作,但 我无法本地化服务菜单条目。
Services implementation guide 说必须为每个本地化创建一个 ServicesMenu.strings 文件。其他文档,例如this,说同样的话,this SO entry 在回答中建议应用一些控制台命令来刷新系统文件,但我害怕在不理解的情况下这样做。
我在 Obj-C action 的 Xcode 项目中创建了本地化的 ServicesMenu.strings 文件(因为 Automator 没有本地化功能),但这些文件肯定是在错误的捆绑包中。
问题是我不知道将这些文件放在哪里。
任何帮助表示赞赏。
编辑:
One of the links cited above 说:
添加本地化 ServicesMenu.strings 文件
要本地化此文本,您需要将名为 ServicesMenu.strings 的 UTF-16 编码字符串文件添加到您的应用程序项目或 Automator 工作流捆绑资源中(有关如何执行此操作的详细信息如下)。对于您提供的每个服务菜单项,此字符串文件将包含一个条目,该条目使用默认文本作为键,并使用翻译后的文本作为值。对于您希望支持的每种语言,您将在项目资源的特定语言项目 (.lproj) 目录中提供翻译后的 ServicesMenu.strings 文件。
...
如果您从 Automator 创建的工作流提供服务,则需要手动将字符串文件和 .lproj 资源目录添加到工作流包。您可以在 ~/Library/Services 下的主目录中找到 Automator 创建的工作流包。
我确实做到了这一点,但是本地化不起作用。
下面我添加了我的 Info.plist 内容、文件夹结构和 ServiceMenu.strings 文件内容。
【问题讨论】:
标签: macos localization automator