Grammaire et typographie

Grammalecte est un correcteur grammatical et typographique open source dédié à la langue française, pour Writer (LibreOffice, OpenOffice), Firefox & Thunderbird, Chrome, etc.

Principe de fonctionnement

Grammalecte essaie d’apporter une aide à l’écriture du français sans parasiter l’attention des utilisateurs avec de fausses alertes. Ce correcteur suit donc le principe suivant : le moins de « faux positifs » possible ; s’il n’est pas possible de déterminer avec de fortes chances qu’une suite de mots douteuse est erronée, le correcteur ne signalera rien.

Fonctionnalités

Moteur de détection d’erreurs

Grammalecte dispose d’un moteur grammatical qui, en interne, simplifie le texte au fur et à mesure pour détecter nombre d’erreurs diverses. En premier lieu, il examine le paragraphe et sa ponctuation, puis il le scinde en phrase.

Erreurs détectées :

  • Ponctuation : virgules, points, etc.
  • Espacements : espaces surnuméraires, espaces insécables, etc.
  • Typographie : apostrophes, tirets de dialogue, guillemets, etc.
  • Redondances : dans le paragraphe ou dans la phrase.
  • Traits d’union manquants ou superflus.
  • Majuscules manquantes ou superflues.
  • Accords en genre et en nombre.
  • Conjugaison.
  • Confusions, homonymies, faux-amis.
  • Pléonasmes.
  • Option pour détecter les erreurs de reconnaissance optique (OCR).
Grammalecte · Correcteur
Grammalecte · Correcteur

Moteur de suggestion

Grammalecte intègre plusieurs mécanismes de suggestion.

Options grammaticales

Il est possible d’activer ou désactiver les catégories de recherche d’erreurs.

Grammalecte · Options grammaticales

Multi-dictionnaires

Trois dictionnaires orthographiques sont fournis : “Classique”, “Réforme 1990” & “Toutes variantes”. Par défaut, le dictionnaire sélectionné est le “Classique”. Vous pouvez en changer à votre gré.

Grammalecte · Options orthographiques

Formateur de texte

Pour corriger rapidement de nombreuses erreurs récurrentes (notamment typographiques), effacer certains éléments potentiellement superflus. Le formateur de texte possède également quelques options de restructuration de texte.

Grammalecte · Formateur de texte

Conjugueur

Conjugue tous les verbes inclus dans le dictionnaire (environ 8000).

Grammalecte · Conjugueur

Lexicographe

Outil simple qui renseigne sur la nature grammaticale du mot sur lequel se trouve le curseur.

Grammalecte · Lexicographe

Éditeur lexical

Pour créer votre dictionnaire personnalisé.

Grammalecte · Éditeur lexical

Recenseur de mots (LibreOffice)

Pour compter le nombre d’occurrences de tous les mots et surligner ceux que vous désirez faire ressortir.

Grammalecte · Recenseur de mots

Modification du champ ‹Auteur› (LibreOffice)

Writer ne possède aucune interface pour modifier le champ “auteur”. Grammalecte vous en propose une.

Grammalecte · Modification du champ ‹Auteur›

Menu d’accès

Un menu aisément accessible offre l’accès aux principales fonctions.

Grammalecte · Menu

Autres captures d’écran

Firefox

Thunderbird

CLI & divers

Version actuelle

0.6.5

07 juillet 2018

Notes de version

Téléchargement

LibreOffice / OpenOffice

Grammalecte et les dictionnaires orthographiques sont téléchargeables sous forme d’extension et ne fonctionnent qu’avec LibreOffice ou OpenOffice. Il existe plusieurs versions de Grammalecte. Veillez à télécharger celle pour votre logiciel.

GRAMMALECTE

pour LibreOffice 4.2+

Anciennes versions

Dictionnaires orthographiques

Notes concernant l’installation
  • Utilisez LibreOffice plutôt qu’OpenOffice : ce dernier n’inclut qu’une version obsolète de Python, le fonctionnement de Grammalecte sera parfois défaillant. LibreOffice est bien plus développé qu’OpenOffice.
  • Gestionnaire des extensions : Pour installer Grammalecte, allez dans le menu Outils > Gestionnaire des extensions > Ajouter > Sélectionner l’extension que vous avez téléchargée.
  • N’installez qu’une seule de ces extensions. Elles ont toutes le même identifiant. L’installation de l’une écrasera l’autre.
  • Après l’installation de l’extension, il faut redémarrer le logiciel pour que celle-ci soit fonctionnelle.
  • Grammalecte ne peut cohabiter avec LanguageTool, il est nécessaire de désactiver ou de désinstaller l’une des deux extensions, car Writer ne donne accès qu’à un seul correcteur par langue.
  • Linux : Veillez à installer la « passerelle Python-UNO », le paquet se nomme en général libreoffice-pyuno, python3-uno ou openoffice-python-uno ou quelque chose d’approchant, ça dépend des distributions. Il existe une passerelle pour Python 3 et une autre pour Python 2. Grammalecte fonctionne avec Python 3.3, ou en version rétrocompatible avec Python 2.7. La boîte de dialogue “À propos” vous indique à quelle version de Python Grammalecte est connecté. Si vous avez un problème persistant pour faire fonctionner l’extension, installez la version officielle de LibreOffice, qui contient les paquets Python nécessaires. Les distributions empaquettent LibreOffice chacune à leur manière, consultez votre distribution pour en savoir plus (mais vous gagnerez probablement du temps à installer la version officielle).
  • Ça ne fonctionne toujours pas ? Dans ce cas, c’est peut-être votre profil utilisateur qui est corrompu : comment purger le profil.

Firefox

Le module pour Firefox est hébergé sur le site officiel des extensions de Mozilla. Les modules pour Firefox sont signés, par mesure de sécurité, et le code de l’extension est vérifié par Mozilla. Ce module n’envoie aucune information en ligne.

Thunderbird

Le module pour Thunderbird est hébergé sur le site officiel des extensions de Mozilla. Les modules pour Thunderbird ne sont pas signés et peuvent être installés même quand leur code n’a pas encore été vérifié. Le module sur le site de Mozilla est en général une version antérieure, attendu que le module n’est publié qu’une fois que son code a été vérifié. Cette extension n’envoie aucune information en ligne.

Version non vérifiée par Mozilla (v0.6.5)
(mise à disposition en attendant que la version sur le site officiel des extensions soit validée)

Chrome

Grâce au nouveau modèle d’extension en cours de standardisation, l’extension pour Firefox a pu être rendue compatible avec Chrome.

CLI & Serveur

Interface en ligne de commande, serveur et package pour Python. Prérequis : Python 3.3+.

Autres modules, extensions, greffons…

Il existe des dizaines, des centaines de logiciels éditant du texte. Il n’est pas possible de fournir une interface à tous. Mais les communautés de ces logiciels peuvent éventuellement développer une extension.

Ces modules sont développés par des personnes tierces et sont conçus et distribués de leur propre chef.

Soutenir Grammalecte

Grammalecte est un logiciel open source et gratuit qui a besoin de vos dons pour exister. Merci d’envisager de soutenir ce projet avec ne serait-ce quelques euros.

Paypal

Bitcoin

1FVj5JJNpFHoZDNKf1ZynHEphqfbBYwnXy

Problèmes connus

Obtenir de l’aide

Pour tout souci avec LibreOffice ou OpenOffice, allez sur le forum francophone d’OpenOffice.

Pour tout problème avec Firefox ou Thunderbird, allez sur le forum Mozfr.

Pour les problèmes ne concernant que ce correcteur, notre forum.

  • Faux positifs : Même si le risque de faux positifs a été minimisé autant que faire se peut, il n’est malheureusement pas possible de les éradiquer complètement, le correcteur peut se tromper et proposer quelque chose qui n’est pas adapté à la situation (lire la FAQ pour plus de détails). Demeurez donc vigilants.
  • Chevauchement des erreurs : Avec Writer, il peut arriver, lorsque deux erreurs se chevauchent, que la correction choisie s’applique sur la zone des deux erreurs au lieu d’une seule. (Ce problème est rare, tout étant fait pour l’éviter.)
  • Exposants et indices : Avec Writer, perturbations possibles si une partie du texte corrigé est en exposant ou en indice. Exemples.

Foire aux questions

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, 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. Mais les mécaniques internes des deux correcteurs sont assez différentes.

Les différences techniques sont grosso modo les suivantes : LanguageTool repose avant tout sur un tokeniseur qui découpe les phrases et un désambiguïsateur qui étiquette les “tokens”, tandis que Grammalecte travaille sans tokenisation avec des expressions régulières et un préprocesseur de texte qui transforme le texte en interne pour le modifier et le simplifier.

Le fonctionnement de Grammalecte et la comparaison avec LanguageTool sont décrits dans un article sur LinuxFR.

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.
  • 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.
  • 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.
  • 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.

Remerciements

Merci à tous ceux qui ont soutenu ce projet, aux contributeurs, aux testeurs et aux donateurs.

Campagne de financement de 2017

autres contributeurs de la campagne de financement de 2017

Florestan Fournier (2ᵉ contribution),
Jean-Philippe Guérard,
Jérémie Patonnier,

Alain P.,
Benjamin Vialle,
Bors Ltd,
Christian Daviot,
Georges Seguin,
Masson Informatique,
NDE,
Patrick G.,
Lionel “Ploum” Dricot,
PropositionJoe,
Shnoulle,
Terhemis,
Thibaud Wojtowicz,

Jean-Francois Nifenecker, Francois Marot, Jean-Marie Chosson, Victor Noël, Laurent Pino, Olivier Mondoloni, Laurent Espitallier, Gilles Felix, Nicolas17, Jean-Christophe Baptiste, Silvère Lestang, Thibre, Xavier Freymuth,

Adrian Poiget, Alterlibriste, Anselme Henru, Antab, Belleguic Terence, Christophe “CHiPs” Petit, Cistes44, David_Zet, Denis Dordoigne, Dimitri, Ergatif, Étienne Gilli, Ewen Bourumeau-Guénézan, Fredoche, G. Ydier, Gabriel Risterucci, Gelth, Htbbr, Jaxom_99, Jean-François Spricigo, Jocelyn, Joël Schaerer, Joël Thieffry, Julien Schermann, Jérémie Lesage, Jérôme Pellois, Kentiko, Laurent Silvestre, Laurent Séguin, Luc M., Luc34, Martin Bodin, Nicolas M., Nylnook, Olivier Dᴏꜱꜱᴍᴀɴɴ, Pablo Ruth, Patrice Hardouin, Philippe Paget, Quentin Buisson-Debon, Remi Collet, Romain Reignier, Rémy Hubscher et Séverine Beyer, Stanislas Garret, Sébastien Villemot, Tristan Giovangrandi, Yann Soubeyrand, Yxogenium

et les centaines de contributeurs qui ont préféré garder l’anonymat.

Campagne de financement de 2015

logo-big

autres contributeurs de la campagne de financement de 2015

Florestan Fournier,
Pierre Choffardet,
Xavier Guillot,


David Duriez,
Jean-Marc Vieillevigne,

Laurent B.-P.,
Laurent Breton,
Luc Bentz,
Luc Maisonobe,
Stéphanie Huck,

Numerama,
Choc02,
Flo an Aod,
Frenchnerd Fan Forum,
Henri Boyet,
Isabelle Dutailly,
Jean-Sébastien Lebacq,
Jérémy Ozog,
Karmaki,
Laurent Quiquerez,
Lionel Allorge,
Raphaël Grolimund,
Stéphane “Alias” Gallay,
un_gascon,

Arnaud Courtes, Arthur Violy, Borjan Tchakaloff, Bruno Pagani, C_Lucien, Cédric Augustin, Cédric Bail, David Lava, Gauthier Monserand, Gersan Moguérou, Gwendal, Josué Tille, Laurent Séguin, Marie Sartori, Mickaël Trillaud, Okki, Olivier Heintz, Philippe Debar, Pierre-Amiel Giraud, Sureau, Sylvain Deauré, Thibaut Renaux, Thomas Langé, Victor Noël, Xavier Freymuth, Xavier Lamy, Yaap, Yann “Ze” Richard,

Adrien Dutertre, Alain Deléglise, Alexandre Wetzel, Aniwey, Anthony C. (Schröd), Antoine, Arliguy, Arnaud Le Cam, Association Ergodis, Aurélien Brevers, @benpro82, Bader Lejmi, Benjamin Vialle, Benoit Friry, Bestel, Bog, Brendan Chabannes, C. Perrot, Camille Bissuel, Charles de Leusse, Charles Duysinx, Christian Maitre, Christophe Ayroles, Christophe Carré, Cyril Russo, David Claveau, David Leuliette, David Noël, e-Jim, Emily Tibbatts, Étienne André, Étienne Gilli, Fabien Grumelard, Florent Cohen, Françoise Mangeot, Freda_73, G. Ydier, Garvalf, Goofy, Graveen, Guillaume Ortega, Inkey, J.-B. Butet, Jean Commère, Jean Elchinger, Jean-François Fillatre, Jens Peder Weibrecht, Joakim Gautier, Jonathan Tessé, Joseph Ligier, Julien Dubois, Julien Schermann, Kasi, Ken Le Prado, Kevin L.-H., Kevin Messer, Koonic, Lapineige, Laurent Dufréchou, Laurent Espitallier, Lionel Møurre, Louis Sajous, Maïeul Rouquette, Marie-Odile, Maxbilh, Maxime Roy, Meldrash, Michel Corps, Michel Weinachter, Nicoe, Nicolas Duhaut, Nicolas Pettiaux, Olivier Dupré, Olivier Duquesne, Olivier Eble, Olivier Le Moal, Pablo Ruth, Paul-Emmanuel Lett, Perline, P’tit Filou, Philippe Paget, Pierre Rudloff, Pierre-Alain Bandinelli (société HéliApps SAS), pl6025, QCTX, Quentin Buisson-Debon, Rabie Nouri, Rémy Hubscher et Séverine Beyer, Rodolphe Dutruel, Sampson Savinel & Romain Fouquet, Samuel Bernard, Samuel Dauzon, Samuel L., Scrubie, Serge Guillaume, SkyghiS, Stéphanie Baumard, Terence Belleguic, Thierry Borel, Thierry Munoz, Trezheur, Valentin Benozillo, Veehem, Vincent Gravade, Vincent Meunier, Willy Mangin, Yann Asset, Yann Brelière, Yannick Geynet, Yelin

et aux centaines de contributeurs qui ont préféré garder l’anonymat, ainsi qu’à la GPL3 de Richard Matthew Stallman.

Clavier BÉPO

Le bépo est une disposition de clavier optimisée pour la frappe du français qui, contrairement à l’azerty, permet de taper tous les caractères du français, y compris les caractères typographiques. Cette disposition a été conçue sur une étude statistique de l’utilisation des caractères afin de minimiser l’effort. Les caractères les plus fréquents sont les plus accessibles. Par ailleurs, le bépo offre l’accès à un nombre de caractères inégalé. Même en programmation, le bépo surpasse l’historique azerty qui n’a été optimisé pour rien.

En apprendre plus sur le bépo

Logo Bépo

Avantages du bépo

Carte du bépo

Ce que vous offre le bépo :

  • L’accès à tous les caractères français, y compris les caractères ligaturés œ, æ.
  • Des majuscules accentuées accessibles via la touche MAJ.
  • Des caractères utiles en typographie : apostrophe courbe, guillemets français ou anglais, tirets cadratin et demi-cadratin, points médians, points de suspension, etc.
  • Un nombre inégalé de touches mortes pour taper toutes sortes de diacritiques (ce qui permet de taper tous les caractères des langues européennes utilisant l’alphabet latin), les caractères grecs, les symboles scientifiques, les exposants, les indices, etc.
  • Une logique de placement plus intuitive : que ce soit les parenthèses, les guillemets, les crochets, les accolades… le caractère fermant est voisin du caractère ouvrant.

Pourquoi le bépo ?

Parce que l’azerty, ainsi que le qwerty, sont deux dispositions héritées du temps des machines à écrire où l’on veillait à ce que les baguettes ne s’entrechoquent pas.

Vous imaginez-vous faire des travaux chez vous avec de mauvais outils ? Passer au bépo permet de se rendre compte combien l’azerty est un outil inadapté et inefficace avec lequel on a appris à composer.

Si votre activité consiste à écrire au clavier et que vous avez encore des décennies de frappe devant vous, vous devriez songer à migrer. C’est un investissement en temps rentable.

Est-ce facile d’apprendre le bépo ?

Sans produire d’efforts intenses, il faut environ deux mois pour passer au bépo. Ce semble être un temps d’apprentissage usuel pour beaucoup de personnes.

Pour ma part, la première semaine fut un enfer, la suivante fut très difficile. Puis ça a commencé à devenir plus facile. Il m’a fallu environ un mois pour avoir une vitesse de frappe acceptable et passer à plein temps au bépo. Auparavant, je rebasculais vers l’azerty dès que j’avais un long texte ou e-mail à écrire. Après deux mois, j’avais retrouvé ma vitesse de frappe normale.

Mieux vaut ne pas migrer en période de rush, mais dans une période assez calme. Ou bien simplement s’entraîner un quart d’heure par jour pour se familiariser peu à peu avec le clavier. Les débuts sont ardus, mais ça vient plus vite qu’on ne le pense.

Y a-t-il des claviers bépo ?

Oui.

Il existe notamment le TypeMatrix, un clavier matriciel ergonomique. Les touches ne sont pas décalées. Même si ce clavier semble un peu déroutant au commencement, il s’avère très bien pensé et il devient difficile de s’en passer. Mais il est cher (environ 100 ou 120 €).

On trouve d’autres claviers bépo plus abordables : Penclic C2, Ergonéos.

Mais le plus simple, pour commencer, c’est d’acheter un jeu d’autocollants à quelques euros…

Tout ce qu’il y a à savoir est sur le site bépo.fr.