[spip-dev] ajout de la langue dari

bonjour,

(une question qui porte sur un ajout de langue mais sur les aspects de
fonctionnement/personnalisation de spip, pas de traduction. J'espère
envoyer ce message sur la bonne liste)

Je suis actuellement en train de développer un site trilingue
anglais/pashto/dari. Le dari n'étant pas disponible dans les langues
de spip, est-il possible d'ajouter cette langue sans modifier les
fichiers ecrire > lang_liste.php et ecrire > lang.php (pour l'ajout du
code langue d'une part et indiquer à spip que la langue s'écrit de
droite à gauche d'autre part) ?

J'ai cherché, mais je n'ai trouvé d'infos à ce sujet nulle part.

Merci d'avance

christophe

ps : j'ai tenté de solliciter des personnes volontaires qui auraient
pu aider à traduire l'interface de spip en dari, pour le moment sans
succès...

Oui ; comme l'indique http://www.spip.net/trad-lang/ il faut définir
deux choses :

1) le code de la langue dari, en se basant sur iso639
  => apparemment il s'agirait de "prs", cf http://fr.wikipedia.org/wiki/Dari
  mais ça peut aussi être prd selon le pays de référence

2) le mot "dari" (au sens de langue dari) ... en dari

-- Fil

1) le code de la langue dari, en se basant sur iso639
=> apparemment il s'agirait de "prs", cf Dari — Wikipédia
mais ça peut aussi être prd selon le pays de référence

yep. prs dans mon cas, puisque c'est pour l'Afghanistan (prd c'est
plutôt pour le dari iranien, si j'ai bien suivi la même source que
toi).

2) le mot "dari" (au sens de langue dari) ... en dari

ok.

Juste pour préciser ma question : tous ces ajouts se font donc au
niveau des fichiers qui sont dans ecrire ? Aucune possibilité de
personnaliser pour le site spécifiquement (au moyen de mes_options par
exemple)... en attendant, qu'un jour peut-être, Spip soit traduit en
dari ? :wink:

christophe

Juste pour préciser ma question : tous ces ajouts se font donc au
niveau des fichiers qui sont dans ecrire ?

c'est dans ecrire/inc/lang_liste.php ; il n'est pas prévu de
"personnaliser" cette liste, parce qu'on veut qu'elle soit une
référence commune.

-- Fil

cela dit, tu peux tout à fait créer un répertoire inc/
dans ton répertoire squelettes/ ; y dupliquer lang_liste.php,
copie dans laquelle tu passes tes modifications.

Il ne faut pas aussi ajouter cette langue dans la fonction lang_dir du fichier /inc/lang.php?

George

gmpf.
zut. j'avais pas vu la déclaration en dur :frowning:

oui. bien sûr.
du coup autant forker allègrement les fichiers originaux...

du coup autant forker allègrement les fichiers originaux...

Ca c'est valable pour l'ensemble des fichiers SPIP, c'est la notion
même de GPL :slight_smile:

Mais je répète qu'il vaut mieux ne pas permettre de le "personnaliser"
au sens, euh, facile... histoire d'éviter d'avoir des listes de
langues différentes d'un site à l'autre. Une petite contrainte pour
une meilleure coordination.

-- Fil

là, je ne connais pas le pourquoi de ce choix que
je ne comprends pas.

$codes_langues pourrait tout à fait être un tableau de tableaux
de type :
   'ar' => array("عربي", "rtl"),
   'fr' => array("français", 'ltr"),
   ...

que l'on pourrait surcharger et duquel il serait possible d'extraire
le tableau $lang_rtl utilisé par function lang_dir()

éviter d'avoir des listes de
langues différentes d'un site à l'autre.

là, je ne connais pas le pourquoi de ce choix que
je ne comprends pas.

imagine que tu décides d'intégrer sur ton site le dari ; comme tu veux
aller vite, tu dis "tiens je vais mettre "dar" => "dari", "rtl".
un autre fera autre chose...
et ensuite on se retrouve avec des codes qui n'ont pas de référentiel commun.

$codes_langues pourrait tout à fait être un tableau de tableaux
de type :
'ar' => array("عربي", "rtl"),
'fr' => array("français", 'ltr"),
...

que l'on pourrait surcharger et duquel il serait possible d'extraire
le tableau $lang_rtl utilisé par function lang_dir()

Il y a très peu de rtl, on va se charger la RAM pour rien. Mais c'est
vrai que ce serait logique que le choix rtl/ltr figure dans le même
fichier que la liste des langues.

-- Fil

Ben il est pas commun si la langue n'existe pas encore !

Si tu as besoin d'une langue qui n'est pas encore dans SPIP pour ton site là que tu fais maintenant... tu ne vas pas attendre que SPIP sorte une nouvelle version pour pouvoir sortir ton site.

Si j'ai besoin du grec ancien ou de la langue Schtroumph dans ma liste de langue, concrètement je dois faire quoi ?
- demander à spip-core d'ajouter la langue officiellement ? (mais si elle n'est pas officielle ou très peu utilisée ?)
- puis attendre X mois que la team sorte une nouvelle version pour pouvoir commencer à faire mon site ?

Si dans tous les cas il faut surcharger, autant que ce soit proprement par un pipeline avec un unique tableau, plutôt qu'un fichier entier.

Si j'ai besoin du grec ancien ou de la langue Schtroumph dans ma liste de
langue, concrètement je dois faire quoi ?
- demander à spip-core d'ajouter la langue officiellement ? (mais si elle
n'est pas officielle ou très peu utilisée ?)

on n'a jamais rejeté aucune langue, même "français stal" est là...

Si dans tous les cas il faut surcharger, autant que ce soit proprement par
un pipeline avec un unique tableau, plutôt qu'un fichier entier.

si ça t'amuse, ajoute-le, mais je crois qu'en pratique c'est plus de
complexité que nécessaire. Il ne faut pas se faire une montagne de
l'ajout d'une ligne dans un fichier...

PS: programmer un pipeline depuis mes_options n'est plus possible
depuis longtemps (hélas) ; le formalisme xml est passé par là.

-- Fil

Comment ça ?

$GLOBALS['spip_pipeline']['truc'] .= '|ma_fonction';

ça marche toujours non ?

Calomnie !
Cédric

$GLOBALS['spip_pipeline']['truc'] .= '|ma_fonction';
ça marche toujours non ?

Ah ben tant mieux. Il me semblait que ça avait disparu !

-- Fil