gt@2.11.0
概要
GT CLI で、あらゆる翻訳済みファイル形式を GT CDN に公開できるようになりました。JSON、MDX、YAML、その他すべての対応ファイル形式を、translate、upload、save-local コマンドから直接公開できます。
設定
グローバル公開フラグ
対応している任意のコマンドに --publish を追加します:
npx gt translate --publishまたは、gt.config.json で設定します:
{
"publish": true
}これにより、すべての翻訳済みファイル(GT JSON を含む)が GT CDN に公開されます。
ファイルごとの公開制御
include のパターン構文を使って、個々のファイルを公開対象に含めるか除外するかを指定できます。単純な glob 文字列ではなく、publish フラグを持つオブジェクトを使用します。
{
"defaultLocale": "en",
"locales": ["fr", "es"],
"files": {
"json": {
"include": [
{ "pattern": "locales/[locale]/*.json", "publish": true },
{ "pattern": "locales/[locale]/internal/**/*.json", "publish": false }
]
}
}
}この例では、locales/[locale]/ 配下のすべての JSON ファイルが GT CDN に公開されます。ただし、internal/ サブディレクトリ配下のファイルは除きます。
GT JSON の公開制御
GT の内部形式には、gt キー配下に独自の公開フラグがあります。
{
"files": {
"gt": {
"output": "public/i18n/[locale].json",
"publish": true
}
}
}解決順序
任意のファイルについて、CLI は公開対象かどうかを次の順序で判定します:
- 明示的なオプトアウト — ファイルが
"publish": falseのincludeエントリに一致する → 公開されない、または GT CDN から削除される - 明示的なオプトイン — ファイルが
"publish": trueのincludeエントリに一致する → GT CDN に公開される - グローバルフォールバック — 最上位の
publish設定を使用する(未設定の場合はデフォルトでfalse)
どのレベルでも公開の設定がされていない場合、公開ステップ全体がスキップされ、API 呼び出しは行われません。
公開に対応しているコマンド
| コマンド | 動作 |
|---|---|
gt translate | 翻訳をダウンロードした後に公開します |
gt upload | ソースファイルをアップロードした後に公開します |
gt save-local | ローカルの編集内容を保存した後に公開します |
リンク
- CLI設定リファレンス
- PR #1122 — 初回ファイル公開に対応
- PR #1132 — オプトイン関連の修正
- PR #1133 — 保存/アップロード時に公開