问题标签 [xliff]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ios8 - 使用 Xcode 6、iOS 8、Storyboards 和 xliff 的合理本地化工作流程?
理想情况下,这是我想做的:
- 使用基本的英语本地化在 Xcode 中设置项目。最终我想要英语,比如说我
Localizable.strings
和 Storyboards的荷兰语版本 NSLocalizedString
使用表单的键将代码中的字符串外部化fooViewController.barLabel
,勤奋并为每个键添加适当的上下文注释- 在我的 Storyboard 文件中添加荷兰语本地化
- 将 Storyboard 中的特定标签标记为将在运行时设置且不需要翻译的占位符
- 为情节提要中需要翻译的标签添加注释
- 导出“开发语言”
xliff
文件(点击项目、编辑器/导出本地化...,选择“仅开发语言”) - 在Counterparts或Xliffie 之类的工具甚至基于 Web的工具中打开英文
xliff
文件 - 在键旁边添加实际的英文翻译
fooViewController.barLabel
,然后重新保存 en.xliff nl.xliff
从原始文件创建一个文件en.xliff
并添加荷兰语翻译- 将这两个
xliff
文件导入 Xcode 并让它.strings
为代码中定义的键和情节提要中的键创建荷兰语和英语的适当文件;将新.strings
文件提交到我的源存储库 - 在我的源代码和情节提要中添加、删除和更改键之后的某个时间点,
en.xliff
再次导出“开发语言”作为事实来源 - 使用当前翻译更新
en.xliff
和nl.xliff
文件,使用工具突出显示已添加或删除的键 - 将这些
xliff
文件导入回 Xcode,它会更新.strings
文件,然后我可以签入到我的源存储库
这有意义吗?这是一件合理的事情吗?我想是的,但它不起作用。
以下是我遇到的问题:
- Xcode 不支持第 4 步——该
xliff
格式可以将键标记为translate=no
,但无法在 Xcode 中对其进行注释(理想情况下,Xcode 根本不会导出标记为占位符的键。) - Xcode 不支持第 5 步——无法为标签设置翻译器注释。甚至没有办法设置独立于您在情节提要的标签中放置的占位符文本的键,如果您发现在布置视图时使用Lorem Ipsum填充标签很有用,这将是一个巨大的痛苦。
- 当您进入第 10 步时,Xcode 抱怨
en.xliff
文件中没有指定目标语言。有一种方法可以在 Counterparts 中更改目标语言(或者至少创建一个将目标语言设置为 的新文件EN
),但我找不到任何使用 Xliffie 的方法。 en.xliff
在尝试使用更新的密钥重新导出文件时,Xcode 告诉我"Localization failed reading "[...]/Supporting Files/en.lproj/Localizable.strings, Please address the issue at file location 782"
在哪个字符位置找到了……一个撇号。xliff
如果源.strings
文件包含撇号, Xcode 无法导出文件。什么在实际的F...?!- 第 12 步和第 13 步变得很奇怪,我只是不明白发生了什么。Counterparts 和 Xliffie 都用
fooViewController.barLabel
英文翻译替换了我原来的密钥,看起来他们试图告诉我我没有英文翻译。在尝试将其导入en.xliff
Xcode 时,它告诉我除了新键之外我没有任何翻译,当我继续操作时,它会从en.lproj/Localization.strings
文件中擦除现有的翻译。
这是一团糟。
在无法手动设置键、添加翻译注释或将特定标签标记为不用于翻译的占位符的情况下翻译 Storyboard 中的标签是行不通的。我们已经将每个标签连接到 an@IBOutlet
并将其翻译设置为viewDidLoad()
with NSLocalizedString
。
Xcode 在尝试导出.strings
包含撇号乞丐信念的文件时窒息。
似乎还有一个潜在的假设,即如果 Xcode 中的“开发语言”是英语,那么开发人员负责英语翻译。我可以想象除了一个人的独立开发者商店之外没有任何背景是真实的。
最后,我似乎也遗漏了一些关于我尝试使用的工具如何构建其工作流程的信息。如果有人能启发我,我将不胜感激。
是否有人设法构建了一个可行的本地化工作流程,其中开发人员不负责对“开发语言”的最终编辑控制,并且.strings
签入存储库的文件是事实的来源?
symfony - Symfony 2 - 翻译不起作用(xliff)
我已经阅读了大量关于 Symfony 2 翻译的答案和教程,但我仍然没有让它工作。没有显示错误,但消息没有在 twig 模板中翻译(也没有通过测试 $this->get('translator')->trans('...') )。xliff 文件似乎已加载,因为如果我故意添加错误的字符,标记 Symfony 会给我一个错误。
这是我的设置:
配置.yml
参数.yml
messages.en.xliff 的内容
即使运行后它仍然不起作用
在我的树枝模板中(它是一个包含的模板......)
任何想法 ?PS:我没有从 liip-imagine Bundle 中安装其他 Bundle。任何帮助将不胜感激!
android-studio - Android Studio 国际化 - 对 XLIFF 标准的 IDE 支持
用于交换和共享翻译数据的行业标准文件格式是 XLIFF 类型。这种格式的文件在全球范围内被翻译人员、翻译公司、开发人员,甚至是简单的用户使用。XLIFF 文件实际上是基于标准规范创建的 XML 文件,并且存在能够读取和构建此类文件的程序和应用程序。你可以在这里找到更多关于它的信息
我的问题是 android studio 是否支持 XLIFF 文件,所以我可以轻松地将其交付给语言公司,然后他们可以将其交付给我进行导入?苹果的 xcode 6 有这个功能。
forms - 使用 Symfony2 上的翻译域翻译表单字段
我在 app/resources/translations/menus.en.xliff、messages.en.xliff、user.en.xliff 上有一个翻译目录...
我的表单结构:
这种方法是有效的,但不是最好的。
我不想在所有表单字段上重复 'translation_domain' => 'forms'。
我正在尝试通过 configureOptions 方法传递翻译域但失败了。
但是,当我在messages.en.xliff 上写下所有的翻译时,一切正常。我该如何解决?
ios - Should app extensions have their own Localizable.strings?
Currently using Xcode 6.3
In our (open source) application we have two targets:
- Our main application 'Client'
- An action extension 'ShareTo'
Both targets have localized strings via NSLocalizedString()
.
When I "Export for Localization", I see one <file>
extension in the exported XLIFF file named Client/Localizable.strings
that contains the strings for both the main application and the app extension.
Same results when doing an export from the command line via xcodebuild
.
I am very sure that this export behavior changed over time: previously the strings from the app extension would end up in a separate Extensions/ShareTo/Localizable.strings
entry in the XLIFF file. Not combined in Client/Localizable.strings
.
So now I am wondering, is this new and correct behavior? Does this mean that app extensions lookup strings in their parent's bundle?
xcode - 如何将 XLIFF 转换为 STRINGS 文件以进行本地化?
Xcode 现在以 XLIFF 格式导出本地化文件,这很棒。有时我仍然想处理老式的字符串文件,因为它们在早期版本的 Xcode 中很常见。是否有转换工具可以从单个 XLIFF 文档中提取单独的字符串文件?所有信息都包含在类似 XML 的 XLIFF 文档中,所以应该有一个提取例程?!
谢谢你的帮助!
symfony - Symfony 2.6 - 使用 MySQL 翻译字符串
我是 Symfony 2 的新手,我正在尝试翻译多个字符串,如菜单和另一个静态内容,Symfony 建议使用 Xliff。我希望网络管理员可以在后端添加或删除语言,而不是编辑代码。我知道我该怎么做,但我正在寻找一个允许像我想要的那样管理语言的包。
是否有任何包允许从后端管理语言并为您在前端动态使用的元素添加翻译?
先感谢您!
symfony - symfony2:如何管理你的翻译
在我的 symfony2 应用程序中,我已经设置了更改语言环境所需的内容。现在我可以使用 bundle 的 trans 功能并在 app/resources/translations 下生成语言文件
这很好用,但我觉得手动编辑 yml 文件效率不高,建议使用绝对不友好的 xliff。
另外,在协作环境中,我看不出这如何正常工作。我不确定翻译人员是否喜欢 git 命令。
对于那些已经实施了翻译流程的人:你们是怎么做的?你是怎么组织的?
非常感谢
xcode - NSLocalizedString 应该直接用于导出 XLIFF 吗?
我曾经使用NSLocalizedString
自定义功能。
例如,要访问Profile.strings
,我定义了这个函数:
func LocalizedProfile(key: String, comment: String?) {
NSLocalizedString(key, tableName: "Profile", comment: comment ?? "")
}
并且,这样调用:
let localized = LocalizedProfile("Submit", comment: "For registration")
除了导出 XLIFF 之外,此方法工作正常。
在 Xcode 6.3.2 上,执行Export for localization
会抛出错误:
为了获取错误信息,我通过命令行执行:
xcodebuild -exportLocalizations -localizationPath ./xliff -project MyApp.xcodeproj -exportLanguage ja
而且,我收到了这个错误:
Bad entry in file /Users/mono/Documents/Git/MyApp/Localization.swift (line = 29): Argument is not a literal string.
定义自定义本地化方法对我非常有用,但我也想使用导出 XLIFF 功能。
有什么方法可以解决这个需求吗?