使用指南

GT 命令行工具使用指南

概览

本指南将带你逐步了解如何使用 General Translation 的命令行工具(CLI,gtx-cli)来翻译你的项目。

该 CLI 工具兼容任意 i18n 库,无论你使用 gt-nextgt-react,还是第三方库(如 next-intlreact-i18next)。

该 CLI 工具用于将你的项目连接到 General Translation 的 AI 翻译服务。

你可以通过多种方式使用该 CLI 工具,请根据你的使用场景跳转到相应章节。

安装

要安装 CLI(命令行界面)工具,请运行以下命令:

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

适用场景

翻译 GT 项目

CLI(命令行界面)工具可用于翻译使用 gt-nextgt-react 的项目。

本指南假设你已按照 gt-nextgt-react 教程,将代码库配置为使用 gt-nextgt-react

  1. 首先,你需要配置项目的 GT 设置。
npx gtx-cli configure

此命令将通过仪表板为你的项目自动生成 API key 和项目 ID。

但如果你希望手动设置 API key 和项目 ID,请按照下方的第 2 和第 3 步操作。

  1. 接下来,你需要在 General Translation 仪表板中创建一个项目。

创建项目后,你需要生成一个生产环境的 API key。前往“API Keys”页面并点击“Create API Key”按钮。

  1. 然后,将你的 API key 和项目 ID 添加到环境变量中。
.env
GT_API_KEY=<your-api-key>
GT_PROJECT_ID=<your-project-id>
  1. 最后,执行翻译命令。
npx gtx-cli translate

默认情况下,CLI 工具会将翻译发布到 General Translation 的翻译 CDN(内容分发网络),这样你就能在项目中直接使用。 如果你想禁用此行为(例如从其他来源加载翻译),请在dashboard 项目设置中关闭 CDN 设置。

请参阅API 参考以了解 translate 命令的更多信息。

翻译语言文件(第三方 i18n 库或独立 GT 项目)

CLI 工具可用于为第三方 i18n 库的语言文件提供翻译,或与 gt-nextgt-react 的独立实现配合使用。

大多数 i18n 库使用 JSON 文件存储翻译数据。 你可以使用 CLI 工具将这些 JSON 文件自动翻译为所需的目标语言。

  1. 首先,需要配置项目的 GT 设置。
npx gtx-cli configure

此命令会在项目根目录创建一个 gt.config.json 文件,其中包含一些基础配置,例如项目的默认 locale 和支持的 locales。

此命令会通过 dashboard 为你的项目自动生成 API key 和 project ID。

不过,如果你希望手动设置 API key 和 project ID,请按照下方的第 2 和第 3 步操作。

  1. 接下来,你需要在 General Translation dashboard 中创建一个项目。

创建项目后,需要生成用于生产环境的 API key。前往 “API Keys” 页面并点击 “Create API Key” 按钮。

  1. 然后,将你的 API key 和 project ID 添加到环境变量中。
.env
GT_API_KEY=<你的 API>
GT_PROJECT_ID=<你的项目 ID>
  1. 最后,执行翻译命令。
npx gtx-cli translate

默认情况下,CLI(命令行界面)工具会根据你的 gt.config.json 文件中的 files 属性查找需要翻译的文件。 它会将你的 gt.config.json 文件中指定的 defaultLocale 作为源语言。

翻译后的文件将保存到你的 gt.config.json 文件中指定的对应输出位置。

有关 files 属性的更多信息,请参阅配置文档。

为 GT 项目生成语言文件

CLI 工具可用于为使用 gt-nextgt-react 的项目生成语言文件。

如果你打算使用自有的翻译供应商,这个用例会很有帮助。

与其他 i18n 库不同,gt-nextgt-react 支持内联翻译,这意味着不会存在按语言存放键和值的传统 JSON 文件结构。

因此,为了跟踪文案变更,GT 库会在源代码中存储原始文本的哈希。

这种内部数据结构(包含哈希)不便于直接使用,因此 CLI 工具提供了一个便捷命令,用于为你的项目生成语言文件。

  1. 首先,你需要配置项目的 GT 设置。
npx gtx-cli configure

当系统询问是否将翻译保存到 GT CDN(内容分发网络)时,选择“否”。

  1. 运行:
npx gtx-cli generate

此命令会为你的默认 locale,以及项目中配置的所有其他 locales 生成一个源文件。

每个文件的内容相同,并会与项目中之前的任何翻译合并。

有关 generate 命令的更多信息,请参见 API 参考


注意事项

  • gtx-cli translate 用于为你的项目自动生成翻译。
  • 如果你使用第三方 i18n 库,可以在项目每次变更时自动更新所有翻译 JSON 文件。只需在构建命令之前,将 gtx-cli translate 命令添加到你的构建或持续交付(CD)流程中,即可自动为项目添加翻译。

下一步

本指南如何?