# gt: General Translation CLI tool: Настройка CLI URL: https://generaltranslation.com/ru/docs/cli/guides/configuring.mdx --- title: Настройка CLI description: "Как настроить gt.config.json для General Translation: в этом руководстве рассматриваются локали, файлы и параметры хранения." related: links: - /docs/cli/guides/generating-translations - /docs/cli/guides/managing-translations - /docs/cli/guides/using-auto-jsx - /docs/cli/guides/branching --- CLI читает файл `gt.config.json` в корне проекта, чтобы определить, что переводить и где сохранять результаты. В этом руководстве показано, как создать и изменить этот файл. *Примечание: в этом руководстве рассматриваются распространённые варианты настройки. Все доступные поля см. в [справочнике по конфигурации](/docs/cli/reference/config).* ## Создайте файл конфигурации [#create] Создать `gt.config.json` можно тремя способами. Выберите тот, который лучше всего подходит для вашего workflow. ### a) Запустите полный мастер настройки Запустите [`gt init`](/docs/cli/reference/commands/init), чтобы определить используемый фреймворк, установить зависимости, создать файл конфигурации и сгенерировать учетные данные за один раз. ```bash npx gt init ``` ### b) Создайте только файл конфигурации Запустите [`gt configure`](/docs/cli/reference/commands/configure), чтобы создать `gt.config.json` без установки зависимостей и изменения настроек фреймворка. ```bash npx gt configure ``` ### c) Создайте его вручную Создайте файл самостоятельно и добавьте ссылку на `$schema` для валидации и автодополнения в редакторе. ```json title="gt.config.json" { "$schema": "https://assets.gtx.dev/config-schema.json", "defaultLocale": "en", "locales": ["fr", "es"] } ``` ## Укажите локали [#locales] Укажите в `defaultLocale` язык, на котором написан исходный контент, а в `locales` перечислите целевые языки. ```json title="gt.config.json" { "defaultLocale": "en", "locales": ["fr", "es", "ja"] } ``` Оба варианта используют стандартные коды локалей, такие как `en`, `en-US` или `zh`. Полный список см. в разделе [поддерживаемые локали](/docs/platform/dashboard/reference/supported-locales). Чтобы использовать собственный алиас локали — например, `cn` вместо `zh`, — добавьте запись `customMapping`, которая указывает на официальный код. ```json title="gt.config.json" { "customMapping": { "cn": { "code": "zh" } } } ``` ## Выберите, какие файлы переводить [#files] Добавьте объект `files` с ключом для каждого типа файлов, который нужно переводить. Для каждого типа указывается массив `include` с glob-шаблонами, использующими заполнитель `[locale]` для поиска исходных файлов и сохранения переведённых. ```json title="gt.config.json" { "defaultLocale": "en", "locales": ["fr", "es"], "files": { "json": { "include": ["locales/[locale]/**/*.json"] }, "mdx": { "include": ["content/docs/[locale]/**/*.mdx"] } } } ``` CLI заменяет `[locale]` на `defaultLocale` при поиске source files, а при сохранении переводов — на код каждой целевой локали. См. [Форматы файлов](/docs/cli/reference/formats/gt-jsx-files), чтобы узнать о параметрах для каждого типа, и [`include`](/docs/cli/reference/config#files) — о расширенных правилах сопоставления. ## Выберите, где хранятся переводы [#storage] Если вы используете `gt-next`, `gt-react` или `gt-react-native`, решите, как будут поставляться переводы. * **Сохраняйте локально**, чтобы включить переводы в бандл приложения. Добавьте запись `gt` и укажите путь `output`, включающий `[locale]`. * **Публикуйте в CDN**, чтобы загружать переводы во время выполнения, а не включать их в бандл. Установите `publish` в `true`. ```json title="gt.config.json" { "files": { "gt": { "output": "public/i18n/[locale].json" } } } ``` См. [публикацию в CDN](/docs/cli/reference/config#cdn-publishing), чтобы управлять публикацией глобально, для отдельных файлов или команд. ## Добавьте учетные данные [#credentials] Команде [`translate`](/docs/cli/reference/commands/translate) требуются production API key и Project ID. Не храните их в `gt.config.json`; вместо этого задайте их через переменные окружения. ```bash title=".env" GT_API_KEY=your-api-key GT_PROJECT_ID=your-project-id ``` Выполните [`gt auth`](/docs/cli/reference/commands/auth), чтобы сгенерировать их и автоматически сохранить в `.env.local`. ## Next steps - /docs/cli/guides/generating-translations - /docs/cli/guides/managing-translations - /docs/cli/guides/using-auto-jsx - /docs/cli/guides/branching