用于游戏本地化的翻译表,上线前就检查好。
每个键一行,附上下文和给译者的最大长度,每种语言一列。每条译文都带有状态,过长或丢失占位符的文本会在输入时被标出,整张表可以导出为 CSV、JSON、.po 和 XLIFF,供 Unity、Unreal 和 Godot 使用。

翻译表就在项目里
把任意电子表格变成翻译表,或者从现成的表开始。Nodary 会根据表头推断各列用途,例如 Key、Context、Max length、English,或 Godot 风格的 keys、en、fr,点一下就能把一种语言加为新列。这张表是一份文档,与它的文本所出自的对话、角色和系统在同一张地图上,也能像其他文档一样与它们链接。
- 输入 / 并选择“翻译表”,或把已有表格变成翻译表
- 根据表头推断各列用途,再由你确认
- 逐单元格协同编辑:两位审阅者编辑不同单元格时绝不会互相覆盖
- 阿拉伯语和希伯来语等从右到左的语言按从右到左书写
它不做什么 对话台词不会自动进入翻译表:键需要手动输入、粘贴、从表格导入或由智能体添加。一张表最多 50,000 个单元格,所以大型游戏会把文本分到多张表中。

每条译文都有状态,也都经过检查
译文的状态可以是缺失、草稿、已审阅、已定稿;如果写好之后源文本发生变化,就变为源文本已改。源文本变化时不会改写任何内容:每条译文都记得它所对应的文本。输入时,Nodary 会标出超出字符限制(按玩家看到的字符计)的文本、丢失或多出的占位符、仍是源语言的文本,以及首尾多余的空格。
- 每种语言的进度,可筛选出待处理或有问题的文本
- 译者面板:源文本、上下文、字符计数和需保留的占位符
- 把选中的内容标为已审阅或已定稿,或在源文本小改后保留状态
- 识别 ICU、i18next、Unity、Unreal 和 printf 形式的占位符,以及标记标签
它不做什么 没有翻译记忆库、术语库或内置机器翻译。译文来自你的译者,或来自你委托的 AI 智能体,智能体的成果以草稿形式提交。
- 上下文
- Banner when a storm forms. {seconds} counts down
- 源文本(英语)
- Storm in
{seconds}s. Get to the stilts.需保留{seconds}
38/44 个字符
- 占位符:缺少 {seconds}
[Šţóŕɱ íñ {seconds} š. Ĝéţ ţó ţĥé šţíĺţš. ~~~~~~~~~~~~]给引擎和译者的文件,以及给构建流程的数据源
导出包含所有语言的 CSV 供 Godot 和 Unity 使用,导出 JSON 供 i18next 和引擎使用,导出以键作为上下文的 gettext .po 供 Unreal 和 Godot 使用,导出 XLIFF 1.2 供翻译工具使用,其中带有每条文本的状态、长度限制和上下文。伪本地化语言能在任何译文出现之前,就在你的界面中显示未翻译或被截断的文本。如果构建不该等任何人,它可以用只读数据密钥从固定地址自行拉取这张表。
- 导入 XLIFF 1.2 或 2.0、.po、JSON 或 CSV,按键匹配,并可预览
- 文件中的空译文绝不会清除表中已有的译文
- 单一语言导出为 JSON、.po 或 XLIFF,或全部语言导出为 CSV;final=1 只保留已定稿的文本
- 表格未变化时返回 304,每个密钥每分钟最多 120 次请求
它不做什么 复数形式以 ICU 消息写在同一个单元格里:导入时会跳过 .po 文件中的复数条目。数据源只读;不会通过它向 Nodary 写回任何内容。

智能体填写翻译表,而不改写整张表
通过 MCP 连接后,智能体用 get_localization 读取翻译表:每种语言的进度和仍需处理的文本,以及它们的上下文、长度限制和问题。set_translations 按键写入,除非你要求它直接批准,否则都以草稿形式写入;它还能添加键或语言列,并报告哪些文本过长或丢失了占位符。同时在编辑这张表的人会保留他们的单元格。
连接智能体你的提问把 Saltmarrow 翻译表中缺失的德语文本以草稿形式补齐。保留每个占位符,不超过每条的最大长度,并告诉我哪些还有问题。
search_documentsget_localizationset_translations
常见问题
如何把游戏文本导出到 Unity、Unreal 或 Godot?
打开翻译表的“导出”菜单。CSV 包含所有语言,先是一列键,然后每种语言一列,正是 Godot 和 Unity 读取的格式;gettext .po 包含一种语言,以键作为上下文,供 Unreal 和 Godot 使用;JSON 把一种语言输出为扁平的键值文件,供 i18next 和引擎使用。导入本身在你的引擎中完成,使用引擎自带的本地化工具。
Nodary 会帮我翻译文本吗?
不会。没有翻译记忆库,也没有内置的机器翻译服务。你的译者在表中工作,或通过 XLIFF 在他们自己的工具中工作;你连接的 AI 智能体也可以写译文,这些译文会以草稿形式提交,等人审阅。
源文本改变后,译文会怎样?
每条译文都会保存它所对应的源文本的指纹。源文本改变时,它的译文显示为“源文本已改”,不会改写任何内容。如果只是小改,“源文本改动很小”会让它们保持原有状态。
我们的构建能自动下载文本吗?
可以。任何成员都可以在个人资料中创建只读数据密钥,作用于整个工作区或一个项目,翻译表的“数据源”按钮会列出它的地址。构建可以拉取 JSON、.po 或 XLIFF 格式的单一语言,或 CSV 格式的全部语言,final=1 会排除尚未定稿的内容。
检查能识别哪些占位符和标签?
ICU 消息(包括 plural 和 select)、Unity 和 Unreal 写法的 {name} 和 {0}、i18next 的 {{name}}、printf 形式(例如 %s、%d 和 %1$s),以及 <b> 或 <color=#f00> 这样的标记标签。长度按玩家看到的字符计算:一个带重音的字母或一个 emoji 算一个字符,标签不计入。
译者可以把文件发回来吗?
可以。导入 XLIFF 1.2 或 2.0、gettext .po、JSON 或 CSV,最大 8 MB。译文按键匹配,表中没有的键会被列出而不是被添加,应用前的预览会显示每处更改,基于旧源文本完成的译文会以“源文本已改”状态导入。
把你的文本放到你的游戏旁边。
免费开始,输入 / 并选择“翻译表”,再粘贴你的第一批键。无需绑卡,无需安装。
两名成员、十份文档以内免费。无需绑卡。