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

CLI переводит файлы TypeScript (`ts`) и JavaScript (`js`). Весь синтаксис и форматирование исходных файлов сохраняются в переведенных файлах.

## Обзор [#overview]

| Тема                                        | Описание                                                                          |
| ------------------------------------------- | --------------------------------------------------------------------------------- |
| [Конфигурация](#config)                     | Выберите исходные файлы и пути для сохранения переводов.                          |
| [Экспорт статических данных](#data-exports) | Повторно используйте неизменённые строки в соответствующих экспортируемых данных. |

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

Добавьте в `files` запись `ts` или `js` с массивом `include`, содержащим glob-шаблоны. Используйте заполнитель `[locale]`, чтобы CLI мог находить исходные файлы и сохранять переводы по нужному пути.

```json title="gt.config.json"
{
  "defaultLocale": "en",
  "locales": ["fr", "es"],
  "files": {
    "ts": {
      "include": ["scripts/[locale]/**/*.ts"]
    }
  }
}
```

Это переведёт все файлы TypeScript в каталоге `scripts/en` и сохранит результаты в `scripts/fr` и `scripts/es`. Для файлов JavaScript используйте ключ `js`. Все ключи файлов см. в [справочнике по конфигурации](/docs/cli/reference/config#files).

## Обновление экспортов статических данных [#data-exports]

Если обновлённый файл TypeScript или JavaScript содержит экспорты статических данных, General Translation повторно использует совпадающие строки из предыдущих переводов и переводит только новые или изменённые строки. Повторное использование применяется, когда каждая экспортируемая переменная в блоке содержит только статические литералы string, number, bigint, boolean или `null`, массивы и обычные объекты. Поддерживаются обёртки утверждений TypeScript.

Для экспортов со spread-операторами, идентификаторами, вызовами функций, шаблонными литералами, JSX или вычисляемыми ключами объектов используется стандартный путь перевода. Запуск [`gt translate --force`](/docs/cli/reference/commands/translate) или применение переводов Glossary также не используют это инкрементальное повторное использование.

## Sitemap

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