Перевод заново
Lingo.dev CLI автоматически переводит заново контент при изменении исходного текста и предоставляет опции для ручного перевода заново, если вам нужно обновить переводы по другим причинам.
Система отпечатков контента CLI гарантирует, что переводы остаются синхронизированными с изменениями исходного текста, избегая ненужного перевода неизмененного контента.
Автоматический перевод заново
Когда вы изменяете исходный контент, Lingo.dev CLI обнаруживает изменения с помощью системы отпечатков контента и переводит заново затронутые ключи при следующем запуске.
Пример рабочего процесса:
// locales/en.json (оригинал)
{
"button.save": "Save changes"
}
// locales/es.json (сгенерировано)
{
"button.save": "Guardar cambios"
}
После обновления исходного текста:
// locales/en.json (изменено)
{
"button.save": "Save all changes"
}
Запуск команды npx lingo.dev@latest i18n
переводит заново испанскую версию:
// locales/es.json (обновлено)
{
"button.save": "Guardar todos los cambios"
}
CLI сравнивает новый отпечаток контента с i18n.lock
и определяет, какие переводы нужно обновить.
Ручной перевод заново
Иногда вам нужно перевести контент заново, даже если исходный текст не изменился. Это может быть необходимо при обновлении моделей ИИ, изменении подсказок для перевода или при желании обновить переводы с улучшенным контекстом.
Полный перевод заново
Принудительный полный перевод заново:
npx lingo.dev@latest i18n --force
Эта команда обходит lock-файл и переводит весь контент заново, создавая файл i18n.lock
с нуля.
Целевой перевод заново
Перевод для конкретных языков:
npx lingo.dev@latest i18n --locale es
Переводит заново только испанский контент, сохраняя другие языки.
Перевод для определенных типов файлов:
npx lingo.dev@latest i18n --bucket json
Переводит заново только JSON-файлы, что полезно, если разные типы файлов обновляются с разной частотой.
Перевод для определенных ключей перевода:
npx lingo.dev@latest i18n --key welcome.title
Переводит заново один ключ для всех целевых языков. Для вложенных ключей используйте точечную нотацию:
npx lingo.dev@latest i18n --key header.navigation.about
Перевод для определенных файлов:
npx lingo.dev@latest i18n --file blog.[locale].json
Переводит заново определенные файлы в ваших корзинах. Вы можете указать несколько файлов:
npx lingo.dev@latest i18n --file landing.[locale].json --file pricing.[locale].json
Комбинирование опций
Вы можете комбинировать параметры таргетинга для точного контроля:
npx lingo.dev@latest i18n --force --bucket json --locale es
Это повторно переводит весь JSON-контент, но только для испанского языка.
Обновления контекста перевода
Когда вы изменяете настройки AI-перевода, существующие переводы не обновляются автоматически. Для применения новых подсказок или моделей к ранее переведенному контенту требуется ручной повторный перевод.
Распространенные сценарии, требующие повторного перевода:
- Переход с одной AI-модели на другую
- Обновление подсказок перевода для улучшения контекста
- Переход с использования сырых API LLM на Lingo.dev Engine
- Улучшение согласованности терминологии в существующих переводах при использовании сырых API LLM
Интеграция lockfile
Повторный перевод обновляет файл i18n.lock
с новыми отпечатками контента. Это гарантирует, что будущие запуски правильно отслеживают, какой контент был обработан с текущими настройками перевода.
Lockfile предотвращает циклы повторного перевода и сохраняет преимущества производительности инкрементального перевода даже после ручных операций повторного перевода.