JSON

如何使用 General Translation 自动翻译 JSON 文件

概述

gtx-cli 可用于自动翻译你项目中的 JSON 文件,无论你使用的是哪种 i18n 库。

注意: 我们目前支持以下 i18n 库的自定义字符串语法和格式:next-intli18nextgt-nextgt-react

如果你使用其他 i18n 库,对于包含自定义语法和格式(例如 ICU 消息)的字符串,翻译结果可能不够准确。 没有看到你常用的库?请告诉我们,我们会尽快添加支持!

我们将按照以下 4 个步骤进行:

添加你的环境变量

安装 gtx-cli

创建 gt.config.json 文件

提示: 使用 <T> 组件 可避免处理翻译文件的麻烦。


步骤 1:添加环境变量

将生产环境的 API 密钥(API key)和项目 ID 添加到你的环境变量中。 这是使用 gtx-cli 工具所必需的。 你可以在 General Translation 仪表板 获取它们。

.env
GT_API_KEY=<your-api-key>
GT_PROJECT_ID=<your-project-id>

步骤 2:安装 gtx-cli

在项目中安装 gtx-cli 工具。

npm i gtx-cli
yarn add --dev gtx-cli
bun add --dev gtx-cli
pnpm add --save-dev gtx-cli

步骤 3:创建 gt.config.json 文件

在项目根目录中创建一个 gt.config.json 文件。

gt.config.json
{
  "defaultLocale": "en",
  "locales": ["zh", "es", "ja"],
  "files": {
    "json": {
      "include": ["i18n/[locale]/*.json"]
    },
  },
}

您可以按需自定义 gt.config.json 文件。更多信息请参阅配置文档。

调整 json 文件的格式,使 include 路径与项目结构一致。

翻译将保留原始字符串的语法。

步骤 4:将 gtx-cli translate 命令加入构建流程

在执行构建命令之前,将 gtx-cli translate 命令添加到构建或 CI 流程中,以自动把翻译注入到项目中。

package.json
{
  "scripts": {
    "translate": "npx gtx-cli translate",
    "build": "npm run translate && <你的构建命令>"
  }
}

这将为你的所有 locale 生成翻译,并将其保存到项目中。 如果你想把这些 files 提交到仓库,也可以在提交前先运行此命令。

完成!现在,每当项目发生变更时,项目会自动更新所有翻译用的 JSON files。


注意事项

  • 您可以使用 gtx-cli translate 命令为项目自动添加翻译。
  • 如果您打算提交翻译文件,建议在提交前先运行 gtx-cli translate 命令。
  • 如需配置翻译的输出路径,请参阅 配置 文档。

后续步骤

  • 查看该 CLI(命令行界面)工具的使用指南

本指南如何?