Pourquoi le correcteur ne signale pas toutes les erreurs ? Pourquoi signale-t-il des erreurs qui n’en sont pas ?

Plusieurs raisons sont possibles, mais quelques explications sur les différentes vérifications sont nécessaires pour comprendre.

Vérification de l’orthographe

Un correcteur orthographique vérifie seulement que les mots écrits existent dans son lexique, les souligne en rouge si ce n’est pas le cas (et s’efforce de faire des suggestions sur demande de l’utilisateur), et c’est tout. Cet examen se fait mot à mot, sans souci de l’ordonnancement de ceux-ci. Par exemple, si vous écrivez : « Ils étai partie aux restaurent à près a voir mi a jours sont profile », aucune erreur ne sera signalée en rouge, car chaque mot existe en français.

Analyse grammaticale

Le correcteur parcourt le texte à la recherche de motifs d’erreurs, décrits par des règles, sur des suites de mots, dont il vérifie la nature grammaticale et les liens logiques. Pour fonctionner, le logiciel a besoin d’un dictionnaire de mots dont il connaît la nature grammaticale, le genre, le nombre, la conjugaison, etc.

Le correcteur peut se tromper si :

une règle est erronée ;

une règle ne tient pas compte d’un cas particulier (les règles sont souvent basées sur des probabilités) ;

l’étiquetage grammatical d’un mot est incorrect ou incomplet.

Le correcteur ne voit pas certaines erreurs, car :

il n’y a aucune règle qui cherche à détecter celles-ci (la complexité est parfois trop grande) ;

certaines règles ignorent délibérément certains cas, plutôt que de prendre le risque de faire une fausse alerte ;

toutes les fautes ne sont pas détectables par un correcteur grammatical.

La sémantique

Il n’y a pas d’analyse sémantique. L’ordinateur ne comprend pas ce que vous écrivez. Il ne peut détecter les erreurs de sens que vous pourriez commettre. Par exemple, si vous confondez pause et pose (deux noms féminins), vous pouvez écrire une phrase grammaticalement correcte, mais absurde. Sur ce point, on ne peut pas faire grand-chose.

Il est seulement possible de corriger des expressions courantes, comme « par acquis de conscience » (erronée), parce qu’elles sont aisément identifiables.

Il est aussi envisageable de se livrer à une analyse du contexte, avec une étude des champs lexicaux employés, mais nous ne disposons pas d’un dictionnaire étiqueté pour ça (et nous n’en disposerons probablement pas avant longtemps).

Quelle différence avec LanguageTool ?

Grammalecte est écrit en Python et en JavaScript, LanguageTool en Java. Les deux fonctionnent théoriquement plus ou moins de la même manière, par la reconnaissance d’erreurs décrites par des règles de détection plus ou moins larges. La principale différence réside dans le fait que Grammalecte fait plusieurs passes sur le texte, en l’annotant et le préparant pour les passes suivantes.

L’autre différence réside dans le mode de fonctionnement des extensions. Par défaut, LanguageTool envoie votre texte en ligne sur un serveur distant qui renvoie les erreurs, tandis que Grammalecte fonctionne de manière autonome et n’envoie aucune donnée en ligne à des tiers.

Pourquoi réinventer la roue ? Pourquoi ne pas plutôt améliorer LanguageTool ?

J’aime le Python et pas le Java. Je n’apprécie pas beaucoup non plus le XML, format dans lequel sont écrites les règles grammaticales de LanguageTool . En bref, je trouve que le Java et le XML sont trop verbeux, ce qui rendait déjà mon implication dans LanguageTool quasi nulle.

. En bref, je trouve que le Java et le XML sont trop verbeux, ce qui rendait déjà mon implication dans quasi nulle. Le développement de LanguageTool est centralisé, ce qui n’est pas toujours commode pour les adaptations spécifiques au français. Lightproof , en revanche, fournissait un kit minimal pour développer son propre système, ce qui me convenait mieux, et ce qui a permis de développer des solutions spécifiques que LanguageTool ne propose pas.

est centralisé, ce qui n’est pas toujours commode pour les adaptations spécifiques au français. , en revanche, fournissait un kit minimal pour développer son propre système, ce qui me convenait mieux, et ce qui a permis de développer des solutions spécifiques que LanguageTool ne propose pas. La dispersion des efforts n’est pas si grande, attendu que l’un des plus gros travaux pour concevoir un correcteur grammatical, c’est de constituer un lexique étiqueté, et c’est Grammalecte qui fournit celui de LanguageTool .

qui fournit celui de . Après plusieurs années, Grammalecte a rattrapé LanguageTool sur bien des points et l’a même dépassé sur certains.

Comment participer ? Où signaler les bogues ?

L’élaboration du dictionnaire se fait dans une section dédiée.

Vous pouvez signaler les bogues sur le forum.