Comment installer et configurer HtDig
pour la langue française
Ht://Dig


Qu'est ce que Ht://Dig ?

Ht://Dig est un logiciel d'indexation et de recherche de documents par mots-clefs à l'intérieur d'un site web donné. C'est typiquement le genre de logiciel qui est utilisé lorsqu'un site web offre des fonctionalités du type "rechercher sur ce site:" ou "search this site", etc... Ht://Dig se distingue des autres logiciels du même genre en étant un logiciel libre distribué sous licence GPL (GNU General Public Licence) et aussi en étant l'un des plus performants. Il est de ce fait le moteur de recherche favori des distributions de Linux et des sites dédiés au logiciel libre. Voir http://www.htdig.org/ pour en savoir plus.

Qu'est ce qui fait qu'Ht://Dig est adapté à une langue ou à une autre ?

Le moteur d'indexation et de recherche d'Ht://Dig est indifférent au language utilisé, mais sa configuration ne l'est pas. Ht://Dig utilise en effet quelques fichiers annexes et des paramètres de configuration qui permettent de l'adapter à une langue ou à une autre. Pour qu'Ht://Dig puisse fonctionner correctement avec la langue française, il faut substituer une version française de certains fichiers à ceux de la version anglaise par défaut et adapter le fichier de configuration.

Où se procurer les fichiers nécessaires ?

Lorsque j'ai voulu utiliser Ht://Dig sur un site en français, je me suis aperçu que ce n'étais pas si simple que ça et qu'il n'existait pas de kit de francisation établi qui puisse être utilisé tel quel. Etant du genre têtu et curieux, j'ai entrepris derechef de creuser la question en explorant les mailing-lists, en rassemblant divers fichiers et en faisant des essais sous Linux ... et la persévérance a fini par être avantageuse, puisque je suis effectivement arrivé au bout de quelques jours à faire fonctionner correctement Ht://Dig en français. Grâce à ce challenge de mon ego d'informaticien par une nature récalcitrante, vous pouvez désormais bénéficier d'un kit de francisation dûment documenté:

Que contient le kit de francisation ?

  • htdig.conf (fichier de configuration adapté pour le français - remplace le fichier du même nom)
  • rundig (script de lancement de la procédure d'indexation - remplace le fichier du même nom)
  • trans.pl (script de création du dictionnaire des synonymes non accentués - fichier ajouté)
  • rundig (script de lancement de la procédure d'indexation - remplace le fichier du même nom)
  • francais.0 (dictionnaire des mots français - remplace english.0)
  • francais.aff (dictionnaire des terminaisons françaises - remplace english.aff)
  • bad_words.fr (liste de mots à exclure: articles, adverbes, etc... adaptée au français - remplace bad_words)
  • synonyms.fr (dictionnaire des synonymes - fichier vide au départ - remplace synonyms)
  • footer.html, header.html, long.html, nomatch.html, search.html, short.html, syntax.html, wrapper.html (gabarits d'affichage en français - remplacent les fichiers de même nom)
  • le présent document (lisezmoi.html), qui tient lieu de documentation du kit

Cette version du kit est basée sur la version 3.15 d'Ht://Dig.

Comment installer Ht://Dig pour le français ?

  1. Télécharger et déployer le package de la distribution d'Ht://Dig standard
  2. Télécharger et déployer le kit de francisation
  3. Substituer les fichiers du kit de francisation aux fichiers de la distribution standard qui sont dans le sous-répertoire ./installdir
  4. Hormis cette substitution de fichiers, l'installation de la version française est en tous points identique à celle de la version anglaise (se référer à la documentation d'Ht://Dig).

Attention ! Pour que les caractères accentués soient correctement reconnus, Ht://Dig doit avoir été (re)compilé avec le paramètre locale:fr_FR, qui est spécifié dans la version modifiée d'htdig.conf. Cela suppose donc que le fichier htdig.conf du kit de francisation ait été substitué à celui de la distribution standard avant la (re)compilation.

A propos de certaines variantes de LOCALE

Ci-après extrait de mail de quelqu'un qui a résolu les problèmes relatifs à sa variante de locale:

"... J'ai bien tout recompilé, mais ça ne marchait toujours pas. J'ai exécuté la commande locale sur mon Unix et la j'ai vu que je n'avais pas fr_FR tout seul mais fr_FR.iso88591 ou fr_FR.roman, j'ai donc mis fr_FR.iso88591 dans le paramètre et là ça fonctionne au niveau de htdig, htmerge et htfuzzy, par contre j'ai encore des problèmes avec htsearch dans certains cas. J'ai résolu le problème en positionnant la variable dans le fichier htdig.conf à fr_FR.iso88591 pour les phases htdig, htmerge et htfuzzy, mais je la mets en commentaire pour htsearch, et là tout fonctionne. Je tourne sous HP-UX 10.20, j'utilise le gnu c, make et autres ..." (François Soupault <fs@sigu7.jussieu.fr>)

Qui a fourni les dictionnaires ?

Les dictionnaires des mots et des terminaisons proviennent du dictionnaire "ispell" d'IREQ (ftp://ftp.robot.ireq.ca/ispell/francais-IREQ.tar.gz). Les dictionnaires de la distribution ispell ont été compilée au moyen de la syntaxe: cat *.dico | sort | uniq > francais.0. Le fichier des terminaisons francais.aff est réutilisé tel quel.

Comment à été composé le fichier bad_words.fr ?

Le fichier bad_words.fr a été composé empiriquement par tests successifs sur un site de taille moyenne, jusqu'à ce que le fichier db.wordlist ne contienne plus que des mots utiles:

  1. lancement de rundig -> indexation
  2. observations des mots indésirables récupérés dans db.wordlist
  3. ajouts de ces mots dans le fichier bad_words.fr
  4. lancement de rundig -> ré-indexation
  5. etc...

Appel à contribution: ce fichier est vraisemblablement améliorable. Toutes les suggestions allant dans ce sens sont bienvenues.

Pourquoi le fichier des synonymes est il vide ?

Parce que je n'en ai pas trouvé, que personne d'autre n'en a fourni à ma connaissance, et que ce n'est pas vraiment nécessaire pour qu'Ht://Dig fonctionne correctement. Le dictionnaire des synonymes sert à étendre la recherche à des mots voisins de ceux qui sont donnés. Ce n'est certes pas inutile, mais on peut s'en passer.

Appel à contribution: un dictionnaire des synonymes en français serait bienvenu. (NB: ça se présente sous forme d'une liste on ne peut plus simple: mot synomyme [LF] mot synomyme [LF] etc...)

Que faire des fichiers synonyms.db, word2root.db et root2word.db en anglais ?

Ces fichiers doivent être remplacés par leur équivalent en français. Pour cela, il faut effacer ces fichiers *.db d'origine et lancer une réindexation une fois que les fichiers du kit de francisation ont été mis dans les bons répertoires. Le script rundig comporte une procédure qui détecte l'absence des fichiers *.db et qui les reconstitue automatiquement à partir des dictionnaires spécifiés.

Comment faire en sorte que les caractères accentués ou non soient équivalents ?

Cela peut être accompli en constituant un dictionnaire des synonymes où les mots sans accents figurent en tant que synonymes des mots comportant des accents. Répondant à mon appel à contribution, Stéphane Marzloff a réalisé un script (trans.pl) qui compose un dictionnaire des synonymes non accentués à partir de db.wordlist. Ce script peut être exécuté automatiquement grâce à une version adaptée de rundig (inclus dans le kit).

Comment proposer des améliorations du kit de francisation ?

Vous m'écrivez en décrivant les améliorations que vous suggérez et en joignant éventuellement les fichiers illustrant le propos (pas trop gros SVP). Dès que j'ai le temps de m'en occuper, j'essaie d'évaluer l'utilité et la faisabilité de la proposition et je vous répond pour dire ce que j'en pense. Si besoin est, on demande au Ht://Dig Group ce qu'il en pense. Une fois que nous sommes tombés d'accord sur les améliorations à apporter au kit, je les incorpore dans une nouvelle version du kit, en mentionnant votre contribution dans la présente FAQ, et je transmet au d'Ht://Dig Group la nouvelle version du kit pour qu'elle soit rendue disponible sur le serveur d'Ht://Dig et dans le CVS.

Qui a contribué à ce kit de francisation ?

  • Le Ht://Dig Group, en fournissant un logiciel bien conçu et paramétrable à souhait, et en faisant en sorte que la documentation et les archives des mailing-lists soient aisés à consulter
  • L'auteur du kit de germanisation, en donnant l'exemple
  • Didier Lebrun, en assemblant ce kit et en rédigeant la présente FAQ
  • Gilles Detillieux, en servant d'interface avec le Ht://Dig Group et en prodiguant quelques bons conseils
  • François Soupault, en relatant ses déboires avec locale
  • Stéphane Marzloff, en fournissant le script qui automatise la création d'un dictionnaire des synonymes sans accents
  • Tous ceux qui ont adressé des questions, en suscitant des améliorations à apporter

Historique des modifications

  1. Version 1.01: ajout version adaptée de rundig et explications concernant la francisation des fichiers *.db
  2. Version 1.02: francisation des options de recherche (variables $(METHOD), $(FORMAT) et $(SORT)); clarifications et compléments d'explications (lisezmoi.html)
  3. Version 1.03: ajout du script de création du dictionnaire des synonymes non accentués (trans.pl)
 

Didier Lebrun - Mise à jour : 20 juillet 2000