# gt: General Translation CLI tool: GT
URL: https://generaltranslation.com/ru/docs/cli/reference/formats/gt-jsx-files.mdx
Docs index: https://generaltranslation.com/llms.txt
Description: Переводите проекты gt-next, gt-react и gt-react-native с помощью General Translation. Справочник по API для формата файла gt.

Формат файла `gt` хранит переводы для проектов, использующих [`gt-react`, `gt-next` или `gt-react-native`](/docs/react/overview). Когда вы запускаете [`gt translate`](/docs/cli/reference/commands/translate), CLI сканирует исходный код и находит встроенный контент — например, компоненты [`<T>`](/docs/react/reference/components/t) и вызовы [`useGT`](/docs/react/reference/hooks/use-gt) — а также ваш словарь, и записывает результаты в этом формате.

## Конфигурация [#config]

Добавьте запись `gt` в раздел `files`. Она принимает путь `output` с заполнителем `[locale]` для локального сохранения переводов.

```json title="gt.config.json"
{
  "defaultLocale": "en",
  "locales": ["fr", "es"],
  "files": {
    "gt": {
      "output": "public/i18n/[locale].json"
    }
  }
}
```

Это сохранит французские и испанские переводы в `public/i18n/fr.json` и `public/i18n/es.json`. Затем их можно загрузить с помощью [`loadTranslations`](/docs/react/reference/functions/load-translations).

## Варианты хранения [#storage]

* **Локально:** задайте `output`, чтобы включить переводы в бандл приложения. Это вариант по умолчанию — при такой конфигурации CLI не публикует их в CDN.
* **CDN:** не указывайте `output` и включите публикацию, чтобы загружать переводы во время выполнения. См. [публикацию в CDN](/docs/cli/reference/config#cdn-publishing).

Сейчас для каждой локали можно сгенерировать только один выходной файл.

## Разбор встроенного контента [#parsing]

Запись `gt` принимает объект `parsingFlags`, который определяет, как CLI разбирает встроенный контент. По умолчанию все флаги отключены.

```json title="gt.config.json"
{
  "files": {
    "gt": {
      "parsingFlags": {
        "autoderive": true,
        "devHotReload": true,
        "enableAutoJsxInjection": true,
        "includeSourceCodeContext": true,
        "legacyGtReactImportSource": false
      }
    }
  }
}
```

* `autoderive` — обрабатывает интерполируемые значения в вызовах [`t()`](/docs/react/reference/functions/t-function), `gt()` и [`msg()`](/docs/react/reference/functions/msg), а также выражения внутри компонентов [`<T>`](/docs/react/reference/components/t) так, как если бы они были обёрнуты в [`derive()`](/docs/react/reference/functions/derive), создавая отдельную запись перевода для каждого возможного значения. Принимает `true` или объект, например `{ "jsx": true, "strings": false }`. См. [Автоматическое выведение переводов](/docs/cli/guides/using-autoderive).
* `devHotReload` — включает runtime translation для нового контента во время разработки. `true` включает string translation; используйте объект, например `{ "strings": true, "jsx": true }`, чтобы отдельно управлять обработкой строк и JSX.
* `enableAutoJsxInjection` — оборачивает переводимый JSX-текст в компоненты [`<T>`](/docs/react/reference/components/t) на этапе сборки, чтобы вам не приходилось добавлять их вручную. См. [Автоматическая инъекция JSX](/docs/cli/guides/using-auto-jsx).
* `includeSourceCodeContext` — добавляет окружающие строки исходного кода как дополнительный контекст для каждого перевода. Заменяет устаревший ключ верхнего уровня `files.gt.includeSourceCodeContext`.
* `legacyGtReactImportSource` — делает так, чтобы импорты, автоматически добавленные компилятором, разрешались в `gt-react/browser`. Включайте это только с устаревшими версиями `gt-react`, которые экспортируют этот путь; текущие версии используют корневой импорт `gt-react`.

## Sitemap

See the full [sitemap](https://generaltranslation.com/sitemap.md) for all pages.
