Index: gc_lang/fr/config.ini ================================================================== --- gc_lang/fr/config.ini +++ gc_lang/fr/config.ini @@ -4,11 +4,11 @@ locales = fr_FR fr_BE fr_CA fr_CH fr_LU fr_BF fr_BJ fr_CD fr_CI fr_CM fr_MA fr_ML fr_MU fr_NE fr_RE fr_SN fr_TG country_default = FR name = Grammalecte implname = grammalecte # always use 3 numbers for version: x.y.z -version = 2.1.2 +version = 2.1.3 author = Olivier R. provider = Grammalecte.net link = https://grammalecte.net description = Correcteur grammatical, orthographique et typographique pour le français. extras = README_fr.txt Index: gc_lang/fr/rules.grx ================================================================== --- gc_lang/fr/rules.grx +++ gc_lang/fr/rules.grx @@ -2943,17 +2943,17 @@ certaines [lui|leur|y] en $:3p certaines @:3p¬:(?:G|[NA].*:[fe]:[pi]|V.e) <<- not morph(<1, ":[NAD].*:[fe]:[pi]") =>> select(\1, ":O") __da_contre__ - contre [moi|toi|soi|lui|elle|iel|nous|vous|eux|elles|iels] + contre {_pronom_obj_} <<- =>> select(\1, ":R") - [la|les|des|une|cette|ma|ta|sa|notre|votre|leur+s] >lutte ?$:A¬:G¿ contre - [>accusation|>action|>assaut|>attentat|>croisade|>guerre] ?$:A¬:G¿ contre - [>guerre|>jihad|offensive+s|>ratonnade|>sortilège|>violence] ?$:A¬:G¿ contre - [>antidote|>crime|>philtre|>remède|>sérum|>vaccin|>solution] ?$:A¬:G¿ contre + [la|les|des|une|cette|ma|ta|sa|notre|votre|leur+s] >lutte ?$:A¬:G¿ contre + [>accusation|>action|>assaut|>attaque|>attentat|>croisade|>guerre] ?$:A¬:G¿ contre + [>guerre|>jihad|offensive+s|>ratonnade|>sortilège|>violence] ?$:A¬:G¿ contre + [>antidote|>crime|>philtre|>remède|>sérum|>vaccin|>solution] ?$:A¬:G¿ contre <<- =>> select(\-1, ":R") contre <<- not morph(<1, ":[DA].*:[me]:[si]") =>> select(\1, "", ":N") @@ -13849,11 +13849,11 @@ TEST: elle portait une robe en {{soi}}. ->> soie TEST: je n’aime que les draps de {{soi}}. ->> soie __conf_soit_soi_soie__ - [|,|(] sois @:(?:Os|C)¬:R + [|,|(] sois @:(?:Os|C)¬:[RW]|>donc/ [|,|(] [soi|>soie] @:[OC]¬:R [|,|(] [soi|sois|>soie] [j’|t’|c’|ç’] <<- /conf/ -2>> soit && Confusion probable : pour évoquer une option, écrivez “soit”.|https://fr.wiktionary.org/wiki/soit#Conjonction [quel|quels|quelle|quelles] que [soi|>soie] @@ -13876,10 +13876,11 @@ TEST: {{soie}} t’arrives avant tout le monde. ->> soit TEST: Quels que {{soi}} les problèmes, on peut les surmonter. ->> soit|soient TEST: c’est {{soi}} lui, soit moi ->> soit TEST: ce serait soit elle, {{soie}} une inconnue ->> soit TEST: Sois le plus efficace possible. +TEST: sois donc ce que tu rêves de devenir # son / sont __conf_son_sont__ [ne|n’|me|m’|te|t’|se|s’] son @@ -16518,15 +16519,18 @@ au mauvais endroit ?,¿ au mauvais moment au bout d’ un [instant|moment] dans ces moments-là d’ instant en instant d’ un [instant|moment] à l’ autre + durant un ?[si|très|trop]¿ [court|long] [instant|moment] en ce [moment|moment-là] ?[particulier]¿ en ces [temps-là|temps-ci] en cet instant ?[particulier|précis]¿ + ?en¿ l’ espace d’ un [instant|moment] le moment venu par [instants|moments] + pendant un ?[si|très|trop]¿ [court|long] [instant|moment] un court [instant|moment] un [instant|moment] plus [tôt|tard] <<- ~>> * __purge_locutions_temporelles_diverses__ @@ -16921,10 +16925,11 @@ à belles dents à bien des égards à bien pire à ?[si|très|trop]¿ courte portée à ?[si|très|trop]¿ bon [compte|escient|droit] + à ?[si|très|trop]¿ bonne allure à bout [de|d’] [bras|souffle|force|forces|nerf|nerfs] à bout [portant|touchant] à bras ouverts à bras-le-corps à bride abattue @@ -17417,11 +17422,11 @@ [de|d’] sang-froid [de|d’] sang mêlé [de|d’] seconde [catégorie|importance|main|zone] [de|d’] sinistre mémoire [de|d’] source sûre - [de|d’] taille moyenne + [de|d’] taille [modeste|moyenne] [de|d’] telle sorte [de|d’] vive voix [de|d’] [nous|vous] tous [de|d’] tous [côtés|bords] [de|d’] tous les cas [de|d’] figure [possibles|imaginables|existants|rencontrés] @@ -17674,11 +17679,11 @@ la mort dans l’ âme la tête entre [mes|tes|ses|nos|vos|leurs] mains ?le¿ dos au mur le cas échéant le cœur battant la chamade - le cœur [gros|serré] + le cœur [léger|gros|serré] le moins du monde le moment venu les [choses|événements|évènements] suivant leur cours ?[endiablé|effréné|frénétique|implacable|inarrêtable]¿ loin d’ être loin s’ en [faut|fallait] @@ -17843,10 +17848,11 @@ sans faire [de|d’] vagues sans foi ?,¿ ni loi sans grand résultat sans [le|l’] faire exprès sans [le|l’] vouloir + sans [le|l’] moindre scrupule sans l’ aide [de|d’] personne sans l’ ombre d’ un doute sans mot dire sans nul doute sans perdre [de|d’] temps @@ -18682,10 +18688,11 @@ >arme [de|d’] [poing|guerre] >arme [de|d’] destruction massive >armoire à [>glace|>pharmacie] >argent [de|d’] poche >arnaque à l’ assurance + >arracheur [de|d’] dents >arrêt [de|d’] bus >article [de|d’] presse >article à >sensation >assignation à [comparaître|comparaitre|résidence] >assistant [de|d’] direction @@ -18908,10 +18915,11 @@ >éditeur [de|d’] presse >effet d’ aubaine >effet [de|d’] bord >effort [de|d’] guerre >élément à charge + >emballage sous vide >emploi du temps >employé [de|d’] maison >ennemi d’ État ennemi public numéro [un|$:B|*NUM] ennemie publique numéro [un|une|$:B|*NUM] @@ -19115,11 +19123,11 @@ >maison [de|d’] [campagne|passe|retraite] [>maître|>maitre] d’ hôtel >mal [de|d’] [tête|poitrine|ventre|mer] >manche à balai >mandat [de|d’] [arrêt|dépôt] - >marchand [de|d’] tapis + >marchand [de|d’] [sommeil|tapis] >marchand [de|d’] fruits et légumes >marche à suivre >marché aux puces >maréchal des [logis|logis-chef] >mariage [de|d’] raison @@ -20317,10 +20325,14 @@ en [ce|un] sens @¬:A.*:[me]:[si] en [ce|un] sens [|,|)] <<- ~1:3>> * + en substance @:¬:A.*:[fe]:[si] + en substance [|,|)] + <<- ~1:2>> * + en sus <<- not value(<1, "|j’|tu|il|elle|iel|on|n’|") ~>> * entre autres choses @¬:A.*:[fe]:[pi] entre autres choses [|,|)] @@ -20408,10 +20420,14 @@ semble-t-il <<- not value(<1, "|ça|cela|ceci|me|m’|te|t’|lui|nous|vous|leur|ne|n’|") ~>> * soit dit entre nous <<- not value(<1, "|il|ne|n’|") ~>> * + + sur le même plan @:¬:A.*:[me]:[si] + sur le même plan [|,|)] + <<- ~1:-2>> * tête la première <<- not morph(<1, ":D") and not morph(>1, ":A.*:[fe]:[si]") ~>> * tous les jours @:¬:[NA].*:[me]:[pi] @@ -24552,17 +24568,19 @@ __gn_le_3m__ le *WORD *WORD *WORD <<- /gn/ not value(<1, "|et|ou|") and morph(\1, ":D") and morph(\2, ":[NA].*:[me]:[si]", ":(?:[123][sp]|G)") and morph(\3, ":[NA].*:[me]:[si]", ":(?:[123][sp]|G|P)") and morph(\4, ":[NA].*:[fp]", "*") and \4.islower() + and not apposition(\-2, \-1) -4>> =suggMasSing(\4) && Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au masculin singulier. TEST: le roi chrétien {{tyranniques}} tout pétri de son prétendu droit divin ->> tyrannique TEST: le petit chien {{bruns}} ->> brun TEST: elles furent le jour venu prises par surprise, et elles durent s’enfuir. TEST: qu’ils fassent tourner le système économique, assez concrètement, mais sans faire chier avec leurs petits problèmes de gens de rien. TEST: avec le peuple, contre le capitalisme mortifère sous tous ses visages. +TEST: un de ses collègues refuse, dans des courriels longs et argumentés, de mettre sur le même plan islamophobie et antisémitisme __gn_le_3m_et__ le *WORD et *WORD @:[NA].*:[me]:s¬* <<- /gn/ morph(\1, ":D") and morph(\2, ":A.*:[me]:[si]", ":(?:G|W|V0)|;C") and morph(\4, ":A", ":(?:G|W|V0|A.*:[me]:[si])|;C")