NOM
dico - Recherche d’un mot dans un lexique Français
SYNTAXE
dico pattern1 pattern2 patternN ... ...
dico est un petit programme permettant d’exploiter un lexique de mots
Français, afin d’en vérifier l’orthographe par exemple. Il supporte
une partie des expressions rationnelles afin de pouvoir trouver un mot
ou un groupe de mots a partir d’une fraction du terme recherché. dico
recherche le dictionnaire soit dans le chemin pointe par la variable
d’environnement DICO, soit si elle n’est pas définie par défaut dans le
répertoire /usr/lib/dico-cougnenc.
La version MS-DOS procède de manière un peu différente, voir le
paragraphe MS-DOS a la fin de ce manuel.
Le dictionnaire fourni avec dico est simplement organise en 26 fichiers
ascii, un pour chaque initiale, un mot par ligne. Ceci permet a
quiconque de rajouter un mot inconnu dans le lexique, a l’aide d’un
simple éditeur de texte.
Ce lexique est le fruit de nombreuses heures de travail de nombreuses
personnes, il est très complet notamment au point de vue technique et
scientifique, vous y trouverez nombre de termes ne figurant pas dans
les dictionnaires standards.
Il contient également les Codes Postaux des principales communes de
France, ce qui a l’usage s’avère très pratique.
Les fichiers se nomment a.dic, b.dic,...,z.dic, nom de fichiers
compatibles avec la plupart des systèmes j’espère. Un fichier
supplémentaire nomme version.dic permet de connaître la date et le nom
de l’auteur de la dernière mise a jour.
Ce format texte, très simple, est certes assez encombrant sur le
disque, mais il a été choisi en raison de l’extrême simplicité d’emploi
pour tout le monde. Les machines sont maintenant largement équipées en
disque dur pour supporter autant de données (environ 1 ou 2 Mo selon la
version du lexique) sans la complication d’arbres ou de compactage.
Chacun est libre de récupérer ces données et de s’écrire ses propres
programmes pour les gérer, ce format facilite tout.
EXEMPLES d’UTILISATION
Le dico prend une ou plusieurs expressions a rechercher sur sa ligne de
commande. Un nombre quelconque d’arguments est possible, il n’est
limite que par la longueur de la ligne de commande possible sur votre
système d’exploitation.
Ces arguments obéissent a un petit sous-ensemble des expressions
rationnelles, l’utilisation de regexp() aurait été trop lourde pour un
petit programme comme celui-ci.
dico machin
Recherchera le mot machin.
dico trou*r
Recherchera tous les mots commençant par "trou" et se terminant
par "r".
Les opérateurs reconnus sont:
* Remplace toute une série de caractères.
? Remplace un seul caractère, a la position ou il se trouve.
[c-f] Remplace un ensemble de caractères, ici de la lettre ’c’ a la
lettre ’f’
[^loq] Exclut un ensemble de caractères, ici les lettres ’l’ , ’o’ et
’q’
En pratique, la plupart du temps vous n’utiliserez que *, lorsque vous
savez comment commence un mot mais avez des doutes sur le milieu ou la
fin. Par exemple :
dico t?ro*ne
Devrait a coup sur vous trouver l’orthographe de Tyrothricine...
CODES POSTAUX
Les codes postaux des principales communes importantes de France ont
été saisis dans ce dictionnaire, on peut donc en une seconde trouver le
code recherche, ce qui est plus rapide que de se souvenir a quel
endroit l’on a rangé l’annuaire papier officiel !
Ces codes sont inscrits a la suite du nom de la commune, séparés en
principe par une tabulation pour simple raison de propreté d’affichage.
Pour cette raison, il est impossible de trouver un code postal en
entrant le nom exact de la ville recherchée, on doit absolument
utiliser au moins le caractère de remplacement ’*’ a la suite de ce
nom.
Par exemple pour trouver le code postal de la ville d’Antony, vous
devez taper la commande:
dico antony*
Attention, un certain nombre de villes sont orthographiées hélas
incomplètement, en utilisant une notation abrégée. Par exemple, "saint"
et "sainte" sont respectivement abrégés par "st" et "ste".
Le mieux pour trouver a coup sur par exemple le code ou les codes
postaux de "Saintes Maries de la Mer" est de lancer la recherche comme
suit:
dico s*marie*mer*
En raison de la simplicité d’organisation du lexique, la recherche ne
fait appel a aucun algorithme compliqué, on pourrait presque réecrire
cette commande avec grep et les outils standards. C’est pourquoi il est
conseille de toujours donner dans la mesure du possible, la première
lettre du mot a rechercher. En effet, dans le cas inverse le programme
recherche dans TOUS les fichiers sans distinction, ce qui est beaucoup
moins rapide ( 26 fois exactement...)
CARACTÈRES ACCENTUES
Le dictionnaire contient bon nombre de mots comportant des accents.
Les caractères sont donc définis sur 8 bits et non 7; si vous avez
récupéré ce programme en version DOS, il utilise le jeu de caractères
IBM-Etendu de l’IBM-PC. Si vous l’avez récupéré en version UN*X,
c’est le jeu ISO 8859-1 qui est utilise, dit Latin-1.
La recherche se fait en considérant toute minuscule accentuée comme son
équivalent non accentue, et inversement; vous n’êtes pas oblige
d’entrer des accents dans la commande de recherche. Ceci ralentit un
peu le temps de traitement, mais a notre époque les machines sont
rapides...!
OPTIONS
Le programme dico possède deux fonctionnalités supplémentaires, en le
lançant avec les options suivantes sur la ligne de commande :
dico -v
Affichera le numéro de version du programme, et la date de mise
à jour du lexique; ainsi que le nom de la personne ayant
effectue cette mise à jour. ( fichier version.dic )
dico -c Comptera tous les mots contenus dans le
lexique, en affichant les résultats intermédiaires pour chaque
lettre de l’alphabet, puis le total.
TERMINAL et ACCENTS
Par défaut, les mots affiches sont au format d’accents utilises par le
système ( DOS ou ISO Latin-1). Vous pouvez toutefois demander au
programme dico de traduire à l’affichage ces accents, en fonction de
votre terminal. ( ceci n’est valide que dans la version UN*X, sous DOS
cela n’a aucun intérêt.)
Ceci se fait en définissant une variable d’environnement nommée
DICOTERM.
Celle-ci peut prendre trois noms différents, et doit être utilisée dans
les cas suivants :
DICOTERM=ASCII
Votre terminal est 7 bits et ne connaît que l’ASCII pur. Dans ce
cas tous les accents seront traduits par la lettre non accentuée
correspondante.
DICOTERM=IBM
Votre terminal affiche le jeu IBM étendu MS-DOS, et le
dictionnaire est au format ISO. Dans ce cas les accents seront
correctement traduits pour le terminal.
DICOTERM=ISO
Votre terminal affiche le jeu ISO Latin-1 et le dictionnaire est
au format MS-DOS. Dans ce cas ( peu probable), les accents
seront traduits correctement.
N’utilisez jamais cette variable d’environnement si vous êtes sur la
console LINUX ou si vous utilisez la version MS-DOS. Les résultats
n’auront aucun intérêt !
VOIR AUSSI
grep(1) ispell(1)
BUGS
Vous constaterez qu’il y a encore du travail à faire sur ce lexique,
certains mots apparaissant à la fois en version non accentuée, et en
version accentuée. Certaines fautes de frappe ont pu être glissées,
certaines expressions peuvent être erronées. De même, il se peut que
certains mots apparaissent en double... Néanmoins il donne
satisfaction dans la plupart des cas, en l’état.
En dehors de ces imperfections, il contient les noms communs, verbes,
participes, et quelques conjugaisons irrégulières, ainsi que certains
noms propres; ce sont en règle générale les termes dont on doute de
l’orthographe qui sont inclus dans ce lexique, au fur et à mesure de
son utilisation.
VERSION
Normalement, la commande "dico -v" devrait vous afficher la date de
dernière mise a jour du lexique, simplement en allant lire le fichier
texte "version.dic" qui se trouve dans le même répertoire que les
fichiers du dictionnaire. Pensez à mettre à jour ce fichier lors de vos
propres modifications !
COPYRIGHT
Le programme dico.c est (c) René Cougnenc 1992, doit être considèré
comme FREEWARE, c’est à dire que vous pouvez le distribuer gratuitement
à quiconque, a condition d’avoir la sympathie de ne pas en faire un
usage commercial sans en avertir l’auteur :-)
Vous pouvez modifier les sources a votre convenance, utiliser tout ou
partie du programme pour d’autres réalisations. Vous êtes fortement
encourages a apporter des améliorations et a les communiquer !
Le dictionnaire ne peut faire l’objet d’aucune propriété, il a été
réalisé petit a petit par l’adjonction manuelle de nombreuses personnes
dont vous pouvez faire partie: Continuez à l’enrichir tant que vous le
pouvez, ou à corriger d’éventuelles erreurs. Faites circuler votre
travail et surtout modifiez le fichier "version.dic", afin d’indiquer
la date de mise a jour de ce dictionnaire, pour que tout le monde sache
ou il en est et qui a pu faire les dernières bêtises :-)
MISE A JOUR - FORMAT
Le lexique peut être mis à jour ou corrige à l’aide d’un simple éditeur
de texte. Les mots doivent figurer en lettres minuscules, c’est le
programme d’affichage qui formatte les sorties. Ceci est très
important pour la routine de recherche !
Les accents doivent être entrés au format courant utilisé par la
machine, correspondant au programme exécutable qui a été compilé. (
sous LINUX, ISO, sous DOS, IBM ). Il est préférable de conserver le
format texte Unix ( un simple line-feed entre chaque ligne) plutôt que
celui de DOS, plus encombrant. (CR/LF). La version MS-DOS s’accommode
très bien de ce format, par contre sous **IX il est impératif de
supprimer un éventuel format MS-DOS.
Il ne doit y avoir qu’un seul mot par ligne (ou un mot compose),
l’ordre alphabétique n’est pas nécessaire pour que le programme
fonctionne, mais il affichera les termes dans l’ordre rencontre lors de
la recherche.
Toute ligne commençant par le caractère ’#’ sera considérée comme une
ligne de commentaire par le programme. Toutefois n’en abusez pas car
chaque ligne ralentit la recherche bien entendu.
Les Codes Postaux sont inscrits de la manière suivante:
ville <TAB> CODE
La tabulation n’est la que pour des raisons de propreté d’affichage et
d’économie de caractères. Tachez tout de même de le respecter, la
version 1.1 fait usage de cette tabulation pour reconnaître les
communes et formater plus proprement l’affichage...
Pensez a mettre a jour le fichier "version.dic", simple texte indiquant
qui a fait quoi et a quel moment , afin de savoir ce qu’il en est du
lexique !!!!!
REMERCIEMENTS
Ce lexique à pu voir le jour grâce aux contributions volontaires ou
involontaires ( analyse automatique de messages...) de nombreuses
personnes dont voici une liste non exhaustive:
Alain Lemell, Alain Vermotgaud, Attila Altan, Bernard Guillaumot,
Bernard Milovanovic, Bernard Norek, Bertrand Petit, Cedric Ingrand,
Christian Delannoy, Christian Perrier, Daniel Morais, Daniel
Toussaint, Denis Gradel, Antony Filleau, Edmond Vandermeersch, Emmanuel
Charpentier,Patrick Montgermont, Emmanuel Roussin, Eric Richet, Francis
Rozange, Gerard Mannig, Francois Jarraud, Francois Millet, Francois
Vigneron, Georges Wanderstok, Javier Castillo, Jean-Christophe Peyrard,
Jean-Claude Ambroise, Jean-Luc Betin, Jean-Marie Guitard, Joel
Surcouf, Jps Gueniat, Klaus Steinschaden, Laurent Graffin, Mic
Ralle, Michel Duffaud, Michel Perez, Michel Pinquier, Nat Makarevitch,
Olivier Girard, Lionel Delafosse, Ollivier Civiol, Ollivier Robert,
Philippe Abegg, Jacques Lipka, Pascal Petit, Pascal Reszetko, Pascal
Tremong, Paul Milliot, Philippe David, Philippe Duflot, Philippe
Paternotte, Philippe Waki, Pierre Tran, Pierre Zarka, Regis Rampnoux,
Rene Cougnenc, Rene Durand, Sam Cabannes, Serge Delbono, Serge Gautier,
Stef Evain, Stephane Derny, Vincent Gillet, Emmanuel Bataille.
Il a demandé plus d’une centaine d’heures ensuite a l’auteur du petit
programme dico, pour fusionner l’ensemble des fichiers, trier et
corriger, rajouter ou ôter des mots. Le lexique tel que fourni avec
cette version 1.0, a été retravaillé manuellement mot par mot, la
fatigue expliquera les erreurs qui ont pu se glisser malicieusement
dedans... Merci de me comprendre :-)
Sont a remercier particulièrement Wolfgang LENERZ du club QL Contact
France (Utilisateurs de machines Sinclair QL), qui a fourni
gracieusement un lexique fort utile réalisé pour un projet d’un type
proche de Le Dico, ainsi que Herve Blaise,
Nat Makarevitch et Georges Wanderstok pour leurs importantes
contributions.
Enfin, un double apéritif spécial pour Serge DELBONO, qui eut le
courage de faire un superbe portage de Le Dico pour Microsoft Windows
(r).
Remercions également Linus Torvalds et tous les créateurs du système
LINUX, superbe UN*X gratuit, sans lequel le travail du lexique aurait
été un pensum sous MS-DOS...