Localizzazione di software su OS X

Requisiti: buona padronanza dell’inglese tecnino, tanta pazienza, Interface Builder, editor di testo
Una volta su un forum ho letto che le localizzazioni (le traduzioni in diverse lingue di un programma) sono inutili. Sostenevano che se si vuole imparare ad utilizzare bene un programma bisogna imparare a leggerne la lingua originaria di sviluppo. Io sostengo che questo non è proprio vero, lo è in parte ma bisogna anche ammettere che l’apprendimento di un determinato programma è più rapido se la lingua corrisponde alla propria.
Un bel giorno mi sono messo a sezionare un’applicazione, precisamente Picturesque, ed ho scoperto come funzionavano i pacchetti di localizzazioni al suo interno. Il principio è molto semlice: all’interno della maggior parte dei software su piattaforma OS X vi è
- un file che contiene le “stringhe” di parole utilizzate nel programma
- dei file .nib che costituiscono il layout vero è proprio del programma.
La creazione di una localizzazione avviene su questi determinati file: procedendo con un editor di testo e dei software dedicati si crea un nuovo pacchetto nella lingua che si desidera.
Dove sono i file?
Per prima cosa assicuratevi di eseguire un backup dell’applicazione in modo da poterla recuperare qualsiasi cosa succeda. Posizionatevi sull’icona del programma che volete tradurre e fate click con il tasto destro del mouse (o control+click); comparirà un menù a tendina da cui selezionare la voce Mostra contenuto pacchetto. Dalla finestra del Finder che apparirà automaticamente accedete a Contents > Resources: il risultato è che vi troverete davanti a delle cartelle con “estensione” .lproj, cartelle su cui si concentrerà il nostro lavoro.
Cominciamo a tradurre
Create una copia della cartella English.lproj e rinominatela come Italian.lproj: una volta al suo interno vi ritroverete all’incirca nella stessa situazione dell’immagine a fianco. Il file Localizable.strings è il primo file da trattare: apritelo con un editor di testo (TextMate è un’ottima soluzione) e iniziate a osservarne la struttura. Il funzionamento non è difficile da comprendere (premessa una discreta conoscenza dell’inglese, in particolar modo quello tecnico): è sufficiente sostituire alle stringhe di destra la traduzione in italiano delle corrispondenti stringhe di sinistra; cominciate pure a cimentarvi nella traduzione, al termine salvate il file. Una volta completato quel file saremo già a un buon punto della localizzazione ma attenzione, non è finita quì.
Interface Builder
Interface Builder è uno strumento fornito da Apple nel pacchetto per sviluppatori Xcode; questo tool vi permette di lavorare agilmente sui file di layout con estensione .nib, rappresentati da quelle icone dorate con i bulloni.
Ora c’è una piccola cosa da sapere sotto il punto di vista tecnico: è discrezione dello sviluppatore del software decidere se rilasciare il proprio prodotto con i file .nib in forma compilata o meno; se i nostri file .nib rientrano nella categoria dei file “compilati” allora non ci sarà mai possibilità di poterci lavorare sopra. In tal caso, quindi, sarà necessario contattare lo sviluppatore nella speranza che voglia distribuire il proprio prodotto localizzato in italiano - nella maggior parte dei casi, soprattutto se si parla di piccole software house, acconsentono sempre. Sarà premura dello sviluppatore inviarvi una versione del software con i file .nib non compilati. Le applicazioni oggi in circolazione contengono, all’ottanta per cento dei casi, file .nib compilati.
Ora aprite il file MainMenu.nib con Interface Builder e vi apparirà una schermata molto simile a quella nell’immagine all’inizio del paragrafo.
Ogni elemento che visualizzate in questa finestra è modificabile direttamente con Interface Builder. Per fare un esempio ho cliccato due volte sul componente “MainMenu” e il risultato è il seguente:
Ora per ogni stringa da tradurre (che nell’immagine vedete già in italiano) dovrete cliccarci sopra due volte in modo abilitarne la modifica.
Tradotta ogni singola parola salvate il file: si andrà a sovrascrivere. Ricordate: più salvate, meglio è! Questo lavoro lo dovrete fare per ogni componente della finestra e per ogni .nib del programma in questione. È un lavoro lungo e delicato, anche un piccolissimo errore potrebbe non far funzionare la localizzazione. Non abbiate fretta nel lavoro!
Attualmente di ufficiale ho tradotto solo Picturesque; per uso personale ho tradotto diversi software, qualunque difficoltà riscontrate o anche semplici domande esponete pure, sarò lieto di aiutarvi.


Complimenti a Francesco, ottimo lavoro!
Questo è quello che intendevo quando si parlava di contribuire
Ormai è passato già diverso tempo da quando ho iniziato a localizzare diverse applicazioni per Mac.
E la tua guida aiuterà altre persone a comprendere come localizzare altre applicazioni per Mac.
Complimenti
Mi sembrava un buon inizio raccontare una mia esperienza, spero torni utile a qualcuno.
Ringrazio ancora il team di AppleCow per questa occasione, sono lieto di poter contribuire ad un’ ottimo blog come il vostro.
Tempo fa provai a localizzare ma incappai in un nib compilato e fui talmente demoralizzato che ormai ho abbandonato ogni speranza
Anche io ultimamente vedo solo .nib compilati, però continuo anche a contattare software house. è bello poter creare un qualcosa che poi verrà usato da diverse persone, mi gratifica.
Ottimo articolo Francesco e benvenuto in AppleCow
[...] effettuare localizzazioni, ma un buon inizio per capire come procedere. L’articolo lo trovate qui. Colgo inoltre l’ occasione per ringraziare ufficialmente i ragazzi di [...]
[...] effettuare localizzazioni, ma un buon inizio per capire come procedere. L’articolo lo trovate qui. Colgo inoltre l’ occasione per ringraziare ufficialmente i ragazzi di AppleCow [...]