Gestione della traduzione

File di localizzazione (Strings)

Contenuti tradotti automaticamente dall'inglese con Phrase Language AI.

I file di localizzazione sono file di testo che possono essere aperti e modificati in un editor di testo come Notepad o TextEdit o uno dei miriadi di Strumenti di modifica del testo avanzati usati dai programmatori. Questi file seguono generalmente il principio chiave-valore. Ciò significa che contengono un elenco di frammenti di testo (Strings) che sono associati a ID univoci (chiave). Ogni stringa è quindi un valore di una chiave (Questo semplice esempio è il formato di file di localizzazione usati nella programmazione Java.):

  • key1 = value1

  • key2 = value2

  • ...

  • chiaveN = valoreN

Crea di file di localizzazione

I file di localizzazione sono file di testo semplice con una struttura semplice. Possono essere creati manualmente ma sono solitamente generati automaticamente da utilità di internazionalizzazione o script disponibili per diversi ambienti di sviluppo. La creazione automatica di file di localizzazione garantisce che le strutture dei file siano valide.

Per Crea un file di localizzazione, tutti i pezzi di testo visualizzabile vengono sostituiti con ID univoci nei file di codice. Le Strings di testo vengono quindi aggiunte al file di localizzazione con i loro ID.

Usare di file di localizzazione

Invece delle Strings di testo effettive, il codice ora contiene solo chiave. Quando il software genera una vista per l'utente, queste chiave vengono usate per cercare le Strings associate nel file di localizzazione.

Se un'applicazione è configurare per essere usata in inglese e spagnolo, tutto il testo inglese può essere conservato in un file chiamato English.txt ed è la posizione predefinita del testo. Se un utente non Seleziona una lingua, tutto il testo verrà estratto da questo file per generare qualsiasi visualizzazione. Se l'utente Seleziona spagnolo, il software viene reindirizzato a Spanish.txt. Molte lingue possono essere utilizzate con un sistema come questo.

Il vantaggio è che la scelta della lingua per la visualizzazione non influisce sul codice. Se il software deve visualizzare un pulsante di accesso, potrebbe richiedere la stringa associata alla chiave login_button e deve solo sapere in quale file cercare per recuperare la stringa appropriata per la lingua data.

Gestione stringa

Come piattaforma di traduzione basata su chiave, Phrase supporta molti tipi di file di risorse diversi. Dopo che i file sono stati caricati, le chiavi e i loro valori di stringa associati vengono estratti. Le chiavi e le Strings vengono quindi presentate al traduttore in un formato standardizzato. I traduttori si concentrano sulla loro attività senza doversi preoccupare del formato esatto del file di localizzazione. Possono ispezionare le chiavi, perché la chiave stessa può fornire un contesto cruciale e guidarli verso scelte lessicali corrette.

Quando tutte le Strings sono tradotte, i file vengono scaricati. Nel processo, vengono creati i formati di file di localizzazione necessari che corrispondono al file di origine originale.

Formati file di risorse

Sono supportati quattro ampi tipi di risorse, tutti essenzialmente basati su testo e apribili e ispezionabili in un editor di testo.

Fogli di calcolo

Sono supportati i file .XLSX e .CSV. Questi formati sono equivalenti ai fini della localizzazione e contengono righe di coppie chiave-valore. Le chiavi si trovano in una riga, mentre i valori corrispondenti si trovano in una riga adiacente. Quale colonna esatta venga utilizzata per quale scopo dipende dall'applicazione e un localizzatore deve configurare Phrase per interpretare correttamente le colonne. I file .CSV di Zendesk hanno una struttura fissa, quindi questo tipo di file non richiede ulteriori modifiche:

"Titolo","Lingua predefinita","Testo predefinito","Testo inglese","Stato variante"
"simple_key","German","Einfacher Schlüssel.","Simple key.","Current"

XML

XML è un formato che offre meta informazioni sotto forma di <tag>. La struttura del tag viene usata per determinare dove si trovano le chiavi e i relativi valori, come mostrato qui da un file XML Android:

 <string name="simple_key">Just a  key with a message.</string>

Due formati di traduzione XML standard sono .TMX e .XLIFF. Questi non contengono solo chiavi e valori in una lingua, ma associano anche coppie di valori da una lingua di origine con i valori corrispondenti da una lingua di destinazione. Tali file sono solitamente bilingue, come mostra questa unità di traduzione in un file Xliff Symfony:

<trans-unit id="simple_key" resname="simple_key">
 <source xml:lang="de-DE">Nur ein einfacher Schlüssel mit einer einfachen Nachricht.</source>
<target xml:lang="en-GB">Just a simple key with a simple message.</target>
</trans-unit>

I programmi QT usano file di risorse con una struttura molto simile a questi formati standardizzati, ma per ragioni storiche hanno un layout diverso.

Elenchi di chiave-valore semplici

Esistono file di risorse che contengono solo semplici elenchi di chiavi e valori, come mostra questo frammento di un YAML Ruby on Rails:

simple_key: Just a simple key with a simple message.

Molti linguaggi di programmazione o piattaforme diverse usano tali formati con Minore differenze di layout.

Poiché si tratta di file monolingua, un programma di localizzazione deve mantenere versioni parallele di tali file: una per la lingua di origine e altre per le lingue di destinazione.

Gettext produce file chiave-valore contenenti informazioni aggiuntive, come commenti descrittivi o varianti plurali:

# This is the amazing description for this key!
msgid "key_with_description"
msgid_plural ""
msgstr[0] "Check it out!" Questa chiave ha una descrizione! (Almeno in alcuni formati)"
msgstr[1] \"Dai un'occhiata!\" Questa chiave ha %s descrizioni! (Almeno in alcuni formati)"

Esistono formati concorrenti con funzionalità simili e layout che variano in modi relativamente Minore.

Array associativi

Mentre altri formati richiedono codice Personalizzato (parser) per leggerli, alcuni formati sono più facili per sviluppatori e localizzatori. I formati basati su .JSON (JavaScript) e array .PHP possono essere letti e mappati direttamente in strutture di codice comuni (array) facili da manipolare. Gli array possono essere complessi e diverse applicazioni generano strutture di array Personalizzato.

Ad esempio, go-i18n JSON si riferisce alle chiavi come ID:

{
    "id": "simple_key",
    "translation": "simple key, simple message, so simple."
},

Angular utilizza le chiavi stesse come chiavi nei suoi array:

"simple_key": "Sono una chiave semplice con un messaggio semplice.".

Poiché esistono queste differenze Minore ma cruciali, le strutture .JSON e .PHP Array ampiamente utilizzate sono supportate.

Questo articolo ti è stato utile?

Sorry about that! In what way was it not helpful?

The article didn’t address my problem.
I couldn’t understand the article.
The feature doesn’t do what I need.
Other reason.

Note that feedback is provided anonymously so we aren't able to reply to questions.
If you'd like to ask a question, submit a request to our Support team.
Thank you for your feedback.