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

La CLI traduce i file `.stringsdict`, le property list XML che contengono le regole di pluralizzazione di un&#39;app. Ogni impostazione regionale ha il proprio file, insieme alle relative tabelle `.strings`, in una directory `<locale>.lproj`. Le traduzioni mantengono la struttura del plist, le chiavi di formato e gli specificatori di formato, e ricostruiscono le forme plurali per ciascuna impostazione regionale di destinazione.

*Nota: `.stringsdict` fa parte del layout di localizzazione legacy di Apple, abbinato a [`.strings`](/docs/cli/reference/formats/dot-strings-files). La migrazione agli String Catalog di Xcode unisce entrambi in un unico [catalogo `.xcstrings`](/docs/cli/reference/formats/xcstrings-files) ed elimina i file originali, quindi un progetto utilizza un layout oppure l&#39;altro.*

## Configuration [#config]

Aggiungi una entry `dotStringsdict` all&#39;interno di `files` con un array `include` di glob patterns. Inserisci il placeholder `[locale]` nel nome della directory `.lproj`, in modo che la CLI possa individuare il source file e salvare le traduzioni nel percorso corretto.

```json title="gt.config.json"
{
  "defaultLocale": "en",
  "locales": ["pl", "ar", "zh"],
  "files": {
    "dotStringsdict": {
      "include": ["Resources/[locale].lproj/Localizable.stringsdict"]
    }
  }
}
```

Con questa configurazione, la CLI legge `Resources/en.lproj/Localizable.stringsdict` e scrive il file tradotto in `Resources/pl.lproj/`, `Resources/ar.lproj/` e `Resources/zh.lproj/`. Consulta il [riferimento di configurazione](/docs/cli/reference/config#files) per tutte le chiavi dei file.

La chiave `dotStringsdict` richiede `gt` 2.18.1 o versione successiva.

## Codifica dei file [#encoding]

La CLI rileva i byte order mark UTF-8, UTF-16 e UTF-32 quando legge un file `.stringsdict`. Invia l&#39;XML decodificato all&#39;API, quindi scrive ogni traduzione nella codifica originale del file sorgente. Un file privo di byte order mark viene trattato come UTF-8.

Se il file sorgente è stato spostato o eliminato dopo l&#39;upload, la CLI utilizza la codifica del file tradotto esistente, quando disponibile.

<Callout type="info">
  **Modificato nella v2.20.0:** la CLI ora preserva la codifica sorgente invece di riscrivere un file UTF-16 come UTF-8 o di inviarne i byte codificati al parser XML.
</Callout>

## Comportamento dell&#39;output [#output]

La CLI preserva i ritorni a capo nelle chiavi e nei valori degli elenchi di proprietà tramite riferimenti a caratteri XML.

## Traduci insieme alle tue tabelle .strings [#pairing]

Un file `.stringsdict` copre solo le chiavi che richiedono regole di pluralizzazione; il resto del testo dell&#39;impostazione regionale rimane nelle tabelle `.strings`. Configura entrambe le chiavi in modo che una sola run copra l&#39;intera directory `.lproj`:

```json title="gt.config.json"
{
  "defaultLocale": "en",
  "locales": ["pl", "ar", "zh"],
  "files": {
    "dotStrings": {
      "include": ["Resources/[locale].lproj/*.strings"]
    },
    "dotStringsdict": {
      "include": ["Resources/[locale].lproj/*.stringsdict"]
    }
  }
}
```

## Categorie plurali [#plurals]

Un file tradotto contiene le categorie plurali effettivamente usate dalla target language, che raramente coincidono con quelle della sorgente. L&#39;inglese sceglie tra `one` e `other`, mentre il polacco usa tre forme per un conteggio intero, l&#39;arabo sei e il cinese una sola. La CLI ricostruisce ogni variabile di formato in base alle regole CLDR della target language, anziché copiare le categorie della sorgente:

* Le categorie usate dalla target language sono sempre presenti, quindi una traduzione in polacco acquisisce forme che l&#39;inglese non aveva.
* Le categorie che la target language non seleziona mai vengono eliminate, quindi una traduzione in cinese si riduce a un&#39;unica forma `other`.
* Uno `zero` esplicito nella sorgente viene mantenuto anche per una lingua le cui regole CLDR non lo prevedono, perché Foundation lo renderizza comunque quando il conteggio è 0.

Poiché l&#39;insieme delle categorie cambia, non aspettarti che il file tradotto abbia le stesse keys della sorgente. Confronta piuttosto l&#39;output renderizzato con conteggi rappresentativi.

## Sitemap

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