i18n.lock

Max PrilutskiyCEO y cofundadorActualizado el hace 3 meses · 2 min de lectura

Obsoleto

Esta documentación cubre el CLI heredado (v0). La versión actual del CLI es la v1. Ver la documentación actual de CLI

i18n.lock es un lockfile que almacena huellas digitales SHA-256 de tu contenido de origen. La CLI de Lingo.dev compara estas huellas en cada ejecución para identificar qué cadenas son nuevas o fueron modificadas; solo esas entran en el flujo de traducción. Todo lo demás se omite.

Estructura#

El lockfile usa formato YAML:

yaml
version: 1
checksums:
  a07974ea09011daa56f9df706530e442:
    title: f8692d39317193acf0e2e47172703c46
    description: g9703e40428204bdf1f3f58283814d57
CampoDescripción
versionVersión del esquema del lockfile.
checksumsMapa de huellas digitales del contenido. Cada entrada asigna un hash del contenido de origen a un hash de clave.

La estructura de hash doble (hash de contenido + hash de clave) permite la detección de cambio de nombre de claves: la CLI conserva las traducciones existentes cuando se cambia el nombre de una clave, pero su contenido sigue siendo el mismo.

Flujo de trabajo#

Primera ejecución: crea el lockfile con huellas digitales de todo el contenido de origen:

bash
npx lingo.dev@latest run
# Creates i18n.lock

Ejecuciones posteriores: traducen solo el delta:

bash
npx lingo.dev@latest run
# Compares against i18n.lock, translates only changes

Forzar retraducción: omite el lockfile y vuelve a traducir todo:

bash
npx lingo.dev@latest run --force

Recrear lockfile: reconstruye el lockfile a partir del estado actual de tus archivos de origen:

bash
npx lingo.dev@latest lockfile --force

Usa lockfile --force para restablecer el lockfile durante la resolución de conflictos de merge. Es seguro ejecutarlo en cualquier momento.

Verificación congelada: falla si algún contenido requiere traducción (diseñada para CI/CD):

bash
npx lingo.dev@latest run --frozen

Deduplicación#

Al fusionar ramas, el YAML del lockfile puede acumular entradas duplicadas. La CLI las deduplica automáticamente cada vez que lo carga: las claves duplicadas dentro del mismo bloque de checksum se resuelven conservando la última aparición. Si se eliminan duplicados, la CLI registra cuántos había.

La deduplicación se ejecuta en todos los comandos que leen el lockfile: run, status, lockfile y otros.

Control de versiones#

i18n.lock debe confirmarse en tu repositorio junto con tus archivos de idioma. Es el mecanismo que hace posible la traducción incremental; sin él, cada ejecución volvería a traducir todo el proyecto.

Siguientes pasos#