Stiamo localizzando tutte le parti del nostro sito Web in molte lingue. Usiamo file di localizzazione XML. Penso che questo scenario sia così comune, e anche in questo caso dovrebbe esserci una soluzione standard, ma ancora non sono riuscito a trovare alcun buon consiglio, e ogni sviluppatore qui ha opinioni diverse a riguardo, quindi te lo chiedo.
Suggerisci il seguente esempio:
Se hai domande, chiedi al nostro <a href="blabla" target="_blank" title="Our nice Customer Support + boilerplate SEO bullshit">
Assistenza clienti </a>
o scrivi un'email a <a href="mailto:XXX">
Jane Doe </a>
il nostro specialista.
O un testo lungo e formattato:
<p>A very long, marketing blah-blah. A very long, marketing blah-blah. A very long, marketing blah-blah concluding in a list:</p>
<ul>
<li>1</li>
<li>2</li>
<li>3</li>
</ul>
1) Metteresti i tag html nel file XML di localizzazione?
La mia preoccupazione è che la vista sia separata in 2 file : la tua pagina e il tuo file di localizzazione. Le persone dimenticheranno di controllare il file di localizzazione. Inoltre, c'è anche logica e stile incorporati in html (vedi target="_blank"
, o il fatto che l'elenco sopra menzionato non è ordinato ...)
2) O dividendolo in parti più piccole?
<msg id="IfYouHaveQuestion">
Se hai domande, chiedi al nostro </msg>
<msg id="CustomerSupport">
Assistenza clienti </msg>
<msg id="OrWrite">
o scrivi un'email a </msg>
...
Ora, View può contenere tutto il markup e lo stile. È facile cambiarlo, flessibile.
Ma.
È assolutamente nessuna garanzia che l'ordine delle parole sarà lo stesso in tutte le lingue. Inoltre, questo renderebbe il lavoro del traduttore un incubo , rendendolo un puzzle.
3) O introdurre il markdown BB-style?
<msg id="HaveQuestion">
Se hai domande, chiedi al nostro [link url="{customersupportlink}" title="{{CustomerSupportTitle}}">
Assistenza clienti [/link]
o scrivi un'email ... </msg>
Ma probabilmente questo sta complicando eccessivamente il problema, e anche per questo dobbiamo scrivere il nostro parser (anche se penso che non sarebbe così difficile). E probabilmente non risolve il lungo problema di testo formattato.
4) ??? (La tua soluzione d'oro qui):)