[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [sdx-users] hilite et guillemets
From: |
Pierrick Brihaye |
Subject: |
Re: [sdx-users] hilite et guillemets |
Date: |
Tue, 30 Dec 2003 21:02:08 +0100 |
Bonsoir,
> Quand on recherche une expression entre guillemets
> les mots qu'elle contient sont mis en évidence dans
> les résultats de recherche de façon indépendante:
> si on recherche par exemple "jean racine" les mots
> "jean" et "racine" seront mis en évidence de façon
> indépendante, et non pas l'expression "jean racine"
> qui est celle qui est cherchée (et trouvée).
>
> Est-il possible d'obtenir le hilite de l'expression?
Oui :-)
Pour comprendre comment faire, il faut se souvenir que le document est parsé
avec un analyseur (qui respecte donc l'interface ad hoc). Généralement,
c'est l'analyseur du champ par défaut mais ça n'a rien d'obligatoire.
Or donc, tout texte contenu dans les éléments du document (pas de
higlighting inter-éléments ni sur les attributs) qui renverrait un *Token*
identique à l'un (au moins) des *Term* de la requête est normalement
highlighté.
Il faudrait donc écrire un analyseur : nommons-le KnownStringAnalyser qui ne
renverrait des tokens que lorsqu'il rencontre une chaîne... connue. Ensuite,
le truc serait de configurer cet analyseur avec la valeur qu'on veut
surligner : KnownStringAnalyser ksa.addKnownString("jean racine").
V. le topo sur les analyseurs :
http://www.nongnu.org/sdx/docs/html/doc-sdx2/fr/presentation/analyseurs.html.
Je m'y remets dès que je trouve le moyen de configurer mon client CVS en SSH
2 :-)
A+
p.b.