# gt: General Translation CLI tool: .xcstrings
URL: https://generaltranslation.com/it/docs/cli/reference/formats/xcstrings-files.mdx
Docs index: https://generaltranslation.com/llms.txt
Description: Traduci gli Apple String Catalogs con la CLI di General Translation. Riferimento API per il formato di file .xcstrings.

La CLI traduce i file `.xcstrings`, che contengono il contenuto sorgente e tutte le impostazioni regionali in un unico String Catalog. Il supporto richiede `gt` 2.21.0 o versioni successive.

## Panoramica [#overview]

| Argomento                        | Descrizione                                                                                                   |
| -------------------------------- | ------------------------------------------------------------------------------------------------------------- |
| [Configurazione](#config)        | Seleziona i cataloghi e mantieni ogni impostazione regionale nello stesso file.                                |
| [Come funziona](#how-it-works)   | Suddividi il contenuto sorgente per l&#39;upload e unisci le impostazioni regionali tradotte durante il download. |
| [Modifiche locali](#local-edits) | Sincronizza le modifiche senza considerare come cambiamenti le altre impostazioni regionali del catalogo.      |
| [Errori](#errors)                | Individua i cataloghi non validi e le impostazioni di percorso non supportate.                                 |

## Configurazione [#config]

Aggiungi una voce `xcstrings` all&#39;interno di `files` con un array `include` che punti direttamente a ciascun catalogo.

```json title="gt.config.json"
{
  "defaultLocale": "en",
  "locales": ["es", "ja"],
  "files": {
    "xcstrings": {
      "include": ["Resources/Localizable.xcstrings"]
    }
  }
}
```

Uno String Catalog contiene tutte le impostazioni regionali in un unico file e viene aggiornato in-place. I suoi pattern `include` non devono contenere `[locale]` e la configurazione `xcstrings` non accetta `transform`.

Il valore `sourceLanguage` del catalogo deve risolversi nella stessa impostazione regionale canonica di `defaultLocale`. Ad esempio, un catalogo con `"sourceLanguage": "en"` può usare `"defaultLocale": "en"`, ma non `"defaultLocale": "fr"`.

## Come funziona [#how-it-works]

Durante l&#39;upload, la CLI legge il catalogo e invia all&#39;API una porzione contenente solo la sorgente. Ogni entry conserva la propria localizzazione nella lingua sorgente, quando presente; le entries che usano la key stessa come source text restano nella porzione senza il field `localizations`. Le impostazioni regionali di destinazione già esistenti non vengono caricate come contenuto sorgente.

Durante il download, la CLI reintegra ciascuna impostazione regionale di destinazione nel catalogo su disco, modificando soltanto la localizzazione di quella impostazione regionale per le entries corrispondenti. Le altre impostazioni regionali, i comments, gli stati di estrazione, le sostituzioni, le variazioni e i fields non riconosciuti rimangono in-place.

Se la traduzione scaricata contiene una key che non esiste più nel catalogo locale, la CLI salta quella key e stampa un avviso. Il file scaricato viene serializzato in JSON con indentazione di due spazi e una newline finale.

## Modifiche locali [#local-edits]

Il registro dei download viene memorizzato per singola impostazione regionale, anche se tutte le impostazioni regionali condividono un unico file. In questo modo si evita che un&#39;impostazione regionale di destinazione non modificata venga inviata come modifica locale dopo che un&#39;altra impostazione regionale è stata unita nel catalogo.

Usa [`gt save-local`](/docs/cli/reference/commands/save-local), [`gt translate --save-local`](/docs/cli/reference/commands/translate) o [`options.saveLocal: true`](/docs/cli/reference/config#save-local) per inviare le localizzazioni di destinazione modificate. La sincronizzazione delle modifiche locali è opt-in.

La Dashboard apre inoltre le traduzioni `.xcstrings` nella vista Raw modificabile. Una modifica salvata aggiorna soltanto l&#39;impostazione regionale di destinazione selezionata nel catalogo.

## Errori [#errors]

* Un JSON non valido, un campo `sourceLanguage` mancante o vuoto oppure un campo `strings` che non sia un oggetto fanno sì che la CLI salti il catalogo e segnali il problema di validazione.
* Un valore di `sourceLanguage` che non corrisponde a `defaultLocale` interrompe l&#39;esecuzione prima del caricamento dei file.
* Un pattern `include` che contiene `[locale]` oppure un&#39;impostazione `xcstrings.transform` interrompe l&#39;esecuzione, poiché le impostazioni regionali tradotte devono confluire nel catalogo originale.
* La chiave riservata `__proto__` viene rifiutata nelle mappe di stringhe e di localizzazione. Le chiavi denominate `constructor` o `prototype` sono invece supportate.

## Sitemap

See the full [sitemap](https://generaltranslation.com/sitemap.md) for all pages.
