Indietro

gt-sanity@3.1.0

Fernando Aviles avatarFernando Aviles
gt-sanityv3.1.0sanitycmstranslationminor

Panoramica

I contenuti tradotti raramente rimangono esattamente come sono arrivati. Gli editor correggono un termine, rendono più incisivo un titolo, adattano il tono a un mercato — e fino a oggi, l'esecuzione successiva rigenerava tutto.

gt-sanity v3.1 aggiunge Salva modifiche locali: le traduzioni già presenti in Sanity vengono caricate in General Translation prima di un'esecuzione di traduzione, così i contenuti il cui testo sorgente non è cambiato mantengono la formulazione esistente. È disattivata per impostazione predefinita e richiede l'opt-in per ogni sessione di Studio.

Il rilascio aggiunge inoltre l'azione Salva modifiche locali per caricare le traduzioni esistenti senza avviare un'esecuzione e l'opzione Ritraduci da zero per rigenerare deliberatamente tutto.


Novità

Salva modifiche locali

Attiva l'interruttore Salva modifiche locali nello strumento Translations o nella scheda del documento General Translation. Quando è attivo, ogni esecuzione di traduzione inizia inviando a General Translation le traduzioni attualmente presenti in Sanity. Queste diventano le traduzioni memorizzate per la versione sorgente, quindi l'esecuzione successiva le riutilizza invece di tradurre nuovamente quel contenuto.

Sono supportate entrambe le strategie di localizzazione: le traduzioni a livello di documento vengono lette tramite translation.metadata (privilegiando le bozze rispetto ai documenti pubblicati, quindi vengono considerate anche le modifiche non pubblicate), mentre i valori delle impostazioni regionali negli array internazionalizzati vengono letti dal documento sorgente. Le impostazioni regionali senza contenuti esistenti vengono ignorate anziché caricate come traduzioni vuote.

Imposta lo stato iniziale dell'interruttore nella configurazione del plugin:

import { defineConfig } from 'sanity';
import { gtPlugin } from 'gt-sanity';

export default defineConfig({
  plugins: [
    gtPlugin({
      sourceLocale: 'en',
      locales: ['es', 'fr', 'ja'],
      translateDocuments: [{ type: 'post' }],
      preserveExistingTranslations: true,
    }),
  ],
});

preserveExistingTranslations imposta il valore iniziale dell'interruttore al caricamento dello Studio. Gli Editor possono modificarlo per la propria sessione dall'interfaccia utente.

Sanity diventa la fonte autorevole

L'attivazione dell'interruttore mostra prima una spiegazione, perché il compromesso è reale: ciò che è in Sanity sostituisce tutto ciò che General Translation conserva per quella versione del documento, inclusa una traduzione completata ma non ancora importata. Importa eventuali traduzioni in sospeso prima di attivarlo.

Il passaggio di acquisizione viene eseguito prima del caricamento della sorgente e opera secondo il principio best-effort. Se non riesce, l'esecuzione di traduzione procede comunque e Studio avvisa che le modifiche potrebbero essere sovrascritte.

Salva modifiche locali

L'azione Salva modifiche locali carica le traduzioni già presenti in Sanity senza accodare una traduzione e, se necessario, crea i file sorgente. Usala quando adotti il plugin in un progetto tradotto altrove, così General Translation parte dai contenuti già disponibili.

È disponibile nello strumento Translations e nella scheda del documento.

Ritraduci da zero

Traduci tutto ora include una casella di controllo Ritraduci da zero. Selezionandola, le traduzioni esistenti vengono scartate e rigenerate, incluse le modifiche apportate ai documenti tradotti nello Studio. Lasciala deselezionata per riutilizzare le traduzioni esistenti.

In precedenza, il plugin non consentiva di forzare una ritraduzione.


Collegamenti