翻译

翻译 react-i18next 文件,然后检查每一行

react-i18next 文件混合了纯文本、{{count}} 变量、_one/_other 复数键和 <Trans> 标记,如 <strong>。丢失其中任何一个,屏幕将显示原始键或空名称。KAERIS 会翻译 locales/en/translation.json,保留所有内容,并向您显示需要仔细检查的行。

KAERIS 翻译了此页面,并通过回译检查了每一行。尚未经过母语人士审阅。 英文原文

复数键和 {{count}} 会被完整保留

每个复数键都保留其后缀,每种形式都有自己的词:单数用 Eintrag,复数用 Einträge。

之前locales/en/translation.json
{
  "welcome": "Welcome back, <strong>{{name}}</strong>!",
  "cart_count_one": "You have {{count}} item",
  "cart_count_other": "You have {{count}} items",
  "save": "Save changes"
}
之后locales/de/translation.json
{
  "welcome": "Willkommen zurück, <strong>{{name}}</strong>!",
  "cart_count_one": "Du hast {{count}} Eintrag",
  "cart_count_other": "Du hast {{count}} Einträge",
  "save": "Änderungen speichern"
}

KAERIS 的处理方式

问题

<Trans> 标签会保留吗?

是的。值内的标签,例如 <strong> 或 <0>,会被计为变量。缺少一个标签会标记该行。

那复数形式更多的语言呢?

俄语、波兰语或阿拉伯语需要 _few 和 _many。添加这些键,KAERIS 就会翻译它们;如果缺少某种形式,检查就会提示。

免费吗?

是的,无需账户:每个文件 10,000 个字符,每次运行最多 8 种语言。免费的 API 密钥可将文件限制提高到 50,000 个字符。一次性付费 79 美元,使用您自己的 OpenRouter 密钥;月度套餐起价为 19 美元。价格

如何将其集成到仓库中?

pip install kaeris,然后 kaeris init --preset react-i18next 会写入设置,接着运行 kaeris translate,无需任何标志。文档