La localizzazione e il Web 2.0
Prima parte
Seconda parte – Esempio pratico di localizzazione dell'interfaccia
Per dimostrare alcuni possibili approcci alla localizzazione di un sito Web che presenta le caratteristiche tecniche e funzionali associate al Web 2.0, ho scelto un CMS open source, Xoops, il cui sito ufficiale è www.xoops.org. Si tratta di un sistema:
- Semplice, in quanto fortemente modulare (il pacchetto base è assolutamente scarno; tutte le funzionalità desiderate sono installate mediante moduli).
- Evoluto, in quanto utilizza tutte le tecnologie più importanti del Web 2.0, AJAX compreso.
Ho installato sul mio computer un server
Apache dotato di
PHP e
MySQL, necessari per il funzionamento di Xoops, quindi ho installato Xoops stesso più il modulo
News, che consente l'uso di Xoops per la pubblicazione di articoli in stile blog. Ho infine utilizzato le funzioni del modulo News per inserire alcuni articoli tratti da
Wikipedia. Tutti questi passaggi non verranno qui illustrati, perché si suppone siano stati eseguiti da chi gestisce il sito Web da localizzare, oppure dai suoi utenti. Quello che si illustrerà è invece la traduzione di una parte dell'interfaccia del sito e di una parte del contenuto. I metodi e gli strumenti usati sono solo alcuni tra quelli possibili. In particolare, vedremo come affrontare il compito disponendo di strumenti a costo zero o contenuto (
Tortoise Tagger, Wordfast) e a costo moderato (
Trados, Déjà Vu X).
INTERFACCIA (CONTENITORE)
La versione localizzata in italiano di Xoops è disponibile dal sito www.xoopsitalia.org. Ignorerò questa versione già localizzata e mostrerò alcune delle procedure che è possibile seguire per localizzare alcuni dei file dell'interfaccia di Xoops.
La localizzazione dell'interfaccia va eseguita sui file del pacchetto di installazione e non su quelli già installati sul server. Questo perché, durante l'installazione e l'uso del modulo, parte del testo relativo alla struttura del sito viene trasferito nel database e lì utilizzato e gestito.
La maggior parte dei file da localizzare si trova nelle cartelle htdocs\language\english e htdocs\modules\system\language\english (del pacchetto di installazione). Per questa dimostrazione mi limiterò alla localizzazione di tre file presenti nella seconda cartella. I file sono in formato PHP: admin.php, blocks.php, modinfo.php.

Il file admin.php aperto in un editor di testo con colorazione della sintassi
Il testo traducibile è la seconda stringa racchiusa tra apici all'interno delle istruzioni define.
Da notare che la codifica dei file, che andrà rispettata anche per le versioni tradotte, è ANSI.
Workflow con Trados TagEditor
È possibile tradurre i file di tipo PHP utilizzando il componente TagEditor della suite SDL Trados. In questo esempio si utilizza SDL Trados 2006, ma la procedura è simile per versioni più recenti. Per l'impostazione del filtro è necessario avere installato anche SDLX.
- Avviamo il componente Filter Settings di SDL Trados (Filters > Filter Settings)
- Selezioniamo l'opzione SDL Generic Delimited, aggiungiamo *.php alle estensioni del filtro e facciamo clic su Apply:

- Facciamo ora clic su Filter options
- Viene visualizzata una finestra dove si impostano le opzioni che descrivono il formato del file:

- Nel file admin.php il testo traducibile è delimitato da apici. Come delimitatore selezioniamo quindi Other e inseriamo un apice.
- In Column selection inseriamo 4 come Source Column e 4 come Translation Column. Questo perché, indicando l'apice come delimitatore di colonna, il testo traducibile è nella quarta colonna e la traduzione deve sostituire il testo originale.
- Attenzione: negli altri due file PHP da tradurre (blocks.php e modinfo.php) il testo non è delimitato da apici ma da virgolette. Per questo dovremo creare due filtri, uno per PHP con apici e uno per PHP con virgolette. Utilizziamo quindi il pulsante Save As per salvare questo filtro con il nome PHP_single, quindi ripetiamo la procedura, ma inserendo le virgolette, e creiamo il filtro PHP_double:

- Quando in Scheme sono presenti più schemi, occorre selezionare quello da utilizzare per il file che intendiamo aprire. Selezioniamo ora lo schema da utilizzare per admin.php, ossia PHP_single:

- Clic su OK, quindi su Apply, quindi su Exit.
- Avviamo TagEditor e apriamo admin.php, scegliendo come Tipo file "Generic Delimited Documents (*.csv;*.cat;*.php)" (notiamo come è indicata anche l'estensione *.php, che abbiamo aggiunto in Filter Settings).
- Verrà aperto il file admin.php con il testo traducibile delimitato da tag:

- Traduciamo il file, quindi salviamo la traduzione:

- Prima di procedere con la traduzione degli altri due file, chiudiamo TagEditor, torniamo a Filter Settings > Filter options e selezioniamo lo schema PHP_double. In questo modo TagEditor aprirà correttamente i file PHP con virgolette doppie.
- Traduciamo anche blocks.php e modinfo.php e salviamo i file PHP tradotti.
Workflow con Wordfast 5 o Trados Workbench
Per tradurre i file PHP con Wordfast 5 (o con Trados Workbench, se si preferisce lavorare in Word invece che in TagEditor), è necessario eseguire il cosiddetto tagging dei file, ossia salvarli in formato Word (DOC o RTF) applicando speciali stili alle parti non traducibili. Uno strumento, poco intuitivo a dire il vero, ma molto versatile, nonché gratuito, per eseguire questa operazione è Tortoise Tagger, un modello di Word contenente macro, da utilizzare in abbinamento a delle taglist, ognuna delle quali contiene le specifiche per il tagging di un determinato formato di file. Sul sito di Tortoise Tagger sono disponibili alcune taglist già pronte per alcuni formati (LaTeX, InDesign, Quark Express ecc.). Purtroppo non è compresa una taglist per il formato PHP, quindi dovremo crearla.
Le taglist sono file di testo contenenti una serie di istruzioni che Tortoise Tagger convertirà in comandi di ricerca e sostituzione di Word. La sintassi delle istruzioni è spiegata nel manuale di Tortoise Tagger, scaricabile da sito (vedere la sitografia). Nel caso dei nostri file PHP, le istruzioni necessarie sono le seguenti:
- Formattiamo tutto il contenuto come tw4WinExternal:
~~~DocExt
- Formattiamo in grassetto i commenti:
~~~FindAsIs
~~~WriteBold
~~~WC-ON
//*^13
- Formattiamo in grassetto le altre parti non traducibili:
~~~FindAsIs
~~~WriteBold
~~~WC-ON
define\('*'
define\("*"
- Formattiamo come traducibili le stringhe da tradurre:
~~~FindNotBold
~~~WriteTrbl
~~~WC-ON
'*'
"*"
- Applichiamo lo stile tw4WinInternal ai segnaposto:
~~~FindTrbl
~~~WriteInternal
~~~WC-OFF
%s
- Applichiamo lo stile tw4WinExternal ai delimitatori:
~~~FindAsIs
~~~WriteExternal
~~~WC-OFF
,'
')
,"
")
, "
, '
- Rimuoviamo il grassetto dal file:
~~~FindBold
~~~WriteNotBold
~~~WC-ON
*
L'intera taglist è disponibile nel file PHP_tags.txt.
Per applicare la taglist ai file PHP:
- Carichiamo in Word il modello TortoiseTagger.dot
- Facciamo clic sull'icona della tartaruga

- Selezioniamo la taglist PHP_tags.txt
- Selezioniamo uno dei file PHP (i quali dovranno trovarsi tutti nella stessa cartella)
TortoiseTagger eseguirà il
tagging dei file PHP, creando i corrispondenti file DOC, per tradurre i quali si potrà utilizzare Wordfast o Trados Workbench. Terminata la traduzione, occorrerà naturalmente eseguire il
cleanup e il salvataggio in formato testo (codifica ANSI, estensione PHP).
Workflow con DVX
Con DVX non è necessario configurare particolari impostazioni per la traduzione di file PHP, in quanto si tratta di un formato già gestito dai filtri standard di cui è dotato il programma.
- In DVX, creiamo un nuovo progetto, denominato (ad esempio) Athletics.dvprj (File > New > Project per avviare la procedura guidata).
- Scegliamo l'inglese come lingua di partenza e l'italiano come lingua di arrivo:

- Colleghiamo al progetto una memoria e un database terminologico (se non li abbiamo già, li creiamo durante la procedura guidata).
- Selezioniamo i file PHP da importare nel progetto e utilizziamo il filtro HTML, ASP, PHP, JSP:
- Selezioniamo argomento e cliente e terminiamo la procedura guidata.
Nel nostro progetto saranno importate le stringhe da tradurre:

- Traduciamo utilizzando le funzioni di DVX ed esportiamo i file PHP tradotti.
Sia che abbiamo utilizzato Trados TagEditor, Trados Workbench, Wordfast 5 o DVX, disponiamo ora dei file admin.php, blocks.php e modinfo.php localizzati in italiano. I file PHP localizzati devono ora essere sostituiti agli originali nelle cartelle del pacchetto di installazione di Xoops (in particolare, questi tre file andranno nella cartella htdocs\modules\system\language\english). Si esegue poi una nuova installazione di Xoops, in un percorso diverso da quello dell'installazione in inglese. Collegandoci al percorso con un browser, vediamo ora la pagina iniziale di Xoops parzialmente localizzata:
Ovviamente, per vedere tutta l'interfaccia di Xoops localizzata, sarà necessario tradurre anche gli altri file PHP presenti nei percorsi htdocs\language\english e htdocs\modules\system\language\english.
Terza parte