Monday, February 11, 2013

SharePoint 2010 - Gestione delle traduzioni con .Resx, .Docx grazie ad un piccolo tool


Oggi scrivo un lungo post con la descrizione delle attività da eseguire per la gestione di traduzioni di Sharepoint 2010 tramite i file .resx esportati dai siti Sharepoint.
Viene, inoltre, descritta la procedura di creazione di file .docx per le traduzioni, da fornire a personale traduttore un po' meno tecnico.


Prerequisiti

Devono essere installati i Language Pack delle lingue da utilizzare sui siti Sharepoint 2010.
Il sito deve essere configurato per l’utilizzo di almeno due lingue.
Si consiglia la lettura della documentazione Microsoft a riguardo: 


Configurare un Sito SharePoint per il Multilingua

Descriviamo brevemente la procedura per l’impostazione del multilingua e per la traduzione di label. 
Per un maggior dettaglio, seguire la documentazione Microsoft:
http://technet.microsoft.com/en-us/library/ff805062.aspx

Per la corretta visualizzazione del multilingua, un sito di Sharepoint deve essere configurato come segue.

Dal sito in oggetto, cliccare su Site Actions > Site Settings. Nella sezione Site Administration, cliccare sul link Language Settings.



Se i Language Pack sono installati correttamente, vedremo nella sezione Alternate Language(s) le lingue possibili: selezioniamo le lingue desiderate.
Lasciare No nell’opzione Overwrite Translations: in questo modo, modificando una label nella lingua predefinita (nell’esempio, inglese), la modifica NON viene propagata alle lingue alternative.
Cliccare su OK.
A questo punto, cliccando sul nome utente, sarà visibile una nuova voce di Menu “Select Display Language” con la selezione della lingua.



Traduzione di termini con l'interfaccia Browser

Su Sharepoint 2010, è possibile definire le traduzioni operando direttamente sulle impostazioni degli oggetti (Content Type, List, Library, Site Column, Site Title, Site Description, ….).
Per tradurre, ad esempio, il titolo di una Library in Italiano, seguire i passi seguenti.
-          Cambiare Lingua di Visualizzazione in Italiano, dal Menu dal nome utente (in alto a destra).
-          Aprire la Library a cui si vuole cambiare il titolo.
-          Dal ribbon, nel tab Raccolta, cliccare sulle Impostazioni Raccolta.



-          Cliccare su Titolo, descrizione e struttura e modificare il Nome (e/o descrizione)



-          Salvare e verificare il cambio del Nome al cambio di Lingua

NOTA: la Navigazione a sinistra potrebbe non seguire la traduzione, se è stata modificata in precedenza. Per correggere la lingua del menu a sinistra, operare come descritto per la Raccolta, sulla Struttura di navigazione da Impostazione Sito.


Importazione/Esportazione delle traduzioni

La funzione multilingua su Sharepoint 2010 consente di esportare e importare il contenuto dell'applicazione per la traduzione massiva.  Invece di tradurre il contenuto dell'applicazione un elemento alla volta, è possibile esportare le stringhe per qualsiasi contenuto nella lingua primaria o in una delle lingue secondarie.
Per esportare il contenuto, è possibile utilizzare il collegamento Esporta traduzioni nella pagina Impostazioni sito.
Quando si esporta il contenuto dell'applicazione di una lingua secondaria, si può decidere di esportare tutto il contenuto o solo il contenuto che non è stato tradotto.



Quando il contenuto dell'applicazione viene esportato, questo viene salvato come file. Resx, che può essere aperto utilizzando un editor di testo o qualsiasi altro strumento di terze parti in grado di aprire i file di risorse.
Dopo che le stringhe di risorse sono state tradotte, è possibile utilizzare il collegamento Importa traduzioni nella pagina Impostazioni sito per importare il file. Resx.

NOTA: E’ possibile importare solo i file .Resx per le lingue alternative.



Traduzioni con Simple Resx Editor

Per la gestione dei file di traduzione, può essere utilizzato qualsiasi editor opportuno. Tuttavia, spesso è necessario esportare il file Resx in un formato facilmente modificabile dal personale, non tecnico, che si occupa delle traduzioni. È importante fornire, quindi, un documento ad esempio in Word o Excel per la gestione delle traduzioni.

Il tool di terze parti Simple Resx Editor consente la gestione di più file di traduzioni e la sua esportazione e importazione tramite file WORD (.docx). Non ha bisogno di installazione, è sufficiente scaricare il file Zip dal sito http://code.google.com/p/simpleresxeditor/downloads/detail?name=SimpleResxEditor-v0.7.1.0.zip&can=2&q=, estrarlo ed eseguire l’applicazione.

Ecco i passi da eseguire per la corretta traduzione massiva tramite file Resx e Docx.


Esportazione File di traduzione

Occorre, prima di tutto, eseguire l’esportazione dal sito Sharepoint dei file di traduzione .resx SIA per la lingua predefinita (nell’esempio, Inglese) che la lingua Alternativa (nell’esempio, italiano).
Clicchiamo su Site Actions, Site Settings e su Export Translations ed eseguiamo l’export della lingua predefinita.
Salviamo in una cartella locale il file che avrà un nome del tipo [NomeSito].en-US.resx.
Eseguiamo ora l’esportazione del file di traduzioni per la lingua italiana, lasciando a No il campo Export Text (così siamo sicuri di esportare tutte le label da tradurre).
Salviamo il file nella stessa cartella del primo file. Avrà un nome del tipo [NomeSito].it-IT.resx.


Modificare i file con Simple Resx Editor

Apriamo Simple Resx Editor.


Clicchiamo su Open e selezioniamo dalla folder ENTRAMBI i file .resx
Il tool affianca i dati dei due file di traduzione, con indicazione della lingua utilizzata.

Aggiungi didascalia
Vediamo nel dettaglio le operazioni più utili consentite dal programma.
Partendo da sinistra.


Open e Save: consentono di aprire uno o più file resx per le traduzioni e di salvarli
Show/Hide Keys: consente di visualizzare o nascondere le key dei dati dei file (utile per visualizzare il tipo di label che si modifica).
Le due icone che seguono eseguono eventuali filtri per facilitare la ricerca dei dati da tradurre
Highlights Differences/Equals: mostrano, evidenziandole, i valori diversi o uguali. Ad esempio, mostrando i dati uguali, è possibile identificare subito i dati da modificare (il cui testo non è tradotto)

Export/Import to Docx rappresentano l’esportazione e l’importazione delle traduzioni in e da file .docx. Vedremo nel dettaglio come funzionano, nel seguito.

Per modificare le label, una volta aperti entrambi i file di traduzione, occorre eseguire le modifiche alla sezione relativa alla lingua alternativa (italiano, nell’esempio), agendo sul box “Value:”.
Una volta modificato un valore, questo viene evidenziato, come in figura.


Eseguendo il salvataggio, viene salvato il file .resx.
Per rendere effettiva la modifica su Sharepoint, eseguire la procedura di importazione del file .resx e ricaricare (F5) il sito per vederne le modifiche.


Modificare le traduzioni tramite esportazione/importazione in DOCX

Come detto, il tool permette di esportare le traduzioni in un file di Word (docx).
Cliccare sull’icona Export to Docx: viene creato all’interno della cartella dei file resx, un file [NomeSito].docx.
Il file si presenta in questo modo:


Consente quindi di visualizzare le traduzioni affiancate, ma in un formato più “maneggevole” da personale non tecnico.
Questo file è modificabile, ma occorre, come detto, effettuare le traduzioni per la sola parte della lingua alternativa (IT).
NOTA: Il layout del file non deve essere modificato per nessun motivo!

Una volta che il file .docx è stato modificato (ad esempio, inviato ai traduttori, tradotto e ritornato), occorre salvarlo all’interno della stessa cartella dei file .resx.

NOTE:
Se si era chiuso il Simple Resx Editor, occorre riaprirlo, e riaprire entrambi i file di traduzione.
Fare attenzione a non cliccare su Esporta su Word (per non sovrascrivere le modifiche del docx).
Ffare attenzione che il file word abbia come nome [NomeSito] così come sui file resx ([NomeSito].it-IT.resx)

Quindi, cliccare sull’icona Import from Docx per importare le traduzioni.
Il programma importa le traduzioni evidenziando le modifiche rispetto agli originali valori dei file.


Cliccare su Save per salvare le modifiche sui file resx, in particolare, sul file [NomeSito].it-IT.resx.

Per rendere effettiva la modifica su Sharepoint, eseguire la procedura di importazione del file .resx e ricaricare il sito per vederne le modifiche.



Note Importanti

Le traduzioni "Core"
L’esportazione dei file di traduzioni non esporta tutto il contenuto del sito, ma solo le parti che l’utente può modificare o che l’utente ha già modificato nella lingua predefinita. Molte delle traduzioni sono già eseguite da Sharepoint (ad esempio le voci di menu di Site Settings, o alcune label di sistema).
È possibile agire su queste traduzioni, modificando file dell’installazione di Sharepoint 2010, contenuti in C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\Resources.
Questa cartella contiene i file Resx per le lingue.
MA: Non è consigliabile andare a modificare direttamente questi file.

Traduzioni della Navigazione
L’esportazione delle traduzioni, come detto, fornisce i label da tradurre per le nuove voci inserite dall’utente o per i valori modificati, da browser, sulla lingua predefinita.
In generale, importando il file di traduzioni, al refresh della pagina, le nuove label vengono visualizzate immediatamente.
Per il menu di navigazione (a sinistra), se personalizzato, per poter visualizzare le traduzioni occorre “ri-salvare” la navigazione, seguendo questi passi:
- Aprire Site Actions > Site Settings e nelle sezione Look and Feel, cliccare sul link Navigation
Verificare che, cambiando lingua, il box contentente le voci della struttura di spostamento cambino label
- Cliccare su OK, salvando la navigazione
- Verificare il menu a sinistra, cambiando la lingua di visualizzazione