Internazionalizzazione viste
medio
Nel prodotto MailmanSubForm è presente una sola vista, senza nessun supporto all'internazionalizzazione (tranne che per gli elementi standard di Plone).
Per prima cosa è necessario modificare l'i18n:domain per l'intera vista e settarlo dal valore originale (Plone) a MailmanSubForm, il nome che abbiamo scelto.
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en" metal:use-macro="here/main_template/macros/master" i18n:domain="MailmanSubForm">
Inoltre nella nostra vista esiste un i18n:translate che fa riferimento al dominio Plone, quindi specifichiamo implicitamente il dominio corretto per questo elemento in modo tale da continuare ad avere per esso le traduzioni funzionanti.
Quindi, dal codice originale:
<p tal:condition="python: not text and is_editable" i18n:translate="no_body_text" class="discreet"> This item does not have any introductory text, click the edit tab to change it. </p>
passiamo al seguente:
<p tal:condition="python: not text and is_editable" i18n:domain="plone" i18n:translate="no_body_text" class="discreet"> This item does not have any introductory text, click the edit tab to change it. </p>
Per tutti gli elementi significativi della vista di MailmanSubForm, inoltre, sarà necessario effettuare la marcatura assegnando dei codici msgid che abbiano possibilmente dei valori con una certa semantica (per aiutare i traduttori nel lavoro). Questo lavoro è opportuno che venga svolto per:
- messaggi;
- label;
- titoli;
- attributi di elementi (per esempio l'attributo title di un tag a);
- ecc...
Ecco un esempio:
<legend i18n:translate="legend_list_subscribe">List Subscribe</legend>
Oppure per internazionalizzare un attributo:
<input class="context" tabindex="" type="submit" name="form.button.subscribe" value="Subscribe" i18n:attributes="value subscribe_action" tal:attributes="tabindex tabindex/next;" />
Una volta finito, non resta altro che costruire i file po in modo tale da associare i msgid a delle traduzioni.
