Quando si carica un file in un progetto, tutte le nuove risorse vengono estratte da quel file e memorizzate in un progetto. Il formato del file caricato non deve essere necessariamente il formato iniziale configurato per il progetto. Se vengono forniti tag per raggruppare le risorse, le nuove chiavi avranno applicati quei tag.
Alcuni formati, come Gettext, forniscono informazioni meta aggiuntive preziose come commenti, descrizioni o informazioni sulle forme plurali. Queste informazioni vengono estratte quando e dove possibile e vengono memorizzate insieme alle risorse assegnate, consentendo di salvare tutte le informazioni preziose fornite nei file di localizzazione per un uso futuro.
Ci sono diversi metodi per caricare file:
-
Nell'applicazione, quando si crea un nuovo progetto o selezionando Carica file in una pagina di progetto
-
via API
-
via CLI
-
Per impostazione predefinita, vengono estratte solo nuove risorse e le chiavi esistenti in un progetto di localizzazione non vengono eliminate o aggiornate; non possono essere persi dati caricando file. Se è necessario sovrascrivere i dati esistenti, sostituire le risorse del progetto con il contenuto del file di localizzazione selezionando l'opzione
. Le traduzioni esistenti verranno sovrascritte con il contenuto del file di localizzazione caricato.Questa opzione è disponibile anche nell'API.
Nota
Per prevenire la perdita di dati, assicurati che le ultime modifiche siano scaricate da Phrase nel file di localizzazione prima di modificarlo e caricarlo nuovamente con l'opzione
. -
Inserisci un identificatore unico (ad es. il percorso del file) da anteporre ai nomi delle chiavi di traduzione caricate. Usa un prefisso significativo relativo al progetto o al file per mantenere organizzati i nomi delle chiavi.
Ad esempio, una chiave importata
hello_world
con il prefissoproject_
risulterà nella chiaveproject_hello_world
.Il prefisso della chiave di traduzione garantisce che le chiavi siano confrontate con quelle esistenti per evitare collisioni tra diversi progetti o file.
Questa opzione è disponibile anche nell'interfaccia API e CLI.
-
Aggiungi nuove chiavi e sovrascrivi quelle esistenti con il contenuto del file caricato.
-
Aggiorna le traduzioni di destinazione solo se il testo della fonte esistente corrisponde al testo della fonte nel file multilingue caricato.
-
Seleziona questa opzione se è necessario aggiornare tutte le descrizioni delle chiavi dal file caricato. Le descrizioni vuote sovrascriveranno quelle esistenti. Le descrizioni possono contenere informazioni aggiuntive per i traduttori e aiutare a identificare le singole chiavi nell'editor.
-
Per mantenere le traduzioni organizzate, aggiungi più tag alle chiavi con etichette significative. Seleziona questa opzione per impedire che nuove chiavi vengano automaticamente contrassegnate con un tag di caricamento.
-
Seleziona questa opzione per contrassegnare automaticamente nuove chiavi e chiavi con traduzioni aggiornate al momento del caricamento. Questo aiuterà a distinguere tra nuove, aggiornate e vecchie stringhe di traduzione, assicurando che solo le chiavi pertinenti vengano elaborate ulteriormente.
Questa opzione è disponibile anche nell'API.
-
Specifica la codifica (ad es. UTF-8) del file o lasciala selezionare automaticamente (la codifica selezionata automaticamente può risultare errata e può essere annullata annullando il caricamento).
-
-
previene la necessità di verificare nuovamente le traduzioni non nella lingua principale quando si aggiornano le traduzioni.
-
flusso di lavoro di revisione avanzato. Indica che le chiavi sono pronte per essere inviate in produzione.
tratta tutte le traduzioni caricate come revisionate. Questa opzione è disponibile quando è stato attivato il -
tratta tutte le traduzioni caricate come verificate.
-
Per caricare file in Strings, segui questi passaggi:
-
Prima di caricare, assicurati che il file sia formattato correttamente in base al tipo.
-
Da un progetto, seleziona Carica file dal menu .
Si apre la pagina
. -
Fai clic su Scegli file, seleziona un file da una directory.
Il file selezionato viene aggiunto al campo
. -
Seleziona un
per il file.I formati suggeriti vengono presentati per primi in base al tipo di file.
-
Seleziona una lingua per il contenuto del file dall'elenco a discesa.
Se queste informazioni non sono nel file stesso, crea una nuova lingua per il contenuto o usa una esistente.
-
Fornisci facoltativamente tag da assegnare alle nuove chiavi e ad altre opzioni.
-
Fai clic su Salva.
Il contenuto viene importato e convertito in chiavi.
-
Caricamento non riuscito
Se un file non può essere elaborato correttamente, vengono forniti dettagli sugli errori per aiutare a mitigare l'errore.
-
Caricamento riuscito
Dopo l'elaborazione riuscita di un file di traduzione, viene presentata una pagina di riepilogo che fornisce una panoramica del caricamento con pulsanti che collegano ai passaggi successivi. Fai clic sul tag di caricamento per aprire il file nell'editor.
-
Rimozione chiavi
Per prevenire la cancellazione accidentale delle chiavi quando si rimuovono le chiavi da un file di localizzazione e lo si carica di nuovo, quelle chiavi non vengono eliminate automaticamente.
Per rimuovere quelle chiavi, segui questi passaggi:
Le chiavi non menzionate sono chiavi che non sono incluse nel caricamento attuale ma esistono ancora nel progetto. Eliminandole, tutte le chiavi e le traduzioni associate che non erano incluse nel file caricato vengono rimosse dal progetto.
-
Annulla un caricamento
Ogni caricamento attiva più azioni e può modificare molti dati all'interno dei progetti e non è possibile ritirare un caricamento.
Per rimuovere le chiavi che sono state (erroneamente) introdotte da un file caricato, segui questi passaggi:
-
Dalla sintesi del caricamento del caricamento interessato, fai clic su Elimina e seleziona .
-
Conferma la selezione.
Tutte le chiavi e le traduzioni associate create da quel caricamento vengono rimosse. Le traduzioni per le chiavi che esistevano prima del caricamento non verranno rimosse. Per rimuovere traduzioni individuali, usa la cronologia delle versioni per ogni traduzione.
-
Da qualsiasi pagina del progetto, seleziona
dal menu per accedere all'archivio dei caricamenti.L'archivio dei caricamenti elenca tutti i caricamenti storici in tutti i possibili stati. Fai clic sul menu a discesa
per filtrare i caricamenti per stato ( , e/o ). Per individuare un caricamento specifico, utilizza la casella di ricerca in alto per cercare per nome.Accedi a sintesi dettagliate dei caricamenti delle risorse interessate facendo clic su un caricamento elencato. Tutti i caricamenti riusciti sono anche presentati nel flusso di attività di un progetto.
I file di lingua possono essere scaricati da un progetto in qualsiasi momento e in qualsiasi formato file supportato.
I file possono essere scaricati dall'applicazione, tramite API o CLI.
I file possono essere scaricati dalla scheda Scaricare (file multipli) o sul pulsante Altre opzioni /Scarica di una lingua.
Le opzioni di download vengono presentate quando si scarica un file nella finestra
con schede per , e .Selezionare diversi formato file specifico.
presenta diverse opzioni. Per ulteriori dettagli, fare riferimento all'articolo pertinente sul-
Se è stato aggiunto un prefisso della chiave di traduzione al momento del caricamento del file, selezionare questa opzione nella scheda
per rimuovere il prefisso dai nomi delle chiavi di traduzione esportate:-
Inserire il prefisso per scaricare tutte le chiavi e rimuovere il prefisso specificato dove possibile.
Importante
Questo potrebbe creare nomi di chiavi duplicati se altre chiavi condividono lo stesso nome dopo che il prefisso è stato rimosso.
-
Se necessario, selezionare
per scaricare solo le chiavi di traduzione contenenti il prefisso specificato e rimuovere il prefisso dal file scaricato.
Questa opzione è disponibile anche nell'API e nell'interfaccia CLI.
-
Per impostazione predefinita, le risorse traducibili sono memorizzate come chiavi e valori invece di mantenere la struttura originale del file. Questo consente formati di file intercambiabili senza essere bloccati in un formato e un raggruppamento flessibile utilizzando tag.
Alcuni framework o configurazioni richiedono più file sorgente che richiedono anche configurazioni aggiuntive.
Mantenere file separati
In generale, mantenere tutte le traduzioni per ogni lingua in un file. Questo rende i download delle risorse più veloci e più robusti. Le traduzioni sono mantenute organizzate in progetti, quindi non sono necessari file separati e piccoli.
Se i file di localizzazione devono essere mantenuti in file separati, è possibile utilizzare un flusso di lavoro basato su file etichettando le chiavi al momento del caricamento e utilizzando le etichette come riferimento quando si scaricano le chiavi tradotte nei file originali. Le chiavi possono avere più etichette e possono essere incluse in più file, garantendo riutilizzo e coerenza. Un flusso di lavoro basato su etichette è flessibile e consente la riorganizzazione delle risorse di traduzione senza dover essere caricate nei progetti.
Dai alle chiavi nomi unici in tutti i file per garantire un flusso di lavoro fluido. In un approccio basato su chiave-valore, una chiave deve avere gli stessi valori assegnati in ogni contesto. Al alcuni framework consentono l'uso di chiavi non uniche su più file. Alcuni formati, come Symfony, supportano i domini dei messaggi. Questi domini vengono rilevati dal nome del file. Le chiavi non sono automaticamente scoperte dai domini basati sul nome del file, ma questo può essere risolto utilizzando un prefisso di dominio unico per le chiavi all'interno del file.
Esempio di configurazione CLI
Se lavori con CLI o colleghi un progetto con un archivio (ad es. GitHub, GitLab o Bitbucket), configura un file di configurazione per gestire caricamenti e download.
Per l'esempio, un progetto ha diversi file di traduzione nominati semanticamente per la lingua sorgente. Ad esempio: accounts.en.yml
, emails.en.yml
ecc. Questi nomi semantici sono gestiti tramite etichette.
Configura il .phrase.yml
per riflettere l'organizzazione dei file nel progetto di localizzazione e collegali alle etichette nel progetto Strings includendo il segnaposto dell'etichetta nel percorso del file:
phrase: access_token: "3d7e6598d955bfcab104c45c40af1b9459df5692ac4c28a17793" project_id: "23485c9c5dfb15d85b32d9c5f3d2hl54" file_format: yml push: sources: - file: ./path/to/locales/<tag>.en.yml params: locale_id: "abcd1234cdef1234abcd1234cdef1234" pull: targets: # account - file: ./path/to/locales/accounts.<locale_name>.yml params: tags: account # email - file: ./path/to/locales/emails.<locale_name>.yml params: tags: email
Importante
Sebbene supportato, per motivi di sicurezza, non è consigliabile memorizzare i token di accesso all'interno del file.
Impostare una variabile ambientale PHRASE_ACCESS_TOKEN
è più sicuro.
I parametri tags possono essere utilizzati anche nella sezione push invece di utilizzare il segnaposto <tag>
.
La configurazione crea chiavi con tag basati sul file da cui provengono quando si esegue un push o si attiva la sincronizzazione da un archivio. Quando si esegue un pull o si attiva l'esportazione nell'archivio, raggruppa le chiavi in file in base ai loro tag.
Un prodotto, un sito web o un'app è tradotto in diverse lingue, ma in alcuni casi, la localizzazione non è solo la lingua scelta, ma diverse versioni all'interno di una lingua.
È necessaria ulteriore distinzione se:
-
Un prodotto ha un branding diverso nelle regioni in cui si parla la stessa lingua.
-
Un prodotto è utilizzato da diversi clienti che vogliono utilizzare una soluzione white label.
-
Sono richieste varianti linguistiche come semplice, formale o informale.
Localizzare un prodotto statico
Se un prodotto è completamente sviluppato e raramente aggiornato, può esistere una versione separata del prodotto all'interno di un progetto.
-
Se un output singolo o un progetto a breve termine:
Crea un branch, lavora esclusivamente su quel branch per la durata del progetto e elimina il branch quando completato.
-
Se un progetto a lungo termine:
Mantieni una copia del progetto esistente. Questo consente di invitare e lavorare con i clienti nella stessa organizzazione fornendo solo accesso ai loro progetti, lasciando gli altri progetti nascosti per loro.
Localizzare un progetto con aggiornamenti continui
Se un prodotto viene costantemente aggiornato con nuovi contenuti (chiavi), applicare quegli aggiornamenti a più progetti e mantenerli sincronizzati è difficile. Usa lingue dedicate all'interno di un progetto per mantenerle.
I codici lingua che seguono lo standard ISO (ad es. en-US) non devono essere unici, quindi molte versioni della stessa lingua possono essere create all'interno di un progetto. Distinguere tra regioni, clienti o pubblici utilizzando un nome di lingua unico.
Quando configurato, qualsiasi nuova chiave introdotta nelle impostazioni locali predefinite apparirebbe come non tradotta nelle altre lingue e sarebbe localizzata di conseguenza. Se lavori con un cliente e i loro traduttori, assegnali specificamente in modo che possano solo modificare le loro versioni linguistiche aggiornando l'accesso alla lingua nel loro profilo utente o nella gestione degli utenti del progetto.
Configura processi di localizzazione paralleli con lavori e flussi di lavoro di revisione all'interno dello stesso progetto. Questa flessibilità si estende anche al caricamento e al download di file di lingua o processi automatizzati tramite API.