On y serait presque, mais je pense à une nouvelle difficulté : les accents
simples figurent dans le bas de l'unicode, ce qui signifie que le "à"
vietnamien doit être traité à la même enseigne que le "à" français (c'est le
même caractère)...
On aurait donc :
langue <> 'vi' : pas de translittération particulière des caractères
vietnamiens, on laisse le comportement standard
de SPIP : à => 'a', a? => '.' ou 'a', selon que
le serveur dispose ou pas de l'extension iconvlangue == 'vi' : translittération complexe a? => 'a3'... du coup,
pour la recherche, on peut ajouter un petit filtre
automatique histoire d'accepter comme clés de
recherche aussi bien Ố que Ô, O ou O^.C'est dommage de devoir faire ça, mais j'ai beau retourner la question dans
tous les sens, je ne vois pas d'issue "universelle".
Cela semble en effet plus raisonnable. Rien que la support des langues latines sous unicode, cela nous aurait fait 944 entités à gérer.
Basic Latin 128
Latin-1 Supplement 128
Latin Extended-A 128
Latin Extended-B 208
Latin Extended Additional 256
IPA Extensions 96
En l'absence de solution de universelle, je propose de:
- Remonter le tableau de translittération dans le fichier langue.
- Idem pour un tableau de correspondance Majuscules/minuscules accentuées pour le filtre majuscules.
Je ne vois pas d'autre solution que d'adopter un mode d'indexation différent
si la langue du site est 'vi'.
Non, si je suis bien ton idée, cela revient à marquer les articles par un identifiant de langue, car sinon je ne voie pas comment gérer les conflits dans un site multilangue.
Je fais fausse route ?
Pierre