Modifiche locali in gtx-cli@2.4.0
Panoramica
In gtx-cli 2.4.0 abbiamo aggiunto un nuovo modo per salvare direttamente dalla CLI le modifiche locali alle traduzioni. Ora puoi quindi modificare le traduzioni in locale, salvarle in modo permanente e mantenere tutto sincronizzato con il progetto senza passare dalla dashboard.
Il comando save-local
Storicamente, l'unico modo per modificare le traduzioni era tramite l'editor del dashboard. Funzionava, ma spesso interrompeva il flusso di lavoro, soprattutto se eri nel pieno dello sviluppo e volevi solo ritoccare una traduzione direttamente nel codice.
Il nuovo comando save-local ti consente di salvare nel tuo progetto General Translation le modifiche locali alle traduzioni. Rimani nel tuo workspace e le tue modifiche restano sincronizzate.
npx gtx-cli save-localL'esecuzione di questo comando carica tutti i file di traduzione modificati, integra nel progetto le modifiche locali e assicura che la successiva esecuzione di translate tenga conto delle tue modifiche.
Translate (Ora con rilevamento delle modifiche locali)
Finora, translate presumeva sempre che la versione remota di una traduzione fosse la fonte attendibile.
Se apportavi modifiche locali e poi eseguivi di nuovo translate, tali modifiche venivano sovrascritte. Ora non è più così.
Ora, quando esegui:
npx gtx-cli translatela CLI controlla automaticamente le modifiche locali e le salva in background — proprio come fa save-local — prima di riscaricare le traduzioni. Questo garantisce che le versioni locali vengano conservate e che le ritraduzioni mantengano sempre le tue modifiche.
Vedrai qualcosa del genere:
Starting translation...
Files to translate:
- src/i18n/en/common.json
- ...
◒ Updating translations...
◇ Updated translationsCosa succede quando cambiano i sorgenti
Potresti chiederti: cosa succede se modifico il file sorgente dopo aver apportato modifiche locali alla traduzione? Nelle versioni precedenti, questo attivava una ritraduzione completa che cancellava le modifiche personalizzate.
Nella versione 2.4.0, la CLI è più intelligente. Anche quando un aggiornamento del sorgente causa una ritraduzione, le modifiche locali precedenti vengono mantenute. Vengono integrate automaticamente nella nuova traduzione.
Per esempio, immagina di avere una stringa sorgente:
"I am with my mother"che è stato tradotto così:
"Estoy con mi madre"Poi apporti una modifica locale per usare mamá invece di madre:
"Estoy con mi mamá"Se in seguito modifichi il testo sorgente:
"I am NOT with my mother"la ritraduzione rispetterà comunque la tua scelta di parole:
"NO estoy con mi mamá"La formulazione locale viene mantenuta finché il contesto resta pertinente.
Se il significato del testo di partenza cambia completamente (ad esempio, da mother a father), la CLI avvierà una nuova traduzione per il nuovo contenuto.
Per i team che gestiscono le traduzioni direttamente nel codice, questo colma una fastidiosa lacuna tra le modifiche in locale e la sincronizzazione del progetto. Non devi più scegliere tra lavorare in locale o fidarti del testo nel dashboard, perché entrambi restano coerenti.
In breve
save-localti permette di inviare dal CLI le modifiche locali alle traduzioni.translateora conserva e unisce automaticamente le modifiche locali.- La logica intelligente di ritraduzione mantiene le modifiche locali, a meno che il testo sorgente non cambi in modo significativo.