Ajuda:Extensió:Translate/Traducció dels elements no estructurats

From mediawiki.org
This page is a translated version of the page Help:Extension:Translate/Unstructured element translation and the translation is 84% complete.

Aquesta pàgina explica com realitzar, amb raonable facilitat, la traducció dels missatges de les interfícies wiki personalitzades, amb l'extensió Translate. S'aplica a qualsevol part del wiki en la que vulgueu que automàticament es proporcioni en l'idioma de la interfície de l'usuari. L'exemple més típic és la barra lateral, perquè no pot haver-ne només una, però el mateix mètode es pot utilitzar per a la pàgina principal, si voleu tenir totes les traduccions sota el mateix títol o, fins i tot, per a les plantilles.

Aquest mètode és aplicable també als continguts del wiki on la traducció completa de la pàgina no s'ajusta, com les pàgines difícils en marcatge o en les plantilles, el marcatge del qual no vol exposar als traductors. Tot això gira entorn dels missatges de la interfície, o en la paraula màgica {{int:}}, que li permet incloure missatges de la interfície en qualsevol lloc on es pot escriure text wiki. Aquesta paraula màgica permet substituir automàticament el missatge de la interfície, ja sigui estàndard, personalitzat o nou, en l'idioma de la interfície de l'usuari.

El podeu utilitzar per portar el poder de la localització automàtica de la interfície del wiki al contingut del wiki, però no resol el problema per als usuaris anònims, que no poden canviar l'idioma de la interfície per defecte. Vegeu la nota sobre l'extensió Universal Language Selector més avall.

En comparació amb la traducció de pàgines, aquest mètode té alguns inconvenients:

  1. Els desenvolupadors de MediaWiki generalment desaconsellen la utilització de {{int:}}, ja que fragmenta la memòria cau. En lloc d'emmagatzemar una versió rendida en la memòria cau d'una pàgina, quan {{int:}} s'utilitza s'ha d'emmagatzemar potencialment en memòria cau per centenars d'idiomes diferents.
  2. És més difícil de configurar, el que requereix l'accés a la configuració del wiki.
  3. No hi ha seguiment automàtic de les traduccions desfasades i les estadístiques de finalització podrien estar sense efecte quan s'agreguen o s'eliminen els missatges nous.
  4. Només els administradors del wiki poden afegir missatges als grups de missatges i traduir-los. Això vol dir que el sistema és adequat només per a les pàgines que no canvien amb freqüència, o els administradors tindran molta feina.

El millor és que funciona la majoria del temps i encara es pot seguir treballant. Hi ha dos tutorials que proporcionen exemples dels casos d'ús comú. Abans hi ha una secció on es detalla com configurar un grup de missatges, cosa que sempre és necessari quan s'utilitza aquest mètode.

Instal·lació

Un administrador del servidor ha de completar aquest pas. El fragment següent s'ha d'afegir a LocalSettings.php :

$wgHooks['TranslatePostInitGroups'][] = function ( &$list, &$deps, &$autoload ) {
	$id = 'wiki-sidebar';
	$mg = new WikiMessageGroup( $id, 'sidebar-messages' );
	$mg->setLabel( 'Sidebar' );
	$mg->setDescription( 'Messages used in the sidebar of this wiki.' );
	$list[$id] = $mg;
	return true;
};

L'identificador de grup de missatges, wiki-sidebar, ha de ser únic, així que no tornar a utilitzar el mateix identificador per diversos grups. El segon paràmetre al constructor WikiMessageGroup, sidebar-messages, es refereix a la pàgina [[MediaWiki:Sidebar-messages]]. L'etiqueta es mostra en els menús desplegables i en altres llocs on es pot seleccionar un grup de missatges. La descripció es mostra a Special:Translate. Aquests són els valors que podeu i hauríeu de canviar per al que convingui al vostre wiki quan s'afegeix un nou grup de missatges personalitzat.

Tutorial de la barra lateral localitzada

Suposem que ja heu fet el passos de configuració. Llavors heu de seguir la guia de personalització de la barra lateral amb cura. Suposem que s'ha creat la següent barra lateral senzilla:

* sidebar-commonpages
** FAQ|sidebar-faq

I [[MediaWiki:Sidebar-commonpages]] conté Common pages, mentre que [[MediaWiki:Sidebar-faq]] conté Frequently asked questions.

Llavors tot el que hem de fer és anar a [[MediaWiki:Sidebar-messages]] (o el que s'ha definit en el pas anterior) i escriure-hi:

sidebar-commonpages sidebar-faq

És a dir, els noms dels missatges del sistema, sense el prefix d'espai de noms «MediaWiki:», separats per espais en blanc.

A continuació, aneu a [[Special:Translate/wiki-sidebar]] (o el que sigui segons s'ha definit en el pas anterior, consulteu [[Special:Translate]] per a la llista dels grups definits). Ara bé, és possible traduir els missatges a altres idiomes. Ja que tots els missatges estan en l'espai de noms MediaWiki, només un administradors d’interfícies pot editar la llista de missatges i, de fet traduir-los.

Tutorial de la pàgina principal localitzada

Un altre cas d'ús és una pàgina amb un munt de marques o plantilles. L'avantatge d'aquest mètode és que el llenguatge apareix automàticament en idioma de la interfície de l'usuari. L'inconvenient és que per canviar l'idioma en què es mostra la pàgina, l'idioma de la interfície ha de ser canviat.

L'aplicació és la mateixa que en el tutorial anterior:

  1. Configureu d'un nou grup de missatges.
  2. Prengueu una pàgina wiki.
  3. Substituïu cada part traduïble amb {{int:Mainpage-messagename}} i mogueu el contingut a [[MediaWiki:Mainpage-messagename]].
  4. Aneu a [[MediaWiki:Mainpage-messages]] (o el que es va definir en la configuració) i afegiu els noms de missatges no separades per espais en blanc.
  5. Ja ho heu fet. Aneu a [[Special:Translate]] per traduir la pàgina principal.

Heus aquí un exemple. Diguem que [[Main Page]] conté:

<div style="max-width:20em;font-size:200%;line-height:1.4;text-align:center;color:green">
''{{SITENAME}} is a community for chefs and bakers that love chocolate.''
</div>
We currently have {{NUMBEROFPAGES}} pages full of chocolate.

A continuació, canvieu a:

<div style="max-width:20em;font-size:200%;line-height:1.4;text-align:center;color:green">
''{{int:mainpage-slogan}}''
</div>
{{int:mainpage-pagecount}}

Creeu [[MediaWiki:Mainpage-slogan]] amb el contingut:

{{SITENAME}} is a community for chefs and bakers that love chocolate.

Create [[MediaWiki:Mainpage-pagecount]] with the content:

We currently have {{NUMBEROFPAGES}} pages full of chocolate.

Creeu [[MediaWiki:Mainpage-messages]] amb el contingut:

mainpage-slogan mainpage-pagecount

I ja està! Podeu afegir i eliminar els missatges nous en qualsevol moment que desitgeu.

Selector d'idioma

No solament l'usuari no pot triar quina versió localitzada de la pàgina per llegir llevat que el canviï de les seves preferències, sinó tampoc els usuaris anònims poden establir el seu idioma de la interfície d'usuari i han de fer servir sempre la llengua per defecte del wiki. Una pàgina traduïda amb aquest sistema estarà en l'idioma de contingut per defecte, si no es proporciona als usuaris anònims alguna forma de selecció del seu idioma.

Per sort, hi ha una solució. Amb l'extensió Extensió:UniversalLanguageSelector és possible endevinar l'idioma preferit de l'usuari i també li permet a l'usuari seleccionar manualment un altre idioma i emmagatzemar l'elecció en una galeta, sense necessitat de trucs com el paràmetre uselang, que majoritàriament és adequat només per depurar.