跳到主要内容

翻译

备注

从 v1.20.0 开始,translate 命令已从 @logto/cli 中移除,并作为独立的 @logto/translate 包在 Logto monorepo 中维护。请参考 translate CLI 获取更多详情。

使用 CLI 管理 i18n 翻译。这些命令适用于想要为 Logto 做出贡献的开发者。如果你只是想使用自定义翻译的 日志 (Logto),请参考 本指南

同步键

假设我们对 phrases 包的 en 文件夹中的翻译键进行了一些更改。我们想将这些更改同步到 pt-BR 文件夹。运行以下命令以同步翻译键和文件结构:

pnpm cli translate sync-keys --target pt-BR

此命令将从源语言文件夹(默认情况下为 en)读取所有翻译键,并将其同步到目标语言文件夹(在此示例中为 pt-BR)。

  • 如果目标语言文件夹不存在,将自动创建;
  • 如果目标语言文件夹已存在,将更新新键并删除过时的键。

对于每个翻译键:

  • 如果目标中缺少某个键,将添加该键并附上注释以指示该短语未翻译(标记为 /** UNTRANSLATED */);
  • 如果基线中缺少某个键,将从目标中删除该键;
  • 如果基线和目标中都存在某个键,将使用目标的值。

要同步 phrases 包中所有语言的键,运行以下命令:

pnpm cli translate sync-keys --target all

因此,我们可以专注于更新源语言文件夹中的翻译键,而其他语言的翻译键将自动更新。

信息

此命令默认对 phrases 包执行。你可以通过 --package 选项指定包名。例如,使用 --package phrases-experience 同步 phrases-experience 包的键。

同步键后,我们可以使用 ChatGPT API 翻译这些键。

使用 ChatGPT 翻译键

运行以下命令以使用 ChatGPT 翻译键:

pnpm cli translate sync

此命令将翻译 phrasesphrases-experience 包中所有未翻译的键(标记为 /** UNTRANSLATED */)。注意,运行此命令需要环境变量 OPENAI_API_KEY