使い方ガイド

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-next または gt-react を使用したプロジェクトを翻訳できます。

このガイドは、gt-next または gt-react のチュートリアルに従って、gt-next または gt-react を使うようにコードベースのセットアップが完了していることを前提としています。

  1. まず、プロジェクトの GT 設定を構成します。
npx gtx-cli configure

このコマンドは、dashboard を通じてプロジェクト用の APIキー と Project ID を自動的に生成します。

なお、APIキー と Project ID を手動で設定したい場合は、以下の手順 2 と 3 に従ってください。

  1. 次に、General Translation の dashboard でプロジェクトを作成します。

プロジェクト作成後、本番用の APIキー を生成します。「API Keys」ページに移動し、「Create API Key」ボタンをクリックしてください。

  1. その後、APIキー と Project 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」設定をオフにしてください。

詳しくは、translate コマンドのAPIリファレンスをご覧ください。

言語ファイルの翻訳(サードパーティ製 i18n ライブラリまたはスタンドアロンの GT プロジェクト)

CLI ツールを使用すると、サードパーティ製の i18n ライブラリ向け、または gt-nextgt-react のスタンドアロン実装で、言語ファイルを翻訳できます。

多くの i18n ライブラリは、翻訳データの保存に JSON ファイルを使用します。 CLI ツールを使って、これらの JSON ファイルを希望する言語に自動翻訳できます。

  1. まず、プロジェクトの GT 設定を行う必要があります。
npx gtx-cli configure

このコマンドは、プロジェクトのルートに gt.config.json ファイルを作成し、プロジェクトのデフォルト locale や対応ロケールなどの基本設定を含めます。

このコマンドは、dashboard を通じてプロジェクト用の APIキー と Project ID を自動的に生成します。

ただし、APIキー と Project ID を手動で設定したい場合は、以下の手順 2 と 3 に従ってください。

  1. 次に、General Translation dashboard でプロジェクトを作成します。

プロジェクトを作成したら、本番用の APIキー を生成します。「API Keys」ページに移動し、「Create API Key」ボタンをクリックします。

  1. その後、APIキー と Project ID を環境変数に追加します。
.env
GT_API_KEY=<your-api-key>
GT_PROJECT_ID=<your-project-id>
  1. 最後に翻訳コマンドを実行します。
npx gtx-cli translate

既定では、CLI ツールは gt.config.json ファイル内の files プロパティに従って翻訳対象のファイルを探索します。 ソース言語としては、gt.config.json ファイルで指定された defaultLocale を使用します。

翻訳後のファイルは、gt.config.json ファイルで指定された対応する出力先に保存されます。

files プロパティの詳細は、configuration ドキュメントをご覧ください。

GT プロジェクト向けの言語ファイル生成

CLI ツールは、gt-next または gt-react を使用するプロジェクト向けに言語ファイルを生成できます。

これは、独自の翻訳プロバイダーを利用したい場合に便利です。

他の i18n ライブラリと異なり、gt-nextgt-react はインライン翻訳をサポートしているため、各言語ごとにキーと value を持つ従来の JSON ファイル構造は存在しません。

そのためテキストの変更を追跡するために、GT ライブラリはソースコード内に元のテキストのハッシュを保存します。

この内部データ構造(ハッシュを含む)は扱いづらいため、CLI ツールにはプロジェクト向けに言語ファイルを生成する便利なコマンドが用意されています。

  1. まず、プロジェクトの GT 設定を行う必要があります。
npx gtx-cli configure

GT CDN(コンテンツ配信ネットワーク)に翻訳を保存するか確認されたら、「No」を選択してください。

  1. 次を実行します:
npx gtx-cli generate

このコマンドは、デフォルトのロケール用のソースファイルと、プロジェクトで設定しているその他すべての対応ロケール用のソースファイルを生成します。

各ファイルの内容は同一で、プロジェクト内の既存の翻訳とマージされます。

「generate」コマンドの詳細は、APIリファレンスを参照してください。


注意事項

  • gtx-cli translate は、プロジェクトの翻訳を自動生成するために使用します。
  • サードパーティ製の i18n ライブラリを使用している場合、プロジェクトに変更があるたびに翻訳用の JSON ファイルを自動更新できます。ビルドコマンドの前に gtx-cli translate をビルドまたは CDプロセス(継続的デリバリー/継続的デプロイ)に追加するだけで、翻訳が自動的にプロジェクトへ追加されます。

次のステップ

このガイドはいかがですか?