Phrase Strings 集成(在 Strings 界面中称为 )连接了 Phrase TMS 和 Phrase Strings。该集成支持工作级和项目级同步。
先决条件
-
需要 TMS 和 Strings 应用程序的访问权限
-
TMS 项目中使用的语言代码必须与 Strings 工作中的区域代码匹配。
-
Strings 项目的默认语言必须与 TMS 项目中定义的源语相同。
不支持 Strings 键 翻译状态。在导入 TMS 之前在 Strings 中标记为 的键,如果译文未更改,则可以作为 返回到 Strings。
导入 Strings 工作后在 TMS 中创建的工作句段数在以下情况下可能与原始键数不同:
Strings 键可以包含 HTML 实体。在 TMS 中设置连接器时,启用的选项以保留 HTML 实体,而不仅是在 TMS 中显示相应字符。
Strings 键原文中存在的首尾空格不会在 TMS CAT Editor 中显示。这些空格会保留在骨架文件中,并在工作同步回 Strings 时重新插入到原文和译文中。这可能会影响在 Strings 中配置的字符限制验证,因为在翻译过程中,空间计数不会反映在 TMS 编辑器中。
使用连接器,可以用 APC 监控多个项目和文件。每个项目都需要使用一个 APC 中单独监控。
连接器使用工作区域注释将有关相应 Phrase TMS 项目的元数据附加到 Strings 工作和工作区域中。用于列出工作区域注释的 Phrase Strings API 端点会检索此元数据。当 include_annotations 参数设置为 true 时,用于列出工作译文区域的端点也会包含此元数据。带注释的工作包含诸如 tms_project_id 和 tms_in_progress 之类的字段,这些字段允许在链接的 Phrase TMS 项目中跟踪 Strings 工作的状态。
TMS 不支持在项目中将同一区域同时用作原文和译文语言。例如,如果 Strings 工作使用 en-US 同时作为原文和译文语言,则 en-US 译文无法导入到 TMS,且整个工作无法标记为已完成。在 Strings 中创建将同步到 TMS 的工作时,请勿选择原文区域作为译文区域。
将包含 ICU 信息或复数形式的 Strings 工作发送到 TMS 进行翻译时,在 XLIFF 2.0 文件导入设置或 TMS 项目模板中启用选项。
连接器有多种用例:
-
TMS 项目经理可以直接在 TMS 系统中添加线上存储库中的文档。
-
设置 Phrase TMS 提交页面,允许提交者直接从 Phrase Strings 添加文件请求翻译。
-
使用 TMS 自动项目创建 (APC),当检测到监控的文件或文件夹的最后修改日期发生更改时,自动创建新项目。
-
对于工作级和项目级同步,监控的项目路径必须一直选择到工作文件夹(例如 space/project/main/jobs)。
-
对于 Job Sync,APC 由以下工作更新触发:
-
添加键或更改现有键
-
Strings 中修改工作的截止日期
注释
工作重新打开不算 APC 监控的更新。
-
-
对于项目级同步,APC 由以下内容触发:
-
新增的键
-
对现有键的更改
-
-
如果在设置 APC 时选择,远程线上存储库不仅可以监控原文,还可以监控译文更新。
如果选择监控译文更新,在线上存储库中对译文副本所做的任何更改都将自动更新 Phrase TMS 中的翻译记忆库库。
-
如果选择了,则在相关 APC 项目使用的 TMS 翻译记忆库中自动更新 Strings 译文的键文本更改。
-
-
TMS 连接器 API 可用于自动化用户界面手动执行的步骤。Webhook 可用于向第三方系统发送(如工作状态更改等事件)。
页面提供了使用 Phrase Strings 连接器的所有工作同步设置 (APC) 的集中视图。它包括直接在 Strings 中创建的同步以及在 TMS 中配置的同步,并包含相关信息。
在 页面中,Strings 中的管理员和项目经理用户可以 配置新的工作同步、编辑现有工作同步(包括其可用的/不可用的状态)或删除它们。
可以通过使用 菜单中的相关选项来编辑或删除现有工作同步。所有更改都会在 Strings 和 TMS 之间同步。删除工作同步会移除 TMS 中相应的 APC。
页面可通过左侧导航菜单中的 和 访问。
注释
如果 TMS 中定义了必填的 自定义字段,则不支持从 Strings 设置 job sync。
要通过基本配置在 Strings 和 TMS 之间设置新的 job sync,请在 Strings UI 中执行以下步骤:
-
在 页面中,选择 集成旁边的 配置。
显示 页面。
-
点击 + 新建 Job Sync。
显示 窗口。
-
提供 ,并从 下拉菜单中选择要连接到 TMS 的 Strings 项目。
仅可包含具有相同语言组合的项目。
-
(可选)选择要使用的 。所选 TMS 项目模板必须与分配的 Strings 项目中定义的语言集匹配。
同步的工作将添加到从所选模板创建的 TMS 项目中。
-
如果选择 ,则会根据所选的 Strings 项目自动创建 TMS 项目模板。
-
-
选择要在 TMS 中创建的项目 。
-
默认选项。
-
每次在 Strings 工作中检测到更改时,都会创建一个新的 TMS 项目。
-
-
在 部分,指定 Strings 导出设置,以控制如何将来自 TMS 的译文导出回 Strings。
-
更新 Strings 中现有的译文。
-
自动将工作在 Strings 中标记为已完成。
-
如果译文未更改,标记为 未验证 的键将在 Strings 中自动变为已验证。
-
-
如果需要,点击 高级选项 以显示其他导出选项。
-
一旦译文同步回,将特定区域标记为已完成。
-
确保 TMS 中的新键在 Strings 中被创建,并更新现有键。
-
如果原文/源语在导出后在 Strings 中发生了更改,则防止覆盖译文。
-
-
点击保存。
新的 Job Sync 配置将以非活动状态添加到 列表中。使用 列下的开关来启用 Job Sync。
提示
如需更高级的配置,请使用 Phrase TMS 设置来设置连接器。
每当使用自定义映射时,如果需要进行任何更改,则必须在 TMS 的连接器中应用。
某些公司已自动创建了 Phrase Strings 连接器,使用的是该公司的 Phrase Platform 身份。在手动创建连接器之前,请检查 页面上的连接器列表。自动创建的连接器使用登录身份在服务器端进行身份验证,而不是使用手动输入的访问令牌。
连接器在创建后完成初始同步时显示状态 ,随后更改为 。每当对连接器配置进行任何更改,或者保存连接器设置页面时(即使没有实质性更改),也会触发 状态。当连接器显示 时,它不能用作 Phrase TMS 中创建工作的原文/源语。在创建工作之前,请等待状态更改为 。
-
在设置
页面,下拉到部分。
-
单击连接器。
页面打开。
-
点击 新建连接器。
页面随即打开。
-
将类型更改为并为连接器提供一个名称。
-
输入从 Strings 获取的账户 ID 和访问令牌。
-
单击测试连接。
-
如果成功,按钮旁边会出现一个小勾号。
-
-
选择要导入到 TMS 的项目。
如果未导入译文键,且在 XLIFF 2.0 文件的中选择了句段 XLIFF,则可以进一步切分 XLIFF 2.0 文件。
-
选择导出模式。
-
如果指定了此项,请选择一个默认文件夹(仅在保存后才可操作)。
-
提供了,如果需要可以自定义。确保在连接器配置中,每个 Strings 区域仅有一个映射条目对应单个 TMS 区域。语言映射更改不会影响现有工作。
该列表每次分页显示五个项目,项目按字母顺序排序;首先是 A-Z(大写),然后是 a-z(小写)。
-
点击保存。
连接器添加到了页面的列表中。
删除连接器
要删除连接器:
注释
如果连接器仍链接到项目中的未完成工作(包括位于回收站中的工作),则无法删除该连接器。尝试删除此类连接器会返回“删除连接器失败”错误。
解决方法:打开与该连接器关联的项目,并完成或删除所有剩余的工作。前往 ,并将其清空以移除仍链接到该连接器的工作。重试删除连接器。
支持的集成:
从 Strings 到 TMS 传输项目参考:
-
键名称
从 Strings 传输,并在 TMS CAT Editor 上下文注释窗口中显示为上下文键。
-
键描述
从 Strings 传输,并在 TMS CAT Editor 的上下文注释窗口中显示为上下文注释。
-
键字符最大长度
从 Strings 传输,并在 TMS CAT Editor 的上下文注释窗口中显示。
要通过 APC 监控 Strings 中的译文更新,参照以下步骤:
触发 APC 监控后,对 Strings 中译文内容的更改将自动保存到 Phrase TMS 翻译记忆库。
通过修改 Phrase TMS 编辑器中的译文句段,可以覆盖翻译记忆库更新。这些更新将在 Phrase TMS 工作完成后导回 Strings。
使用 APC 时的键删除行为
在 Strings 中删除一个已包含在工作中的键,不会影响通过一次性手动导入创建的 Phrase TMS 工作。该工作保持不变,直到手动重新导入。
当 APC 监控处于可用的状态时,Phrase 会在每次轮询或 webhook 触发时比较内容哈希,并将任何更改(包括键删除)视为触发重新同步的更新。
-
在 模式下,重新同步会更新现有的 Phrase TMS 项目或工作,以匹配 Strings 中的当前内容,因此已删除键的内容会从该工作中移除。
-
在 模式下,重新同步会创建一个新的 Phrase TMS 工作版本,反映删除后的内容,而之前创建的工作版本保持不变。
下表概述了用户在使用 Strings 集成时可能遇到的常见问题,并提供了可能导致故障的原因和解决方案。
|
问题 |
原因 |
解决方案 |
|---|---|---|
|
TMS 工作中与 |
键名称包含不支持的字符(例如空格) |
尽管出现警告信息,用户仍然可以处理翻译内容并将其导回 Strings。 |
|
TMS 中的键为空 |
工作中包含没有相应源语言原文的键 |
可以:
|
|
APC 未创建项目/处理新工作 |
语言代码不匹配 |
确保 Strings 中的语言代码与 TMS 项目中的语言代码匹配。 将 APC 设置为连续项目时,项目创建后对项目模板所做的任何更改都将不适用于现有项目。因此,必须直接对连续项目进行更改。 |
|
APC 认为工作/区域已处理 |
如果在开始工作后修改了项目模板 / APC 设置,则可能在 APC 历史记录中被视为已处理。因此,可能需要更新工作才能使其符合下一个迭代的条件。 可以:
|
|
|
|
减少 APC 数量,降低监控频率。 |
|
|
Strings 项目中的现有键在 TMS 工作中缺失 |
特定的键未添加到 Strings 工作中 |
将键添加到 Strings 工作中,并从 TMS 中的在线存储库重新导入工作 |
|
尝试导入/导出工作时出现“Could not authenticate”错误。 |
在自动创建的“created by Phrase Strings”连接器上,访问令牌已过期或被撤销 |
在 TMS 中创建一个新的 Phrase Strings 连接器,将现有的 APC 重新链接到新连接器,并触发监控。 |
|
无法通过 APC 或手动找到要导入或重新导入的 Strings 工作,即使它未显示为已完成。 |
该工作已被导入到一个 TMS 项目中,该项目后来被移至回收站,但未完成或清除。因为该项目在技术上仍处于进程中,所以该工作不会被释放以供重新导入。 |
在进一步排查故障之前,请检查 Strings 中工作区域旁边的 ,以验证它是否已导入到 TMS 中。如果关联的项目在回收站中找到,请恢复该项目并直接继续工作;或者,如果不需要该项目,请取消工作和项目,或通过 API 使用 |
|
Job Sync 无法保存,并出现“ |
Job Sync 在保存时直接根据 TMS 原生支持的区域 列表验证 Strings 项目中的译文区域。此验证不考虑自定义连接器区域映射。 |
对于译文区域不受 TMS 原生支持的 Strings 项目,请直接在 TMS 中使用 Strings 连接器,而不是从 Strings 使用,并配置自定义语言映射。 |