Atrás

Ediciones locales en gtx-cli@2.4.0

Fernando Aviles avatarFernando Aviles
gtx-clisave-localtranslate

Descripción general

En gtx-cli 2.4.0, hemos añadido una nueva forma de guardar tus ediciones de traducción locales directamente desde la CLI.
Esto significa que ahora puedes hacer cambios de traducción de forma local, conservarlos y mantener todo sincronizado con tu proyecto sin necesidad de usar el panel.

El comando save-local

Históricamente, la única manera de editar traducciones era a través del editor del panel. Eso funcionaba, pero a menudo interrumpía el flujo, especialmente si estabas en plena fase de desarrollo y solo querías ajustar una traducción directamente en el código.

El nuevo comando save-local te permite enviar tus ediciones de traducción locales de vuelta a tu proyecto de General Translation. Te mantienes en tu entorno de trabajo y tus cambios se mantienen sincronizados.

npx gtx-cli save-local

Al ejecutar este comando, se suben todos los archivos de traducción modificados, se integran tus cambios locales en el proyecto y se garantiza que la siguiente ejecución de translate refleje tus modificaciones.


Translate (ahora con reconocimiento local)

Hasta ahora, translate siempre asumía que la versión remota de una traducción era la fuente de la verdad.

Si hacías cambios locales y volvías a ejecutar translate, esos cambios se sobrescribían. Eso ya no es así.

Ahora, cuando ejecutas:

npx gtx-cli translate

la CLI comprueba automáticamente si hay ediciones locales y las guarda en segundo plano — de la misma forma que save-local — antes de volver a descargar las traducciones. Esto garantiza que tus versiones locales se conserven y que las retraducciones siempre respeten tus ediciones.

Verás algo como:

Iniciando traducción...

Archivos para traducir:
  - src/i18n/en/common.json
  - ...

  Actualizando traducciones...
  Traducciones actualizadas

Qué sucede cuando cambian las fuentes

Puede que te preguntes: ¿qué pasa si edito el archivo fuente después de hacer ediciones de traducción locales?
En versiones anteriores, eso habría desencadenado una retraducción completa que borraba tus cambios personalizados.

En la 2.4.0, la CLI es más inteligente. Incluso cuando una actualización de la fuente provoca una retraducción, tus ediciones locales anteriores se mantienen. Se incorporan automáticamente en la nueva traducción.

Por ejemplo, imagina que tienes una cadena fuente:

"Estoy con mi madre"

que fue traducido como:

"Estoy con mi madre"

Luego haces una edición local para usar mamá en lugar de madre:

"Estoy con mi mamá"

Si más adelante cambias el texto original:

"NO estoy con mi madre"

la retraducción seguirá respetando tu elección de redacción:

"NO estoy con mi mamá"

Tu redacción local se conserva siempre que el contexto siga siendo relevante.

Si el significado del texto original cambia por completo (por ejemplo, cambiar mother por father), la CLI generará una nueva traducción para ese contenido.

Para los equipos que gestionan traducciones directamente en el código, esto cierra una brecha frustrante entre la edición local y la sincronización del proyecto. Ya no tienes que elegir entre trabajar localmente o confiar en el texto del panel, ya que ambos se mantienen coherentes.


TL;DR

  • save-local te permite enviar cambios de traducción locales desde tu CLI.
  • translate ahora preserva y combina automáticamente los cambios locales.
  • La lógica inteligente de retraducción mantiene tus cambios locales a menos que el texto de origen cambie de forma significativa.