S1.06.2Fragmented-message localization failure设计

拼接片段无法被正确翻译

别名: 字符串拼接 · 片段翻译 · sentence concatenation

概念解释

碎片化消息本地化失败(fragmented-message localization failure)指程序把一句用户可见消息拆成若干独立翻译字符串,再按源语言顺序连接,导致译者无法看到或改写最终句子。每个片段单独译得“正确”,组合后仍可能语序错误、缺少一致变化、标点错位或产生意外空格。

机制

翻译单位一旦小于目标语言的句法依赖范围,冠词、介词、格、数、性和礼貌形式就无法共同选择。代码负责连接,也意味着译者不能移动变量、删除不需要的词或合成自然结构。条件片段还会乘法增长:两个二选一条件已产生四句,继续增加条件会形成更多未被整体审核的组合;批准每个片段不等于批准组合消息。

边界

拼接不是所有场景都错。由平台确实提供的 locale-aware list、person-name 或 address formatter 生成的结构化对象,以及语法上真正独立的 UI 元素,可以分别渲染;纯数据用逗号或空格手拼仍可能违反列表标点、连接词和双向规则。判断标准是结果是否成为需要跨边界协调语法与语用的可见消息。

怎么落地

  • 搜索用户可见文本附近的字符串加法、模板外插接和条件片段,按最终可见消息建立审计清单。
  • 把具有一句话语义的全部词、标点和变量合并为一个可翻译单元;分支应选择完整消息,而非可组合的半句。
  • 对确需组合的数据对象先用 locale-aware formatter 生成对象,再把它作为具名变量传给完整消息。
  • 覆盖所有语言上不同的完整消息 variants 与 selector branches,确保每个可达分支至少一次;非语言状态轴采用风险驱动或 pairwise 测试。母语者检查完整句子的语法、指称和动作含义。

延伸

  • 同组S1.06.1 语序在不同语言中不一致 · S1.06.3 应使用带占位符的完整句模板 · S1.06.4 占位符需要可调换顺序
  • 相邻S1.05 翻译上下文与字符串复用 · S4.04 本地化的持续集成
  • 站内检索string concatenation localization · message fragmentation · sentence-level translation

同组卡片

快捷操作

分享

分享当前页面

ios_share

https://hci.top/zh/handbook/S1.06.2