Page suivantePage pr�c�denteTable des mati�res

5. Ispell

Si vous d�sirez v�rifier l'orthographe de votre document directement depuis Emacs, vous pouvez utiliser la distribution Ispell et son mode associ� sous Emacs.

5.1 Configuration initiale

Tout d'abord, ajoutez ces lignes � votre .emacs pour configurer Emacs :

 (autoload 'ispell-word "ispell"
 "Check the spelling of word in buffer." t)
 (global-set-key "\e$" 'ispell-word)
 (autoload 'ispell-region "ispell"
 "Check the spelling of region." t)
 (autoload 'ispell-buffer "ispell"
 "Check the spelling of buffer." t)
 (autoload 'ispell-complete-word "ispell"
 "Look up current word in dictionary and try to complete it." t)
 (autoload 'ispell-change-dictionary "ispell"
 "Change ispell dictionary." t)
 (autoload 'ispell-message "ispell"
 "Check spelling of mail message or news post.")
 (autoload 'ispell-minor-mode "ispell"
 "Toggle mode to automatically spell check words as they are typed in.")

5.2 Le choix de vos dictionnaires par d�faut

Vous pouvez configurer Emacs pour qu'� l'ouverture d'un fichier, celui-ci choisisse automatiquement quels dictionnaires utiliser. Vous pouvez en effet utiliser plusieurs dictionnaires. Le premier et s�rement le plus important est le dictionnaire principal, distribu� avec Ispell. Vous avez le choix entre plusieurs langues. Le deuxi�me est votre dictionnaire personnel, celui o� Ispell ajoutera les mots qu'il n'aura pas trouv� dans le premier dictionnaire mais que vous lui aurez indiqu� de garder.

Voici les lignes � ins�rer � votre .emacs si vous d�sirez utiliser par d�faut le dictionnaire fran�ais distribu� avec Ispell, et placer votre dictionnaire personnel dans un fichier .ispell-dico-perso dans votre r�pertoire racine.

 (setq sgml-mode-hook
 '(lambda () "D�fauts pour le mode SGML."
 (setq ispell-personal-dictionary "~/.ispell-dico-perso")
 (ispell-change-dictionary "francais")
 ))

5.3 Choix des dictionnaires pour un certain fichier

Un petit probl�me se pose si vous ne v�rifiez pas toujours des textes dans la m�me langue. Et si vous traduisez des documents, il est probable que vous passiez d'une langue � l'autre assez souvent.

Je ne connais pas de moyen en Lisp de choisir, soit automatiquement, soit en un click de souris, les dictionnaires principaux et personnels associ�s � la langue utilis�e dans le fichier en cours. (Si vous en connaissez un, faites-moi signe !)

Mais il est possible d'indiquer quels dictionnaires vous voulez utiliser pour ce fichier (et seulement celui-l�). Il suffit de les rajouter en commentaire, � la fin du fichier, pour qu'Ispell puisse les lire en lan�ant une v�rification :

 <!-- Local IspellDict: english --> <!-- Local IspellPersDict: ~/emacs/.ispell-english -->

Si vous avez d�fini dans votre .emacs que vos dictionnaires par d�faut seront fran�ais, vous pouvez alors ajouter ces lignes � chaque fin de fichier dont le texte est en anglais.

5.4 V�rifier votre document

Pour lancer la v�rification de votre document en int�gralit�, utilisez, depuis n'importe o� dans votre document Meta-x ispell-buffer. Vous pouvez aussi lancer la v�rification sur une r�gion seulement du document :

Emacs lance alors Ispell. Si ce dernier trouve un mot qu'il ne connait pas, il vous indique ce mot (normalement en surbrillance) et vous demande de presser une touche :

Si Ispell trouve un ou plusieurs mots ressemblant � celui qu'il ne connait pas, il vous les indique dans une petite fen�tre, chacun pr�c�d� d'un chiffre. Il suffit de presser un de ces chiffres pour corriger le mot mal orthographi� par le mot correspondant.

5.5 Dictionnaire personnel contre dictionnaire local au fichier

La touche i permet d'ins�rer un mot dans le dictionnaire personnel, alors que la touche A permet d'ins�rer un mot dans le dictionnaire local au fichier.

Le dictionnaire local au fichier est une suite de mots ins�r�s � la fin du fichier, sous forme de commentaires, et qui est relu par Ispell chaque fois que vous le lancez sur ce fichier. Cela permet d'accepter certains mots, valables dans ce fichier, mais qui ne le seraient pas dans d'autres.

A mon avis, il est pr�f�rable que le dictionnaire personnel soit r�serv� aux mots que le dictionnaire principal ne connait pas mais qui font vraiment partie de la langue (comme les mots compos�s), plus certains mots n'appartenant pas � la langue ou noms propres qui reviennent dans un grand nombre de fichiers (comme Linux) et ne ressemblant pas trop � un mot du dictionnaire principal : l'ajout par exemple de certains noms et pr�noms de personnes dans le dictionnaire personnel peut �tre dangereux, car ils ressemblent parfois � un mot de la langue (imaginez qu'il ne trouve pas de fautes dans la phrase : `Ted en est l'effet au phil du temps.' !).

5.6 La v�rification `� la vol�e'

Ispell peut aussi v�rifier l'orthographe au fur et � mesure que vous tapez votre document. Il faut utiliser pour cela le mode ispell-minor-mode. Lorsque vous d�sirez lancer ou arr�ter ce mode de v�rification, tapez Meta-x ispell-minor-mode. Ispell vous envoie alors un bip chaque fois que vous tapez un mot qu'il ne connait pas.

Si ces bip � r�p�tition vous ennuient (ou si votre voisin de palier dort !), vous pouvez les remplacer par un flash de l'�cran, en tapant Meta-x set-variable RET visible-bell RET t RET. Ou ajoutez cette ligne � votre .emacs pour faire taire Emacs � tout jamais :

 (setq visible-bell t)

5.7 Saut de r�gions

Il est possible de ne pas v�rifier votre document en int�gralit�, en sautant quelques r�gions bien sp�cifiques. En effet, vous voudrez s�rement ne pas v�rifier l'orthographe de vos balises SGML. Pour cela, ajoutez la ligne suivante � votre .emacs :

 (setq ispell-skip-sgml t)

Une version Beta du 20 Mars 98 du fichier ispell.el est disponible � l'adresse http://kdstevens.com/~stevens/ispell-page.html. Cette version �tend les r�gions SGML � sauter. En effet, la version d'ispell.el fournie avec Emacs permet seulement de sauter les tags SGML, de la forme <tt> ou </tt>.

Cette version Beta permet de sauter �galement les r�gions entre :


Page suivantePage pr�c�denteTable des mati�res

Hosting by: Hurra Communications GmbH
Generated: 2007-01-26 18:01:31