[spip-dev] Internationalisation et moteur de recherche

Merci Fil,

Je vais testé le comportement de l'indexation en UTF8. :slight_smile:

Je signale aussi un article sur phpindex qui explique comment tirer partie des indexes full texte de Mysql.
http://www.phpindex.com/articles/articles_lire.php3?element=348

Outre le fait que c'est du Mysql spécifique, cela a l'air réellement puissant et semble assez simple à implémenter. Je pense que cela pourra être une alternative plus rapide et performante qu'une indexation écrire en PHP.

Une bonne piste à explorer donc.

Pierre

Je vais testé le comportement de l'indexation en UTF8. :slight_smile:

A ce propos, il faut tout de même qu'on fasse un filtre équivalent en utf8 à
ce qu'on fait pour l'iso-latin - c'est-à-dire qu'on indexe "bêlé" sous la
forme "bele". Et donc, pour le vietnamien, il faudrait qu'on indexe de même
"nguoi" (avec les accents, qui ne pssent pas dans ce mail) sous la forme
"nguoi" (sans les accents)...

Il nous faut donc une table de translitération utf-8 => ascii... je sais que
le navigateur lynx est capable de faire de la translittération, cette table
doit donc exister quelque part ??

-- Fil

> Je vais testé le comportement de l'indexation en UTF8. :slight_smile:

Autre élément de réflexion : le vietnamien s'écrit, visiblement, avec
beaucoup de mots de 3 lettres... SPIP n'indexe qu'à partir de 4 lettres...

-- Fil

Il nous faut donc une table de translitération utf-8 => ascii... je sais que
le navigateur lynx est capable de faire de la translittération, cette table
doit donc exister quelque part ??

A mon avis, pas la peine de chercher : c'est beaucoup trop lourd pour
du PHP.

Par contre la désaccentuation iso-latin doit être virée si le charset
du site n'est pas iso-8859-1 (c'est peut-être déjà fait).

> le navigateur lynx est capable de faire de la translittération, cette table
> doit donc exister quelque part ??

A mon avis, pas la peine de chercher : c'est beaucoup trop lourd pour
du PHP.

"trop lourd" : mérite évaluation ; si ça n'est faisable qu'avec la librairie
mbstring, c'est pas très grave... car actuellement on ne peut pas dire que
ça soit très fonctionnel (notamment en vietnamien !)

Par contre la désaccentuation iso-latin doit être virée si le charset
du site n'est pas iso-8859-1 (c'est peut-être déjà fait).

oui oui, c'est fait

-- Fil

> A mon avis, pas la peine de chercher : c'est beaucoup trop lourd pour
> du PHP.

"trop lourd" : mérite évaluation ; si ça n'est faisable qu'avec la librairie
mbstring, c'est pas très grave... car actuellement on ne peut pas dire que
ça soit très fonctionnel (notamment en vietnamien !)

Ha ah !
http://php.benscom.com/manual/en/function.recode-string.php

-- Fil

Ha ah !
http://php.benscom.com/manual/en/function.recode-string.php

Et c'est installé souvent avec PHP ton truc ?

"Warning

Crashes and startup problems of PHP may be encountered when loading the
recode as extension after loading any extension of mysql or imap. Loading
the recode before those extension has proven to fix the problem. This is
due a technical problem that both the c-client library used by imap and
recode have their own hash_lookup() function and both mysql and recode
have their own hash_insert function.

Warning

The IMAP extension cannot be used in conjuction with the recode or YAZ
extensions. This is due to the fact that they both share the same internal
symbol."

> Ha ah !
> http://php.benscom.com/manual/en/function.recode-string.php
Et c'est installé souvent avec PHP ton truc ?

Non, et je n'ai pas réussi à l'installer sur rezo... mais je ne
vois pas comment faire autrement (y'a pas urgence non plus, hein) si on veut
que le moteur fonctionne en arabe/russe/vietnamien/hébreu et qu'on puisse
taper 'yalla' (en caractères latins) pour retrouver l'article contenant ce mot
en arabe. Pour le vietnamien c'est évident, si tu regardes ce que ça donne
dans l'espace privé de trad_spip, que les gens ne vont pas s'amuser à taper
les accents, points et autres...

Le fait que recode soit récent, pas encore stabilisé etc., indique qu'on
préférerait autre chose... si autre chose il y avait. Mais comme visiblement
il n'y a pas...

-- Fil