Overview
Comment: | [fr] ajout de !! à la fin des bookmarks pour éviter la suppression automatique des espaces en fin de ligne |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | fr | rg |
Files: | files | file ages | folders |
SHA3-256: |
c8714ac3a1d21a06baacfdfa8916e557 |
User & Date: | olr on 2018-06-25 07:20:42 |
Other Links: | branch diff | manifest | tags |
Context
2018-06-25
| ||
07:24 | [build] bookmark display update check-in: 55569dd999 user: olr tags: build, rg | |
07:20 | [fr] ajout de !! à la fin des bookmarks pour éviter la suppression automatique des espaces en fin de ligne check-in: c8714ac3a1 user: olr tags: fr, rg | |
2018-06-24
| ||
19:03 | merge trunk check-in: 099647c959 user: olr tags: rg | |
Changes
Modified gc_lang/fr/rules.grx from [0f58bfdc3c] to [b6224d13ea].
︙ | ︙ | |||
45 46 47 48 49 50 51 | # ERREURS COURANTES # http://fr.wikipedia.org/wiki/Wikip%C3%A9dia:Fautes_d%27orthographe/Courantes !! !! | | | 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 | # ERREURS COURANTES # http://fr.wikipedia.org/wiki/Wikip%C3%A9dia:Fautes_d%27orthographe/Courantes !! !! !! Options !! !! !! OPTGROUP/basic: typo apos, esp tab, nbsp unit, tu maj, num virg, nf chim, ocr mapos, liga OPTGROUP/gramm: conf sgpl gn OPTGROUP/verbs: infi conj ppas, imp inte vmode OPTGROUP/style: bs pleo, redon1 redon2, neg |
︙ | ︙ | |||
196 197 198 199 200 201 202 | OPTLABEL/debug: Debug OPTLABEL/idrule: Display control rule identifier [!]|Display control rule identifier in the context menu message. !! !! | | | 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 | OPTLABEL/debug: Debug OPTLABEL/idrule: Display control rule identifier [!]|Display control rule identifier in the context menu message. !! !! !! Définitions pour les regex !! !! !! # REGEX DEF: avoir [aeo]\w* DEF: etre [êeésf]\w+ DEF: avoir_etre [aeêésfo]\w* |
︙ | ︙ | |||
242 243 244 245 246 247 248 | !! !! !! !! !! !! !! | | | 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 | !! !! !! !! !! !! !! !! PASSE 0: PARAGRAPHE PAR PARAGRAPHE !! !! !! !! !! !! !! !! |
︙ | ︙ | |||
268 269 270 271 272 273 274 | !! !! !! !! | | | 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 | !! !! !! !! !!! Espaces & tabulations !! !! !! # Espaces surnuméraires # Note : les tabulations ne sont pas soulignées dans LibreOffice. Mais l’erreur est bien présente. __<s>/tab(tab_début_ligne)__ ^[ ]+ <<- ->> "" # Espace(s) en début de ligne à supprimer : utilisez les retraits de paragraphe. __<s>/tab(tab_fin_ligne)__ [ ]+$ <<- ->> "" # Espace(s) en fin de ligne à supprimer. |
︙ | ︙ | |||
377 378 379 380 381 382 383 | # À partir d’ici, toute règle est susceptible de supprimer des caractères et les remplacer par des espaces ou des chaînes de longueur égale. # # !!! !!! | | | 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 | # À partir d’ici, toute règle est susceptible de supprimer des caractères et les remplacer par des espaces ou des chaînes de longueur égale. # # !!! !!! !!! Processeur: efface les ponctuations gênantes (URL, sigles, abréviations, IP, heures, etc.) !! !!! !!! # e-mail __<i>(p_email)__ \w[\w.-]*@\w[\w.-]*\w[.]\w+ <<- ~>> * |
︙ | ︙ | |||
525 526 527 528 529 530 531 | TEST: Dossier C:\Program Files (x86)\LibreOffice TEST: [1] Dossier à revoir. !!! !!! | | | 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 | TEST: Dossier C:\Program Files (x86)\LibreOffice TEST: [1] Dossier à revoir. !!! !!! !!! Processeur: balises HTML et LaTeX !! !!! !!! # HTML __<i>/html(p_html_amp_xxx)__ &[a-zA-Z]+; <<- ~>> _ __<i>/html(p_html_lt)__ < <<- ~>> " <" __<i>/html(p_html_gt)__ > <<- ~>> > |
︙ | ︙ | |||
553 554 555 556 557 558 559 | TEST: __html__ des <b>{{homme}}</b> TEST: __html__ des [b]{{femme}}[/b] !! !! | | | 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 | TEST: __html__ des <b>{{homme}}</b> TEST: __html__ des [b]{{femme}}[/b] !! !! !!!! Écritures épicènes dystypographiques !! !! !! # (attention aux modifs: brainfuck d’intensité non négligeable) # La désambiguïsation est faite lors de la deuxième passe __[i](typo_écriture_épicène_tous_toutes)__ |
︙ | ︙ | |||
652 653 654 655 656 657 658 | TEST: je suis {{déconsidéré.e}} par ma hiérarchie. TEST: il faut en parler à l’{{auteur(e)}} et à son agent. !! !! | | | 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 | TEST: je suis {{déconsidéré.e}} par ma hiérarchie. TEST: il faut en parler à l’{{auteur(e)}} et à son agent. !! !! !!!! Majuscules manquantes !! !! !! # Majuscules après un point __[s]/maj(majuscule_après_point)__ ({w_2})[.] ([a-zéàèîçô]\w*) @@0,$ <<- not re.search("(?i)^(?:etc|[A-Z]|chap|cf|fig|hab|litt|circ|coll|r[eé]f|étym|suppl|bibl|bibliogr|cit|op|vol|déc|nov|oct|janv|juil|avr|sept)$", \1) |
︙ | ︙ | |||
675 676 677 678 679 680 681 | <<- after("\w\w[.] +\w+") -1>> =\1.capitalize() # Majuscule en début de phrase, sauf éventuellement lors d’une énumération. TEST: {{je}} suis disponible quand tu veux. Mais pas aujourd’hui. !! !! | | | 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 | <<- after("\w\w[.] +\w+") -1>> =\1.capitalize() # Majuscule en début de phrase, sauf éventuellement lors d’une énumération. TEST: {{je}} suis disponible quand tu veux. Mais pas aujourd’hui. !! !! !!!! Virgules !! !! !! # virgules manquantes __[i>/virg(virgule_manquante_avant_etc)__ {w_1}( etc[.]) @@$ <<- -1>> , etc. # Avant « etc. », il faut mettre une virgule. __[i>/virg(virgule_manquante_avant_car)__ ({w_1})( car)(?= (?:j[e’]|tu|ils?|nous|vous|elles?|on|les?|l[a’]|ces?|des?|cette|[mts](?:on|a|es))\b) @@0,$ |
︙ | ︙ | |||
733 734 735 736 737 738 739 | #__<i>/typo__ ({w_2}) *$ @@0 # <<- before("[a-zéàùèê][.] ") and not before(r"^(?:\d|\w[.])") # -1>> \1.|\1…|\1 !|\1 ?|\1 :|\1 ;|\1, # Il manque une ponctuation finale. !! !! | | | 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 | #__<i>/typo__ ({w_2}) *$ @@0 # <<- before("[a-zéàùèê][.] ") and not before(r"^(?:\d|\w[.])") # -1>> \1.|\1…|\1 !|\1 ?|\1 :|\1 ;|\1, # Il manque une ponctuation finale. !! !! !!!! Espaces manquants !! !! !! __<s>/typo(typo_espace_manquant_après1)__ ({w1})[,:]({w_1}) @@0,$ <<- not \1.isdigit() -2>> " \2" # Il manque un espace. __<s>/typo(typo_espace_manquant_après2)__ [?!;%‰‱˚»}]({w_1}) @@$ <<- -1>> " \1" # Il manque un espace. |
︙ | ︙ | |||
762 763 764 765 766 767 768 | TEST: espace.{{Manquant}} ->> " Manquant" TEST: qui ont refuse.{{de}} se sauver ->> " de" TEST: pic.twitter.com/PICNAME !! !! | | | 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 | TEST: espace.{{Manquant}} ->> " Manquant" TEST: qui ont refuse.{{de}} se sauver ->> " de" TEST: pic.twitter.com/PICNAME !! !! !!!! Points !! !! !! # Points superflus __[i>/typo(typo_et_cetera)__ etc(?:[.]{3,5}|…) <<- ->> etc. # Un seul point après « etc. » TEST: {{etc…}} |
︙ | ︙ | |||
801 802 803 804 805 806 807 | TEST: Ligne de points{{...........................}} TEST: Aujourd’hui, M. Camus va nous lire son texte. !! !! | | | 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 | TEST: Ligne de points{{...........................}} TEST: Aujourd’hui, M. Camus va nous lire son texte. !! !! !!!! Tirets !! !! !! # Tirets, énumérations et dialogues __<s>/typo(typo_tiret_début_ligne)__ ^[-_][ ] <<- ->> "— |– " # Dialogues et énumérations : un tiret cadratin ou demi-cadratin, suivi d’un espace insécable, est requis. __<s>/typo(typo_tiret_dans_dialogue)__ ^ *«[ ](-[ ]) @@$ <<- -1>> "— |– " # Dialogues : un tiret cadratin ou demi-cadratin, suivi d’un espace insécable, est requis. (Attention : à moins qu’il s’agisse d’un dialogue inclus dans un autre dialogue, cette manière d’écrire est erronée.) |
︙ | ︙ | |||
824 825 826 827 828 829 830 | TEST: {{—}}Viens là. ->> "— |– " TEST: Cette phrase contient{{ - }}c’est certain – des tirets d’incise. ->> " – | — " TEST: « {{- }}Viens ! On va en finir avec cette affaire, sale fils de pute. ->> "— |– " !! !! | | | | 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 | TEST: {{—}}Viens là. ->> "— |– " TEST: Cette phrase contient{{ - }}c’est certain – des tirets d’incise. ->> " – | — " TEST: « {{- }}Viens ! On va en finir avec cette affaire, sale fils de pute. ->> "— |– " !! !! !!!! Ponctuations redondantes !! !! !! # virgules et points __<s>/typo(typo_virgules_points)__ ,[.,]{2,} <<- ->> =\0.replace(",", ".").replace("...", "…") # Erreur de numérisation ? Virgules au lieu de points ? TEST: Ah !{{,.,}} et en quoi consistait le festin ? __<s>/typo(typo_ponctuation_superflue1)__ , ?([.,;:!?]) @@$ <<- ->> =",|" + \1 # Une de ces ponctuations est superflue. |
︙ | ︙ | |||
872 873 874 875 876 877 878 | TEST: Succession : a{{;}} b. ->> " ;" TEST: C’est assez {{: }}parlez ! ->> ": " TEST: {{» }}C’est ce qu’on croit savoir. ->> "» |« " !! !! | | | 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 | TEST: Succession : a{{;}} b. ->> " ;" TEST: C’est assez {{: }}parlez ! ->> ": " TEST: {{» }}C’est ce qu’on croit savoir. ->> "» |« " !! !! !!!! Signes typographiques !! !! !! __<s>/typo(typo_signe_multiplication)__ (\d+) ?[x*] ?(\d+) @@0,$ <<- not \0.startswith("0x") ->> \1 × \2 # Signe de multiplication typographique. TEST: {{800 x 600}} ->> 800 × 600 |
︙ | ︙ | |||
901 902 903 904 905 906 907 | TEST: __liga__ un {{fl}}ottement ->> fl TEST: __liga__ une belle {{fi}}gure ->> fi !! !! | | | 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 | TEST: __liga__ un {{fl}}ottement ->> fl TEST: __liga__ une belle {{fi}}gure ->> fi !! !! !!!! Apostrophes !! !! !! ## Apostrophe typographique __[i>/apos(apostrophe_typographique)__ ([ldsncjmç]|jusqu|lorsqu|aujourd|presqu|quelqu|puisqu|qu|prud|entr)['´‘′`](?=[\w"«]) @@0 <<- ->> \1’ # Apostrophe typographique. __[i>/apos(apostrophe_typographique_après_t)__ t['´‘′`](?!ils?|elles?|on)(?=[\w"«]) <<- ->> t’ # Apostrophe typographique. |
︙ | ︙ | |||
955 956 957 958 959 960 961 | TEST: Il {{s }}était dit qu’il ne le ferait pas. ->> s’ TEST: Je {{m }}étais imaginé que je pourrais pas retrouver cet objet. ->> m’ TEST: Je {{n }}ai pas retrouvé l’ambiance de mes années de lycée. ->> n’ !! !! | | | 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 | TEST: Il {{s }}était dit qu’il ne le ferait pas. ->> s’ TEST: Je {{m }}étais imaginé que je pourrais pas retrouver cet objet. ->> m’ TEST: Je {{n }}ai pas retrouvé l’ambiance de mes années de lycée. ->> n’ !! !! !!!! Guillemets typographiques !! !! !! __<s>/typo(typo_guillemets_typographiques_doubles_ouvrants)__ "(?=\w) <<- not before(r"[a-zA-Zéïîùàâäôö]$") ->> « |“ # Guillemets typographiques ouvrants. __<s>/typo(typo_guillemets_typographiques_doubles_fermants)__ |
︙ | ︙ | |||
997 998 999 1000 1001 1002 1003 | TEST: Le {{'}}grand’ homme. ->> “|‘|‹ TEST: Le ‘grand{{'}} homme. ->> ”|’|› TEST: J’en ai '''marre''' (syntaxe wiki). !! !! | | | 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 | TEST: Le {{'}}grand’ homme. ->> “|‘|‹ TEST: Le ‘grand{{'}} homme. ->> ”|’|› TEST: J’en ai '''marre''' (syntaxe wiki). !! !! !!!! Élisions !! !! !! __[i]/typo(typo_élision_déterminants)__ (l[ea] |de )([aâeéêiîoôu]\w+) @@0,$ <<- not re.search("(?i)^(?:onz[ei]|énième|iourte|ouistiti|ouate|one-?step|ouf|Ouagadougou|I(?:I|V|X|er|ᵉʳ|ʳᵉ|è?re))", \2) and not \2.isupper() and not morph(\2, ":G", False) -1>> =\1[0]+"’" # Élision de l’article devant un mot commençant par une voyelle.|http://fr.wikipedia.org/wiki/Élision |
︙ | ︙ | |||
1049 1050 1051 1052 1053 1054 1055 | -1>> cet # Euphonie : « ce » devient « cet » devant un mot commençant par une voyelle. TEST: {{ce}} animal est dangereux !! !! | | | 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 | -1>> cet # Euphonie : « ce » devient « cet » devant un mot commençant par une voyelle. TEST: {{ce}} animal est dangereux !! !! !!!! Divers !! !! !! ## NF (memo: don’t use flag i) __[s]/nf(nf_norme_française)__ [nN][fF][ -]?(?:c|C|e|E|p|P|q|Q|s|S|x|X|z|Z|[eE][nN](?:[ -][iI][sS][oO]|))[ -]?[0-9]+(?:[/ ‑-][0-9]+|) <<- not re.search("^NF (?:C|E|P|Q|S|X|Z|EN(?: ISO|)) [0-9]+(?:‑[0-9]+|)", \0) |
︙ | ︙ | |||
1072 1073 1074 1075 1076 1077 1078 | <<- ->> =\0.replace("2", "₂").replace("3", "₃").replace("4", "₄") # Typographie des composés chimiques. [!] TEST: __chim__ les molécules {{CaCO3}} et {{H2O}}… !! !! | | | 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 | <<- ->> =\0.replace("2", "₂").replace("3", "₃").replace("4", "₄") # Typographie des composés chimiques. [!] TEST: __chim__ les molécules {{CaCO3}} et {{H2O}}… !! !! !!!! Cohérence des guillemets !! !! !! __<s>/typo(typo_cohérence_guillemets_chevrons_ouvrants)__ («)[^»“]+?(”) @@0,$ <<- not before(r"\w$") -1>> “ # Guillemet ouvrant différent du guillemet fermant (”). <<- not after(r"^\w") -2>> " »" # Guillemet fermant différent du guillemet ouvrant («). |
︙ | ︙ | |||
1130 1131 1132 1133 1134 1135 1136 | TEST: « Je suis là. TEST: — Oui, nous t’avons vu arriver. » TEST: « J’en suis “malade”. » !! !! | | | 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 | TEST: « Je suis là. TEST: — Oui, nous t’avons vu arriver. » TEST: « J’en suis “malade”. » !! !! !!!! Espaces insécables avant unités de mesure !! !! !! __[s]/unit(unit_nbsp_avant_unités1)__ ((\d+(?:,\d+[⁰¹²³⁴⁵⁶⁷⁸⁹]?|[⁰¹²³⁴⁵⁶⁷⁸⁹]|)) ?)(?:[kcmµn]?(?:[slgJKΩ]|m[²³]?|Wh?|Hz|dB)|[%‰€$£¥Åℓhj]|min|°C|℃)(?![’']) @@0,0 <<- -1>> "\2 " # Avec une unité de mesure, mettez un espace insécable. |
︙ | ︙ | |||
1168 1169 1170 1171 1172 1173 1174 | TEST: 1998 s’annonce grandiose. TEST: il y en a 3,43 milliards. TEST: je veux 200 euros. !! !! | | | 1168 1169 1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 1180 1181 1182 | TEST: 1998 s’annonce grandiose. TEST: il y en a 3,43 milliards. TEST: je veux 200 euros. !! !! !!!! Grands nombres !! !! !! __[s]/num(num_grand_nombre_soudé)__ \d\d\d\d+ <<- not before("NF[ -]?(C|E|P|Q|X|Z|EN(?:[ -]ISO|)) *$") >>> <<- \0.__len__() > 4 ->> =formatNumber(\0) # Formatage des grands nombres. |
︙ | ︙ | |||
1217 1218 1219 1220 1221 1222 1223 | <<- ~>> =\0.replace(" ", "_") TEST: Il a perdu {{20 000}} euros à la Bourse en un seul mois. !! !! | | | | | | 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247 1248 1249 1250 1251 1252 1253 1254 1255 1256 1257 1258 1259 1260 1261 1262 1263 1264 1265 1266 1267 1268 1269 1270 1271 1272 1273 1274 1275 1276 1277 1278 1279 1280 | <<- ~>> =\0.replace(" ", "_") TEST: Il a perdu {{20 000}} euros à la Bourse en un seul mois. !! !! !!!! Dates !! !! !! __[i]/date(date_nombres)__ (?<!\d[ /.-])(\d\d?)[ /.-](\d\d?)[ /.-](\d\d\d+)(?![ /.-]\d) @@0,w,$ <<- not checkDate(\1, \2, \3) and not before(r"(?i)\bversions? +$") ->> _ # Cette date est invalide. <<- ~>> =\0.replace(".", "-").replace(" ", "-").replace("\/", "-") TEST: le {{29 02 2011}} TEST: le {{40-02-2011}} TEST: le {{32.03.2018}} TEST: le {{81/01/2012}} TEST: 12-12-2012 !! !! !!!! Redondances !! !! !! __[i]/redon1(redondances_paragraphe)__ ({w_4})[ ,.;!?:].*[ ](\1) @@0,$ <<- not morph(\1, ":(?:G|V0)|>(?:t(?:antôt|emps|rès)|loin|souvent|parfois|quelquefois|côte|petit|même)/", False) and not \1[0].isupper() -2>> _ # Dans ce paragraphe, répétition de « \1 » (à gauche). <<- __also__ -1>> _ # Dans ce paragraphe, répétition de « \1 » (à droite). TEST: __redon1__ Tu es son {{avenir}}. Et lui aussi est ton {{avenir}}. TEST: __redon1__ Car parfois il y en a. Mais parfois il n’y en a pas. !!! !!! !!! Processeur: Dernier nettoyage avant coupure du paragraphe en phrases !! !!! !!! # Trait d’union conditionnel (u00AD) __<i>(p_trait_union_conditionnel1)__ \w+‑\w+‑\w+ <<- ~>> =\0.replace("‑", "") __<i>(p_trait_union_conditionnel2)__ \w+‑\w+ <<- ~>> =\0.replace("‑", "") # empêcher la scission en fin de dialogue __<s>(p_fin_dialogue1)__ ([?!…][?!… ]*)[ "'”» ]*, @@0 <<- ~1>> * __<s>(p_fin_dialogue2)__ ([?!…][?!… ]*)[ "'”» ]*[a-zéèêîô] @@0 <<- ~1>> , TEST: « Je suis donc perdu ? », dit Paul. TEST: “C’est bon !”, croit savoir Marie. TEST: “Parce que… ?” finit par demander Paul. TEST: « Dans quel pays sommes-nous ? » demanda un manifestant. !! !! !! !! !! |
︙ | ︙ | |||
1289 1290 1291 1292 1293 1294 1295 | !! !! !! !! !! !! !! | | | 1289 1290 1291 1292 1293 1294 1295 1296 1297 1298 1299 1300 1301 1302 1303 | !! !! !! !! !! !! !! !! PASSE 1: PHRASE PAR PHRASE !! !! !! !! !! !! !! !! |
︙ | ︙ | |||
1315 1316 1317 1318 1319 1320 1321 | !! !! [++] | | | | 1315 1316 1317 1318 1319 1320 1321 1322 1323 1324 1325 1326 1327 1328 1329 1330 1331 1332 1333 1334 1335 1336 1337 1338 1339 1340 1341 | !! !! [++] !!!! Doublons (casse identique) !! __[s](doublon)__ ({w1}) {1,3}\1 @@0 <<- not re.search("(?i)^([nv]ous|faire|en|la|lui|donnant|œuvre|h[éoa]|hou|olé|joli|Bora|couvent|dément|sapiens|très|vroum|[0-9]+)$", \1) and not (re.search("^(?:est|une?)$", \1) and before("[’']$")) and not (\1 == "mieux" and before("(?i)qui +$")) ->> \1 # Doublon. TEST: Il y a un {{doublon doublon}}. !!!! Nombres: typographie !! #(\d\d\d\d)-(\d\d\d\d) <<- ->> \1–\2 # Ne pas séparer deux dates par un trait d’union, mais par un tiret demi-cadratin. __[s]/num(num_lettre_O_zéro1)__ [\dO]+[O][\dO]+ <<- not option("ocr") ->> =\0.replace("O", "0") # S’il s’agit d’un nombre, utilisez le chiffre « 0 » plutôt que la lettre « O ». __[s]/num(num_lettre_O_zéro2)__ [1-9]O <<- not option("ocr") ->> =\0.replace("O", "0") # S’il s’agit d’un nombre, utilisez le chiffre « 0 » plutôt que la lettre « O ». TEST: année {{2O11}} ->> 2011 |
︙ | ︙ | |||
1379 1380 1381 1382 1383 1384 1385 | TEST: le {{IInd}} siècle ->> IIᵈ TEST: le {{VIième}} siècle ->> VIᵉ TEST: Le {{XXIème}} siècle. ->> XXIᵉ TEST: le {{XXè}} siècle. ->> XXᵉ | | | | | | | | | | 1379 1380 1381 1382 1383 1384 1385 1386 1387 1388 1389 1390 1391 1392 1393 1394 1395 1396 1397 1398 1399 1400 1401 1402 1403 1404 1405 1406 1407 1408 1409 1410 1411 1412 1413 1414 1415 1416 1417 1418 1419 1420 1421 1422 1423 1424 1425 1426 1427 1428 1429 1430 1431 1432 1433 1434 1435 1436 1437 1438 1439 1440 1441 1442 1443 1444 1445 1446 | TEST: le {{IInd}} siècle ->> IIᵈ TEST: le {{VIième}} siècle ->> VIᵉ TEST: Le {{XXIème}} siècle. ->> XXIᵉ TEST: le {{XXè}} siècle. ->> XXᵉ !!!! Écritures épicènes invariables !! __[i](d_typo_écriture_épicène_pluriel)__ ({w_1}[éuitsrn])_(?:[nt]|)e_s @@0 <<- morphex(\1, ":[NAQ]", ":G") =>> define(\1, [":N:A:Q:e:p"]) __[i](d_typo_écriture_épicène_singulier)__ ({w_2}[éuitsrn])_e @@0 <<- morph(\1, ":[NAQ]", False) =>> define(\1, [":N:A:Q:e:s"]) !!!! Dates !! __[i]/date(date_jour_mois_année)__ (\d\d?) (janvier|février|ma(?:rs|i)|a(?:vril|o[ûu]t)|jui(?:n|llet)|septembre|octobre|novembre|décembre) (\d\d\d+) @@0,w,$ <<- not checkDateWithString(\1, \2, \3) ->> _ # Cette date est invalide. TEST: {{29 février 2011}} __[i]/date(date_journée_jour_mois_année1)__ (lundi|m(?:ardi|ercredi)|jeudi|vendredi|samedi|dimanche),? (?:le |)(\d\d?)-(\d\d?)-(\d\d+) @@0,w,w,$ <<- not after(r"^ +av(?:ant|) +J(?:C|ésus-Christ)") and not checkDay(\1, \2, \3, \4) -1>> =getDay(\2, \3, \4) # Le jour de la date suivante est incorrect. TEST: {{mercredi}}, le 10-06-2014 ->> mardi __[i]/date(date_journée_jour_mois_année2)__ (lundi|m(?:ardi|ercredi)|jeudi|vendredi|samedi|dimanche),? (?:le |)(\d\d?) (janvier|février|ma(?:rs|i)|a(?:vril|o[ûu]t)|jui(?:n|llet)|septembre|octobre|novembre|décembre) (\d\d+) @@0,w,w,$ <<- not after(r"^ +av(?:ant|) +J(?:C|ésus-Christ)") and not checkDayWithString(\1, \2, \3, \4) -1>> =getDayWithString(\2, \3, \4) # Le jour de la date suivante est incorrect. TEST: {{mercredi}}, le 10 juin 2014 ->> mardi TEST: {{lundi}}, 18 août 1912 ->> dimanche TEST: lundi, 18 août 1912 avant Jésus-Christ (date imaginaire) __[i]/date(date_mois_31)__ 31 (avril|juin|septembre|novembre) @@3 <<- ->> 30 \1 # Cette date est invalide. Il n’y a que 30 jours en \1. TEST: le {{31 avril}} __[i]/date(date_février)__ 3[01] février <<- ->> 28 février|29 février # Cette date est invalide. Il n’y a que 28 ou 29 jours en février. TEST: le {{30 février}} !!! !!! !!! Processeur: épuration des signes inutiles et quelques simplifications !! !!! !!! # fin de phrase __<s>(p_fin_de_phrase)__ [.?!:;…][ .?!… »”")]*$ <<- ~>> * # début de phrase |
︙ | ︙ | |||
1463 1464 1465 1466 1467 1468 1469 | __[i](p_références_aux_notes)__ [a-zéèâàôîù][a-zéèâàôîù-]+(\d+) @@$ <<- not morph(\0, ":", False) ~1>> * # faux positifs avec adverbes de négation __[i](p_pas_mal)__ pas mal <<- not morph(word(-1), ":D", False) ~>> * __[i](p_pas_assez)__ pas assez ({w_2}) @@$ <<- morph(\1, ":A", False) and not morph(word(-1), ":D", False) ~>> * # faux positifs avec «à chez» | | | 1463 1464 1465 1466 1467 1468 1469 1470 1471 1472 1473 1474 1475 1476 1477 | __[i](p_références_aux_notes)__ [a-zéèâàôîù][a-zéèâàôîù-]+(\d+) @@$ <<- not morph(\0, ":", False) ~1>> * # faux positifs avec adverbes de négation __[i](p_pas_mal)__ pas mal <<- not morph(word(-1), ":D", False) ~>> * __[i](p_pas_assez)__ pas assez ({w_2}) @@$ <<- morph(\1, ":A", False) and not morph(word(-1), ":D", False) ~>> * # faux positifs avec «à chez» __[i](p_de_chez_à_chez_pronom)__ de chez \w+ (?:à|jusqu à) chez (?:moi|toi|lui|elles?|eux|nous|vous) <<- ~>> * __[i](p_de_chez)__ (jusqu à|de) chez @@0 <<- ~1>> * # faux positifs __[i](p_en_tout_et_pour_tout)__ en tout et pour tout <<- ~>> * __[i](p_au_sortir_de)__ au (sortir) de?s? @@3 <<- ~1>> * __[i](p_au_revoir)__ au revoir <<- ~>> au_revoir |
︙ | ︙ | |||
1502 1503 1504 1505 1506 1507 1508 | TEST: New York {{étaient}} {{devenue}} la plaque tournante de tous les trafics. !! !! | | | 1502 1503 1504 1505 1506 1507 1508 1509 1510 1511 1512 1513 1514 1515 1516 | TEST: New York {{étaient}} {{devenue}} la plaque tournante de tous les trafics. !! !! !!!! Traits d’union !! !! !! __<i]/tu(tu_t_euphonique_incorrect)__ ([-–—− ]t(?:[’' ][-–—−]?|[-–—−][’' ]?))(ils?|elles?|on|tu) @@0,$ <<- re.search("(?i)^(?:ils|elles|tu)$", \2) -1>> - # Le “t” euphonique n’est pas nécessaire avec “\2”.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?T1=t+euphonique&id=2513 <<- __else__ and \1 != "-t-" and \1 != "-T-" -1>> -t- # Pour le “t” euphonique, il faut deux traits d’union. Pas d’apostrophe. Pas d’espace. |
︙ | ︙ | |||
1595 1596 1597 1598 1599 1600 1601 | TEST: Cet {{in folio}} est incroyable. TEST: c’est {{in}} stage de réinsertion. TEST: Dans ce drive in douze hommes mangent. __[i]/tu(tu_préfixe_mi)__ | | | | 1595 1596 1597 1598 1599 1600 1601 1602 1603 1604 1605 1606 1607 1608 1609 1610 1611 1612 1613 1614 1615 | TEST: Cet {{in folio}} est incroyable. TEST: c’est {{in}} stage de réinsertion. TEST: Dans ce drive in douze hommes mangent. __[i]/tu(tu_préfixe_mi)__ mi ({w2}) @@$ <<- morph(\1, ":[NAQ]", False) ->> mi-\1 # S’il s’agit d’un seul mot, il manque un trait d’union. TEST: J’ai été engagé pour un {{mi temps}}. __[i]/tu(tu_préfixe_quasi)__ (?:l(?:es?|a|eurs?)|ce(?:tte|t|s|)|des?|m(?:a|on|es)|[ts](?:es|a)) (quasi ({w1})) @@$,$ <<- morphex(\2, ":N", ":[AGW]") -1>> quasi-\2 # Il manque un trait d’union : « quasi » s’accroche au mot qui le suit s’il s’agit d’un nom. <<- ~1>> \2 TEST: leurs {{quasi indifférences}} __[i]/tu(tu_préfixe_semi)__ |
︙ | ︙ | |||
1685 1686 1687 1688 1689 1690 1691 | __[i]/tu(tu_là_adverbe)__ là (bas|haut|desso?us|dedans|devant|derrière) @@3 <<- ->> là-\1 # Il manque un trait d’union. __[i]/tu(tu_n_est_ce_pas)__ n’est(?: ce[ -]pas|-ce-pas) <<- ->> n’est-ce pas # Un trait d’union. __[i]/tu(tu_nord_sud_ouest)__ (nord|sud) ouest @@0 <<- ->> \1-ouest # Il manque un trait d’union. __[i]/tu(tu_nord_sud_est)__ (nord|sud) est @@0 <<- isEnd() ->> \1-est # Il manque un trait d’union. __[i]/tu(tu_outre_mer)__ outre mer <<- ->> outre-mer # Il manque un trait d’union. __[i]/tu(tu_ouï_dire)__ ou[iï] dire <<- morph(word(-1), ":G") ->> ouï-dire # Il manque un trait d’union. __[i]/tu(tu_par_préposition)__ | | | | 1685 1686 1687 1688 1689 1690 1691 1692 1693 1694 1695 1696 1697 1698 1699 1700 1701 1702 1703 | __[i]/tu(tu_là_adverbe)__ là (bas|haut|desso?us|dedans|devant|derrière) @@3 <<- ->> là-\1 # Il manque un trait d’union. __[i]/tu(tu_n_est_ce_pas)__ n’est(?: ce[ -]pas|-ce-pas) <<- ->> n’est-ce pas # Un trait d’union. __[i]/tu(tu_nord_sud_ouest)__ (nord|sud) ouest @@0 <<- ->> \1-ouest # Il manque un trait d’union. __[i]/tu(tu_nord_sud_est)__ (nord|sud) est @@0 <<- isEnd() ->> \1-est # Il manque un trait d’union. __[i]/tu(tu_outre_mer)__ outre mer <<- ->> outre-mer # Il manque un trait d’union. __[i]/tu(tu_ouï_dire)__ ou[iï] dire <<- morph(word(-1), ":G") ->> ouï-dire # Il manque un trait d’union. __[i]/tu(tu_par_préposition)__ par (desso?us|devant|delà|derrière|dehors|dedans|devers) @@$ <<- ->> par-\1 # Il manque un trait d’union. __[i]/tu(tu_par_ci_par_là)__ par ci,? par là <<- ->> par-ci par-là|par-ci, par-là # Trait(s) d’union manquant(s). __[i]/tu(tu_prêt_à_porter)__ (prêts?) à porter @@0 <<- before(r"(?i)\b(?:les?|du|des|un|ces?|[mts]on) +") ->> \1-à-porter # Il manque les traits d’union. __[i]/tu(tu_plate_forme)__ plates? formes? <<- ->> plate-forme|plates-formes|plateforme|plateformes # Il manque un trait d’union. Vous pouvez aussi souder les deux mots. __[i]/tu(tu_quelques_uns_unes)__ quelques (une?s) @@$ <<- ->> quelques-\1 # Il manque un trait d’union. __[i]/tu(tu_plus_moins_values)__ (plus|moins) (values?) @@0,$ <<- ->> \1-\2 # Il manque un trait d’union. __[i]/tu(tu_rez_de_chaussée)__ rez de chaussées? <<- ->> rez-de-chaussée # Il manque un trait d’union. __[i]/tu(tu_science_fiction)__ science fiction <<- ->> science-fiction # Il manque un trait d’union. __[i]/tu(tu_stock_option)__ stock options? <<- ->> =\0.replace(" ", "-") # Il manque un trait d’union. |
︙ | ︙ | |||
1713 1714 1715 1716 1717 1718 1719 | TEST: on a fait {{à la va vite}}… TEST: marre de faire des {{allers retours}} TEST: {{le}} {{bouche à oreille}} TEST: à ce {{moment là}} ->> moment-là TEST: une {{plus value}} ->> plus-value TEST: Il est {{en-dessous}} de tout. ->> en dessous TEST: Ils sont {{en-deçà}} de tout ->> en deçà | | | 1713 1714 1715 1716 1717 1718 1719 1720 1721 1722 1723 1724 1725 1726 1727 | TEST: on a fait {{à la va vite}}… TEST: marre de faire des {{allers retours}} TEST: {{le}} {{bouche à oreille}} TEST: à ce {{moment là}} ->> moment-là TEST: une {{plus value}} ->> plus-value TEST: Il est {{en-dessous}} de tout. ->> en dessous TEST: Ils sont {{en-deçà}} de tout ->> en deçà TEST: {{Là bas}}. ->> Là-bas TEST: {{Au dessus}} ->> Au-dessus TEST: {{ci dessus}} ->> ci-dessus TEST: {{par dessus}} ->> par-dessus TEST: {{au delà}} ->> au-delà TEST: {{ci devant}}. ->> ci-devant TEST: Il faisait froid cet {{hiver la}}. ->> hiver-là TEST: {{Ceux la}} vont à la pêche. ->> Ceux-là |
︙ | ︙ | |||
1805 1806 1807 1808 1809 1810 1811 | __[u]/tu(tu_Nouveau_Brunswick)__ Nouveau Brunswick <<- ->> Nouveau-Brunswick # Il manque un trait d’union. __[u]/tu(tu_Nouvelle_Qqch)__ Nouvelle (Zélande|Calédonie|Orléans) @@$ <<- ->> Nouvelle-\1 # Il manque un trait d’union. __[u]/tu(tu_Pas_de_Calais)__ Pas de Calais <<- ->> Pas-de-Calais # Il manque les traits d’union. __[u]/tu(tu_Rhône_Alpes)__ Rhône Alpes <<- ->> Rhône-Alpes # Il manque les traits d’union. __[u]/tu(tu_Saône_et_Loire)__ Saône et Loire <<- ->> Saône-et-Loire # Il manque un trait d’union. __[u]/tu(tu_Jésus_Christ)__ Jésus Christ <<- ->> Jésus-Christ # Il manque un trait d’union. __[u]/tu(tu_Jean_prénom)__ | | | | 1805 1806 1807 1808 1809 1810 1811 1812 1813 1814 1815 1816 1817 1818 1819 1820 1821 1822 | __[u]/tu(tu_Nouveau_Brunswick)__ Nouveau Brunswick <<- ->> Nouveau-Brunswick # Il manque un trait d’union. __[u]/tu(tu_Nouvelle_Qqch)__ Nouvelle (Zélande|Calédonie|Orléans) @@$ <<- ->> Nouvelle-\1 # Il manque un trait d’union. __[u]/tu(tu_Pas_de_Calais)__ Pas de Calais <<- ->> Pas-de-Calais # Il manque les traits d’union. __[u]/tu(tu_Rhône_Alpes)__ Rhône Alpes <<- ->> Rhône-Alpes # Il manque les traits d’union. __[u]/tu(tu_Saône_et_Loire)__ Saône et Loire <<- ->> Saône-et-Loire # Il manque un trait d’union. __[u]/tu(tu_Jésus_Christ)__ Jésus Christ <<- ->> Jésus-Christ # Il manque un trait d’union. __[u]/tu(tu_Jean_prénom)__ Jean (Baptiste|Claude|François|Jacques|Louis|Luc|Marc|Marie|Michel|Paul|Philippe|Pierre) @@$ <<- ->> Jean-\1 # Il manque un trait d’union. __[u]/tu(tu_Marie_Prénom)__ Marie (Ange|Agnès|Anne|Antoinette|Cécile|Chantal|Charlotte|Christine|Claire|Claude|Dominique|France|Françoise|Hélène|Jeanne|José|Josèphe|Line|Louise|Madeleine|Noëlle|Odile|Paule|Pierre|Rose|Thérèse) @@$ <<- ->> Marie-\1 # Il manque un trait d’union. __[s]/tu(tu_St_Ste_Bidule)__ ((Ste?) )[A-ZÉÈÎ]\w+ @@0,0 <<- -1>> \2- # Il manque un trait d’union s’il s’agit d’une église, d’une cité, d’une communauté… S’il s’agit d’une personne, écrivez « saint(e) » sans majuscule, sans trait d’union. TEST: Émigrer au {{Royaume Uni}} |
︙ | ︙ | |||
1914 1915 1916 1917 1918 1919 1920 | lors que? <<- not before(r"(?i)\bd[eè]s +$") ->> =\0.replace(" ", "") # Attachez les deux mots.|https://fr.wiktionary.org/wiki/lorsque TEST: Elle y arriva {{lors qu}}’elle trouva l’astuce permettant l’ouverture de la porte. TEST: Dès lors qu’on sait comment s’y prendre, aucune raison de faillir. | | | 1914 1915 1916 1917 1918 1919 1920 1921 1922 1923 1924 1925 1926 1927 1928 | lors que? <<- not before(r"(?i)\bd[eè]s +$") ->> =\0.replace(" ", "") # Attachez les deux mots.|https://fr.wiktionary.org/wiki/lorsque TEST: Elle y arriva {{lors qu}}’elle trouva l’astuce permettant l’ouverture de la porte. TEST: Dès lors qu’on sait comment s’y prendre, aucune raison de faillir. !!!! Virgules !! # Dialogues __[u]/virg(virgule_dialogue_après_nom_propre)__ ([A-ZÉÈ][\w-]+) (\w+-(?:moi|toi|l(?:ui|a|e(?:ur|s|))|nous|vous|je|tu|ils|elles)) @@0,$ <<- morphex(\1, ":M", ":G") and not morph(\2, ":N", False) and isStart() -1>> \1, # Dialogue ? Ajoutez une virgule pour mettre en incise la personne à qui s’adresse la réplique. |
︙ | ︙ | |||
1951 1952 1953 1954 1955 1956 1957 | TEST: Tu vas les {{donner}} Rachel. TEST: Il va la {{tuer}} Paul. TEST: Cependant les promesses n’engagent que ceux qui les croient, comme aimait à le dire Jacques Chirac. | | | | 1951 1952 1953 1954 1955 1956 1957 1958 1959 1960 1961 1962 1963 1964 1965 1966 1967 1968 1969 1970 1971 1972 1973 1974 1975 | TEST: Tu vas les {{donner}} Rachel. TEST: Il va la {{tuer}} Paul. TEST: Cependant les promesses n’engagent que ceux qui les croient, comme aimait à le dire Jacques Chirac. !!!! Apostrophe manquante (2) !! __<s>/typo(typo_apostrophe_manquante_audace2)__ ^ *([LDSNCJMTÇ] )[aeéiouhAEÉIOUHyîèêôûYÎÈÊÔÛ] @@* <<- option("mapos") -1>> =\1[:-1]+"’" # Il manque peut-être une apostrophe. TEST: __mapos__ {{L }}opinion des gens, elle s’en moquait. !!!! A / À: accentuation la préposition en début de phrase !! __<s]/typo(typo_À_début_phrase1)__ ^ *(A) (?!t[’-](?:ils?|elles?|on))({w_2}) @@*,$ <<- morphex(\2, ":[GNAY]", ":(?:Q|3s)|>(?:priori|post[eé]riori|contrario|capella|fortiori)/") or (\2 == "bientôt" and isEnd()) -1>> À # S’il s’agit de la préposition « à », il faut accentuer la majuscule. __<s>/typo(typo_À_début_phrase2)__ |
︙ | ︙ | |||
1983 1984 1985 1986 1987 1988 1989 | TEST: — {{A}} t’emmener loin de tout ceci. TEST: {{A}} bientôt, mon ami. TEST: A bientôt fini son devoir. TEST: A priori, nul ne peut y parvenir sans une aide extérieure. TEST: A devient notre meilleure chance d’y parvenir. | | | | 1983 1984 1985 1986 1987 1988 1989 1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 | TEST: — {{A}} t’emmener loin de tout ceci. TEST: {{A}} bientôt, mon ami. TEST: A bientôt fini son devoir. TEST: A priori, nul ne peut y parvenir sans une aide extérieure. TEST: A devient notre meilleure chance d’y parvenir. !!!! Accentuation des majuscules !! __[u]/maj(maj_accents)__ E(?:tat|glise|co(?:le|nomie)|quipe|lectri(?:cité|que)|gal(?:ité|ement)|té)s? @@1 <<- ->> ="É"+\0[1:] # Accentuez les majuscules. <<- ~>> ="É"+\0[1:] TEST: Le budget de l’{{Etat}}. !!! !!! !!! Désambiguïsation !! !!! !!! # mots grammaticaux __[i](d_dans)__ dans <<- not morph(word(-1), ":D.*:p|>[a-z]+ièmes/", False, False) =>> select(\0, ":R") |
︙ | ︙ | |||
2100 2101 2102 2103 2104 2105 2106 | TEST: elle finit par être très fière de son fils. !! !! | | | 2100 2101 2102 2103 2104 2105 2106 2107 2108 2109 2110 2111 2112 2113 2114 | TEST: elle finit par être très fière de son fils. !! !! !!!! OCR !! !! !! # ? __<s]/ocr(ocr_point_interrogation)__ [ ]7 <<- after0("^(?: +[A-ZÉÈÂ(]|…|[.][.]+| *$)") ->> " ?" # Erreur de numérisation ? |
︙ | ︙ | |||
2753 2754 2755 2756 2757 2758 2759 | TEST: __ocr__ trouve {{l£}} temps TEST: __ocr__ elle s’{{avance*}} sur le seuil TEST: __ocr__ par beaucoup d’argent ? {{{Il}} débouche le Jack Daniels !! !! | | | 2753 2754 2755 2756 2757 2758 2759 2760 2761 2762 2763 2764 2765 2766 2767 | TEST: __ocr__ trouve {{l£}} temps TEST: __ocr__ elle s’{{avance*}} sur le seuil TEST: __ocr__ par beaucoup d’argent ? {{{Il}} débouche le Jack Daniels !! !! !!!! Incohérences de base !! !! !! ### double négation __[i](double_négation)__ pas (personne|aucune?|jamais) @@4 <<- not morph(word(-1), ":D:[me]" ,False, False) ->> \1|pas, \1 |
︙ | ︙ | |||
2815 2816 2817 2818 2819 2820 2821 | TEST: je ne sais {{des}} {{ses}} choses. !! !! | | | 2815 2816 2817 2818 2819 2820 2821 2822 2823 2824 2825 2826 2827 2828 2829 | TEST: je ne sais {{des}} {{ses}} choses. !! !! !!!! Style !! !! !! #__bs__ Mr <<- ->> M. # M. est l’usage courant pour “Monsieur”. « Mr » est l’abréviation ancienne, française. # à / en __[i]/bs(bs_en_à_ville)__ |
︙ | ︙ | |||
2926 2927 2928 2929 2930 2931 2932 | #Se rappelle de l’amour #enjoindre à qqn de faire qqch !! !! | | | 2926 2927 2928 2929 2930 2931 2932 2933 2934 2935 2936 2937 2938 2939 2940 | #Se rappelle de l’amour #enjoindre à qqn de faire qqch !! !! !!!! Pléonasmes !! !! !! __[i]/pleo(pleo_abolir)__ (abol\w+) (?:absolument|entièrement|compl[èé]tement|totalement) @@0 <<- morph(\1, ">abolir/", False) ->> \1 # Pléonasme. __[i]/pleo(pleo_acculer)__ (accul\w+) aux? pieds? du mur @@0 <<- morph(\1, ">acculer/", False) ->> \1 # Pléonasme. __[i]/pleo(pleo_achever)__ (ach[eè]v\w+) (?:absolument|entièrement|compl[èé]tement|totalement) @@0 <<- morph(\1, ">achever/", False) ->> \1 # Pléonasme. __[i]/pleo(pleo_en_cours)__ actuellement en cours <<- not after(r" +de?\b") ->> en cours # Pléonasme. |
︙ | ︙ | |||
3102 3103 3104 3105 3106 3107 3108 | TEST: {{ta}} aimée ->> ton TEST: {{ma}} obligée ->> mon TEST: Ce couple va donner à la France sa très importante collection qui rejoindra le musée d’Orsay !! !! | | | | 3102 3103 3104 3105 3106 3107 3108 3109 3110 3111 3112 3113 3114 3115 3116 3117 3118 3119 3120 3121 3122 3123 | TEST: {{ta}} aimée ->> ton TEST: {{ma}} obligée ->> mon TEST: Ce couple va donner à la France sa très importante collection qui rejoindra le musée d’Orsay !! !! !!!! Confusions !! !! !! __[s>/conf(conf_ne_n)__ [nN]e n’ <<- ->> ne m’|n’ # Incohérence. Double négation. __[s>/conf(conf_pronoms1)__ [mtMT]e ([nmst](?:’|e )) @@$ <<- ->> \1 # Incohérence. __[s>/conf(conf_pronoms2)__ [sS]e ([mst](?:’|e )) @@$ <<- ->> \1 # Incohérence. __[s>/conf(conf_de_d)__ [dD][eu] d’(?![A-ZÉÂÔÈ]) <<- ->> d’ # Incohérence. TEST: Il {{ne n’}}arrive jamais à l’heure. TEST: Ça {{me te }}prend la tête, toutes ces complications vaines. TEST: il {{se m’}}est difficile d’y parvenir. TEST: Ça t’arrive {{de d’}}arriver à l’heure ? TEST: Les écrits de d’Alembert. |
︙ | ︙ | |||
3144 3145 3146 3147 3148 3149 3150 | TEST: toute chose pourrait finalement advenir indifféremment en n’importe quel point du globe __[i]/conf(conf_malgré_le_la_les_leur)__ malgré l(?:es? +|eurs? +|a +|’)({w_3}) @@$ <<- morphex(\1, ":", ":[GNAWMB]") -1>> =suggSimil(\1, ":[NA]", True) # Incohérence : après “malgré”, on devrait trouver un groupe nominal. | | | 3144 3145 3146 3147 3148 3149 3150 3151 3152 3153 3154 3155 3156 3157 3158 | TEST: toute chose pourrait finalement advenir indifféremment en n’importe quel point du globe __[i]/conf(conf_malgré_le_la_les_leur)__ malgré l(?:es? +|eurs? +|a +|’)({w_3}) @@$ <<- morphex(\1, ":", ":[GNAWMB]") -1>> =suggSimil(\1, ":[NA]", True) # Incohérence : après “malgré”, on devrait trouver un groupe nominal. TEST: malgré l’{{arrête}} qui interdisait le port TEST: malgré les deux précédentes erreurs __[i]/conf(conf_ma_ta_cette_verbe)__ ([mt]a|cette) +({w_2}) @@0,$ <<- morphex(\2, ":V.*:(?:Y|[123][sp])", ":[NAQ]") and \2[0].islower() -2>> =suggSimil(\2, ":[NA]:[fe]:[si]", True) # Incohérence avec « \1 » : « \2 » est un verbe. |
︙ | ︙ | |||
3337 3338 3339 3340 3341 3342 3343 | # Trop de faux positifs #__[i]/conf__ # très +(bien|\w+ent) +({w2}) @@w,$ # <<- morph(\1, ":W", False) and morphex(\2, ":[123][sp]", ":[GAQW]") -2>> _ # # Incohérence avec « très » : « \2 » n’est ni un adjectif, ni un participe passé, ni un adverbe. | | | 3337 3338 3339 3340 3341 3342 3343 3344 3345 3346 3347 3348 3349 3350 3351 | # Trop de faux positifs #__[i]/conf__ # très +(bien|\w+ent) +({w2}) @@w,$ # <<- morph(\1, ":W", False) and morphex(\2, ":[123][sp]", ":[GAQW]") -2>> _ # # Incohérence avec « très » : « \2 » n’est ni un adjectif, ni un participe passé, ni un adverbe. __[i]/conf(conf_très_verbe)__ très +(?!envie)({w_2}) @@$ <<- morphex(\1, ":(?:Y|[123][sp])", ":[AQW]") -1>> =suggSimil(\1, ":[AW]", True) # Incohérence avec « très » : « \1 » n’est ni un adjectif, ni un participe passé, ni un adverbe. <<- morph(\1, ">jeûne/", False) -1>> =\1.replace("û", "u") # Confusion. Le jeûne est une privation de nourriture.|https://fr.wiktionary.org/wiki/jeune TEST: Il est très {{cite}}. TEST: très {{suivit}} par ce détective |
︙ | ︙ | |||
3463 3464 3465 3466 3467 3468 3469 | (à les) ({w_2}) @@0,6 <<- morphex(\2, ":[NAQ]", ":(?:Y|Oo)") -1>> a les|aux # Confusion. Ou vous confondez “a” (préposition) avec “a” (avoir), ou vous devez employer “aux”. Exemple : Elle _a_ donné du travail _aux_ employés _à_ profusion. __[i]/conf(conf_a_à_au_aux)__ (à) aux?(?! (?:moins|plus)) @@0 <<- -1>> a # Confusion : “à” est une préposition. Pour le verbe avoir, écrivez : __[i]/conf(conf_a_à_base_cause)__ (a) (?:base|cause) d(?:es?|u|) @@0 <<- not before(r"(?i)\bce que?\b") -1>> à # Confusion. Utilisez la préposition « à ». __[i]/conf(conf_a_à_faim_peur_honte_soif)__ | | | | 3463 3464 3465 3466 3467 3468 3469 3470 3471 3472 3473 3474 3475 3476 3477 3478 3479 3480 3481 3482 | (à les) ({w_2}) @@0,6 <<- morphex(\2, ":[NAQ]", ":(?:Y|Oo)") -1>> a les|aux # Confusion. Ou vous confondez “a” (préposition) avec “a” (avoir), ou vous devez employer “aux”. Exemple : Elle _a_ donné du travail _aux_ employés _à_ profusion. __[i]/conf(conf_a_à_au_aux)__ (à) aux?(?! (?:moins|plus)) @@0 <<- -1>> a # Confusion : “à” est une préposition. Pour le verbe avoir, écrivez : __[i]/conf(conf_a_à_base_cause)__ (a) (?:base|cause) d(?:es?|u|) @@0 <<- not before(r"(?i)\bce que?\b") -1>> à # Confusion. Utilisez la préposition « à ». __[i]/conf(conf_a_à_faim_peur_honte_soif)__ (à) +(?:faim|peur|honte|soif) @@0 <<- -1>> a # Confusion : “à” est une préposition. Pour le verbe avoir, écrivez : __[i]/conf(conf_a_à_part)__ (a) part ({w1}) @@0,7 <<- morph(\2, ":(?:M[12]|D|Oo)") -1>> à # Confusion probable. __[i]/conf(conf_a_à_les_à)__ les (à)(?! côtés| peu près| prioris?| post[eé]rioris?| valoirs?| pics?| propos) @@4 <<- -1>> a # Confusion : “à” est une préposition. Pour le verbe avoir, écrivez : __[i]/conf(conf_a_à_avant_conj_prep)__ (à) +(?:a(?:fin|lors|près|uprès|ux?(?! moins| plus| mieux)|vant|vec)|au-de(?:dans|hors|là|sso?us|vant)|chez|d(?:ans|evant|ès|déjà|onc|urant)|lorsque?|malgré|par(?:ce|mi|)|p(?:endant|our|uisque)|que?|sur|tandis) @@0 <<- -1>> a # Confusion probable : “à” est une préposition. Écrivez “a” pour la conjugaison de “avoir”. __[i]/conf(conf_a_participe_passé_ou_vconj)__ (à) +({w_2}) @@0,$ <<- \2.islower() and \2 != "coté" >>> <<- morphex(\2, ":(?:V.......[_z][az].*:Q|V1.*:Ip:2p)", ":[MGWNY]") -1>> a # Confusion probable : “à” est une préposition. Pour le verbe “avoir”, écrivez : |
︙ | ︙ | |||
3499 3500 3501 3502 3503 3504 3505 | -1>> à # Confusion probable : “a” est la conjugaison du verbe “avoir”. Utilisez la préposition “à”.|http://fr.wiktionary.org/wiki/%C3%A0 __[s]/conf(conf_a_à_locutions4)__ (a) (?:[mts](?:es|on|a)|[nv]o(?:s|tre)|leurs?) (?:avis|c(?:onnaissance|ôtés)|c(?:œur|orps) défendant|dé(?:pens|triment)|disposition|encontre|égard|grand(?: désarroi|e (?:surprise|tristesse))|guise|insu|portée|risques et périls|sujet|tour) @@0 <<- not before(r"(?i)(?:\bque? |[ln]’$|(?<!-)\b(?:il|elle|on|y|n’en) +$)") -1>> à # Confusion probable : “a” est la conjugaison du verbe “avoir”. Utilisez la préposition “à”.|http://fr.wiktionary.org/wiki/%C3%A0 __[s]/conf(conf_a_à_infi)__ (?<![mtn]’)(a) (?:[mts](?:’(?:en +|y +|)|e +)|[nv]ous|)({w_2}(?:er|re|ir)) @@0,2 | | | 3499 3500 3501 3502 3503 3504 3505 3506 3507 3508 3509 3510 3511 3512 3513 | -1>> à # Confusion probable : “a” est la conjugaison du verbe “avoir”. Utilisez la préposition “à”.|http://fr.wiktionary.org/wiki/%C3%A0 __[s]/conf(conf_a_à_locutions4)__ (a) (?:[mts](?:es|on|a)|[nv]o(?:s|tre)|leurs?) (?:avis|c(?:onnaissance|ôtés)|c(?:œur|orps) défendant|dé(?:pens|triment)|disposition|encontre|égard|grand(?: désarroi|e (?:surprise|tristesse))|guise|insu|portée|risques et périls|sujet|tour) @@0 <<- not before(r"(?i)(?:\bque? |[ln]’$|(?<!-)\b(?:il|elle|on|y|n’en) +$)") -1>> à # Confusion probable : “a” est la conjugaison du verbe “avoir”. Utilisez la préposition “à”.|http://fr.wiktionary.org/wiki/%C3%A0 __[s]/conf(conf_a_à_infi)__ (?<![mtn]’)(a) (?:[mts](?:’(?:en +|y +|)|e +)|[nv]ous|)({w_2}(?:er|re|ir)) @@0,2 <<- morph(\2, ":Y", False) and not before(r"(?i)\bque? |(?:il|elle|on|n’(?:en|y)) +$") -1>> à # Confusion probable : “a” est la conjugaison du verbe “avoir”. Utilisez la préposition “à”.|http://fr.wiktionary.org/wiki/%C3%A0 __[s]/conf(conf_a_à_après_interrogative)__ \w+-(?:je|ils?|elles?|je|tu|on|vous|nous) (a)(?! priori| posteriori| fortiori) @@$ <<- -1>> à # Confusion probable : “a” est la conjugaison du verbe “avoir”. Utilisez la préposition “à”.|http://fr.wiktionary.org/wiki/%C3%A0 TEST: Cette femme {{à}} été confondue avec une autre. |
︙ | ︙ | |||
3990 3991 3992 3993 3994 3995 3996 | __[i]/conf(conf_golf)__ (champion(?:ne|nat|)s?|clubs?|joueu(?:r|se)s?|parcours|sacs?|balles?|terrains?|tournois?|compétitions?|passionnée?s?|écoles?|professeurs?|parties?|professionnel(?:le|)s?|amateure?s?|stages?|journées?|après-midi|matinées?|heures?|fédérations?|fans?) de (golfe) @@0,$ <<- -2>> golf # Confusion. Le golfe est une zone de mer ou d’un lac avancée dans les terres. Ex : Le golfe Persique. __[i]/conf(conf_golfe)__ (golf) (persique|d[ue] (?:Bengale|Botnie|Gascogne|Gabès|Guinée|Lion|Morbihan|Mexique|Porto|Saint-Laurent|Thaïlande|Tonkin|Tunis|Winam)|d’(?:Aden|Ajaccio|Alaska|Hammamet)) @@0,$ <<- -1>> golfe # Confusion. Le golf est un sport. __[i]/conf(conf_Golfe)__ | | | | 3990 3991 3992 3993 3994 3995 3996 3997 3998 3999 4000 4001 4002 4003 4004 4005 4006 4007 4008 4009 4010 4011 4012 4013 4014 | __[i]/conf(conf_golf)__ (champion(?:ne|nat|)s?|clubs?|joueu(?:r|se)s?|parcours|sacs?|balles?|terrains?|tournois?|compétitions?|passionnée?s?|écoles?|professeurs?|parties?|professionnel(?:le|)s?|amateure?s?|stages?|journées?|après-midi|matinées?|heures?|fédérations?|fans?) de (golfe) @@0,$ <<- -2>> golf # Confusion. Le golfe est une zone de mer ou d’un lac avancée dans les terres. Ex : Le golfe Persique. __[i]/conf(conf_golfe)__ (golf) (persique|d[ue] (?:Bengale|Botnie|Gascogne|Gabès|Guinée|Lion|Morbihan|Mexique|Porto|Saint-Laurent|Thaïlande|Tonkin|Tunis|Winam)|d’(?:Aden|Ajaccio|Alaska|Hammamet)) @@0,$ <<- -1>> golfe # Confusion. Le golf est un sport. __[i]/conf(conf_Golfe)__ (?:guerre|émir|monarchie)s? du (golf) @@$ <<- -1>> Golfe # Confusion. Le golf est un sport. TEST: Il a réalisé un documentaire sur la guerre du {{Golf}}. TEST: C’est un bon joueur de {{golfe}}. TEST: Le {{golf}} Persique est presque une mer fermée. TEST: J’ai fait de la voile dans le {{golf}} du Morbihan. TEST: Le {{golf}} d’Aden. # haut delà / au-delà __[i]/conf(conf_au_delà)__ haut[- ]del[àa] <<- ->> au-delà # Confusion. TEST: il va dans l’{{haut delà}} # héro / héros __[i]/conf(conf_héros)__ (?:le|quel|cet?|un|du|au) (héro) @@$ |
︙ | ︙ | |||
4168 4169 4170 4171 4172 4173 4174 | ^ *(?:il|ce) (peut-être) @@$ <<- -1>> peut être # Confusion probable : « peut-être » signifie « possiblement ». __[i]/conf(conf_cela_peut_être_adj)__ ^ *(?:cela|ceci) (peut-être) ({w_2}) @@w,$ <<- morph(\2, ":[AQ]", False) -1>> peut être # Confusion probable : « peut-être » signifie « possiblement ». __[i]/conf(conf_peu_à_peu)__ peu[xt]? a peu[xt]? | | | 4168 4169 4170 4171 4172 4173 4174 4175 4176 4177 4178 4179 4180 4181 4182 | ^ *(?:il|ce) (peut-être) @@$ <<- -1>> peut être # Confusion probable : « peut-être » signifie « possiblement ». __[i]/conf(conf_cela_peut_être_adj)__ ^ *(?:cela|ceci) (peut-être) ({w_2}) @@w,$ <<- morph(\2, ":[AQ]", False) -1>> peut être # Confusion probable : « peut-être » signifie « possiblement ». __[i]/conf(conf_peu_à_peu)__ peu[xt]? a peu[xt]? <<- ->> peu à peu # Confusion : « peu à peu » ou « petit à petit ». __[i]/conf(conf_peu_importe)__ (peu[tx]) importe(?:nt|) @@w <<- morph(word(-1), ":C", False, True) -1>> peu # Confusion : « \1 » est une conjugaison de “pouvoir”, utilisez “peu” pour dire “pas beaucoup”. __[i]/conf(conf_adv_de_peu)!6__ (?:très|trop|de|quelque|pour|à) (peu[tx]) @@$ <<- -1>> peu # Confusion : « \1 » est une conjugaison de “pouvoir”, utilisez “peu” pour dire “pas beaucoup”. __[i]/conf(conf_un_peu)!6__ |
︙ | ︙ | |||
4276 4277 4278 4279 4280 4281 4282 | TEST: être rassuré quant à l’avenir du continent européen TEST: il comprit trop tard qu’en elle naquit alors le doute qui l’éloigna de lui à jamais. TEST: Quand à mon tour je réalise l’imposture, c’est trop tard. # quand bien même __[i]/conf(conf_quand_bien_même)__ | | | 4276 4277 4278 4279 4280 4281 4282 4283 4284 4285 4286 4287 4288 4289 4290 | TEST: être rassuré quant à l’avenir du continent européen TEST: il comprit trop tard qu’en elle naquit alors le doute qui l’éloigna de lui à jamais. TEST: Quand à mon tour je réalise l’imposture, c’est trop tard. # quand bien même __[i]/conf(conf_quand_bien_même)__ combien même <<- not after("^ si ") ->> quand bien même # Locution conjonctive.|https://fr.wiktionary.org/wiki/quand_bien_m%C3%AAme TEST: J’irai, {{combien même}} vous seriez tous contre moi. TEST: Il partirait en guerre quand bien même devrait-il être tout seul. TEST: Elle veut savoir combien même si ça ne lui est d’aucune utilité immédiate. # qu’elle / quelle |
︙ | ︙ | |||
4429 4430 4431 4432 4433 4434 4435 | # tant / temps (1re partie) __[i]/conf(conf_en_temps_de)__ en (tant?) de? @@3 <<- not after("^[ ’](?:lieux|endroits|places|mondes|villes|pays|régions|cités)") -1>> temps # Confusion. Écrivez « en temps de » si vous évoquez une période de temps. __[i]/conf(conf_de_temps_en_temps)__ de tant? en tant? <<- ->> de temps en temps # Confusion. Écrivez « de temps en temps ». __[i]/conf(conf_un_temps_soit_peu)__ un (temps|tan) soi[tes]? peu @@3 <<- -1>> tant # Confusion. Écrivez « un tant soit peu ». | | | 4429 4430 4431 4432 4433 4434 4435 4436 4437 4438 4439 4440 4441 4442 4443 | # tant / temps (1re partie) __[i]/conf(conf_en_temps_de)__ en (tant?) de? @@3 <<- not after("^[ ’](?:lieux|endroits|places|mondes|villes|pays|régions|cités)") -1>> temps # Confusion. Écrivez « en temps de » si vous évoquez une période de temps. __[i]/conf(conf_de_temps_en_temps)__ de tant? en tant? <<- ->> de temps en temps # Confusion. Écrivez « de temps en temps ». __[i]/conf(conf_un_temps_soit_peu)__ un (temps|tan) soi[tes]? peu @@3 <<- -1>> tant # Confusion. Écrivez « un tant soit peu ». __[i]/conf(conf_tant_de)__ a(?:près|vec) (temps|tan) de? @@w <<- -1>> tant # Confusion.|http://fr.wiktionary.org/wiki/tant __[i]/conf(conf_à_temps_partiel)__ [àa] (tant?) (?:partiel|plein)s? @@2 <<- -1>> temps # Confusion. __[i]/conf(conf_en_même_temps)__ en mêmes? (tant?) @@$ <<- -1>> temps # Confusion. TEST: en {{tant}} de guerre, il faut savoir faire face et ne pas faiblir face à l’adversité. TEST: ils vont {{de tan en tan}} au restaurant TEST: un {{temps}} soit peu perdu dans cette affaire. TEST: après {{temps}} de souffrance, il faut savoir lâcher prise. |
︙ | ︙ | |||
4484 4485 4486 4487 4488 4489 4490 | # voire / voir __[i]/conf(conf_voir_voire)__ (voir) ({w_2}) @@0,$ <<- not re.search("^(?:grand|petit|rouge)$", \2) and morphex(\2, ":A", ":[NGM]") and not \2.istitle() and not before(r"(?i)\b[ndmts](?:e |’(?:en |y ))(?:pas |jamais |) *$") and not morph(word(-1), ":O[os]|>(?:[ndmts]e|falloir|pouvoir|savoir|de)/", False) | | | 4484 4485 4486 4487 4488 4489 4490 4491 4492 4493 4494 4495 4496 4497 4498 | # voire / voir __[i]/conf(conf_voir_voire)__ (voir) ({w_2}) @@0,$ <<- not re.search("^(?:grand|petit|rouge)$", \2) and morphex(\2, ":A", ":[NGM]") and not \2.istitle() and not before(r"(?i)\b[ndmts](?:e |’(?:en |y ))(?:pas |jamais |) *$") and not morph(word(-1), ":O[os]|>(?:[ndmts]e|falloir|pouvoir|savoir|de)/", False) -1>> voire # Confusion probable : “voir” est un verbe concernant la perception visuelle. Pour signifier “et même possiblement”, écrivez :|https://fr.wiktionary.org/wiki/voire __[i]/conf(conf_voire_voir)__ voire <<- morph(word(-1), ":Cs|>(?:ni|et|sans|pour|falloir|[pv]ouvoir|aller)/", True, False) ->> voir # Confusion probable : “voire” signifie “et même possiblement”. Pour le verbe, écrivez “voir”.|https://fr.wiktionary.org/wiki/voire |
︙ | ︙ | |||
4514 4515 4516 4517 4518 4519 4520 | TEST: car elles pénètrent dans les poumons voire le système sanguin. TEST: des enfants malades, qui préfèrent souvent voir Dark Vador que des vieux clowns un peu flippants. !! !! | | | 4514 4515 4516 4517 4518 4519 4520 4521 4522 4523 4524 4525 4526 4527 4528 | TEST: car elles pénètrent dans les poumons voire le système sanguin. TEST: des enfants malades, qui préfèrent souvent voir Dark Vador que des vieux clowns un peu flippants. !! !! !!!! Pronoms + incohérences !! !! !! __[i](p_m_enfin)__ m’enfin <<- ~>> * __[i]/conf(conf_j_y_en_qqch)__ (j’(?:en +|y +|))({w_1}) @@0,$ <<- morphex(\2, ":", ":(?:[123][sp]|O[onw])") |
︙ | ︙ | |||
4591 4592 4593 4594 4595 4596 4597 | #__[i](p_notre_père_qui_es_au_cieux)__ notre père (qui est? aux cieux) @@11 <<- ~1>> * @@@@ @@@@ @@@@ @@@@ | | | | 4591 4592 4593 4594 4595 4596 4597 4598 4599 4600 4601 4602 4603 4604 4605 4606 4607 4608 4609 4610 4611 4612 4613 4614 4615 4616 4617 4618 4619 | #__[i](p_notre_père_qui_es_au_cieux)__ notre père (qui est? aux cieux) @@11 <<- ~1>> * @@@@ @@@@ @@@@ @@@@ @@@@GRAPH: graphe1 @@@@ @@@@ @@@@ @@@@ __p_notre_père_qui_es_au_cieux__ notre père qui [es|est] aux cieux <<- ~4>> ! <<- ~3:0>> _ !! !! !!!! Formes verbales sans sujet !! !! !! __tag_sujets__ [je|j’] [moi|moi-même] qui [moi|moi-même] [seul|seule] |
︙ | ︙ | |||
4771 4772 4773 4774 4775 4776 4777 | TEST: Mon épouse et moi-même avons toujours dit TEST: que vous ou moi ignorions à peu près tout du boson de Higgs n’a pas du tout le même sens !! !! | | | 4771 4772 4773 4774 4775 4776 4777 4778 4779 4780 4781 4782 4783 4784 4785 | TEST: Mon épouse et moi-même avons toujours dit TEST: que vous ou moi ignorions à peu près tout du boson de Higgs n’a pas du tout le même sens !! !! !!!! Locutions invariables !! !! !! __locutions_invariables__ [plus|moins|autant] que [prévue|prévus|prévues] <<- -3>> prévu # Invariable. Implicitement, \1 que ce qui était prévu. |
︙ | ︙ | |||
4809 4810 4811 4812 4813 4814 4815 | TEST: il y en a moins que {{prévues}} ->> prévu TEST: comme {{convenus}} ->> convenu !! !! | | | 4809 4810 4811 4812 4813 4814 4815 4816 4817 4818 4819 4820 4821 4822 4823 | TEST: il y en a moins que {{prévues}} ->> prévu TEST: comme {{convenus}} ->> convenu !! !! !!!! Tout, tous, toute, toutes !! !! !! __purge_tout_tous_toutes__ [fais-les|fais-nous] [tous|toutes] [faisons-les|faisons-nous|faisons-vous] [tous|toutes] [faites-les|faites-nous|faites-vous] [tous|toutes] |
︙ | ︙ | |||
4944 4945 4946 4947 4948 4949 4950 | TEST: aux tout débuts, il y eut bien des erreurs TEST: comment les inégalités sociales impactent la santé des tout petits !! !! | | | 4944 4945 4946 4947 4948 4949 4950 4951 4952 4953 4954 4955 4956 4957 4958 | TEST: aux tout débuts, il y eut bien des erreurs TEST: comment les inégalités sociales impactent la santé des tout petits !! !! !!!! Adverbes de négation !! !! !! __ne_manquant__ [<start>|,] je [le|la|l’|les|me|m’|te|t’|se|s’|nous|vous|lui|leur] @:1s¬:(?:Oo|X) [pas|rien|jamais|guère|point] [<start>|,] tu [le|la|l’|les|me|m’|te|t’|se|s’|nous|vous|lui|leur] @:2s¬:(?:Oo|X) [pas|rien|jamais|guère|point] [<start>|,] [il|elle|on] [le|la|l’|les|me|m’|te|t’|se|s’|nous|vous|lui|leur] @:3s¬:(?:Oo|X) [pas|rien|jamais|guère|point] |
︙ | ︙ | |||
5012 5013 5014 5015 5016 5017 5018 | TEST: __neg__ Il {{y}} a jamais d’eau. TEST: __neg__ je {{deviendrai}} pas hargneux. TEST: __neg__ il {{le}} lui donne pas souvent. !! !! | | | 5012 5013 5014 5015 5016 5017 5018 5019 5020 5021 5022 5023 5024 5025 5026 | TEST: __neg__ Il {{y}} a jamais d’eau. TEST: __neg__ je {{deviendrai}} pas hargneux. TEST: __neg__ il {{le}} lui donne pas souvent. !! !! !!!! Infinitif !! !! !! __infi_ne_pas_jamais_etc__ ne [pas|rien|guère|point] ?[le|la|l’|les|leur|lui|nous|vous|me|m’|te|t’|se|s’|en|y]¿ (@:[VNA]¬:(?:Y|W|X|O[ow])|>que?/) ne [pas|rien|guère|point] [trop|beaucoup] ?[le|la|l’|les|leur|lui|nous|vous|me|m’|te|t’|se|s’|en|y]¿ (@:[VNA]¬:(?:Y|W|X|O[ow])|>que?/) ne [pas|rien|guère|point] non plus ?[le|la|l’|les|leur|lui|nous|vous|me|m’|te|t’|se|s’|en|y]¿ (@:[VNA]¬:(?:Y|W|X|O[ow])|>que?/) |
︙ | ︙ | |||
5543 5544 5545 5546 5547 5548 5549 | bien assez tôt bien des fois bien souvent bon gré ?,¿ mal gré bras dessus ?,¿ bras dessous çà et là ce faisant | | | 5543 5544 5545 5546 5547 5548 5549 5550 5551 5552 5553 5554 5555 5556 5557 | bien assez tôt bien des fois bien souvent bon gré ?,¿ mal gré bras dessus ?,¿ bras dessous çà et là ce faisant [cela|ça|ceci] mis à part [cela|ça|ceci] va sans dire ces derniers temps cette [fois-là|fois-ci] chaque fois comme avant comme autrefois comme d’ habitude |
︙ | ︙ | |||
6222 6223 6224 6225 6226 6227 6228 | vaille que vaille ventre à terre vers nulle part <<- ~>> * @@@@ | | | | | | | 6222 6223 6224 6225 6226 6227 6228 6229 6230 6231 6232 6233 6234 6235 6236 6237 6238 6239 6240 6241 6242 6243 6244 6245 6246 6247 6248 6249 6250 6251 6252 6253 6254 | vaille que vaille ventre à terre vers nulle part <<- ~>> * @@@@ @@@@END_GRAPH @@@@ __[i](p_plus_avant)__ plus avant(?! de | que?) <<- ~>> * __[i](p_qui_loc_tps)__ qui (ce (?:jour|matin|après-midi|soir)-là|cette (?:nuit|matinée|soirée)-là) @@4 <<- ~1>> * TEST: ils vont et viennent, toujours {{cotes a cotes}}… TEST: Nous irons {{tours à tours}} chercher du bois. TEST: Ma thèse en 180 secondes. # je / tu / il / elles / nous / vous / ils / elles __[i](p_je_vous_en_prie)__ je (?:t’en|vous en) (?:prie|supplie) <<- ~>> * __[i](p_nous_vous_en_prions)__ nous (?:t’en|vous en) (?:prions|supplions) <<- ~>> * # mot-là __[i](p_qqch_tiret_là)__ ({w1})(-là) @@0,$ <<- morphex(\1, ":[NAQ]", ":G") ~2>> * # Après |
︙ | ︙ | |||
6268 6269 6270 6271 6272 6273 6274 | __[i](p_de_mes_yeux_vu)__ (de (?:[mts]es|[nv]os|leurs) yeux) vue?s? @@0 <<- ~1>> * __[i](p_en_loc_de1)__ en (arrière|attente|amont|aval|cas|cours|dehors|dépit|direction|faveur|guise|l’(?:absence|honneur)|lieu et place|plein milieu|présence|raison|sus|termes|vertu) d(?:es?|u) @@3 <<- ~1>> * __[i](p_en_loc_de2)__ en (flagrant délit|matière) de? @@3 <<- ~1>> * __[i](p_en_proie_à)__ (en proie) à @@0 <<- ~1>> * __[i](p_eu_égard_à)__ (eu égard) (?:à|aux?) @@0 <<- ~1>> * __[i](p_la_une_de)__ la (une) d(?:es?|u) @@3 <<- ~1>> _ __[i](p_le_long_de)__ le (long) d(?:es?|u) @@3 <<- ~1>> _ | | | 6268 6269 6270 6271 6272 6273 6274 6275 6276 6277 6278 6279 6280 6281 6282 | __[i](p_de_mes_yeux_vu)__ (de (?:[mts]es|[nv]os|leurs) yeux) vue?s? @@0 <<- ~1>> * __[i](p_en_loc_de1)__ en (arrière|attente|amont|aval|cas|cours|dehors|dépit|direction|faveur|guise|l’(?:absence|honneur)|lieu et place|plein milieu|présence|raison|sus|termes|vertu) d(?:es?|u) @@3 <<- ~1>> * __[i](p_en_loc_de2)__ en (flagrant délit|matière) de? @@3 <<- ~1>> * __[i](p_en_proie_à)__ (en proie) à @@0 <<- ~1>> * __[i](p_eu_égard_à)__ (eu égard) (?:à|aux?) @@0 <<- ~1>> * __[i](p_la_une_de)__ la (une) d(?:es?|u) @@3 <<- ~1>> _ __[i](p_le_long_de)__ le (long) d(?:es?|u) @@3 <<- ~1>> _ __[i](p_par_le_biais_de)__ par (le biais|l’entremise) d(?:es?|u) @@4 <<- ~1>> * __[i](p_pour_ou_contre)__ pour (ou contre) @@5 <<- ~1>> * __[i](p_rien_comparé_à)__ rien +(comparé) +à @@w <<- ~1>> * __[i](p_suite_à)__ (suite) (?:à|aux?) @@0 <<- not before(r"(?i)\b(?:une|la|cette|[mts]a|[nv]otre|de) +") ~1>> * __[i](p_vent_debout_contre)__ (vent debout) contre @@0 <<- ~1>> * # Déterminant + nombre __[i](p_dét_plur_nombre_nom)__ |
︙ | ︙ | |||
6413 6414 6415 6416 6417 6418 6419 | __[i](p_motion_de)__ motions? (de (?:blâme|censure|défiance)) @@$ <<- ~1>> * __[i](p_noix_de)__ noix (de (?:cajou|p[ée]can|coco|lavage|muscade|veau|macadamia)) @@$ <<- ~1>> * __[i](p_nu_comme_un_ver)__ nue?s? (comme (?:un ver|des vers)) @@$ <<- ~1>> * __[i](p_numéro)__ numéro (un|deux|trois|quatre|cinq|six|sept|huit|neuf|dix(?:-sept|-huit|-neuf|)|onze|douze|treize|quatorze|quinze|seize|vingt|trente|quarante|cinquante|soixante(?:-dix|)|quatre-vingt(?:-dix|)|cent|mille|\d+) @@$ <<- before(r"\b[lL]a +$") =>> define(\0, [">numéro/:N:f:s"]) <<- ~1>> * | | | 6413 6414 6415 6416 6417 6418 6419 6420 6421 6422 6423 6424 6425 6426 6427 | __[i](p_motion_de)__ motions? (de (?:blâme|censure|défiance)) @@$ <<- ~1>> * __[i](p_noix_de)__ noix (de (?:cajou|p[ée]can|coco|lavage|muscade|veau|macadamia)) @@$ <<- ~1>> * __[i](p_nu_comme_un_ver)__ nue?s? (comme (?:un ver|des vers)) @@$ <<- ~1>> * __[i](p_numéro)__ numéro (un|deux|trois|quatre|cinq|six|sept|huit|neuf|dix(?:-sept|-huit|-neuf|)|onze|douze|treize|quatorze|quinze|seize|vingt|trente|quarante|cinquante|soixante(?:-dix|)|quatre-vingt(?:-dix|)|cent|mille|\d+) @@$ <<- before(r"\b[lL]a +$") =>> define(\0, [">numéro/:N:f:s"]) <<- ~1>> * __[i](p_oiseau_de)__ oiseaux? (de (?:malheur|nuit|proie|mauvais augure)) @@$ <<- ~1>> * __[i](p_onde_de_choc)__ ondes? (de choc) @@$ <<- ~1>> * __[i](p_orge)__ orge (perlé|mondé|carré) @@$ <<- ~1>> * __[i](p_noire_comme)__ noire?s? (comme (?:la nuit|une nuit sans lune)) @@$ <<- ~1>> * __[i](p_partie_de_jambe_en_l_air)__ parties? (de jambes en l’air) @@$ <<- ~1>> * __[i](p_pièce_de)__ pièces? (de (?:théâtre|monnaie|\d+ (?:euros?|centimes?|cents?|livres? sterling|shillings?))) @@$ <<- ~1>> * __[i](p_pomme_de)__ pommes? (de (?:discorde|terre|reinette|pin)|d’(?:Adam|api|amour|ambre|eau|or)) @@$ <<- ~1>> * |
︙ | ︙ | |||
6548 6549 6550 6551 6552 6553 6554 | __[i](p_60_qqch)__ soixante-(?:d(?:eux|ix|ouze)|tr(?:ois|eize)|quat(?:re|orze)|cinq|six|sept|huit|neuf|quinze|seize| et (?:un|onze)|-et-(?:un|onze)) <<- ~>> soixante __[i](p_80_qqch)__ quatre-vingt-(?:un|d(?:eux|ix|ouze)|tr(?:ois|eize)|quat(?:re|orze)|cinq|six|sept|huit|neuf|onze|quinze|seize) <<- ~>> quatre-vingts __[i](p_qqch_100)__ | | | | 6548 6549 6550 6551 6552 6553 6554 6555 6556 6557 6558 6559 6560 6561 6562 6563 6564 6565 6566 6567 6568 6569 | __[i](p_60_qqch)__ soixante-(?:d(?:eux|ix|ouze)|tr(?:ois|eize)|quat(?:re|orze)|cinq|six|sept|huit|neuf|quinze|seize| et (?:un|onze)|-et-(?:un|onze)) <<- ~>> soixante __[i](p_80_qqch)__ quatre-vingt-(?:un|d(?:eux|ix|ouze)|tr(?:ois|eize)|quat(?:re|orze)|cinq|six|sept|huit|neuf|onze|quinze|seize) <<- ~>> quatre-vingts __[i](p_qqch_100)__ ((?:d(?:eux|ouze)|tr(?:ois|eize)|quat(?:re|orze)|cinq|s(?:ix|seize)|sept|huit|neuf|onze|quinze) cents) +({w_2}) @@0,$ <<- morphex(\2, ":[NAQ].*:[pi]", ":(?:G|3p)") ~1>> cent __[i](p_qqch_1000)__ (?:deux|trois|quatre|cinq|six|sept|huit|neuf|cent) (?:cent |)mille <<- ~>> mille __[i](p_det_plur_nombre_nom)__ (?:le(?:ur|)s|des|ses|ces|mes|tes|nos|vos) +((?:quelque +|)(?:d(?:eux|ix|ouze)|tr(?:ois|eize|ente)|qua(?:t(?:re(?:-vingts|)|orze)|rante)|cinq(?:uante|)|s(?:ix|eize|oixante)|sept|huit|neuf|onze|quinze|vingt|cent|mille|\d+)) +({w_2}) @@w,$ <<- morphex(\2, ":[NAQ].*:[pi]", ":(?:G|3p)") ~1>> * __[i](p_une_heure)__ (?:à |d(?:e +|’))une +heure(?: (?:d(?:eu|i)x|tr(?:ois|eize|ente)|qu(?:a(?:t(?:re|orze)|rante)|inze)|cinq(?:uante|)|s(?:ix|ept|eize)|huit|neuf|onze|douze|vingt|décente|(?:très |)tardive)|) <<- ~>> * __[i](p_nombre_heure)__ (?:à|de) (?:d(?:eu|i)x|tr(?:ois|eize)|qu(?:at(?:re|orze)|inze)|cinq|s(?:ix|ept|eize)|huit|neuf|onze|douze|vingt) +heures(?: (?:d(?:eu|i)x|tr(?:ois|eize|ente)|qu(?:a(?:t(?:re|orze)|rante)|inze)|cinq(?:uante|)|s(?:ix|ept|eize)|huit|neuf|onze|douze|vingt)|) <<- ~>> * |
︙ | ︙ | |||
6706 6707 6708 6709 6710 6711 6712 | le ({w_2}) (le plus) ({w_2}) @@3,w,$ <<- morphex(\1, ":[NAQ].*:[me]", ":G") and morph(\3, ":[AQ].*:[me]", False) ~2>> * __[i](p_la_xxx_la_plus_adj)__ la ({w_2}) (la plus) ({w_2}) @@3,w,$ <<- morphex(\1, ":[NAQ].*:[fe]", ":G") and morph(\3, ":[AQ].*:[fe]", False) ~2>> * __[i](p_les_xxx_les_plus_adj)__ (?:[lmts]es|nos|vos|leurs) ({w_2}) (les plus) ({w_2}) @@w,w,$ | | | 6706 6707 6708 6709 6710 6711 6712 6713 6714 6715 6716 6717 6718 6719 6720 | le ({w_2}) (le plus) ({w_2}) @@3,w,$ <<- morphex(\1, ":[NAQ].*:[me]", ":G") and morph(\3, ":[AQ].*:[me]", False) ~2>> * __[i](p_la_xxx_la_plus_adj)__ la ({w_2}) (la plus) ({w_2}) @@3,w,$ <<- morphex(\1, ":[NAQ].*:[fe]", ":G") and morph(\3, ":[AQ].*:[fe]", False) ~2>> * __[i](p_les_xxx_les_plus_adj)__ (?:[lmts]es|nos|vos|leurs) ({w_2}) (les plus) ({w_2}) @@w,w,$ <<- morphex(\1, ":[NAQ].*:[pi]", ":[123][sp]") and morph(\3, ":A.*:[pi]", False) ~2>> * __[i](p_le_plus_le_moins)__ (le (?:plus|moins)) ({w_2}) @@0,$ <<- morph(\2, ":A", ":([me]:[si]|G)") and morph(word(-1), ">(?:avoir|être)/:V", False) ~1>> * __[i](p_bien_sûr)__ bien sûr(?! de) <<- ~>> * __[i](p_bien_mal_fort_adj_adv)__ (bien|mal|(?:fort|super) (?:bien|mal)|fort) +({w_2}) @@0,$ |
︙ | ︙ | |||
7022 7023 7024 7025 7026 7027 7028 | # # //////////////////////////////////////// RÈGLES DE CONTRÔLE //////////////////////////////////////// # | | | | | 7022 7023 7024 7025 7026 7027 7028 7029 7030 7031 7032 7033 7034 7035 7036 7037 7038 7039 7040 7041 7042 7043 7044 7045 7046 7047 7048 7049 7050 7051 7052 7053 | # # //////////////////////////////////////// RÈGLES DE CONTRÔLE //////////////////////////////////////// # !!!! Redondances dans la phrase !! __[i]/redon2(redondances_phrase)__ ({w_4})[ ,].* (\1) @@0,$ <<- not morph(\1, ":(?:G|V0)|>même/", False) -2>> _ # Dans cette phrase, répétition de « \1 » (à gauche). <<- __also__ -1>> _ # Dans cette phrase, répétition de « \1 » (à droite). TEST: __redon2__ Quelle {{imposture}}, c’est d’un ennui, c’est une {{imposture}}. TEST: __redon2__ ils sont là côte à côte. TEST: __redon2__ Tu avances petit à petit, et tu réussis. TEST: __redon2__ De loin en loin, elle passe. TEST: __redon2__ Les mêmes causes produisent/produisant les mêmes effets. (répétition) !! !! !!!! Groupe nominal (1) !! !! !! #### 1 mot ## Usage impropre |
︙ | ︙ | |||
7619 7620 7621 7622 7623 7624 7625 | TEST: ils trouvent ça de plus en plus {{idiots}} ->> idiot !! !! | | | 7619 7620 7621 7622 7623 7624 7625 7626 7627 7628 7629 7630 7631 7632 7633 | TEST: ils trouvent ça de plus en plus {{idiots}} ->> idiot !! !! !!!! Groupe nominal (2) !! !! !! ## Sans article __[i]/gn(gn_2m_accord)__ ^ *({w_2}) +({w_2}) @@*,$ |
︙ | ︙ | |||
7724 7725 7726 7727 7728 7729 7730 | and not apposition(\1, \2) and not morph(word(-1), ":[NAQ]", False, False) -2>> =switchGender(@, False) # Accord de genre erroné entre « \1 » et « \2 ». <<- __also__ and hasFemForm(\1) -1>> =switchGender(@) # Accord de genre erroné avec « \2 ». <<- not re.search("(?i)^air$", \1) and not \2.startswith("seul") and morph(\1, ":[si]") and morph(\2, ":[NAQ].*:p") and not apposition(\1, \2) and not morph(word(-1), ":[NAQ]", False, False) -2>> =suggSing(@) # Accord de nombre erroné avec « \1 » : « \2 » devrait être au singulier. | | | 7724 7725 7726 7727 7728 7729 7730 7731 7732 7733 7734 7735 7736 7737 7738 | and not apposition(\1, \2) and not morph(word(-1), ":[NAQ]", False, False) -2>> =switchGender(@, False) # Accord de genre erroné entre « \1 » et « \2 ». <<- __also__ and hasFemForm(\1) -1>> =switchGender(@) # Accord de genre erroné avec « \2 ». <<- not re.search("(?i)^air$", \1) and not \2.startswith("seul") and morph(\1, ":[si]") and morph(\2, ":[NAQ].*:p") and not apposition(\1, \2) and not morph(word(-1), ":[NAQ]", False, False) -2>> =suggSing(@) # Accord de nombre erroné avec « \1 » : « \2 » devrait être au singulier. TEST: L’{{amande}} {{amer}} TEST: l’{{amicale}} {{animal}} TEST: du chien et de l’{{excellente}} {{collier}} qu’il avait autour du cou. TEST: du chien et de l’{{étonnante}} {{collier}} qu’il avait autour du cou. ## un / une |
︙ | ︙ | |||
7799 7800 7801 7802 7803 7804 7805 | __[i]/gn(gn_2m_le)__ (?<!et |ou )(le) +({w_2}) +({w_2}) @@0,w,$ <<- morph(\1, ":D", False) >>> <<- not \3.startswith("seul") and morphex(\2, ":[NAQ].*:[me]", ":(?:B|G|V0)") and morph(\3, ":[NAQ].*:f") and not apposition(\2, \3) and not before(r"\b(?:et|ou|de) +$") -3>> =suggMasSing(@, True) # Accord de genre erroné : « \2 » est masculin, « \3 » est féminin. | | | | | | | | | 7799 7800 7801 7802 7803 7804 7805 7806 7807 7808 7809 7810 7811 7812 7813 7814 7815 7816 7817 7818 7819 7820 7821 7822 7823 7824 7825 7826 7827 7828 7829 7830 7831 7832 7833 7834 7835 7836 7837 7838 7839 7840 7841 7842 7843 7844 7845 7846 7847 7848 7849 7850 7851 7852 7853 7854 7855 7856 7857 7858 7859 7860 7861 7862 7863 7864 7865 7866 7867 7868 7869 7870 7871 7872 7873 7874 7875 7876 7877 7878 7879 7880 7881 7882 7883 7884 7885 7886 7887 7888 7889 7890 7891 7892 | __[i]/gn(gn_2m_le)__ (?<!et |ou )(le) +({w_2}) +({w_2}) @@0,w,$ <<- morph(\1, ":D", False) >>> <<- not \3.startswith("seul") and morphex(\2, ":[NAQ].*:[me]", ":(?:B|G|V0)") and morph(\3, ":[NAQ].*:f") and not apposition(\2, \3) and not before(r"\b(?:et|ou|de) +$") -3>> =suggMasSing(@, True) # Accord de genre erroné : « \2 » est masculin, « \3 » est féminin. <<- not \3.startswith("seul") and morphex(\2, ":[NAQ].*:[si]", ":G") and morphex(\3, ":[NAQ].*:p", ":[GWsi]") and not apposition(\2, \3) and not before(r"\b(?:et|ou|de) +$") -3>> =suggMasSing(@) # Accord de nombre erroné avec « \2 » : « \3 » devrait être au singulier. __[i]/gn(gn_2m_le_après_et_ou_de)__ (?:et|ou) +(le) +({w_2}) +({w_2}) @@w,w,$ <<- morph(\1, ":D", False) >>> <<- not \3.startswith("seul") and morphex(\2, ":[NAQ].*:[me]", ":(?:B|G|V0|f)") and morph(\3, ":[NAQ].*:f") and not apposition(\2, \3) and not morph(word(-1), ":[NAQ]|>(?:et|ou)/", False, False) -3>> =suggMasSing(@, True) # Accord de genre erroné : « \2 » est masculin, « \3 » est féminin. <<- not \3.startswith("seul") and morphex(\2, ":[NAQ].*:[si]", ":G") and morphex(\3, ":[NAQ].*:p", ":[GWsi]") and not apposition(\2, \3) and not morph(word(-1), ":[NAQ]|>(?:et|ou)/", False, False) -3>> =suggMasSing(@) # Accord de nombre erroné avec « \2 » : « \3 » devrait être au singulier. TEST: le test très {{cons}} qu’on a passé hier. TEST: c’était le chien {{perdue}} des voisins. TEST: viens vite ou le pari {{imperdables}} sera moins facile… __[i]/gn(gn_2m_det_mas_sing)__ (?<!et |ou |de )(?:cet?|quel|au|ledit) +({w_2}) +({w_2}) @@w,$ <<- not \2.startswith("seul") and morphex(\1, ":[NAQ].*:[me]", ":(?:B|G|V0)") and morph(\2, ":[NAQ].*:f") and not apposition(\1, \2) and not before(r"\b(?:et|ou|de) +$") -2>> =suggMasSing(@, True) # Accord de genre erroné : « \1 » est masculin, « \2 » est féminin. <<- not \2.startswith("seul") and morphex(\1, ":[NAQ].*:[si]", ":G") and morphex(\2, ":[NAQ].*:p", ":[GWsi]") and not apposition(\1, \2) and not before(r"\b(?:et|ou|de) +$") -2>> =suggMasSing(@) # Accord de nombre erroné avec « \1 » : « \2 » devrait être au singulier. __[i]/gn(gn_2m_det_mas_sing_après_et_ou_de)__ (?:et|ou|de) +(?:cet?|quel|au|ledit) +({w_2}) +({w_2}) @@w,$ <<- not \2.startswith("seul") and morphex(\1, ":[NAQ].*:[me]", ":(?:B|G|V0|f)") and morph(\2, ":[NAQ].*:f") and not apposition(\1, \2) and not morph(word(-1), ":[NAQ]|>(?:et|ou)/", False, False) -2>> =suggMasSing(@, True) # Accord de genre erroné : « \1 » est masculin, « \2 » est féminin. <<- not \2.startswith("seul") and morphex(\1, ":[NAQ].*:[si]", ":G") and morphex(\2, ":[NAQ].*:p", ":[GWsi]") and not apposition(\1, \2) and not morph(word(-1), ":[NAQ]|>(?:et|ou)/", False, False) -2>> =suggMasSing(@) # Accord de nombre erroné avec « \1 » : « \2 » devrait être au singulier. TEST: cet outil {{terribles}} qu’il a dans les mains TEST: J’aimerais connaître de quel parti {{gauchistes}} on parle. __[i]/gn(gn_2m_mon_ton_son)__ (?<!et |ou |de )[mts]on +({w_2}) +({w_2}) @@w,$ <<- not \2.startswith("seul") and morphex(\1, ":[NAQ].*:m", ":(?:B|G|e|V0|f)") and morph(\2, ":[NAQ].*:f") and not apposition(\1, \2) and not before(r"\b(?:et|ou|de) +$") -2>> =suggMasSing(@, True) # Accord de genre erroné : « \1 » est masculin, « \2 » est féminin. <<- not \2.startswith("seul") and morphex(\1, ":[NAQ].*:[si]", ":G") and morphex(\2, ":[NAQ].*:p", ":[GWsi]") and not apposition(\1, \2) and not before(r"\b(?:et|ou|de) +$") -2>> =suggMasSing(@) # Accord de nombre erroné avec « \1 » : « \2 » devrait être au singulier. __[i]/gn(gn_2m_mon_ton_son_après_et_ou_de)__ (?:et|ou|de) +[mts]on +({w_2}) +({w_2}) @@w,$ <<- not \2.startswith("seul") and morphex(\1, ":[NAQ].*:m", ":(?:B|G|e|V0|f)") and morph(\2, ":[NAQ].*:f") and not apposition(\1, \2) and not morph(word(-1), ":[NAQ]|>(?:et|ou)/", False, False) -2>> =suggMasSing(@, True) # Accord de genre erroné : « \1 » est masculin, « \2 » est féminin. <<- not \2.startswith("seul") and morphex(\1, ":[NAQ].*:[si]", ":G") and morphex(\2, ":[NAQ].*:p", ":[GWsi]") and not apposition(\1, \2) and not morph(word(-1), ":[NAQ]|>(?:et|ou)/", False, False) -2>> =suggMasSing(@) # Accord de nombre erroné avec « \1 » : « \2 » devrait être au singulier. TEST: il brandissait avec fougue son drapeau {{déchirés}} TEST: comment osez-vous médire de mon héritage {{glorieuse}} __[i]/gn(gn_2m_la)__ (?<!et |ou |de )(la) +({w_2}) +({w_2}) @@0,w,$ <<- morph(\1, ":D", False) >>> <<- \2 != "fois" and not \3.startswith("seul") and morphex(\2, ":[NAQ].*:[fe]", ":(?:B|G|V0)") and morph(\3, ":[NAQ].*:m") and not apposition(\2, \3) and not before(r"\b(?:et|ou|de) +$") -3>> =suggFemSing(@, True) # Accord de genre erroné : « \2 » est féminin, « \3 » est masculin. <<- not \3.startswith("seul") and morphex(\2, ":[NAQ].*:[si]", ":G") and morphex(\3, ":[NAQ].*:p", ":[GWsi]") and not apposition(\2, \3) and not before(r"\b(?:et|ou|de) +$") -3>> =suggFemSing(@) # Accord de nombre erroné avec « \2 » : « \3 » devrait être au singulier. __[i]/gn(gn_2m_la_après_et_ou_de)__ (?:et|ou|de) +(la) +({w_2}) +({w_2}) @@w,w,$ <<- morph(\1, ":D", False) >>> <<- \2 != "fois" and not \3.startswith("seul") |
︙ | ︙ | |||
8136 8137 8138 8139 8140 8141 8142 | TEST: Les couleurs rouge, jaune et verte ne doivent pas être utilisées TEST: des passeports américain, canadien, néerlandais, allemand et britannique. !! !! | | | 8136 8137 8138 8139 8140 8141 8142 8143 8144 8145 8146 8147 8148 8149 8150 | TEST: Les couleurs rouge, jaune et verte ne doivent pas être utilisées TEST: des passeports américain, canadien, néerlandais, allemand et britannique. !! !! !!!! Groupe nominal (3) !! !! !! ## nombre __[i]/gn(gn_3m)__ ^ *({w_2}) +({w_2}) +({w_3}) @@*,w,$ |
︙ | ︙ | |||
8190 8191 8192 8193 8194 8195 8196 | TEST: ces petites sottes {{déjantée}} !! !! | | | 8190 8191 8192 8193 8194 8195 8196 8197 8198 8199 8200 8201 8202 8203 8204 | TEST: ces petites sottes {{déjantée}} !! !! !!!! Groupe nominal: Accords avec de / des / du !! !! !! __[i]/gn(gn_devinette1)__ (?:[lmts]a|une|cette) +{w_2} +d(?:e (?:[lmts]a|cette)|’une) +(?!des )({w_2}) +({w_2}) @@w,$ <<- morphex(\2, ":[NAQ].*:(?:m|f:p)", ":(?:G|P|[fe]:[is]|V0|3[sp])") and not apposition(\1, \2) -2>> =suggFemSing(@, True) # Accord erroné : « \2 » devrait être au féminin singulier. |
︙ | ︙ | |||
8252 8253 8254 8255 8256 8257 8258 | TEST: {{de telles sorte}} !! !! | | | 8252 8253 8254 8255 8256 8257 8258 8259 8260 8261 8262 8263 8264 8265 8266 | TEST: {{de telles sorte}} !! !! !!!! Singuliers & Pluriels !! !! !! #### Prépositions # Similaires à prépositions : http://www.synapse-fr.com/manuels/PP_ATTENDU.htm # attendu, compris, non-compris, y compris, entendu, excepté, ôté, ouï, passé, supposé, vu |
︙ | ︙ | |||
8650 8651 8652 8653 8654 8655 8656 | TEST: Son point de {{vus}} prévaudra toujours, faites-vous à cette idée ou dégagez. TEST: de mon point de {{vues}} !! !! | | | 8650 8651 8652 8653 8654 8655 8656 8657 8658 8659 8660 8661 8662 8663 8664 | TEST: Son point de {{vus}} prévaudra toujours, faites-vous à cette idée ou dégagez. TEST: de mon point de {{vues}} !! !! !!!! Confusions !! !! !! # à / a __[i]/conf(conf_suite_à)__ suite (a) ({w1}) @@w,$ <<- morph(\2, ":D|>[ld]/", False) and isStart() -1>> à # Confusion : “a” est une forme conjuguée du verbe “avoir”. Pour la préposition, écrivez “à”. |
︙ | ︙ | |||
8707 8708 8709 8710 8711 8712 8713 | __[i]/conf(conf_âcre)__ acres? <<- morph(word(-1), ">(?:être|go[ûu]t|humeur|odeur|parole|parfum|remarque|reproche|réponse|saveur|senteur|sensation|vin)/", False, False) ->> =\0.replace("a", "â").replace("A", "Â") # Confusion probable : “acre” est une unité de surface agraire. Pour l’adjectif signifiant “irritant”, écrivez :|https://fr.wiktionary.org/wiki/%C3%A2cre | | | 8707 8708 8709 8710 8711 8712 8713 8714 8715 8716 8717 8718 8719 8720 8721 | __[i]/conf(conf_âcre)__ acres? <<- morph(word(-1), ">(?:être|go[ûu]t|humeur|odeur|parole|parfum|remarque|reproche|réponse|saveur|senteur|sensation|vin)/", False, False) ->> =\0.replace("a", "â").replace("A", "Â") # Confusion probable : “acre” est une unité de surface agraire. Pour l’adjectif signifiant “irritant”, écrivez :|https://fr.wiktionary.org/wiki/%C3%A2cre TEST: Il avait ce goût {{acre}} dans la bouche qui ne passait pas. # accro / accroc __[i]/conf(conf_être_accro)__ ({etre}|dev\w+|sembl\w+|par\w+|rend\w+) +(accrocs?) @@0,$ <<- morph(\1, ">(?:être|devenir|para[îi]tre|rendre|sembler)/", False) |
︙ | ︙ | |||
8775 8776 8777 8778 8779 8780 8781 | TEST: Nous avons déconné, nous avons été mis à {{l’amande}}. TEST: Ces gens-là ne feront jamais {{amande honorable}}. # annales / anal-e-s __[i]/conf(conf_annales1)__ (anale?s?) (?:littéraires?|politiques?|ecclésiastiques?|du (?:bac(?:calauréat|)|brevet)|de (?:physique|chimie|mathématiques|biologie|géographie)|d’histoire) @@0 | | | 8775 8776 8777 8778 8779 8780 8781 8782 8783 8784 8785 8786 8787 8788 8789 | TEST: Nous avons déconné, nous avons été mis à {{l’amande}}. TEST: Ces gens-là ne feront jamais {{amande honorable}}. # annales / anal-e-s __[i]/conf(conf_annales1)__ (anale?s?) (?:littéraires?|politiques?|ecclésiastiques?|du (?:bac(?:calauréat|)|brevet)|de (?:physique|chimie|mathématiques|biologie|géographie)|d’histoire) @@0 <<- -1>> annales # Confusion : “\1” est l’adjectif relatif à l’anus.|http://fr.wiktionary.org/wiki/annales __[i]/conf(conf_annales2)__ [lcdmts]es (anale?s?) @@4 <<- -1>> annales # Confusion : “\1” est l’adjectif relatif à l’anus.|http://fr.wiktionary.org/wiki/annales TEST: des {{anales}} littéraires TEST: il a bachoté les {{anales}}. |
︙ | ︙ | |||
9210 9211 9212 9213 9214 9215 9216 | TEST: Les pays ibériques et scandinaves ont signé le traité. TEST: Les gouvernements espagnol et mexicain ont signé le traité. TEST: Béatrice Dalle et Claude __[i]/conf(conf_où_est)__ où (et) +({w_1}) @@w,$ | | | 9210 9211 9212 9213 9214 9215 9216 9217 9218 9219 9220 9221 9222 9223 9224 | TEST: Les pays ibériques et scandinaves ont signé le traité. TEST: Les gouvernements espagnol et mexicain ont signé le traité. TEST: Béatrice Dalle et Claude __[i]/conf(conf_où_est)__ où (et) +({w_1}) @@w,$ <<- morphex(\2, ":D", ":R|>(?:quand|pourquoi)") or (\2 == "l" and after("^’")) -1>> est # Confusion probable : “et” est une conjonction de coordination. Pour le verbe être à la 3ᵉ personne du singulier, écrivez : TEST: où {{et}} cet ennemi ? TEST: où {{et}} l’homme qui est passé ce matin ? TEST: Je veux savoir où et quand, où et pouquoi. TEST: où et avec qui ? |
︙ | ︙ | |||
9253 9254 9255 9256 9257 9258 9259 | TEST: j’ai vu un {{flamand}} rose. # foi / fois __[i]/conf(conf_bonne_mauvaise_foi)__ (mauvaise|bonne) (fois) @@0,$ | | | 9253 9254 9255 9256 9257 9258 9259 9260 9261 9262 9263 9264 9265 9266 9267 | TEST: j’ai vu un {{flamand}} rose. # foi / fois __[i]/conf(conf_bonne_mauvaise_foi)__ (mauvaise|bonne) (fois) @@0,$ <<- not ( \1 == "bonne" and before(r"(?i)\bune +$") and after("(?i)^ +pour toute") ) -2>> foi # Confusion probable.|http://fr.wiktionary.org/wiki/foi __[i]/conf(conf_faire_perdre_donner_foi)__ ((?:f[aieî]|perd|donn|[ae])\w*) (fois) @@0,$ <<- morph(\1, ">(?:faire|perdre|donner|avoir)/", False) -2>> foi # Confusion probable.|http://fr.wiktionary.org/wiki/foi TEST: C’est une personne de bonne {{fois}}. TEST: Mais il a perdu {{fois}} en l’avenir. |
︙ | ︙ | |||
9802 9803 9804 9805 9806 9807 9808 | # <<- not morph(word(-1), ":D", False, False) # ->> quelquefois # # Confusion probable : « quelquefois » est un adverbe qui signifie « parfois » ; ne pas confondre avec les quelques fois qu’il est advenu ou qu’il adviendra quelque chose.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4334 __[i]/conf(conf_quelquefois_quelques_fois)__ qu(?: elles? que fois?|elles? que fois?|elque fois) <<- ->> quelquefois|quelques fois | | | 9802 9803 9804 9805 9806 9807 9808 9809 9810 9811 9812 9813 9814 9815 9816 | # <<- not morph(word(-1), ":D", False, False) # ->> quelquefois # # Confusion probable : « quelquefois » est un adverbe qui signifie « parfois » ; ne pas confondre avec les quelques fois qu’il est advenu ou qu’il adviendra quelque chose.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4334 __[i]/conf(conf_quelquefois_quelques_fois)__ qu(?: elles? que fois?|elles? que fois?|elque fois) <<- ->> quelquefois|quelques fois # Confusion. Utilisez « quelquefois » si vous voulez dire « parfois ». Utilisez « quelques fois » pour évoquer ce qui est advenu ou adviendra plusieurs fois.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4334 TEST: {{Quelles que fois}}, on y comprend plus rien. TEST: {{Qu’elle que fois}}, on y comprend plus rien. TEST: Il y va {{quelque fois}} par an. # quoique / quoi que |
︙ | ︙ | |||
9919 9920 9921 9922 9923 9924 9925 | __[i]/conf(conf_prep_soi)__ (?:chez|don de|sur|avec|pour) (soit) @@$ <<- not after(" soit ") -1>> soi # Confusion probable. __[i]/conf(conf_en_soi)__ (?<!’)en (soit) @@3 <<- morph(word(1), ":[GY]", True, True) and not before("(?i)quel(?:s|les?|) qu $|on $|il $") and not after(" soit ") -1>> soi # Confusion probable. __[i]/conf(conf_quel_que_soit2)__ | | | 9919 9920 9921 9922 9923 9924 9925 9926 9927 9928 9929 9930 9931 9932 9933 | __[i]/conf(conf_prep_soi)__ (?:chez|don de|sur|avec|pour) (soit) @@$ <<- not after(" soit ") -1>> soi # Confusion probable. __[i]/conf(conf_en_soi)__ (?<!’)en (soit) @@3 <<- morph(word(1), ":[GY]", True, True) and not before("(?i)quel(?:s|les?|) qu $|on $|il $") and not after(" soit ") -1>> soi # Confusion probable. __[i]/conf(conf_quel_que_soit2)__ quel(?:le|)s? que (soi(?:es?|)) @@$ <<- -1>> soit|soient # Confusion probable. __[i]/conf(conf_soi_même1)__ (soi[tes]s? mêmes?) @@$ <<- morph(word(-1), ":[YQ]|>(?:avec|contre|par|pour|sur)/", False, True) -1>> soi-même # Confusion probable : moi-même, toi-même, lui-même, elle-même, soi-même, elles-mêmes, eux-mêmes. __[i]/conf(conf_soi_même2)__ soi[tes]s?-mêmes? <<- ->> soi-même # Confusion : moi-même, toi-même, lui-même, elle-même, soi-même, elles-mêmes, eux-mêmes. TEST: chez {{soit}}, c’est presque toujours mieux. |
︙ | ︙ | |||
10076 10077 10078 10079 10080 10081 10082 | # nouveau / nouvel # TODO | | | | 10076 10077 10078 10079 10080 10081 10082 10083 10084 10085 10086 10087 10088 10089 10090 10091 10092 10093 10094 10095 10096 10097 10098 10099 10100 10101 10102 10103 10104 10105 10106 10107 10108 | # nouveau / nouvel # TODO !!!! Mots composés !! __[i]/mc(mc_mot_composé)__ ({w2})-({w2}) @@0,$ <<- not \1.isdigit() and not \2.isdigit() and not morph(\0, ":", False) and not morph(\2, ":G", False) and spell(\1+\2) ->> \1\2 # Vous pouvez ôter le trait d’union. <<- \2 != "là" and not re.search("(?i)^(?:ex|mi|quasi|semi|non|demi|pro|anti|multi|pseudo|proto|extra)$", \1) and not \1.isdigit() and not \2.isdigit() and not morph(\2, ":G", False) and not morph(\0, ":", False) and not spell(\1+\2) ->> _ # Mot inconnu du dictionnaire.|http://www.dicollecte.org/dictionary.php?prj=fr&unknownword=on TEST: __mc__ des {{portes-avions}}. !! !! !!!! Casse: majuscules et minuscules !! !! !! # Les jours __[s]/maj(maj_jours_semaine)__ (?:Lundi|Mardi|Mercredi|Jeudi|Vendredi|Samedi|Dimanche) <<- before(r"[\w,] +$") ->> =\0.lower() |
︙ | ︙ | |||
10264 10265 10266 10267 10268 10269 10270 | !! !! !! !! !! !! !! | | | | 10264 10265 10266 10267 10268 10269 10270 10271 10272 10273 10274 10275 10276 10277 10278 10279 10280 10281 10282 10283 10284 10285 10286 10287 10288 10289 10290 10291 10292 10293 | !! !! !! !! !! !! !! !!! Conjugaisons !! !! !! !! !! !! !! !! !! !! !! !! !! !!!! Infinitif !! !! !! __[i]/infi(infi_à_en)__ à en ({w_2}) @@5 <<- morphex(\1, ":V", ":Y") -1>> =suggVerbInfi(@) # Le verbe devrait être à l’infinitif. |
︙ | ︙ | |||
10424 10425 10426 10427 10428 10429 10430 | -2>> =suggVerbPpas(\2, ":p") # Confusion probable : “\2” est à verbe à l’infinitif. Pour l’adjectif, écrivez : TEST: les documents {{scanner}} ne sont pas lisibles. TEST: tes doutes {{remâcher}} deviennent difficiles à vivre. | | | | 10424 10425 10426 10427 10428 10429 10430 10431 10432 10433 10434 10435 10436 10437 10438 10439 10440 10441 10442 10443 10444 10445 10446 10447 10448 10449 | -2>> =suggVerbPpas(\2, ":p") # Confusion probable : “\2” est à verbe à l’infinitif. Pour l’adjectif, écrivez : TEST: les documents {{scanner}} ne sont pas lisibles. TEST: tes doutes {{remâcher}} deviennent difficiles à vivre. !!!! Participes présents !! __[i]/conj(conj_participe_présent)__ (?:ne|lui|me|te|se|nous|vous) ({w_2}ants) @@$ <<- morph(\1, ":A", False) -1>> =\1[:-1] # Un participe présent est invariable.|http://fr.wiktionary.org/wiki/participe_pr%C3%A9sent TEST: nous {{épuisants}} à la tâche pour des clopinettes, nous défaillîmes. !!! !!! !!! Processeur: simplification des substantifs !! !!! !!! ### @ : we remove @ we introduced after le/la/les in some cases __<s>(p_arobase)__ @ <<- ~>> * ### Avant les verbes (ôter seulement les COI!) |
︙ | ︙ | |||
10561 10562 10563 10564 10565 10566 10567 | TEST: Je me doute bien que vous avez trouvé la réponse. TEST: Nous nous doutons bien qu’il y a une entourloupe derrière cette affaire. TEST: Notre but n’était pas de devenir célèbres. TEST: sans qu’on ait à le lui ordonner | | | 10561 10562 10563 10564 10565 10566 10567 10568 10569 10570 10571 10572 10573 10574 10575 | TEST: Je me doute bien que vous avez trouvé la réponse. TEST: Nous nous doutons bien qu’il y a une entourloupe derrière cette affaire. TEST: Notre but n’était pas de devenir célèbres. TEST: sans qu’on ait à le lui ordonner !!!! OCR !! # Participes passés __[i]/ocr(ocr_être_participes_passés)__ ({etre}) +({w_2}es?) @@0,$ <<- morph(\1, ":V0e", False) >>> <<- \2.endswith("e") and morphex(\2, ":V1.*:Ip.*:[13]s", ":(?:[GM]|A)") and not before(r"(?i)\belle +(?:ne +|n’|)$") -2>> =suggVerbPpas(\2, ":m:s") # Erreur de numérisation ? |
︙ | ︙ | |||
10599 10600 10601 10602 10603 10604 10605 | TEST: __ocr__ elle avait envie de s’en sortir enfin. TEST: __ocr__ la longueur de la circonférence étant égale à… # TEST: __ocr__ vous êtes {{presses}} de monter à bord de ce train-ci. # Fonctionne avec nous serons, mais pas nous sommes (bug de JavaScript?) | | | 10599 10600 10601 10602 10603 10604 10605 10606 10607 10608 10609 10610 10611 10612 10613 | TEST: __ocr__ elle avait envie de s’en sortir enfin. TEST: __ocr__ la longueur de la circonférence étant égale à… # TEST: __ocr__ vous êtes {{presses}} de monter à bord de ce train-ci. # Fonctionne avec nous serons, mais pas nous sommes (bug de JavaScript?) !!!! Confusions !! ## guerre / guère __[i]/conf(conf_ne_pronom_pronom_verbe_guère)__ ne (?:[mts]e|la|les?|[nv]ous|lui|leur) (?:la |les? |lui |leur |l’|)\w{w_2} (?:plus |)(guerre) @@$ <<- -1>> guère # Confusion. La guerre est conflit. Pour l’adverbe signifiant “peu”, écrivez : TEST: tout ceci ne me rapporte {{guerre}} |
︙ | ︙ | |||
10660 10661 10662 10663 10664 10665 10666 | ({aller}) +de (soi[tes]) @@0,$ <<- morph(\1, ">aller/", False) and not after(" soit ") -2>> soi # Confusion.|https://fr.wiktionary.org/wiki/aller_de_soi TEST: cela ne va pas de {{soit}}. | | | 10660 10661 10662 10663 10664 10665 10666 10667 10668 10669 10670 10671 10672 10673 10674 | ({aller}) +de (soi[tes]) @@0,$ <<- morph(\1, ">aller/", False) and not after(" soit ") -2>> soi # Confusion.|https://fr.wiktionary.org/wiki/aller_de_soi TEST: cela ne va pas de {{soit}}. !!!! Adverbes après verbe !! # fort __[i]/sgpl(sgpl_verbe_fort)__ ({w_2}) +(forts) @@0,$ <<- morphex(\1, ":V", ":[AN].*:[me]:[pi]|>(?:être|sembler|devenir|re(?:ster|devenir)|para[îi]tre|appara[îi]tre)/.*:(?:[123]p|P|Q)|>(?:affirmer|trouver|croire|désirer|estime|préférer|penser|imaginer|voir|vouloir|aimer|adorer|souhaiter)/") and not morph(word(1), ":A.*:[me]:[pi]", False) -2>> fort # Confusion probable. S’il s’agit ici de l’adverbe “fort” (équivalent de “fortement”), écrivez-le au singulier. |
︙ | ︙ | |||
10694 10695 10696 10697 10698 10699 10700 | TEST: Il a de grands biens. TEST: Ce sont des biens de peu de valeur. !! !! | | | 10694 10695 10696 10697 10698 10699 10700 10701 10702 10703 10704 10705 10706 10707 10708 | TEST: Il a de grands biens. TEST: Ce sont des biens de peu de valeur. !! !! !!!! Infinitif !! !! !! __[i]/infi(infi_d_en_y)__ d’(?:en|y) +({w_2}) @@$ <<- morphex(\1, ":V", ":Y") -1>> =suggVerbInfi(@) # Le verbe devrait être à l’infinitif. |
︙ | ︙ | |||
10807 10808 10809 10810 10811 10812 10813 | TEST: lui {{mangée}} beaucoup. !! !! | | | 10807 10808 10809 10810 10811 10812 10813 10814 10815 10816 10817 10818 10819 10820 10821 | TEST: lui {{mangée}} beaucoup. !! !! !!!! Usage pronominal avec “avoir” au lieu d’“être” !! !! !! __[i]/conj(conj_se_conf_être_avoir)__ (s’)(?:en +|y+ |)({avoir}) @@0,$ <<- morph(\2, ">avoir/", False) >>> <<- morph(\2, ":3p", False) -2>> sont|étaient|seront|seraient # Confusion. Sous sa forme pronominale, un verbe s’emploie avec l’auxilaire “être”, non “avoir”. |
︙ | ︙ | |||
10849 10850 10851 10852 10853 10854 10855 | TEST: {{nous}} nous {{avons}} donné le temps TEST: {{vous}} vous {{avez}} perdu toute notion de décence. !! !! | | | 10849 10850 10851 10852 10853 10854 10855 10856 10857 10858 10859 10860 10861 10862 10863 | TEST: {{nous}} nous {{avons}} donné le temps TEST: {{vous}} vous {{avez}} perdu toute notion de décence. !! !! !!!! Participes passés: se +être +verbe !! !! !! __[i]/ppas(ppas_je_me_être_verbe)__ je +(?:ne +|)m(?:e +|’(?:y +|))(?:s[uo]i[st]|étai[st]|fu(?:sses?|s|t)|serai[st]?) +({w_3}) @@$ <<- morphex(\1, ":Q.*:p", ":(?:G|Q.*:[si])") and ( morph(\1, ":V[123]_.__p_e_") or (isRealEnd() and not before(r"\b[qQ]ue? +$")) ) -1>> =suggVerbPpas(\1, ":m:s") # Si ce participe passé se rapporte bien à “je”, il devrait être au singulier. |
︙ | ︙ | |||
10942 10943 10944 10945 10946 10947 10948 | TEST: des soins que je m’étais donnés. TEST: Si t’es pas contente, t’achètes pas. !! !! | | | 10942 10943 10944 10945 10946 10947 10948 10949 10950 10951 10952 10953 10954 10955 10956 | TEST: des soins que je m’étais donnés. TEST: Si t’es pas contente, t’achètes pas. !! !! !!!! Participes passés: se +laisser +adjectif !! !! !! __[i]/ppas(ppas_me_te_laisser_adj)__ ([mt]e|l[ae]) +(laiss\w*) +({w_3}) @@0,w,$ <<- morph(\2, ">laisser/", False) and morphex(\3, ":[AQ].*:p", ":(?:[YG]|[AQ].*:[is])") -3>> =suggSing(@) # Accord avec « \1 » : « \3 » devrait être au singulier. |
︙ | ︙ | |||
11138 11139 11140 11141 11142 11143 11144 | __[i]/ppas(ppas_avoir_été)__ (({avoir}) +été) +({w_2}) @@0,0,$ <<- morph(\2, ":V0a", False) >>> <<- morphex(\3, ":[123]s", ":[GNAQWY]") -3>> =suggVerbPpas(@) # Après « avoir été », il faut un participe passé. <<- not before("[çcCÇ]’$|[cC]e n’$|[çÇ]a (?:n’|)$") and not before("(?i)^ *ne pas ") and not morph(word(-1), ":Y", False) >>> <<- morphex(\3, ":Y", ":A") -1>> _ # Tournure familière. Utilisez « être allé » plutôt que « avoir été ». <<- morphex(\3, ":V1..t.*:Y", ":A") -3>> =suggVerbPpas(@) # Incohérence. Après « avoir été », il faut un participe passé (à moins que « avoir été » signifie ici « être allé »). | | | 11138 11139 11140 11141 11142 11143 11144 11145 11146 11147 11148 11149 11150 11151 11152 | __[i]/ppas(ppas_avoir_été)__ (({avoir}) +été) +({w_2}) @@0,0,$ <<- morph(\2, ":V0a", False) >>> <<- morphex(\3, ":[123]s", ":[GNAQWY]") -3>> =suggVerbPpas(@) # Après « avoir été », il faut un participe passé. <<- not before("[çcCÇ]’$|[cC]e n’$|[çÇ]a (?:n’|)$") and not before("(?i)^ *ne pas ") and not morph(word(-1), ":Y", False) >>> <<- morphex(\3, ":Y", ":A") -1>> _ # Tournure familière. Utilisez « être allé » plutôt que « avoir été ». <<- morphex(\3, ":V1..t.*:Y", ":A") -3>> =suggVerbPpas(@) # Incohérence. Après « avoir été », il faut un participe passé (à moins que « avoir été » signifie ici « être allé »). TEST: j’ai été {{instruis}} par elle TEST: avoir été {{prit}} par surprise TEST: Ils {{ont été}} {{réaliser}} à partir d’éléments naturels. TEST: J’{{ai été}} camper dans les Alpes. TEST: Tu {{as été}} prendre du bois. TEST: J’{{ai été}} {{chercher}} du pain. TEST: Mon grand-père aurait été fier. |
︙ | ︙ | |||
11267 11268 11269 11270 11271 11272 11273 | TEST: elles doivent être {{fâché}} TEST: elles doivent avoir été {{attaqué}} TEST: elles peuvent avoir été {{trompé}} TEST: elles souhaitent être plus {{considérée}} | | | | 11267 11268 11269 11270 11271 11272 11273 11274 11275 11276 11277 11278 11279 11280 11281 11282 11283 11284 11285 11286 11287 11288 11289 11290 11291 11292 11293 11294 11295 | TEST: elles doivent être {{fâché}} TEST: elles doivent avoir été {{attaqué}} TEST: elles peuvent avoir été {{trompé}} TEST: elles souhaitent être plus {{considérée}} !!!! Participes passés: accord en nombre avec la conjugaison de « être » !! ## Contrôle de l’ __[i]/ppas(ppas_être_accord_singulier)__ ({w_2}) +(?:qui +|)(?:ne +|n’|)(?:est|était|f[uû]t|sera(?:it|)|a(?:vait|ura|urait|it|) +été|e[uû]t +été) +({w_2}) @@0,$ <<- morphex(\2, ":[NAQ].*:p", ":[GMWYsi]") and not morph(\1, ":G", False) -2>> =suggSing(@) # Accord avec « être » : « \2 » devrait être au singulier. __[i]/ppas(ppas_être_accord_pluriel)__ ({w_2}) +(?:qui +|)(?:ne +|n’|)(?:sont|étaient|fu(?:r|ss)ent|ser(?:ont|aient)|soient|ont +été|a(?:vaient|uront|uraient|ient) +été|eu(?:r|ss)ent +été) +({w_2}) @@0,$ <<- not re.search("(?i)^légion$", \2) and morphex(\2, ":[NAQ].*:s", ":[GWYpi]") and not morph(\1, ":G", False) -2>> =suggPlur(@) # Accord avec « être » : « \2 » devrait être au pluriel. !!!! Participes passés: accord en genre avec le substantif précédent !! __[i]/ppas(ppas_sujet_être_accord_genre)__ (?<![dD]’)(une? |les? |la |l’|ce(?:s|t|tte|) |[mts](?:on|a|es) |[nv]os |leurs? ) *({w_2}) +(?:qui +|)(?:ne +|n’|)(?:est|étai(?:en|)t|f[uû]t|sera(?:i(?:en|)t|)|soi(?:en|)t|s(?:er|)ont|fu(?:r|ss)ent) +({w_2}) @@0,w,$ <<- not re.search("(?i)^légion$", \3) and ((morphex(\3, ":[AQ].*:f", ":[GWme]") and morphex(\2, ":m", ":[Gfe]")) or (morphex(\3, ":[AQ].*:m", ":[GWfe]") and morphex(\2, ":f", ":[Gme]"))) and not ( morph(\3, ":p", False) and morph(\2, ":s", False) ) and not morph(word(-1), ":(?:R|P|Q|Y|[123][sp])", False, False) and not before(r"\b(?:et|ou|de) +$") |
︙ | ︙ | |||
11322 11323 11324 11325 11326 11327 11328 | TEST: Martine n’est pas {{marié}}. TEST: Martine est très {{intelligent}}. TEST: Martine n’est pas très {{intelligent}}. TEST: Pierre est {{dominée}} par son adversaire. | | | 11322 11323 11324 11325 11326 11327 11328 11329 11330 11331 11332 11333 11334 11335 11336 | TEST: Martine n’est pas {{marié}}. TEST: Martine est très {{intelligent}}. TEST: Martine n’est pas très {{intelligent}}. TEST: Pierre est {{dominée}} par son adversaire. !!!! Accords avec l’adjectif précédant le pronom !! __[i]/ppas(ppas_adj_accord_je_tu)__ ^ *({w_2}s),? (je?|tu) @@*,$ <<- morphex(\1, ":A.*:p", ":(?:G|E|M1|W|s|i)") -1>> =suggSing(@) # Si cet adjectif se réfère au pronom « \2 », l’adjectif devrait être au singulier (et accordé en genre). TEST: {{Découragés}}, je suis parti. |
︙ | ︙ | |||
11382 11383 11384 11385 11386 11387 11388 | TEST: Elles se sont {{rendues}} compte TEST: La puissance publique s’en est-elle rendu compte ? !! !! | | | 11382 11383 11384 11385 11386 11387 11388 11389 11390 11391 11392 11393 11394 11395 11396 | TEST: Elles se sont {{rendues}} compte TEST: La puissance publique s’en est-elle rendu compte ? !! !! !!!! Inversion verbe/sujet !! !! !! __[i]/ppas(ppas_inversion_être_je)__ (?:s[ou]is|étais|fus(?:sé|)|serais?)-je +({w_2}) @@$ <<- morphex(\1, ":(?:[123][sp]|Y|[NAQ].*:p)", ":[GWsi]") -1>> =suggSing(@) # Accord avec le sujet « je » : « \1 » devrait être au singulier. __[i]/ppas(ppas_inversion_être_tu)__ |
︙ | ︙ | |||
11438 11439 11440 11441 11442 11443 11444 | TEST: Ne sommes-nous pas {{aveugle}} TEST: Que se sont-ils dit ? TEST: Est-il question de ceci ou de cela ? TEST: Est-ce former de futurs travailleurs ou bien des citoyens | | | | 11438 11439 11440 11441 11442 11443 11444 11445 11446 11447 11448 11449 11450 11451 11452 11453 11454 11455 11456 11457 11458 11459 11460 11461 11462 11463 11464 11465 11466 | TEST: Ne sommes-nous pas {{aveugle}} TEST: Que se sont-ils dit ? TEST: Est-il question de ceci ou de cela ? TEST: Est-ce former de futurs travailleurs ou bien des citoyens ## Accord et incohérences __[i]/ppas(ppas_sont)__ sont ({w_2}) @@5 <<- morphex(\1, ":[NAQ]", ":[QWGBMpi]") and not re.search("(?i)^(?:légion|nombre|cause)$", \1) and not before(r"(?i)\bce que?\b") -1>> =suggPlur(@) # Incohérence : « \1 » est au singulier. Ou vous confondez « sont » et « son », ou l’accord en nombre est incorrect. <<- __else__ and morphex(\1, ":V", ":(?:N|A|Q|W|G|3p)") and not before(r"(?i)\bce que?\b") -1>> =suggVerbPpas(\1, ":m:p") # Incohérence : « \1 » n’est pas un participe passé. TEST: après avoir mis à jour sont {{profile}}. !! !! !!!! Se croire/considérer/montrer/penser/révéler/savoir/sentir/voir/vouloir + participe passé/adj !! !! !! __[i]/ppas(ppas_je_me_verbe)__ je +(?:ne +|)me +((?:s[eauû]|montr|pens|rév|v[oiîe])\w+) +({w_2}) @@w,$ <<- morph(\1, ">(?:montrer|penser|révéler|savoir|sentir|voir|vouloir)/", False) and morphex(\2, ":[NAQ].*:p", ":[GWYsi]") -2>> =suggSing(@) # Accord avec le sujet « je » : « \2 » devrait être au singulier. |
︙ | ︙ | |||
11596 11597 11598 11599 11600 11601 11602 | TEST: mais les considérer uniquement ainsi fait perdre la signification politique de leur geste. TEST: nous considérer ainsi fait le lit de la haine… !! !! | | | 11596 11597 11598 11599 11600 11601 11602 11603 11604 11605 11606 11607 11608 11609 11610 | TEST: mais les considérer uniquement ainsi fait perdre la signification politique de leur geste. TEST: nous considérer ainsi fait le lit de la haine… !! !! !!!! Avoir + participes passés !! !! !! #__[i]/conj__ fait(s|e|es) ({w1}) <<- morph(\2, ":V") and not morph(\2, ":Y") # ->> fait \1 # Le participe passé de faire reste au masculin singulier s’il est suivi par un verbe à l’infinitif. __[i](p_les_avoir_fait_vinfi)__ |
︙ | ︙ | |||
11749 11750 11751 11752 11753 11754 11755 | TEST: c’est vous qui m’avez {{convertit}}. TEST: parce que t’as envie que je le fasse !! !! | | | 11749 11750 11751 11752 11753 11754 11755 11756 11757 11758 11759 11760 11761 11762 11763 | TEST: c’est vous qui m’avez {{convertit}}. TEST: parce que t’as envie que je le fasse !! !! !!!! COD précédant que !! !! !! __[i]/ppas(ppas_det_plur_COD_que_avoir)__ ([ldmtsc]es) +({w_2}) +que? +(?:j’|tu |ils? |[nv]ous |elles? |on ) *(?:ne +|n’|)({avoir}) +({w_2}[éiust]e?)(?! [mts]’) @@0,w,w,$ <<- morph(\3, ":V0a", False) and not ((re.search("^(?:décidé|essayé|tenté|oublié)$", \4) and after(" +d(?:e |’)")) or (re.search("^réussi$", \4) and after(" +à"))) |
︙ | ︙ | |||
11822 11823 11824 11825 11826 11827 11828 | <<- __also__ and \1 == "a" and \2.endswith("r") and not before(r"(?i)\b(?:[mtn]’|il +|on +|elle +)$") -1>> à # Confusion probable : “a” est une conjugaison du verbe avoir. Pour la préposition, écrivez : TEST: Avoir {{marcher}} toute la journée m’a épuisée. | | | 11822 11823 11824 11825 11826 11827 11828 11829 11830 11831 11832 11833 11834 11835 11836 | <<- __also__ and \1 == "a" and \2.endswith("r") and not before(r"(?i)\b(?:[mtn]’|il +|on +|elle +)$") -1>> à # Confusion probable : “a” est une conjugaison du verbe avoir. Pour la préposition, écrivez : TEST: Avoir {{marcher}} toute la journée m’a épuisée. !!!! du / dû !! __[i]/ppas(ppas_avoir_dû_vinfi)__ ({avoir}) +(due?s?) +(?:[mts]’|)({w_2}) @@0,w,$ <<- morph(\1, ":V0a", False) and (morph(\3, ":Y") or re.search("^(?:[mtsn]e|[nv]ous|leur|lui)$", \3)) -2>> dû # Participe passé de devoir : « dû ». __[i]/ppas(ppas_avoir_pronom_du_vinfi)__ |
︙ | ︙ | |||
11866 11867 11868 11869 11870 11871 11872 | TEST: Ont-ils {{signer}} le contrat ? TEST: Ai-je déjà {{signez}} le contrat ? TEST: A-t-il déjà {{signer}} le contrat ? !! !! | | | | 11866 11867 11868 11869 11870 11871 11872 11873 11874 11875 11876 11877 11878 11879 11880 11881 11882 11883 11884 11885 11886 11887 11888 11889 11890 11891 11892 11893 11894 11895 11896 11897 11898 11899 11900 | TEST: Ont-ils {{signer}} le contrat ? TEST: Ai-je déjà {{signez}} le contrat ? TEST: A-t-il déjà {{signer}} le contrat ? !! !! !!!! Participes passés avec formes interrogatives !! !! !! __[i]/ppas(ppas_avoir_pronom1)__ (?<![ltm]’)({avoir})[- ](?:je|tu|ils?|elles?|t-(?:ils?|elles?|on)|on) +({w2}) @@0,$ <<- morph(\1, ":V0a", False) and morphex(\2, ":(?:Y|2p|Q.*:[fp])", ":m:[si]") and \2 != "prise" and not morph(word(-1), ">(?:les|[nv]ous|en)|:[NAQ].*:[fp]", False) and not before(r"(?i)\b(?:quel(?:le|)s?|combien) ") -2>> =suggMasSing(@) # Avec « avoir », il faut un participe passé au masculin singulier. __[i]/ppas(ppas_avoir_pronom2)__ (?<![ltm]’)({avoir})-(?:[nv]ous) +({w2}) @@0,$ <<- morph(\1, ":V0a", False) and morphex(\2, ":(?:Y|2p|Q.*:[fp])", ":m:[si]") and \2 != "prise" and not morph(word(-1), ">(?:les|[nv]ous|en)|:[NAQ].*:[fp]", False) and not before(r"(?i)\b(?:quel(?:le|)s?|combien) ") -2>> =suggMasSing(@) # Avec « avoir », il faut un participe passé au masculin singulier. __[i]/ppas(ppas_l_m_t_avoir_pronom)__ ([ltm]’)({avoir})[- ](?:je|tu|ils?|elles?|t-(?:ils?|elles?|on)|[nv]ous|on) +({w2}s) @@0,2,$ <<- morph(\2, ":V0a", False) and morphex(\3, ":(?:Y|2p|Q.*:p)", ":[si]") -3>> =suggMasSing(@) # Accord avec le COD « \1 » : e participe passé « \2 » devrait être au singulier (et accordé en genre). __[i]/ppas(ppas_les_avoir_pronom)__ les +({avoir})-(?:je|tu|ils?|elles?|t-(?:ils?|elles?|on)|[nv]ous|on) +({w_1}(?:[éiut]e?|is|se)) @@w,$ <<- morph(\1, ":V0a", False) and morphex(\2, ":V[123]..t.*:Q.*:s", ":[GWpi]") -2>> =suggPlur(@) |
︙ | ︙ | |||
11933 11934 11935 11936 11937 11938 11939 | __[i]/conj(conj_vous_verbe2)__ vous [nm](?:e +(?:les? |l’|la |[nv]ous |)|’)({w_3}) @@$ <<- morphex(\1, ":V", ":2p") and isStart() -1>> =suggVerb(@, ":2p") # Conjugaison erronée. Accord avec « vous ». Le verbe devrait être à la 2ᵉ personne du pluriel. TEST: vous ne l’{{avait}} pas vu. | | | | | 11933 11934 11935 11936 11937 11938 11939 11940 11941 11942 11943 11944 11945 11946 11947 11948 11949 11950 11951 11952 11953 11954 11955 11956 11957 11958 11959 11960 11961 11962 11963 11964 11965 11966 11967 11968 11969 11970 11971 11972 11973 11974 11975 11976 11977 11978 | __[i]/conj(conj_vous_verbe2)__ vous [nm](?:e +(?:les? |l’|la |[nv]ous |)|’)({w_3}) @@$ <<- morphex(\1, ":V", ":2p") and isStart() -1>> =suggVerb(@, ":2p") # Conjugaison erronée. Accord avec « vous ». Le verbe devrait être à la 2ᵉ personne du pluriel. TEST: vous ne l’{{avait}} pas vu. TEST: je crois, vous m’{{avais}} trompé… ## se + incohérence __[i]/conj(conj_se_incohérence)__ s(?:e +(?:les? +|la +|)|’(?:en +|y +|))({w_2}(?:e[zs]|ons|is|us)) @@$ <<- morphex(\1, ":2s", ":3[sp]") -1>> =suggVerb(@, ":3s") # Incohérence. Avec le pronom “se”, le verbe ne peut être à la deuxième personne du pluriel. <<- __else__ and morphex(\1, ":1p", ":3[sp]") -1>> =suggVerb(@, ":3p") # Incohérence. Avec le pronom “se”, le verbe ne peut être à la deuxième personne du pluriel. <<- __else__ and morphex(\1, ":2p", ":3[sp]") -1>> =suggVerbInfi(@) # Incohérence. Avec le pronom “se”, le verbe ne peut être à la deuxième personne du pluriel. TEST: se {{considérez}} comme un génie… TEST: se {{rencontrerons}} demain grands et petits. TEST: se {{crois}} élu par Dieu… TEST: avec ceux se trouvant sur leur chemin !!!! Confusions ou/où !! __[i]/conf(conf_det_nom_où_pronom)__ ^ *(?:l(?:es? +|a +|’)|[nv]o(?:s|tre) +|ce(?:t|tte|s|) +|[mts](?:es|on|a) +|des +)({w_2}) +(ou) +(?:je|tu|ils?|elles? +> +\w+|[nv]ous +> +\w+) @@w,w <<- morphex(\1, ":[NAQ]", ":G") -2>> où # Confusion probable. Pour évoquer un lieu ou un moment, écrivez :|http://fr.wiktionary.org/wiki/o%C3%B9 TEST: L’hôtel {{ou}} ils sont allés l’été dernier. !!! !!! !!! Processeur avant impératif !! !!! !!! __<i>(p_n_importe_qui_quoi)__ n(’)importe quo?i @@1 <<- ~1>> ` __<i](p_premier_ne_pro_per_obj1)__ |
︙ | ︙ | |||
12009 12010 12011 12012 12013 12014 12015 | TEST: Ne manquer de rien. TEST: Ne jamais miser sur ces tocards. TEST: Ne m’en rien laisser. !! !! | | | 12009 12010 12011 12012 12013 12014 12015 12016 12017 12018 12019 12020 12021 12022 12023 | TEST: Ne manquer de rien. TEST: Ne jamais miser sur ces tocards. TEST: Ne m’en rien laisser. !! !! !!!! Impératif ! !! !! !! # Confusions __[i]/imp(imp_confusion_2e_pers_pluriel)__ ({w_2}(?:er|ai[st]|ée?s?)) (moi|l(?:es?|a|eur|ui)|nous|vous) @@0,$ <<- morph(\1, ":V", False) and isStart() >>> |
︙ | ︙ | |||
12142 12143 12144 12145 12146 12147 12148 | TEST: {{Vas}} au diable ! TEST: {{Écartes}} de moi cette coupe. TEST: explique-{{leurs}} de quoi il est question. !! !! | | | 12142 12143 12144 12145 12146 12147 12148 12149 12150 12151 12152 12153 12154 12155 12156 | TEST: {{Vas}} au diable ! TEST: {{Écartes}} de moi cette coupe. TEST: explique-{{leurs}} de quoi il est question. !! !! !!!! Impératif: traits d’union manquants !! !! !! __[i]/imp(imp_union_moi_toi)__ (?<!’)({w_2}) ([mt]oi)(?! même) @@0,$ <<- morphex(\1, ":E", ":[GM]") ->> \1-\2 |
︙ | ︙ | |||
12263 12264 12265 12266 12267 12268 12269 | TEST: {{vas y}}, ce n’est pas dangereux TEST: {{convenez en}}, c’est une belle affaire malgré son prix élevé !!! !!! | | | 12263 12264 12265 12266 12267 12268 12269 12270 12271 12272 12273 12274 12275 12276 12277 | TEST: {{vas y}}, ce n’est pas dangereux TEST: {{convenez en}}, c’est une belle affaire malgré son prix élevé !!! !!! !!! Processeur: destruction des pronoms qui précèdent un verbe et de l’adverbe de négation “ne”. !! !!! !!! # Brainfuck (ici, prudence !) __[i](p_pro_per_obj01)__ (ne +(?:l(?:ui|eur|a|es?)|[mts]e|[nv]ous) +(?:l(?:a|es?|ui|eur)|en|y)) +({w_1}) @@0,$ <<- morph(\2, ":(?:[123][sp]|P|Y)", False) =>> select(\2, ":(?:[123][sp]|P|Y)") |
︙ | ︙ | |||
12411 12412 12413 12414 12415 12416 12417 | <<- __also__ ~1>> * # Fin du Brainfuck !! !! | | | 12411 12412 12413 12414 12415 12416 12417 12418 12419 12420 12421 12422 12423 12424 12425 | <<- __also__ ~1>> * # Fin du Brainfuck !! !! !!!! Confusions !! !! !! #### CONFUSION a / à __[i]/conf(conf_pronom_verbe_à)__ ^ *(?:je|tu|ils?|on|elles?) +({w_2}) +(a) @@w,$ <<- morph(\1, ":V", False) and \2 != "A" |
︙ | ︙ | |||
12454 12455 12456 12457 12458 12459 12460 | TEST: La révolution est crainte. TEST: Je n’en ai cure. TEST: Notre communauté vous est redevable. TEST: l’humour est affaire de culture TEST: Aller chercher l’air pur à la campagne est peine perdue. | | | 12454 12455 12456 12457 12458 12459 12460 12461 12462 12463 12464 12465 12466 12467 12468 | TEST: La révolution est crainte. TEST: Je n’en ai cure. TEST: Notre communauté vous est redevable. TEST: l’humour est affaire de culture TEST: Aller chercher l’air pur à la campagne est peine perdue. #### CONFUSION veillez/veuillez __[i]/conf(conf_veillez2)__ (veuillez) +à +(ne|{infi}) @@0,$ <<- isStart() and morph(\2, ":Y|>ne/", False) -1>> veillez # Confusion probable : “veuillez” est une forme conjuguée du verbe “vouloir”.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=1939 TEST: {{Veuillez}} à ne pas tomber dans ce piège. TEST: Et {{veuillez}} surtout à ouvrir grand les yeux. |
︙ | ︙ | |||
12487 12488 12489 12490 12491 12492 12493 | TEST: Veillez à éviter de faire des fautes. TEST: Veillez votre mari qui est malade. !! !! | | | 12487 12488 12489 12490 12491 12492 12493 12494 12495 12496 12497 12498 12499 12500 12501 | TEST: Veillez à éviter de faire des fautes. TEST: Veillez votre mari qui est malade. !! !! !!!! Infinitif !! !! !! __[i]/infi(infi_comment_où)__ (?:comment|où) +({w_2}(?:ée?s?|ez)) @@$ <<- morphex(\1, ":V", ":M") and not (\1.endswith("ez") and after(" +vous")) -1>> =suggVerbInfi(@) # Le verbe devrait être à l’infinitif. |
︙ | ︙ | |||
12591 12592 12593 12594 12595 12596 12597 | TEST: ils sont {{tromper}} par tous ces hypocrites. TEST: Jeûner n’est pas seulement cesser de manger. TEST: Ne pas aimer n’est pas oublier l’autre. !! !! | | | 12591 12592 12593 12594 12595 12596 12597 12598 12599 12600 12601 12602 12603 12604 12605 | TEST: ils sont {{tromper}} par tous ces hypocrites. TEST: Jeûner n’est pas seulement cesser de manger. TEST: Ne pas aimer n’est pas oublier l’autre. !! !! !!!! Conjugaison !! !! !! ## 1sg __[i]/conj(conj_j)__ j’({w_1}) @@2 <<- morphex(\1, ":V", ":1s|>(?:en|y)/") >>> |
︙ | ︙ | |||
12843 12844 12845 12846 12847 12848 12849 | TEST: un des hommes qui vient. TEST: une des dames qui se sentent mal à l’aise dans cet avion est venue nous trouver. TEST: l’un des chants les plus diffusés pendant la Révolution culturelle __[i]/conj(conj_infi)__ ^ *({infi}) +({w_2}) @@*,$ | | | 12843 12844 12845 12846 12847 12848 12849 12850 12851 12852 12853 12854 12855 12856 12857 | TEST: un des hommes qui vient. TEST: une des dames qui se sentent mal à l’aise dans cet avion est venue nous trouver. TEST: l’un des chants les plus diffusés pendant la Révolution culturelle __[i]/conj(conj_infi)__ ^ *({infi}) +({w_2}) @@*,$ <<- morph(\1, ":Y", False) and morph(\2, ":V.[a-z_!?]+(?!.*:(?:3s|P|Q|Y|3p!))") -2>> =suggVerb(@, ":3s") # Conjugaison erronée. Accord avec « \1… ». Le verbe devrait être à la 3ᵉ personne du singulier. TEST: manger {{fais}} grossir. TEST: boire immodérément {{nuis}} à la santé __[i]/conj(conj_det_sing_nom)__ |
︙ | ︙ | |||
13143 13144 13145 13146 13147 13148 13149 | -2>> =suggVerb(@, ":3p") # Conjugaison erronée. Accord avec « des \1… ». Le verbe devrait être à la 3ᵉ personne du pluriel. TEST: Des hommes {{arrive}}. TEST: Des femmes ne {{demande}} rien. TEST: des femmes qui {{conduise}} la marche du monde. | | | 13143 13144 13145 13146 13147 13148 13149 13150 13151 13152 13153 13154 13155 13156 13157 | -2>> =suggVerb(@, ":3p") # Conjugaison erronée. Accord avec « des \1… ». Le verbe devrait être à la 3ᵉ personne du pluriel. TEST: Des hommes {{arrive}}. TEST: Des femmes ne {{demande}} rien. TEST: des femmes qui {{conduise}} la marche du monde. !!!! Quel(le) que soit / quel(le)s que soient !! # singulier __[i]/conj(conj_quel_quelle_que_3sg1)__ quel(?:le|)s? que ([sf]\w+) +(?:l[ea]|ce(?:t|tte|)|[mts](?:a|on)|[nv]otre|leur) @@w <<- morphex(\1, ":V0e", ":3s") -1>> =suggVerb(@, ":3s") # Conjugaison erronée. Mettez “être” à la 3ᵉ personne du singulier. |
︙ | ︙ | |||
13220 13221 13222 13223 13224 13225 13226 | TEST: Samantha et Eva {{viennes}} demain. TEST: Samantha et Eva leur {{décrive}} une leçon. !! !! | | | 13220 13221 13222 13223 13224 13225 13226 13227 13228 13229 13230 13231 13232 13233 13234 | TEST: Samantha et Eva {{viennes}} demain. TEST: Samantha et Eva leur {{décrive}} une leçon. !! !! !!!! Inversion verbe sujet !! !! !! __[i]/conj(conj_que_où_comment_verbe_sujet_sing)__ (?:que?|où|comment|combien|dont|quand|pourquoi) +({w1}) (l(?:e(?:ur | )|a |’)|[mts](?:on|a) |ce(?:t|tte|) |[nv]otre |du ) *(?!plupart|majorité)({w1}) @@w,w,$ <<- morphex(\1, ":(?:[12]s|3p)", ":(?:3s|G|W|3p!)") and not after("^ +(?:et|ou) (?:l(?:es? |a |’|eurs? )|[mts](?:a|on|es) |ce(?:tte|ts|) |[nv]o(?:s|tre) |d(?:u|es) )") -1>> =suggVerb(@, ":3s") # Conjugaison erronée. Accord avec « \2 \3… ». Le verbe devrait être à la 3ᵉ personne du singulier. |
︙ | ︙ | |||
13299 13300 13301 13302 13303 13304 13305 | TEST: {{puisse}} les hommes enfin comprendre leurs erreurs. ->> puissent TEST: {{puisses}} notre ennemi trembler de peur devant notre courage. ->> puisse !! !! | | | 13299 13300 13301 13302 13303 13304 13305 13306 13307 13308 13309 13310 13311 13312 13313 | TEST: {{puisse}} les hommes enfin comprendre leurs erreurs. ->> puissent TEST: {{puisses}} notre ennemi trembler de peur devant notre courage. ->> puisse !! !! !!!! Formes interrogatives ? !! !! !! __[i]/inte(inte_union_xxxe_je)__ (?<![jJ]’)({w_2}[éèe]) je @@0 <<- morphex(\1, ":V.*:1[sŝś]", ":[GNW]") and not before(r"(?i)\bje +$") and morphex(word(1), ":", ":(?:Oo|X|1s)", True) ->> =\1[:-1]+"é-je" # Forme interrogative ? Mettez un trait d’union. |
︙ | ︙ | |||
13429 13430 13431 13432 13433 13434 13435 | -1>> =suggSimil(\1, ":3p", False) # Forme interrogative : « \1 » n’est pas un verbe à la 3ᵉ personne du pluriel. TEST: {{attaquant}}-ils ->> attaquent TEST: {{prendrons}}-elles un verre avec moi ? | | | 13429 13430 13431 13432 13433 13434 13435 13436 13437 13438 13439 13440 13441 13442 13443 | -1>> =suggSimil(\1, ":3p", False) # Forme interrogative : « \1 » n’est pas un verbe à la 3ᵉ personne du pluriel. TEST: {{attaquant}}-ils ->> attaquent TEST: {{prendrons}}-elles un verre avec moi ? !!!! Verbe auxiliaire !! __[i]/conf(conf_avoir_sujet_participe_passé)__ ({avoir})-(?:je|tu|ils?|elles?|on) +({ppas}) @@0,$ <<- morph(\1, ">avoir/", False) and morph(\2, ":V.......e_.*:Q", False) -1>> _ # Incohérence. La forme verbale “\2” ne peut pas être utilisé avec l’auxiliaire “avoir”, seulement avec l’auxiliaire “être”. __[i]/conf(conf_sujet_avoir_participe_passé)__ (?:j’|je |tu |ils? |elles? |on ) *({avoir}) +({ppas}) @@*,$ <<- morph(\1, ">avoir/", False) and morph(\2, ":V.......e_.*:Q", False) -1>> _ # Incohérence. La forme verbale “\2” ne peut pas être utilisé avec l’auxiliaire “avoir”, seulement avec l’auxiliaire “être”. |
︙ | ︙ | |||
13451 13452 13453 13454 13455 13456 13457 | @@@@ @@@@ @@@@ @@@@ | | | | 13451 13452 13453 13454 13455 13456 13457 13458 13459 13460 13461 13462 13463 13464 13465 13466 13467 13468 13469 13470 13471 13472 13473 13474 | @@@@ @@@@ @@@@ @@@@ @@@@GRAPH: last_graph @@@@ @@@@ @@@@ @@@@ !! !! !!!! Modes verbaux !! !! !! # conditionnel / futur __vmode_j_aimerais_vinfi__ [<start>|,] [je|j’] [aimerai|préférerai|préfèrerai|apprécierai|voudrai|souhaiterai|désirerai|adorerai] @:[YX]|>(?:y|ne|que?)/¬:R |
︙ | ︙ | |||
13542 13543 13544 13545 13546 13547 13548 | __vmode_qqch_que_subjonctif2__ à condition [que|qu’|qu] @:(?:Os|M) @:I¬:[GYS] pour peu [que|qu’|qu] @:(?:Os|M) @:I¬:[GYS] il peut [que|qu’|qu] @:(?:Os|M) @:I¬:[GYS] <<- /vmode/ -5>> =suggVerbMode(\5, ":S", \4) # Ce verbe devrait être au subjonctif. TEST: à condition qu’il {{finit}} son boulot. | | | 13542 13543 13544 13545 13546 13547 13548 13549 13550 13551 13552 13553 13554 13555 13556 | __vmode_qqch_que_subjonctif2__ à condition [que|qu’|qu] @:(?:Os|M) @:I¬:[GYS] pour peu [que|qu’|qu] @:(?:Os|M) @:I¬:[GYS] il peut [que|qu’|qu] @:(?:Os|M) @:I¬:[GYS] <<- /vmode/ -5>> =suggVerbMode(\5, ":S", \4) # Ce verbe devrait être au subjonctif. TEST: à condition qu’il {{finit}} son boulot. TEST: pour peu qu’il {{prend}} son devoir sérieux… TEST: il se peut que nous {{avons}} tort. # Bien que + subjonctif __vmode_bien_que_subjonctif__ [<start>|,] bien [que|qu’|qu] @:(?:Os|M) @:I¬:(?:[GSK]|If|V0a)|>(?:hériter|recevoir|donner|offrir)/ <<- /vmode/ -5>> =suggVerbMode(\5, ":S", \1) # Après « bien que », le verbe s’emploie au subjonctif. |
︙ | ︙ | |||
13604 13605 13606 13607 13608 13609 13610 | <<- /vmode/ -3>> =suggVerbMode(\3, ":I", \2) # Après « quand » ou « lorsque », le verbe ne s’emploie pas au subjonctif mais à l’indicatif. TEST: quand elle {{rencontrât}} son créateur TEST: lorsqu’il y {{eût}} du grabuge, nous montâmes tous sur le pont. @@@@ | | | | 13604 13605 13606 13607 13608 13609 13610 13611 13612 13613 13614 13615 13616 13617 13618 13619 13620 13621 13622 13623 13624 13625 13626 13627 | <<- /vmode/ -3>> =suggVerbMode(\3, ":I", \2) # Après « quand » ou « lorsque », le verbe ne s’emploie pas au subjonctif mais à l’indicatif. TEST: quand elle {{rencontrât}} son créateur TEST: lorsqu’il y {{eût}} du grabuge, nous montâmes tous sur le pont. @@@@ @@@@END_GRAPH @@@@ @@@@ @@@@ @@@@ @@@@ @@@@GRAPH: test @@@@ @@@@ @@@@ @@@@ __code_legacy__ legacy code |
︙ | ︙ | |||
13645 13646 13647 13648 13649 13650 13651 | <<- ~2>> * TEST: Ça me fait {{plaisirs}}. @@@@ | | | 13645 13646 13647 13648 13649 13650 13651 13652 13653 13654 13655 13656 13657 13658 13659 | <<- ~2>> * TEST: Ça me fait {{plaisirs}}. @@@@ @@@@END_GRAPH @@@@ !! !! !! !! |
︙ | ︙ | |||
13669 13670 13671 13672 13673 13674 13675 | !! !! !! !! !! !! !! | | | 13669 13670 13671 13672 13673 13674 13675 13676 13677 13678 13679 13680 13681 13682 13683 | !! !! !! !! !! !! !! !! TESTS: Faux positifs potentiels !! !! !! !! !! !! !! !! |
︙ | ︙ | |||
13692 13693 13694 13695 13696 13697 13698 | !! !! !! !! !! !! | | | 13692 13693 13694 13695 13696 13697 13698 13699 13700 13701 13702 13703 13704 13705 13706 | !! !! !! !! !! !! !!! À trier !! TEST: L’homme sur le bateau de Patrick {{viens}} de temps en temps {{mangé}} chez moi. TEST: Ces marchands {{passe}} leur temps à se quereller. TEST: Ils jugeront en toute impartialité de ce cas {{délirante}}. TEST: Ils sont de manière si étonnante et si admirable {{arrivé}} à ce résultat… TEST: Les tests grand public de Jean-Paul {{montre}} des résultats surprenants. TEST: Ils ont à plusieurs reprises {{perdus}} leur sang-froid. TEST: Ces attaques à main armée {{donne}} la chair de poule. |
︙ | ︙ | |||
13731 13732 13733 13734 13735 13736 13737 | TODO: Des copains plus vieux que moi qui fumaient. TODO: Des copains plus vieux que toi qui fumaient. TODO: André Juin était un sculpteur français. TODO: La bataille de Monte Cassino révèle le génie militaire du général Juin. TODO: Les côtes sont dans leur ensemble extrêmement découpées. | | | | 13731 13732 13733 13734 13735 13736 13737 13738 13739 13740 13741 13742 13743 13744 13745 13746 13747 13748 13749 | TODO: Des copains plus vieux que moi qui fumaient. TODO: Des copains plus vieux que toi qui fumaient. TODO: André Juin était un sculpteur français. TODO: La bataille de Monte Cassino révèle le génie militaire du général Juin. TODO: Les côtes sont dans leur ensemble extrêmement découpées. !!! Indécidable !! TEST: Du sable fin grippe les rouages (accord avec ce qui précède). TEST: Du monde noir sortent les envahisseurs (accord avec ce qui suit). !!! Autres tests !! TEST: Ça a l’air de t’aller. TEST: Et je m’en sors. TEST: C’est à chacun d’entre nous de suivre le modèle d’Amos. TEST: C’est toi qui voulais y aller. TEST: je ne suis qu’une joueuse en robe de soirée. TEST: Tu ne fais qu’aggraver les choses. TEST: Que veut-il ? Vous parler du boulot. |
︙ | ︙ | |||
13800 13801 13802 13803 13804 13805 13806 | TEST: Enfin, les thèmes de la nouvelle réforme ont été longuement débattus. TEST: Le moral des ménages au plus haut depuis 2007 TEST: Ce qu’ils nous ont fait TEST: Comment vous expliquez ça ? TEST: Comment vous expliquer ça ? | | | 13800 13801 13802 13803 13804 13805 13806 13807 13808 13809 13810 13811 13812 13813 13814 | TEST: Enfin, les thèmes de la nouvelle réforme ont été longuement débattus. TEST: Le moral des ménages au plus haut depuis 2007 TEST: Ce qu’ils nous ont fait TEST: Comment vous expliquez ça ? TEST: Comment vous expliquer ça ? !!! Tests historiques !! ## Version 0.5.14 TEST: par le léger tissu de rayonne qui les protégeait en ce moment. ## Version 0.5.11 TEST: Un moteur à cylindrée fixe |
︙ | ︙ | |||
14576 14577 14578 14579 14580 14581 14582 | TEST: Je soussigné Pierre Dupont déclare avoir pris connaissance des conditions de ce contrat. TEST: J’ai mille cent timbres. TEST: À qui mieux mieux, à qui mieux mieux TEST: L’est est loin, la gare de l’est aussi. | | | 14576 14577 14578 14579 14580 14581 14582 14583 14584 14585 14586 14587 14588 14589 14590 | TEST: Je soussigné Pierre Dupont déclare avoir pris connaissance des conditions de ce contrat. TEST: J’ai mille cent timbres. TEST: À qui mieux mieux, à qui mieux mieux TEST: L’est est loin, la gare de l’est aussi. !!! Tests repris de LanguageTool !! ## NOTE : ces textes contiennent parfois des erreurs (corrigées quand repérées par le correcteur) TEST: Au voisinage du zéro absolu de température. TEST: La couronne périphérique alterne falaises abruptes et plages. TEST: Henri VIII rencontre François Iᵉʳ. TEST: à ce jour. TEST: avoir un bel avenir |
︙ | ︙ | |||
16641 16642 16643 16644 16645 16646 16647 | TEST: Le 29 février 2008. TEST: Le 29 février 2012. TEST: Le 29 février 2016. TEST: Le 29 février 2020. TEST: Le 29-février-2004 | | | 16641 16642 16643 16644 16645 16646 16647 16648 16649 16650 16651 16652 16653 16654 16655 | TEST: Le 29 février 2008. TEST: Le 29 février 2012. TEST: Le 29 février 2016. TEST: Le 29 février 2020. TEST: Le 29-février-2004 !!! Le Horla, de Guy de Maupassant !! # Nouvelle intégrale (228 lignes) # Certains points diffèrent du texte original tiré de Wikisource : # — les paragraphes sont souvent scindés pour des raisons pratiques. # — les virgules avant les points de suspension ont été supprimées # — moyen âge -> Moyen Âge TEST: Le Horla — Guy de Maupassant TODO: 8 mai. — Quelle journée admirable ! J’ai passé toute la matinée {{étendu}} sur l’herbe, devant ma maison, sous l’énorme platane qui la couvre, l’abrite et l’ombrage tout entière. |
︙ | ︙ | |||
17013 17014 17015 17016 17017 17018 17019 | TEST: Pourquoi ce corps transparent, ce corps inconnaissable, ce corps d’Esprit, s’il devait craindre, lui aussi, les maux, les blessures, les infirmités, la destruction prématurée ? TEST: La destruction prématurée ? toute l’épouvante humaine vient d’elle ! TEST: Après l’homme le Horla. — Après celui qui peut mourir tous les jours, à toutes les heures, à toutes les minutes, par tous les accidents, est venu celui qui ne doit mourir qu’à son jour, à son heure, à sa minute, parce qu’il a touché la limite de son existence ! TEST: Non… non… sans aucun doute, sans aucun doute… il n’est pas mort… Alors… alors… il va donc falloir que je me tue, moi !… # FIN DU HORLA | | | 17013 17014 17015 17016 17017 17018 17019 17020 17021 17022 17023 17024 17025 17026 17027 | TEST: Pourquoi ce corps transparent, ce corps inconnaissable, ce corps d’Esprit, s’il devait craindre, lui aussi, les maux, les blessures, les infirmités, la destruction prématurée ? TEST: La destruction prématurée ? toute l’épouvante humaine vient d’elle ! TEST: Après l’homme le Horla. — Après celui qui peut mourir tous les jours, à toutes les heures, à toutes les minutes, par tous les accidents, est venu celui qui ne doit mourir qu’à son jour, à son heure, à sa minute, parce qu’il a touché la limite de son existence ! TEST: Non… non… sans aucun doute, sans aucun doute… il n’est pas mort… Alors… alors… il va donc falloir que je me tue, moi !… # FIN DU HORLA !!! Double assassinat dans la rue morgue, d’Edgar Poe !! # Texte tiré de Wikisource # Les paragraphes ont été découpés pour réduire la longueur des tests. TEST: DOUBLE ASSASSINAT DANS LA RUE MORGUE — Edgar Poe TEST: Quelle chanson chantaient les sirènes ? quel nom Achille avait-il pris, quand il se cachait parmi les femmes ? – Questions embarrassantes, il est vrai, mais qui ne sont pas situées au-delà de toute conjecture. TEST: Sir Thomas Browne. TODO: Les facultés de l’esprit qu’on définit par le terme {{analytiques}} sont en elles-mêmes fort peu susceptibles d’analyse. TEST: Nous ne les apprécions que par leurs résultats. Ce que nous en savons, entre autres choses, c’est qu’elles sont pour celui qui les possède à un degré extraordinaire une source de jouissances des plus vives. |
︙ | ︙ | |||
17557 17558 17559 17560 17561 17562 17563 | TEST: Néanmoins, qu’il n’ait pas pu débrouiller ce mystère, il n’y a nullement lieu de s’en étonner, et cela est moins singulier qu’il ne le croit ; car, en vérité, notre ami le préfet est un peu trop fin pour être profond. Sa science n’a pas de base. TEST: Elle est tout en tête et n’a pas de corps, comme les portraits de la déesse Laverna, – ou, si vous aimez mieux, tout en tête et en épaules, comme une morue. TEST: Mais, après tout, c’est un brave homme. Je l’adore particulièrement pour un merveilleux genre de cant auquel il doit sa réputation de génie. TEST: Je veux parler de sa manie de nier ce qui est, et d’expliquer ce qui n’est pas[2]. # FIN DU DOUBLE ASSASSINAT DANS LA RUE MORGUE | | | 17557 17558 17559 17560 17561 17562 17563 17564 17565 17566 17567 17568 17569 17570 17571 | TEST: Néanmoins, qu’il n’ait pas pu débrouiller ce mystère, il n’y a nullement lieu de s’en étonner, et cela est moins singulier qu’il ne le croit ; car, en vérité, notre ami le préfet est un peu trop fin pour être profond. Sa science n’a pas de base. TEST: Elle est tout en tête et n’a pas de corps, comme les portraits de la déesse Laverna, – ou, si vous aimez mieux, tout en tête et en épaules, comme une morue. TEST: Mais, après tout, c’est un brave homme. Je l’adore particulièrement pour un merveilleux genre de cant auquel il doit sa réputation de génie. TEST: Je veux parler de sa manie de nier ce qui est, et d’expliquer ce qui n’est pas[2]. # FIN DU DOUBLE ASSASSINAT DANS LA RUE MORGUE !!! Vers Dorés, de Pythagore !! # Origine? TEST: Aux dieux, suivant les lois, rends de justes hommages ; TEST: Respecte le serment, les héros et les sages ; TEST: Honore tes parents, tes rois, tes bienfaiteurs ; TEST: Choisi parmi tes amis les hommes les meilleurs. TEST: Sois obligeant et doux, sois facile en affaires. TEST: Ne hais pas ton ami pour des fautes légères ; |
︙ | ︙ | |||
17657 17658 17659 17660 17661 17662 17663 | TEST: XXX. Mais abstiens-toi des aliments que je t’ai défendus. Apprends à discerner ce qui est nécessaire dans la purification et la délivrance de l’âme. Examine tout ; donne à ta raison la première place et, content de te laisser conduire, abandonne-lui les rênes. TEST: XXXI. Ainsi, quand tu auras quitté les dépouilles mortelles, tu monteras dans l’air libre ; tu deviendras un dieu immortel et la mort n’aura plus d’empire sur toi. TEST: Fin des vers dorés de Pythagore TEST: Note : Chez les Pythagoriciens, la monade ou l’unité représente Dieu-même, parce qu’elle n’est engendrée par aucun nombre, qu’elle les engendre tous, qu’elle est simple et sans aucune composition. La dyade, ou le nombre deux, est l’image de la nature créée, parce qu’elle est le premier produit de l’unité, parce qu’elle est inspirée, parce qu’ayant des parties elle peut se décomposer et se défendre. La monade et la dyade réunies forment le ternaire, et représentent l’immensité de tout ce qui existe, l’être immuable et la matière altérable et changeante. J’ignore par quelle propriété le quaternaire, le nombre quatre, est encore un emblème de la divinité. # FIN DES VERS DORÉS DE PYTHAGORE | | | 17657 17658 17659 17660 17661 17662 17663 17664 17665 17666 17667 17668 17669 17670 17671 | TEST: XXX. Mais abstiens-toi des aliments que je t’ai défendus. Apprends à discerner ce qui est nécessaire dans la purification et la délivrance de l’âme. Examine tout ; donne à ta raison la première place et, content de te laisser conduire, abandonne-lui les rênes. TEST: XXXI. Ainsi, quand tu auras quitté les dépouilles mortelles, tu monteras dans l’air libre ; tu deviendras un dieu immortel et la mort n’aura plus d’empire sur toi. TEST: Fin des vers dorés de Pythagore TEST: Note : Chez les Pythagoriciens, la monade ou l’unité représente Dieu-même, parce qu’elle n’est engendrée par aucun nombre, qu’elle les engendre tous, qu’elle est simple et sans aucune composition. La dyade, ou le nombre deux, est l’image de la nature créée, parce qu’elle est le premier produit de l’unité, parce qu’elle est inspirée, parce qu’ayant des parties elle peut se décomposer et se défendre. La monade et la dyade réunies forment le ternaire, et représentent l’immensité de tout ce qui existe, l’être immuable et la matière altérable et changeante. J’ignore par quelle propriété le quaternaire, le nombre quatre, est encore un emblème de la divinité. # FIN DES VERS DORÉS DE PYTHAGORE !!! Épître du feu philosophique, de Jean Pontanus !! # Les paragraphes ont été découpés et ne correspondent pas à ceux du texte. TEST: Épître du Feu Philosophique TEST: Lettre concernant la pierre dite philosophale TEST: Jean Pontanus TEST: in Theatrum Chimicum, 1614, t. III TEST: « Nous affirmons, au contraire, — et l’on peut avoir foi en notre sincérité, — qu’il sera impossible d’obtenir le moindre succès dans l’Œuvre si l’on a pas une connaissance parfaite de ce qu’est le Vase des Philosophes ni de quelle manière il faut le fabriquer. Pontanus avoue qu’avant de connaître ce vaisseau secret il avait recommencé, sans succès, plus de deux cents fois le même travail, quoiqu’il besognât sur les matières propres et convenables, et selon la méthode régulière. L’artiste doit faire lui-même son vaisseau ; c’est une maxime de l’art. N’entreprenez rien, en conséquence, tant que vous n’aurez pas reçu toute la lumière sur cette coquille de l’œuf qualifiée secretum secretorum chez les maîtres du Moyen Âge. » TEST: — Fulcanelli, Le Mystère des Cathédrales, p. 204-205 |
︙ | ︙ | |||
17703 17704 17705 17706 17707 17708 17709 | TEST: Et moyennant notre feu, la médecine se multipliera si elle est conjointe à la matière crue, non seulement en quantité mais aussi en vertu. TEST: Recherche donc de toutes les forces de ton esprit ce feu, et tu parviendras au but que tu t’es proposé ; car c’est lui qui fait tout l’œuvre, et il est la clef de tous les Philosophes, laquelle ils n’ont jamais révélée dans leurs livres. TEST: Si tu penses bien profondément aux propriétés du feu ci-dessus, tu la connaîtras, mais non autrement. TEST: Donc, touché d’un mouvement de pitié, j’ai écrit ceci ; mais, et afin que je me satisfasse, le feu n’est point transmué avec la matière, comme je l’ai dit ci-dessus. TEST: J’ai bien voulu le dire et en avertir les prudents de ces choses, pour qu’ils ne dépensent pas inutilement leur argent, mais qu’ils sachent auparavant ce qu’ils doivent chercher, et, par ce moyen, parviendront à la vérité de l’Art ; non pas autrement. À Dieu. # FIN DE L’ÉPÎTRE DU FEU PHILOSOPHIQUE | | | 17703 17704 17705 17706 17707 17708 17709 17710 17711 17712 17713 17714 17715 17716 17717 | TEST: Et moyennant notre feu, la médecine se multipliera si elle est conjointe à la matière crue, non seulement en quantité mais aussi en vertu. TEST: Recherche donc de toutes les forces de ton esprit ce feu, et tu parviendras au but que tu t’es proposé ; car c’est lui qui fait tout l’œuvre, et il est la clef de tous les Philosophes, laquelle ils n’ont jamais révélée dans leurs livres. TEST: Si tu penses bien profondément aux propriétés du feu ci-dessus, tu la connaîtras, mais non autrement. TEST: Donc, touché d’un mouvement de pitié, j’ai écrit ceci ; mais, et afin que je me satisfasse, le feu n’est point transmué avec la matière, comme je l’ai dit ci-dessus. TEST: J’ai bien voulu le dire et en avertir les prudents de ces choses, pour qu’ils ne dépensent pas inutilement leur argent, mais qu’ils sachent auparavant ce qu’ils doivent chercher, et, par ce moyen, parviendront à la vérité de l’Art ; non pas autrement. À Dieu. # FIN DE L’ÉPÎTRE DU FEU PHILOSOPHIQUE !!! Le Misanthrope, de Molière !! TEST: LE MISANTHROPE (1666) TEST: de Molière TEST: Texte établi par Charles Louandre, Charpentier, 1910 (2, pp. 170-239). TEST: PERSONNAGES TEST: Alceste, amant de Célimène, TEST: Philinte, ami d’Alceste, TEST: Oronte, amant de Célimène, |
︙ | ︙ |