|
Estensioni dei file |
.xlf, .xliff |
|
Estensione API |
xlf |
|
Importa |
Sì |
|
Esporta |
Sì |
|
Supporto forme plurali |
Sì |
|
Supporto descrizione |
Sì |
|
Opzioni di formato Queste opzioni possono essere specificate quando un file viene caricato e/o scaricato. A seconda del metodo di caricamento/scaricamento (API, CLI, sincronizzazione Repo, ecc.), possono essere specificate nei parametri di query |
enclose_in_cdata include_translation_state indent_size indent_style ignore_source_translations ignore_target_translations export_key_id_as_resname export_key_name_hash_as_extradata override_file_language strip_placeholder_delimiters delimit_placeholders |
Il formato di file più utilizzato nell'industria della traduzione. Può essere visto come lo specchio del file sorgente che scompone il contenuto sorgente in vari segmenti memorizzati in tag (ad es. <trans-unit>, <seg-source>).
XLIFF è basato su XML e soggetto a convenzioni XML di base come validità e ben formato. Esegui sempre un controllo di sanità prima della traduzione cambiando l'estensione del file da .xliff (.xlf) a .xml e aprendolo in un browser web. Se il file è valido, viene presentata una struttura documentale ben organizzata e, in caso contrario, sarà o non renderizzabile o con un messaggio di errore.
XLIFF è stato aggiornato con XLIFF 2.0. È simile all'XLIFF più ampiamente utilizzato, ma è un formato di file diverso solitamente incompatibile con XLIFF.
Xcode può impacchettare stringhe localizzabili nel formato XLIFF standard del settore da inviare per la localizzazione con Phrase.
Opzioni di formato
|
Identificatore |
enclose_in_cdata |
|
Tipo |
booleano |
|
Caricamento |
No |
|
Download |
Sì |
|
Predefinito |
false |
|
Descrizione |
Includere traduzioni contenenti tag html in CDATA. Se disabilitato, le entità HTML non supportate vengono sostituite con i loro valori decodificati. Ad esempio:
|
|
Identificatore |
include_translation_state |
|
Tipo |
booleano |
|
Caricamento |
No |
|
Download |
Sì |
|
Predefinito |
false |
|
Descrizione |
Includi lo stato delle traduzioni nella destinazione locale. Ogni |
|
Identificatore |
indent_size |
|
Tipo |
integer |
|
Caricamento |
No |
|
Download |
Sì |
|
Predefinito |
4 |
|
Descrizione |
Specifica il numero di caratteri di indentazione |
|
Identificatore |
indent_style |
|
Tipo |
stringa |
|
Caricamento |
No |
|
Download |
Sì |
|
Predefinito |
spazio |
|
Descrizione |
Specifica il carattere di indentazione. I valori consentiti sono |
|
Identificatore |
ignore_source_translations |
|
Tipo |
booleano |
|
Caricamento |
Sì |
|
Download |
No |
|
Predefinito |
false |
|
Descrizione |
Ignora le traduzioni sorgente nel file durante il caricamento (per evitare aggiornamenti accidentali della lingua sorgente) |
|
Identificatore |
ignore_target_translations |
|
Tipo |
booleano |
|
Caricamento |
Sì |
|
Download |
No |
|
Predefinito |
false |
|
Descrizione |
Ignora le traduzioni di destinazione nel file durante il caricamento (per evitare aggiornamenti accidentali della lingua sorgente) |
|
Identificatore |
export_key_id_as_resname |
|
Tipo |
booleano |
|
Caricamento |
No |
|
Download |
Sì |
|
Predefinito |
false |
|
Descrizione |
Esporta l'ID chiave come attributo resname. |
|
Identificatore |
export_key_name_hash_as_extradata |
|
Tipo |
booleano |
|
Caricamento |
No |
|
Download |
Sì |
|
Predefinito |
false |
|
Descrizione |
Esporta l'hash del nome chiave come attributo extradata. |
|
Identificatore |
override_file_language |
|
Tipo |
booleano |
|
Caricamento |
Sì |
|
Download |
No |
|
Predefinito |
false |
|
Descrizione |
Questo formato di file contiene tipicamente informazioni sulla lingua nel file stesso. Usa questa opzione per sovrascrivere la lingua con una che specifichi. |
|
Identificatore |
strip_placeholder_delimiters |
|
Tipo |
booleano |
|
Caricamento |
Sì |
|
Download |
No |
|
Predefinito |
false |
|
Descrizione |
Rimuove i tag |
|
Identificatore |
delimit_placeholders |
|
Tipo |
booleano |
|
Caricamento |
No |
|
Download |
Sì |
|
Predefinito |
false |
|
Descrizione |
Avvolgi i segnaposto delle traduzioni in tag |
Campione di codice
<?xml version="1.0" encoding="UTF-8"?>
<xliff xmlns="urn:oasis:names:tc:xliff:document:1.2" version="1.2">
<file original="global" datatype="plaintext" source-language="de-DE" target-language="en-GB">
<body>
<trans-unit id="boolean_key">
<source xml:lang="de-DE">--- true
</source>
<target xml:lang="en-GB">--- true
</target>
</trans-unit>
<trans-unit id="empty_string_translation">
<source xml:lang="de-DE"/>
<target xml:lang="en-GB"/>
</trans-unit>
<trans-unit id="key_with_description">
<origine xml:lang="de-DE">Guarda questo! Questa chiave ha una descrizione!</origine>
<destinazione xml:lang="en-GB">Controllalo! Questa chiave ha una descrizione! (Almeno in alcuni formati)</destinazione>
<nota>Questa è l'incredibile descrizione per questa chiave!</nota>
</trans-unit>
<trans-unit id="key_with_line-break">
<source xml:lang="de-DE">Diese Übersetzung hat
einen Zeilenumbruch.</source>
<destinazione xml:lang="en-GB">Questa traduzione contiene
un'interruzione di riga.</destinazione>
</trans-unit>
<trans-unit id="nested.deeply.key">
<origine xml:lang="de-DE">Io sono una chiave profondamente annidata.</origine>
<destinazione xml:lang="en-GB">Sono una chiave profondamente annidata.</destinazione>
</trans-unit>
<trans-unit id="nested.key">
<origine xml:lang="de-DE">Questa chiave è annidata all'interno di uno spazio dei nomi.</origine>
<destinazione xml:lang="en-GB">Questa chiave è annidata all'interno di uno spazio dei nomi.</destinazione>
</trans-unit>
<trans-unit id="null_translation">
<source xml:lang="de-DE"/>
<target xml:lang="en-GB"/>
</trans-unit>
<trans-unit id="sample_collection">
<source xml:lang="de-DE">---
- primo elemento
- secondo elemento
</source>
<target xml:lang="en-GB">---
- first item
- second item
- third item
</target>
</trans-unit>
<trans-unit id="simple_key">
<source xml:lang="de-DE">Einfacher Schlüssel, einfache Nachricht, so einfach</source>
<destinazione xml:lang="en-GB">Chiave semplice, messaggio semplice, così semplice.</destinazione>
</trans-unit>
<trans-unit id="unverified_key">
<source xml:lang="de-DE">Diese Übersetzung ist noch nicht bestätigt und wartet drauf!</source>
<target xml:lang="it-IT">Questa traduzione non è ancora verificata e aspetta.</target> (In alcuni formati esportiamo anche questo stato)</target>
</trans-unit>
</body>
</file>
</xliff>
Forme plurali
Le chiavi plurali vengono esportate utilizzando la seguente sintassi:
<trans-unit id="plural_key">
<source xml:lang="en">{"one":"one chair","other":"{nrOfChairs} chairs","zero":"no chairs"}</source>
<target xml:lang="it">{"one":"una sedia","other":"{nrOfChairs} sedie","zero":"nessuna sedia"}</target>
</trans-unit>