Je suis en train d’internationaliser un site et me délecte de le faire avec SPIP : que du bonheur
Question pour celleux qui codent des sites multilingues : comment traitez-vous les commentaires ?
Dans mes skel, je jongle avec les langues du site, les langues des différents contenus, leurs liens de traduction… jusque là, tout va bien, parce que SPIP connaît la langue.
Pour les messages laissés par les internautes en commentaire, c’est différent : SPIP n’en connaît pas la langue. Je ne fais donc rien de particulier, mais peut-être avez-vous meilleure idée ou retour d’expérience ? Comment gérez-vous ça ? Par exemple, un article en anglais suivi de 3 commentaires : l’un en français, l’autre en anglais, le suivant en arabe, etc. A-t-on des exemples in vivo de ce type ?
Bref, quels choix de structure faites-vous, au niveau des squelettes, pour les commentaires dans un site internationalisé ?
Dans trois de mes projets (DotSPIP, rezo.net et per.sonn.es) il y a un code qui détecte la langue la plus probable d’un texte en fonction de la distribution de “trigrammes”.
C’est assez efficace, mais je n’ai jamais pensé à en faire un plugin pour SPIP.
Ça pourrait s’utiliser comme suit : <div [lang="(#TEXTE*|lang_detect)"]>#TEXTE
Le plugin pourrait aussi régler de lui-même la langue des articles au moment où on envoie le texte, au moins la première fois.
Est-ce assez fiable ? Parce que mon expérience des outils de trad/lang auto me pousse à préférer ne rien faire plutôt que de donner une mauvaise information de langue.
Ça qui me tracasse surtout, c’est le sens de lecture rtl/ltr, dans le cas d’une enfilade de commentaires en mixant plusieurs (ex : 1 comment EN, 1 comment AR, 1 comment FR, etc.). Parce que pour le coup, ça gêne la compréhension si ce n’est pas affiché dans le bon sens.
Mais je n’ai pas claire idée de quelle serait la meilleure approche…
> Le plugin pourrait aussi régler de lui-même la langue des articles au
moment où on envoie le texte, au moins la première fois.
Est-ce assez fiable ? Parce que mon expérience des outils de trad/lang
auto me pousse à préférer ne rien faire plutôt que de donner une mauvaise
information de langue.
Tout dépend de ton niveau d'exigence
Pour attraper l'arabe et le farsi c'est facile de le rendre fiable, il
suffit de compter le nombre de caractères de chaque alphabet.
Merci Arnaud ! Je viens seulement de trouver le temps de regarder et c’est super !
J’ai ajouté l’attribut lang sur les textes des commentaires comme suit :
[ (#ENV{lang}|!={[(#TEXTE|detecter_langue)]}|oui)lang="[(#TEXTE|detecter_langue)]"]
Y’a quelques résultats amusants, mais sur des textes fr courts, qui sont détectés comme la ou fi
Par contre, pour signaler les changements de sens, je ne sais pas comment ajouter l’attribut dir ?
Il faudrait d'abord pouvoir enrégistrer la langue d'un commentaire dans
un champs de la bdd.
Ensuite on pourrait laisser la tâche de définir la langue d'un
commentaire à son auteur. J'imagine une ligne qui dirait "j'écris en
allemand" où il pourrait changer "allemand" dans une autre langue.
Si ce n'est pas assez comfortable il y toujours les trigrammes
:-)k++