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

CLI переводит файлы MDX (`mdx`) и Markdown (`md`). Весь синтаксис и форматирование в исходных файлах сохраняются в переведённых файлах.

## Обзор [#overview]

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

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

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

```json title="gt.config.json"
{
  "defaultLocale": "en",
  "locales": ["ja"],
  "files": {
    "mdx": {
      "include": ["content/docs/[locale]/**/*.mdx"],
      "transform": "*.[locale].mdx"
    }
  }
}
```

Это переводит все MDX-файлы в `content/docs/en` и сохраняет результаты в `content/docs/ja`. Для Markdown-файлов вместо этого используйте ключ `md`. Все ключи файлов см. в [справочнике по конфигурации](/docs/cli/reference/config#files).

## Пользовательские ID заголовков [#heading-ids]

Суффиксы `{#id}` в стиле Mintlify после перевода остаются при своих заголовках:

```markdown
## Настройка клиента {#configure-client}
```

Для явного указания ID заголовков требуется `gt` версии 2.17.3 или выше.

Если параметр `experimentalAddHeaderAnchorIds` имеет значение `'mintlify'`, CLI добавляет к каждому переведённому заголовку нативный для Mintlify синтаксис `{#id}` и повторно использует ID исходного заголовка. Заголовки, вложенные в JSX, при необходимости сдвигаются к краю, поскольку Mintlify распознаёт этот суффикс только у заголовков с отступом не более трёх пробелов. Для этого режима требуется `gt` версии 2.20.4 или выше.

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

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

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

## Переименование переведённых файлов [#transform]

Ключ `transform` переопределяет имена выходных файлов. В примере выше `*.[locale].mdx` меняет расширение переведённого файла на `.ja.mdx`. Используйте это, если ваш фреймворк документации ожидает локаль в имени файла, а не в пути к директории.

## Локализация ссылок и ресурсов [#localize]

Несколько экспериментальных флагов [`gt translate`](/docs/cli/reference/commands/translate#experimental) применяются только к выводу в форматах `md` и `mdx`:

* `--experimental-localize-static-urls` — локализует URL-адреса в переведённых файлах.
* `--experimental-localize-static-imports` — локализует статические импорты в переведённых файлах.
* `--experimental-localize-relative-assets` — переписывает относительные URL-адреса изображений в переведённых файлах.
* `--experimental-hide-default-locale` — убирает локаль по умолчанию из локализованных путей.

## Sitemap

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