Lingo.dev CLI сохраняет ручные правки в целевых файлах. Если вы измените сгенерированный перевод, отредактировав целевой файл напрямую, CLI сохранит это изменение при следующих запусках — пока исходный контент остаётся прежним.
Как работают переопределения#
CLI отслеживает отпечатки исходного контента, а не содержимое целевых файлов. Когда вы вручную редактируете перевод в целевом файле, отпечаток исходника не меняется, поэтому CLI считает ключ уже переведённым и пропускает его.
CLI генерирует перевод
// locales/es.json (generated)
{ "greeting": "Bienvenido a nuestra plataforma" }Вы переопределяете его вручную
// locales/es.json (manually edited)
{ "greeting": "¡Bienvenido a nuestro espacio digital!" }При следующих запусках переопределение сохраняется
npx lingo.dev@latest run
# Your custom translation remains unchangedКогда переопределения заменяются#
Если исходный контент меняется, CLI определяет новый отпечаток и заново переводит ключ, заменяя ваше переопределение:
// locales/en.json (source updated)
{ "greeting": "Welcome to our new platform" }Новый отпечаток не совпадает с записью в lockfile, поэтому CLI создаёт для этого ключа новый перевод.
Переименование ключей#
CLI сохраняет переводы, даже если ключи переименованы, пока сам контент остаётся прежним. Lockfile отслеживает отпечатки и контента, и ключей, что позволяет выполнять переименование ключей без потери уже сделанных переводов.
