Ben wrote :
par exemple ajouter un seul fichier mes_langues.php3 qui contiendrait un
tableau
avec la langue quelque part.
Sur le modèle mes_options.php3, mes_fonctions.php3, ca parait logique. Mais
à insérer dans ecrire/lang/ . Mais ce fichier servirait uniquement à la
modification des chaines existantes.
Fil wrote :
>Il y a deux choses que l'on veut :
>
>1) ajouter des fichiers de langue optionnels pour les "modules" (ou pour
> les squelettes de l'espace public, l'aide en ligne, etc.) ; les
fichiers
> devront donc être indépendants les uns des autres, avec un préfixe lié
au
> "module" en question, histoire de ne pas se marcher sur les pieds
exemple sur le sondage : ecrire/lang/sondage_fr.php3 qui contient uniquement
les chaines du module sondage.
>2) pouvoir "personnaliser" des langues ; est-ce qu'on personnalise une
seule
> langue à la fois, ou est-ce qu'on peut les personnaliser toutes d'un
coup si
> l'on veut (du genre "PS" devient "ISBN" dans toutes les langues) ?
>
>Clairement :
>* il faut faire 1 puis 2 ; et pas l'inverse
>* il faut un mécanisme de sélection d'une autre langue en cas d'absence
du
> fichier de langue dans la langue demandée
Retour à la langue par défaut du site.
>Bref, rien de compliqué à programmer, mais il faut s'organiser un peu. Je
>pense que tous les fichiers doivent figurer dans ecrire/lang/ ;
Oui, logique.
Donc si je comprends bien, pour appeler une chaine de caractères en français
mais personnalisée, on appellerait _T('chainetoto') -> cela vérifierait
d'abord dans ecrire/lang/mes_langues.php3, puis dans
ecrire/lang/spip_xx.php3 ou xx est la langue en cours d'utilisation. J'ai
bon là ?
> _T() doit
>être en mesure de détecter le nom du fichier de langue appelé --
peut-être
>avec un troisième argument, plutôt qu'un préfixe : _T('resultat', '',
>'sondage') [ on peut faire plutôt une fonction _TT('resultat', 'sondage',
>$variables='') histoire de ne pas surcharger la notation quand il n'y a
pas
>de variablezs à passer à _T ]
Donc faire cette fonction _TT('chainetoto','nomdumodule') pour appeler une
chaine de caractères provenant du fichier ecrire/lang/nomdumodule_xx.php3 ou
xx est la langue par défaut du site me parait idéal.
Mais je l'avoue, je sais pas coder la fonction
_TT('chainetoto','nomdumodule') qui récupère la langue par défaut du site
(exemple : fr ), aille chercher la chaine en question (ici : chainetoto) et
renvoie le nom du module (ici: nomdumodule ) pour former la requête de
chaine vers ecrire/lang/nomdumodule_fr.php3 .
Ca m'intéresserait beaucoup beaucoup... Car j'essaye actuellement d'intégrer
des nouvelles fonctionnalités chartées sous Spip dans l'interface privée, et
j'aimerais garder l'usage des chaines _T('chainetoto') ( ou plutot ici
_TT('chainetoto','nomdumodule') // dans les fichiers de l'interface
privée
et
'chainetoto' => 'contenu de la chaine toto', // dans le fichier de langue
du module
Et je sais pas faire. Voilà... HELP ???
--neoram