Saltar al contenido
Saltar al contenido

Referencia / CLI

Página traducida automáticamente

Esta página se tradujo automáticamente, así que puede contener errores o sonar un poco rara. La versión en inglés es la fuente de la verdad. Leer el original en inglés.

verbatra import

Importa una entrega rellenada (libro, CSV, TSV o XLIFF) de vuelta a los archivos de locale, ejecutando las mismas comprobaciones de seguridad.

Lee una entrega que rellenó un traductor de vuelta a tus archivos de locale. Cada valor pasa por las mismas comprobaciones de integridad que una ejecución automática: los valores que las superan se escriben y el archivo de bloqueo se actualiza, y los que fallan se retienen y se informan, así que una celda rota nunca llega a un archivo de locale. Una ejecución real también añade las entradas que falten a un .gitignore existente, consulta Entradas de .gitignore.

Sinopsis

verbatra import <workbook> [flags]
  • <workbook>: la entrega que escribió verbatra export y rellenó el traductor. Para xlsx es el archivo del libro; para csv, tsv, xliff2 y xliff12 es un solo archivo <locale>.csv, <locale>.tsv o <locale>.xlf, o el directorio que contiene un archivo por locale.

Ejemplos

# import the filled workbook
verbatra import verbatra-translations.xlsx

# validate and report, write nothing
verbatra import verbatra-translations.xlsx --dry-run

# import every locale file in a CSV handoff directory
verbatra import handoff --format csv

# import one XLIFF file back from a CAT tool, naming the reviewer
verbatra import handoff/de.xlf --reviewer "Agency GmbH"

Flags

FlagArgumentoPor defectoEfecto
--dry-runningunodesactivadovalida e informa sin escribir archivos de locale ni actualizar el bloqueo
--format<format>según la extensión de la ruta: csv, tsv, xliff2 para .xlf o .xliff, si no xlsx; para un directorio, según el manifiesto de exportación o los archivos de locale que contienexlsx, csv, tsv, xliff2 o xliff12; cualquiera de los dos formatos XLIFF lee ambas versiones
--reviewer<name>ningunonombre que se registra en cada unidad XLIFF marcada como revisada o final; como máximo 64 caracteres, guardado en el archivo de procedencia versionado
--lock-timeout<seconds>600cuánto esperar a un bloqueo de escritura por locale ya tomado; un número entero de 1 a 3600, si no es un error de uso, salida 2

También acepta los flags globales --cwd, --config y --json.

Comportamiento

Advertencia

Cada valor rellenado que supera las comprobaciones sustituye el valor del archivo de locale, también uno que escribió una persona. Ejecuta primero --dry-run para ver qué cambiaría.

Archivos de locale y restos

Con csv o tsv el locale sale del nombre del archivo, así que mantén cada archivo con el nombre exacto con el que se exportó. Un locale de destino configurado sin archivo (o, en un libro, sin hoja) falla con WORKBOOK_SHEET_MISSING; nunca se omite en silencio.

Un archivo que quedó de una exportación anterior con una selección de --locales más amplia nunca se aplica. El import compara el directorio con el manifiesto de la exportación más reciente y hace fallar ese locale con HANDOFF_FILE_STALE. Vuelve a exportar ese locale o borra el archivo. Un directorio sin manifiesto legible (montado a mano o recortado por un archivo comprimido) se lee tal cual, igual que un archivo suelto que nombras directamente.

Bloqueos de escritura

--lock-timeout fija cuánto espera un locale a un bloqueo de escritura ocupado antes de fallar con LOCK_CONTENDED, igual que en verbatra translate. La espera ocurre antes de escribir el archivo del locale: un locale que agota el tiempo queda intacto mientras los demás se importan, y el comando sale con 1. Una vez escrito un archivo, registrarlo en el archivo de bloqueo espera hasta los diez minutos por defecto, diga lo que diga --lock-timeout. Una espera de más de un segundo muestra una línea con el bloqueo y quién lo tiene (un registro lock-wait con --json). --dry-run no toma ningún bloqueo, así que nunca espera.

XLIFF

Un archivo XLIFF se lee con la versión que declara, y un archivo suelto cuyo nombre no es un locale configurado se asigna por el idioma de destino que declara. Una unidad cuyo destino es igual al valor actual no cambia nada; cualquier otro destino pasa por la puerta de integridad como una fila del libro. Una unidad marcada como reviewed o final (en 1.2 también signed-off o approved="yes") se registra como aprobada, con --reviewer como nombre, y se informa con el aviso HANDOFF_REVIEWS_RECORDED. Una unidad cuyo id no nombra ninguna clave de origen se informa como fila mal formada. Consulta Entregar a una agencia de traducción.

Filas vacías y rotas

Una celda Translation vacía nunca hace fallar un locale: la fila se omite, se conserva su línea base del bloqueo y la clave se informa como unfilled mientras siga necesitando traducción. Importar una entrega que nadie ha rellenado todavía tiene por tanto éxito y lista cada clave pendiente.

Una sola fila ilegible se informa como fila mal formada, y el resto del locale se importa igualmente. Una entrega demasiado grande o que no se puede analizar en absoluto (por ejemplo, que no es un contenedor xlsx legible) es un error SOURCE_INVALID de toda la ejecución cuyo mensaje dice qué le pasaba.

En una entrega CSV, TSV o xlsx, una fila rellenada igual al valor de una clave al día se deja intacta y se informa como sin cambios, no como traducida, una vez que pasa la puerta de integridad nuevo. Consulta Traducción manual.

Información en el terminal

import muestra una línea mientras lee y aplica el archivo. Tras un import limpio sugiere verbatra check, y tras --dry-run el mismo import sin el flag. Si un locale falla o queda parcial, sugiere el mismo import una vez corregidas las filas rechazadas o, cuando un locale falló con un error que tiene un siguiente paso, ese paso:

Salida
verbatra: importing verbatra-translations.xlsx... done (0.4s)
next: verbatra check (confirm every locale is in sync)

Estas líneas van a stderr, y --quiet las omite. Consulta Salida en el terminal.

Salida JSON

Esquema: import-envelope.json valida el envoltorio completo; Esquemas enumera los demás.

Con --json, el envoltorio lleva un RunSummary, la misma forma que imprime verbatra translate; RunSummary enumera cada campo.

Códigos de salida

CódigoSignificado
0cada locale de destino salió completo
1la ejecución terminó, pero uno o más locales fallaron o quedaron parciales
2no se pudo ejecutar: un error de toda la ejecución (configuración, entrega, formato o un archivo de bloqueo corrupto) o un error de uso
130interrumpido con Ctrl-C (SIGINT) tras liberar los bloqueos de escritura de la ejecución
143detenido con SIGTERM tras liberar los bloqueos de escritura de la ejecución

El contrato coincide con el de verbatra translate, así que una entrega manual se bifurca igual en CI: un locale parcial sale con 1, y un archivo de bloqueo corrupto, o que se corrompe durante el import, detiene toda la ejecución con 2 y deja intactos los locales restantes (los ya aplicados siguen escritos). El contrato que sigue cada comando está en Códigos de salida.

Relacionado

Editar en GitHub

En esta página