Recherche incrémentale

Lorsque vous lancez une procédure de recherche à partir de l'entrée Rechercher... du menu Édition (voir Fig 1.9), XEmacs attend sur la ligne de dialogue de la fenêtre active que vous entriez un caractère après la chaîne i-search:. Dès que vous commencez à entrer des caractères vous pouvez voir le curseur d'édition se déplacer dans le Buffer. XEmacs utilise une recherche dite incrémentale. Celle-ci débute à partir de la position actuelle du curseur d'édition et dès le premier caractère saisie.
Vous pouvez rechercher un texte après la position du curseur mais également avant cette position en utilisant l'entrée Recherche en arrière.... .

Placez votre curseur au début du texte et lancez une recherche par l'entrée Rechercher... du menu Édition. La zone de dialogue est active. Entrez les caractères ``Luci'' sans appuyer sur la touche < $ \hookleftarrow$>. Dans votre Buffer les caractères correspondants apparaissent avec un fond de couleur dans le mot Lucid. Si vous faites <C-g>, le processus s'arrête et votre curseur d'édition revient sur la position à partir de laquelle vous avez lancé cette recherche. Recommencez l'opération en ajoutant le caractère ``v'' à la chaîne précédente. La chaîne ``Luci'' est sur fond de couleur et le curseur d'édition se trouve sur le caractère ``L'' du premier mot trouvé: ``Lucid''. Maintenant pour trouver un autre mot comportant cette chaîne, après le curseur d'édition, vous pouvez faire <C-s>. Si vous désirez rechercher la même chaîne avant la position du curseur d'édition, faites <C-r>. Vous pouvez répéter ces commandes autant de fois que vous le désirez. Ici, si vous faites plusieurs fois <C-s> la zone de dialogue affiche finalement le message Failing I-search: Luci, ce qui veut dire que la recherche a échoué pour la chaîne ``Luci'' car dans votre texte il n'y plus d'autres mots comportant cette chaîne après la position du curseur.

Si vous avez lancé une recherche et que vous cliquez avec le bouton gauche de la souris dans votre Buffer, la procédure est interrompue immédiatement. Pour la reprendre avec la même chaîne que celle que vous avez donnée en dernier il suffit de faire <C-s C-s>. Cette commande lance directement une recherche avec la dernière chaîne saisie dans i-search. Vous pouvez toujours la modifier en l'effaçant avec <Backspace> ou<Suppr> et en entrant de nouveaux caractères.
Lorsque votre recherche vous donne une réponse qui vous satisfait et que vous désirez modifier votre texte à cet endroit, vous pouvez positionner le curseur d'édition sur le mot concerné en faisant < $ \hookleftarrow$>.
Lorsque votre recherche échoue la commande <C-g> vous fait revenir à la dernière réponse trouvée. Vous pouvez alors modifier votre chaîne en commençant par effacer le dernier caractère responsable de cet échec. La recherche ne sera réellement abandonnée que si vous faites à nouveau <C-g>.

Vous pouvez lancer une recherche à partir d'un mot de votre texte. Vous devez dans ce cas positionner votre curseur d'édition devant le mot qui sera utilisé, puis lancer la recherche. Faites <C-w>. Cette commande copie le mot qui suit le curseur dans la chaîne de recherche. Celle-ci apparaît sur la ligne de dialogue. Vous pouvez faire de même avec le reste de la ligne qui suit le curseur d'édition en utilisant la commande <C-y>.

Dans le Menu Édition nous avons deux entrées:

Rechercher...
qui permet de lancer une recherche dans le texte qui suit le curseur d'édition.
Rechercher en arrière...
qui permet de lancer une recherche dans le texte qui précède le curseur d'édition.


Tableau 1.14: Commandes de recherche
<C-s> répéter la recherche d'une chaîne après le
  curseur d'édition.
<C-r> répéter la recherche avant le curseur d'édition.
<C-g> interrompre la recherche dans le cas d'un succès,
  ou revenir au dernier mot trouvé dans le cas d'un échec.
<Suppr> effacer le dernier caractère.
< $ \hookleftarrow$> fin de recherche et positionnement du curseur
  d'édition sur le mot trouvé.
<C-w> insère le mot après le curseur d'édition dans la
  chaîne de recherche.
<C-y> insère le reste de la ligne dans la chaîne de recherche.
<M-p> utilise la chaîne de recherche précédente comme
  chaîne courante de recherche.
<M-n> utilise la chaîne suivante de la liste des chaînes
  de recherche comme chaîne courante de recherche.
<M-Tab> visualise la liste des 16 dernières chaînes
  de recherche.


GnuLinux user doblan@club-internet.fr
2001-06-07