Home DIVÈRSES TRADUCCION D’UN PROJÈCTE MULTILINGÜE
TRADUCCION D’UN PROJÈCTE MULTILINGÜE
0

TRADUCCION D’UN PROJÈCTE MULTILINGÜE

0

Estructura
Dins un projècte informatic l’integracion de mai d’una lenga pòt èsser tan facila coma apondre un fichièr se lo multilingüisme es estat pensat tre lo debut o se lo modèl dich MVC es estat utilizat.
Lo modèl de desvolopament MVC (Modèls Vistas Contrarotlaires) es un esquèma qu’isola los elements segon lor ròtle dins lo programa. Trobarem dins Contrarotlaires totes los escripts, dins Modèls tot aquò tocant las donadas salvagardas e dins Vista la carta grafica, los tèxtes e doncas las lengas.

Per exemple per afichar de comentaris, una demanda serà facha a un contrarotlaire que tracta aquò, aqueste farà sa demanda de contengut a un modèl– los comentaris gardats en basa de donadas -, e serà finalament la Vista que metrà en forma los comentaris amb d’imatges o de tèxtes.

La diferéncia entre Modèl e Contrarotlaire pòt èsser pichoneta segon l’organizacion causida.

Avèm doncas diferents dorsièrs triats segon lor accion. Per las lengas los noms de dorsièr son sovent :

locales – i18n – translations – lang – l10n

i18n significa internacionalizacion : quand volèm ofrir la possibilitat de modificar las cadenas de tèxtes. Podèm dire qu’es pels projèctes que son pas monolingües.
l10n significa localizacion : quand volèm nos adaptar a un tal mercat segon sa cultura, sa lenga, etc.
Lo portugués de Portugal e lo de Brasil auràn pas la meteissa localizacion per exemple.
Aquí tanben la diferéncia pòt èsser ignorada, serà pas qu’un nom al dorsièr.
Aicí lo dorsièrs «locales» d’un programa :

hhkjjhkj1

Vesèm qu’aquí cal utilizar lo còdi ISO 693-2 de la lenga en dos caractèrs, de còps utilizan los còdis en 5 caractèrs per apondre lo país (ISO 31366) coma : fr_CA (francés del Canadà), es_AR (Castelhan d’Argentina).

Cossí fasèm amb l’occitan e sos dialèctes que dependon pas del país ? E ben los dialèctes tanben tenen de còdi ISO, vos los dòni aquí :

oc_auv               Auvernhat

oc_gsc                Gascon

oc_lms               Lemosin

oc_lnc                Lengadocian

oc_ni                  Nissart

oc_ni_mis         Nissart grafia mistralenca

oc_prv                Provençal

oc_va                 Vivaro-alpin

Aquesta lista ven de las lengas disponiblas pel motor de site SPIP.

Modèl MCV

Farem un site multilingüe amb lo lengatge de programacion PHP. Per aquò utilizarem una pagina HTML apelada «index» – index e home son los noms utilizats per indicar al servidor qu’es la pagina d’acuèlh – e un pichon fichièr CSS per la mesa en forma.

Vaquí lo fichièr d’estil :

fhfhf2

Aquò nos indica qu’un element apelat cadron ten una color de fons definida pel còdi #F0E5DE, que lo tèxte deu èsser en #ABD0CE, l’estil en gras, i a una linha d’un pixel en color #7C7877 altorn d’aquel element. Nòstre primièr fichièr index, una pagina HTML estatica coma Modèl per aqueste exemple perque es pas encara dinamica.

gjhghjghjg3

 

Un document HTML5 que declara que lo tèxte es en occitan dins un encodatge de caractèrs UTF-8.

Passem al multilingüisme

Dins un dorsièr «lang» que correspond a la Vista del modèl MVC, botem los fichièrs de lenga amb un pauc de vocabulari.

hhgjgj4

 

 

 

gjhgjhgjhgj5
oc.php fr.php

Lo sistèma de lenga utilizat es un simple tablèu associatiu, per cada clau – MENU, salutacions, connection, etc – i a una valor, es aquela valor que nos permet d’ofrir lo multilingüisme.
Segon la lenga que volèm afichar cargarem un fichièr diferent e donc lo tèxte afichat cambiarà.
Cal efectuar de modificacions sus nòstre fichièr index.

hhkjhkjhkjhk6

Linha 2 utilizem la variable $lang per definir la lenga, ten per valor lo còdi ISO. Cada còp que volèm o marcar podèm utilizar la variable $lang qu’aurà per valor çò definit en linha 2.
Per exemple linha 7 sèm passat del tèxte brut «html lang=”oc”» al tèxte dinamic coma sus la captura. Vesèm tanben que las salutacions linha 15 son dinamicas la variable $vocabulari[‘salutacions’] serà remplaçada per «Adissatz».
Trobatz aquí lo resultat dins un navigator Internet :

jhkjhkhhkj7

Se cambiem la valor de $lang per «fr» aurem «Bonjour utilizaire !»

Avèm vist la V, la M, ara lo C.
Dins un dorsièr «escripts» placem un sistèma de deteccion per trobar las lengas qu’un visitor declara legir. Amb aquesta informacion veirem s’avèm una lenga a li prepausar e per defaut botarem lo site en occitan. Ai comentat lo còdi per mai informacions, mai la tòca d’aqueste article es pas d’ensenhar a escriure de còdis, simplament far veire cossí es estructurat un programa amb un modèl MVC.

kjhkjhkjhk8

Serà nòstre escript que definirà la valor de la variable $lang, pas mai lo fichièr index.php.
Nota suls cobles clau-valor «’oc’ => ‘oc’, ‘fr’ =>’fr’», pòt semblar inutil d’aver dos còps la meteissa causa coma clau e valor, mai aquí aquò permet de realisar lo scenari seguent :
«’gl’ => ‘pt’», se un visitor declara legir lo galician, lo prepausem lo site en portugués. Es modulable, podèm imaginar mai causas.
Ara nòstre fichièr index amb las modificacions que permeton d’utilizar aqueste escript.

jhkjhkjhkj9

Lo títol de la pagina es tanben vengut dinamic es s’apèla «menú» en lenga nòstre.
Per anar mai luènh :
dins lo dorsièr «escripts» auriam pogut crear un escript per anar cercar en basa de donadas lo pichon nom de l’utilizaire e l’afichar, mentre que d’autres aurián creat un dorsièr mai perque considèran qu’es un «modèl». O podèm creat un escript e crear un dorsièr per i metre los paramètres de connexion a la basa de donadas.
A la fin avèm una organizacion dels fichièrs aissí :

jklhhkhk10

Un dorsièr per l’internacionalizacion, un per la presentacion, un pels còdis del site, e un fichièr Index a la raiç.
Se volèm apondre la lenga italiana a nòstre site caldriá :
crear un fichièr it.php dins lo dorsièr «lang» amb las traduccions e modificar nòstre fichièr lengas.php per i apondre «it» coma lenga autorizada. Doas pichonas modificacions e podèm aténher mai de public amb nòstre site !

Conclusions

Avèm vist qu’apondre una lenga mai dins un projècte pensat amb lo modèl MVC es quicòm de simple e que demanda pauc de modificacions. Dins los articles venents veirem cossí contribuir a de projèctes amb l’ajuda d’interfàcias de traduccions.

Quentin Pagès