Grammalecte  Diff

Differences From Artifact [d9467479bc]:

To Artifact [56142c4d70]:


159
160
161
162
163
164
165
166

167
168
169
170
171
172

173
174
175
176
177
178
179
180
181

182
183
184
185
186
187
188

189
190
191
192
193
194
195


196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217


218
219
220
221
222
223

224
225
226
227
228
229
230
231
232

233
234
235
236
237
238
239

240
241
242
243
244
245
246

247
248
249
250
251
252
253
159
160
161
162
163
164
165

166
167
168
169
170
171

172
173
174
175
176
177
178
179
180

181
182
183
184
185
186
187

188
189
190
191
192
193


194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215


216
217
218
219
220
221
222

223
224
225
226
227
228
229
230
231

232
233
234
235
236
237
238

239
240
241
242
243
244
245

246
247
248
249
250
251
252
253







-
+





-
+








-
+






-
+





-
-
+
+




















-
-
+
+





-
+








-
+






-
+






-
+







OPTLABEL/basic:     Typographie
OPTLABEL/typo:      Signes typographiques
OPTLABEL/apos:      Apostrophe typographique|Correction des apostrophes droites. Automatisme possible dans le menu Outils > Options d’autocorrection > Options linguistiques > Guillemets simples > Remplacer (à cocher)
OPTLABEL/eepi:      Écriture épicène|Normalisation de l’écriture épicène avec points médians.
OPTLABEL/esp:       Espaces surnuméraires|Signale les espaces inutiles entre les mots, en début et en fin de ligne.
OPTLABEL/tab:       Tabulations surnuméraires|Signale les tabulations inutiles en début et en fin de ligne.
OPTLABEL/nbsp:      Espaces insécables|Vérifie les espaces insécables avec les ponctuations « ! ? : ; » (à désactiver si vous utilisez une police Graphite)
OPTLABEL/maj:       Majuscules|Vérifie l’utilisation des majuscules et des minuscules (par exemple, « la raison d’État », « les Européens »).
OPTLABEL/maj:       Majuscules|Vérifie l’utilisation des majuscules et des minuscules (par exemple, « la raison d’État », « les Européens »).
OPTLABEL/minis:     Majuscules pour ministères|Majuscules pour les intitulés des ministères.
OPTLABEL/virg:      Virgules|Virgules manquantes avant “mais”, “car” et “etc.”.
#OPTLABEL/romain:    Nombres romains|Utilise les caractères dédiés (petites majuscules) pour les nombres romains.
OPTLABEL/poncfin:   Ponctuation finale [!]|Vérifie s’il manque une ponctuation finale au paragraphe (seulement pour les paragraphes constitués de plusieurs phrases).
OPTLABEL/tu:        Traits d’union et soudures|Cherche les traits d’union manquants ou inutiles.
OPTLABEL/num:       Nombres|Espaces insécables sur les grands nombres (> 10 000). Vérifie la présence de « O » au lieu de « 0 ».
OPTLABEL/num:       Nombres|Espaces insécables sur les grands nombres (> 10 000). Vérifie la présence de « O » au lieu de « 0 ».
OPTLABEL/unit:      Espaces insécables avant unités de mesure
OPTLABEL/nf:        Normes françaises
OPTLABEL/liga:      Signaler ligatures typographiques|Ligatures de fi, fl, ff, ffi, ffl, ft, st.
OPTLABEL/mapos:     Apostrophe manquante après lettres isolées [!]|Apostrophe manquante après les lettres l d s n c j m t ç. Cette option sert surtout à repérer les défauts de numérisation des textes et est déconseillée pour les textes scientifiques.
OPTLABEL/chim:      Chimie|Typographie des composés chimiques (H₂O, CO₂, etc.).
OPTLABEL/ocr:       Erreurs de numérisation (OCR) [!]|Erreurs de reconnaissance optique des caractères. Beaucoup de faux positifs.

OPTLABEL/gramm:     Noms et adjectifs
OPTLABEL/conf:      Confusions et faux-amis|Cherche des erreurs souvent dues à l’homonymie (par exemple, les confusions entre « faîte » et « faite »).
OPTLABEL/conf:      Confusions et faux-amis|Cherche des erreurs souvent dues à l’homonymie (par exemple, les confusions entre « faîte » et « faite »).
OPTLABEL/loc:       Locutions|Écriture des locutions usuelles.
OPTLABEL/gn:        Accords (genre et nombre)|Accords des noms et des adjectifs.

OPTLABEL/verbs:     Verbes
OPTLABEL/conj:      Conjugaisons|Accord des verbes avec leur sujet.
OPTLABEL/infi:      Infinitif|Confusion entre l’infinitif et d’autres formes.
OPTLABEL/imp:       Impératif|Vérifie notamment la deuxième personne du singulier (par exemple, les erreurs : « vas… », « prend… », « manges… »).
OPTLABEL/imp:       Impératif|Vérifie notamment la deuxième personne du singulier (par exemple, les erreurs : « vas… », « prend… », « manges… »).
OPTLABEL/inte:      Interrogatif|Vérifie les formes interrogatives et suggère de lier les pronoms personnels avec les verbes.
OPTLABEL/ppas:      Participes passés, adjectifs
OPTLABEL/vmode:     Modes verbaux

OPTLABEL/style:     Style
OPTLABEL/bs:        Populaire|Souligne un langage courant considéré comme erroné, comme « malgré que ».
OPTLABEL/pleo:      Pléonasmes|Repère des redondances sémantiques, comme « au jour d’aujourd’hui », « monter en haut », etc.
OPTLABEL/bs:        Populaire|Souligne un langage courant considéré comme erroné, comme « malgré que ».
OPTLABEL/pleo:      Pléonasmes|Repère des redondances sémantiques, comme « au jour d’aujourd’hui », « monter en haut », etc.
OPTLABEL/eleu:      Élisions et euphonies|Signale les élisions incorrectes et les tournures dysphoniques.
OPTLABEL/neg:       Adverbe de négation [!]|Ne … pas, ne … jamais, etc.
OPTLABEL/redon1:    Répétitions dans le paragraphe [!]|Sont exclus les mots grammaticaux, ceux commençant par une majuscule, ainsi que “être” et “avoir”.
OPTLABEL/redon2:    Répétitions dans la phrase [!]|Sont exclus les mots grammaticaux, ainsi que “être” et “avoir”.

OPTLABEL/misc:      Divers
OPTLABEL/mc:        Mots composés [!]|Vérifie si les mots composés à trait d’union existent dans le dictionnaire (hormis ceux commençant par ex-, mi-, quasi-, semi-, non-, demi- et d’autres préfixes communs).
OPTLABEL/date:      Validité des dates

OPTLABEL/debug:     Débogage
OPTLABEL/idrule:    Identifiant des règles de contrôle [!]|Affiche l’identifiant de la règle de contrôle dans les messages d’erreur.


OPTLANG/en_US:      Grammar checking (French)
OPTLABEL/basic:     Typography
OPTLABEL/typo:      Typographical glyphs
OPTLABEL/apos:      Typographical apostrophe|Detects typewriter apostrophes. You may get automatically typographical apostrophes in Tools > Autocorrect options > Localized options > Single quote > Replace (checkbox).
OPTLABEL/eepi:      Epicene writing|Normalization of epicene writing (usage of middle dots).
OPTLABEL/esp:       Useless spaces|Checks spaces within words and at the beginning and the end of lines.
OPTLABEL/tab:       Useless tabulations|Checks tabulations at the beginning and the end of lines.
OPTLABEL/nbsp:      Non-breakable spaces|Checks the use of non-breakable spaces with the following punctuation marks: « ! ? : ; » (deactivate it if you use a Graphite font).
OPTLABEL/maj:       Capitals|Checks the use of uppercase and lowercase letters (i.e. « la raison d’État », « les Européens »).
OPTLABEL/nbsp:      Non-breakable spaces|Checks the use of non-breakable spaces with the following punctuation marks: « ! ? : ; » (deactivate it if you use a Graphite font).
OPTLABEL/maj:       Capitals|Checks the use of uppercase and lowercase letters (i.e. « la raison d’État », « les Européens »).
OPTLABEL/minis:     Capitals for ministry|Capital letters for ministry.
OPTLABEL/virg:      Commas|Missing commas before “mais”, “car” and “etc.”.
OPTLABEL/poncfin:   Ending punctuation [!]|Checks if an ending punctuation is missing on paragraphs (only for multi-sentences paragraphs).
#OPTLABEL/romain:    Roman numerals|Use dedicated characters (small caps) for roman numerals.
OPTLABEL/tu:        Hyphens and junctions|Checks missing or useless hyphens.
OPTLABEL/num:       Numerals|Large numerals and « O » instead of « 0 ».
OPTLABEL/num:       Numerals|Large numerals and « O » instead of « 0 ».
OPTLABEL/unit:      Non-breaking spaces before units of measurement
OPTLABEL/nf:        French standards
OPTLABEL/liga:      Report typographical ligatures|Ligatures of fi, fl, ff, ffi, ffl, ft, st.
OPTLABEL/mapos:     Missing apostrophes after single letters [!]|Missing apostrophes after l d s n c j m t ç. This option is mostly useful to detect defects of digitized texts and is not recommended for scientific texts.
OPTLABEL/chim:      Chemistry|Typography for molecules (H₂O, CO₂, etc.)
OPTLABEL/ocr:       OCR errors [!]|Warning: many false positives.

OPTLABEL/gramm:     Nouns and Adjectives
OPTLABEL/conf:      Confusions and false friends|Seeks errors often due to homonymy (i.e. confusions between « faîte » et « faite »).
OPTLABEL/conf:      Confusions and false friends|Seeks errors often due to homonymy (i.e. confusions between « faîte » et « faite »).
OPTLABEL/loc:       Locutions|Writing of common locutions.
OPTLABEL/gn:        Agreement (gender and number)|Agreement between nouns and adjectives.

OPTLABEL/verbs:     Verbs
OPTLABEL/conj:      Conjugation|Agreement between verbs and their subject.
OPTLABEL/infi:      Infinitive|Checks confusions between infinitive forms and other forms.
OPTLABEL/imp:       Imperative mood|Checks particularly verbs at second person singular (i.e. errors such as: « vas … », « prend … », « manges … »).
OPTLABEL/imp:       Imperative mood|Checks particularly verbs at second person singular (i.e. errors such as: « vas … », « prend … », « manges … »).
OPTLABEL/inte:      Interrogative mood|Checks interrogative forms and suggests linking the personal pronouns with verbs.
OPTLABEL/ppas:      Past participles, adjectives|Checks subject agreement with past participles and adjectives.
OPTLABEL/vmode:     Verbal modes

OPTLABEL/style:     Style
OPTLABEL/bs:        Popular style|Underlines misuse of language though informal and commonly used.
OPTLABEL/pleo:      Pleonasms|Semantic replications, like « au jour d’aujourd’hui », « monter en haut », etc.
OPTLABEL/pleo:      Pleonasms|Semantic replications, like « au jour d’aujourd’hui », « monter en haut », etc.
OPTLABEL/eleu:      Élisions et euphonies|Signale les élisions incorrectes et les tournures dysphoniques.
OPTLABEL/neg:       Negation adverb [!]|Ne … pas, ne … jamais, etc.
OPTLABEL/redon1:    Duplicates in paragraph [!]|Are excluded grammatical words, words beginning by a capital letter, and also “être” and “avoir”.
OPTLABEL/redon2:    Duplicates in sentence [!]|Are excluded grammatical words, and also “être” and “avoir”.

OPTLABEL/misc:      Miscellaneous
OPTLABEL/mc:        Compound words [!]|Check if words with hyphen exist in the dictionary (except those beginning by ex-, mi-, quasi-, semi-, non-, demi- and other common prefixes).
347
348
349
350
351
352
353
354
355
356



357
358
359
360
361
362
363
364
365
366



367
368
369
370
371
372
373
374
375
376
377


378
379
380
381
382
383
384

385
386
387
388
389
390
391
347
348
349
350
351
352
353



354
355
356
357
358
359
360
361
362
363



364
365
366
367
368
369
370
371
372
373
374
375


376
377
378
379
380
381
382
383

384
385
386
387
388
389
390
391







-
-
-
+
+
+







-
-
-
+
+
+









-
-
+
+






-
+







!!
!!
!!! 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.
# 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.

TEST: __tab__ {{    }}Espaces surnuméraires.                                    ->> ""
TEST: __tab__ {{        }}— Je suis là…
TEST: __tab__ Espaces surnuméraires.{{              }}                          ->> ""
TEST: __tab__ Fin de ligne{{    }}


__<s>/esp(esp_début_ligne)__        ^[   ]+ <<- ->> ""                          && Espace(s) en début de ligne à supprimer : utilisez les retraits de paragraphe (ou les tabulations à la rigueur).
__<s>/esp(esp_fin_ligne)__          [   ]+$ <<- ->> ""                                              && Espace(s) en fin de ligne à supprimer.
__<s>/esp(esp_milieu_ligne)__       (?:\b|[.?!,:;%‰‱˚»”])(  +) @@$ <<- -1>> " "                   && Espace(s) surnuméraire(s) à supprimer.
__<s>/esp(esp_début_ligne)__        ^[   ]+ <<- ->> ""                          && Espace·s en début de ligne à supprimer : utilisez les retraits de paragraphe (ou les tabulations à la rigueur).
__<s>/esp(esp_fin_ligne)__          [   ]+$ <<- ->> ""                                              && Espace·s en fin de ligne à supprimer.
__<s>/esp(esp_milieu_ligne)__       (?:\b|[.?!,:;%‰‱˚»”])(  +) @@$ <<- -1>> " "                   && Espace·s surnuméraire·s à supprimer.

TEST: {{         }}Encore des espaces surnuméraires.                    ->> ""
TEST: {{ }}— Je suis là…
TEST: Espaces surnuméraires.{{         }}                               ->> ""
TEST: Fin de ligne{{ }}
TEST: Espaces{{                 }}surnuméraires.                        ->> " "


# Espaces insécable et sécable, et tabulations
__<s>/esp(esp_mélangés1)__              (?:  |  ) <<- ->> " | "                                     && Incohérence : l’espace insécable à côté de l’espace sécable n’a pas d’effet.
__<s>/esp(esp_mélangés2)__              (?:\u0009[  ]|[  ]\u0009) <<- ->> " |	"                   && Incohérence : espace et tabulation.
__<s>/esp(esp_mélangés1)__              (?:  |  ) <<- ->> " | "                                     && Incohérence : l’espace insécable à côté de l’espace sécable n’a pas d’effet.
__<s>/esp(esp_mélangés2)__              (?:\u0009[  ]|[  ]\u0009) <<- ->> " |	"                   && Incohérence : espace et tabulation.

TEST: J’espère que ça ne va pas durer trop longtemps avec Mr{{  }}Paul.
TEST: J’espère que ça{{ 	}}va pas durer. (Ici, espace suivi d’une tabulation)      ->>  " |	"


# Espaces insécables multiples
__<s>/esp(esp_insécables_multiples)__   "[  ][  ]+" <<- ->> " | "                                   && Espace(s) insécable(s) surnuméraire(s) à supprimer.
__<s>/esp(esp_insécables_multiples)__   "[  ][  ]+" <<- ->> " | "                                   && Espace·s insécable·s surnuméraire·s à supprimer.

TEST: «{{  }}Je suis partie. »
TEST: « Je suis partie.{{  }}»


# Espace avant ou après tiret
__[i]/esp(esp_avant_après_tiret)__
488
489
490
491
492
493
494
495

496
497
498
499
500
501

502
503
504
505
506
507
508
488
489
490
491
492
493
494

495
496
497
498
499
500
501
502
503
504
505
506
507
508
509







-
+






+







__<s>/typo(typo_guillemets_ouvrants_inverses1)__
    \w([«“][  ]) @@1
        <<- -1>> " »|”"                                                                             && Mettez des guillemets fermants plutôt qu’ouvrants.
__<s>/typo(typo_guillemets_ouvrants_inverses2)__
    ([«“])[  ]*$ @@0
        <<- -1>> " »|”"                                                                             && Mettez des guillemets fermants plutôt qu’ouvrants.
__<s>/typo(typo_guillemets_ouvrants_inverses3)__
    \w([  ][«“])[  ]*[!?,:;.…] @@1
    \w([  ][«“])[  ]?[!?,:;.…](?![  ]?[»”]) @@1
        <<- -1>> " »|”"                                                                             && Mettez des guillemets fermants plutôt qu’ouvrants.

TEST: « Le grand homme{{«}}
TEST: « La grande femme{{ «}} !
TEST: Eux et leurs{{ ”}}amis{{”}} sont finis !
TEST: Vos {{“}}amis{{“ }}et vous êtes finis !
TEST: le signe “…” ou le signe « ! » ?



#
#
# NOTE
# Tout contrôle des espaces existants doit se faire avant ce point.
659
660
661
662
663
664
665
666

667
668
669
670
671
672
673

674
675
676
677
678

679
680
681
682
683
684
685
660
661
662
663
664
665
666

667
668
669
670
671
672
673

674
675
676
677
678

679
680
681
682
683
684
685
686







-
+






-
+




-
+









## Apostrophes manquantes
__[i>/typo(typo_apostrophe_manquante)!8__
    "((lorsqu|puisqu|presqu|quoiqu|jusqu|qu|aujourd|entr) )[aeéiouhyàîèêôû<]"  @@0,0
        <<- -1>> \2’                                                                                && Il manque vraisemblablement une apostrophe.
        <<- ~1>> \2’
# Solution prudente :
# Solution prudente
__[i>/typo(typo_apostrophe_manquante_prudence1)!8__
    ne ([mtsl] )[aeéiouhyàîèêôû<]  @@3
        <<- -1>> =\1[:-1]+"’"                                                                       && Il manque une apostrophe.
__[i>/typo(typo_apostrophe_manquante_prudence2)!8__
    (?:je|tu|ie?ls?|nous|vous|on|ça|elles?) ([nmtsl] )([aeéiouhyàîèêôû][\w-]*|<)  @@*,$
        <<- not option("mapos") and (\2 == "<" or morph(\2, ":V")) -1>> =\1[:-1]+"’"                && Il manque probablement une apostrophe.
# Solution audacieuse :
# Solution audacieuse
__[s>/typo(typo_apostrophe_manquante_audace1)!8__
    ([ldsncjmtç] )[aeéiouhAEÉIOUHyîèêôûYÎÈÊÔÛ<]  @@0
        <<- option("mapos") and not before("(?i)(?:lettre|caractère|glyphe|dimension|variable|fonction|point) *$")
        -1>> =\1[:-1]+"’"                                                                           && Il manque peut-être une apostrophe.
# Note : pour les majuscules, la règle se situe lors de la passe suivante.
# Note : pour les majuscules, la règle se situe lors de la passe suivante.

TEST: __mapos__ {{n }}arrive pas à sa cheville
TEST: le coup {{qu }}avait donné                                                ->> qu’
TEST: pendant {{qu }}il avançait d’un pas indolent                              ->> qu’
TEST: {{jusqu }}à plus soif                                                     ->> jusqu’
TEST: il ne {{m }}avait jamais fait défaut                                      ->> m’
TEST: Il {{s }}était dit qu’il ne le ferait pas.                                ->> s’
926
927
928
929
930
931
932
933

934
935
936
937
938
939
940
927
928
929
930
931
932
933

934
935
936
937
938
939
940
941







-
+







!!!! 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|ex|fig|hab|litt|circ|coll|r[eé]f|étym|suppl|bibl|bibliogr|cit|op|vol|déc|nov|oct|janv|juil|avr|sept)$", \1)
        <<- not re.search("(?i)^(?:etc|[A-Z]|chap|cf|ex|fig|hab|litt|circ|coll|r[eé]f|étym|suppl|bibl|bibliogr|cit|op|vol|déc|nov|oct|janv|juil|avr|sept|sg|pl|pers)$", \1)
            and morph(\1, ":") and morph(\2, ":")
        -2>> =\2.capitalize()                                                                       && Après un point, une majuscule est généralement requise.

TEST: Je suis là. {{viens}}.                                              ->> Viens
TEST: Ils sont devenus idiots. {{c}}’est peine perdue.

__<s>/maj(majuscule_début_paragraphe)__
1005
1006
1007
1008
1009
1010
1011
1012

1013
1014
1015
1016
1017
1018

1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036




1037
1038
1039
1040
1041
1042
1043
1006
1007
1008
1009
1010
1011
1012

1013
1014
1015
1016
1017
1018

1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033




1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044







-
+





-
+














-
-
-
-
+
+
+
+







!!
!!
!!!! Points                                                                                       !!
!!
!!

# Points superflus
__[i>/typo(typo_et_cetera)__             etc(?:[.]{3,5}|…) <<- ->> etc.                             && Un seul point après « etc. »
__[i>/typo(typo_et_cetera)__             etc(?:[.]{3,5}|…) <<- ->> etc.                             && Un seul point après « etc. »

TEST: {{etc…}}
TEST: {{etc...}}


__[s>/typo(typo_point_après_titre)__     (M(?:me|gr|lle)s?[.]) [A-ZÉÈ]  @@0  <<- -1>> =\1[0:-1]                     && Pas de point après cette abréviation.
__[s>/typo(typo_point_après_titre)__     (M(?:me|gr|lle)s?[.]) [A-ZÉÈ]  @@0  <<- -1>> =\1[0:-1]     && Pas de point après cette abréviation.

TEST: Je crois que {{Mlle.}} Eva est partie.
TEST: J’ai pensé à {{Mme.}} Bovary toute la journée.


__[s>/typo(typo_point_après_numéro)__
    ([nN]os?[.])[  ]\d+  @@0
        <<- \1[1:3] == "os" -1>> nᵒˢ                                                                 && Pas de point dans l’abréviation de numéro.
        <<- __else__ -1>> nᵒ                                                                        && Pas de point dans l’abréviation de numéro.

TEST: C’est situé au {{no.}} 12.


# Points de suspension
__<s>/typo(typo_points_suspension1)__    (?<![.])[.]{3,5}(?![.]) <<- not before("(?i)etc$") ->> …   && Typographie : points de suspension. Utilisez le caractère dédié.
__<s>/typo(typo_points_suspension2)__    [.]{6,} <<- ->> =\0.replace("...", "…").rstrip(".")        && Typographie : succession de points. Utilisez le caractère dédié.
__<s>/typo(typo_points_suspension3)__    (?<![.…])[.][.](?![.]) <<- ->> …|.                         && Typographie : un ou trois points ?
__<s>/typo(typo_points_superflus)__      …[.][.]?(?![.]) <<- ->> …                                  && Point(s) superflu(s).
__<s>/typo(typo_points_suspension1)__    (?<![.])[.]{3,5}(?![.]) <<- not before("(?i)etc$") ->> …   && Typographie : points de suspension. Utilisez le caractère dédié.
__<s>/typo(typo_points_suspension2)__    [.]{6,} <<- ->> =\0.replace("...", "…").rstrip(".")        && Typographie : succession de points. Utilisez le caractère dédié.
__<s>/typo(typo_points_suspension3)__    (?<![.…])[.][.](?![.]) <<- ->> …|.                         && Typographie : un ou trois points ?
__<s>/typo(typo_points_superflus)__      …[.][.]?(?![.]) <<- ->> …                                  && Points superflus.

TEST: 3 points de suspension{{...}}
TEST: 5 points de suspension{{....}}
TEST: 5 points de suspension{{.....}}
TEST: 4 points de suspension{{….}}
TEST: 5 points de suspension{{…..}}
TEST: Double point{{..}}
1156
1157
1158
1159
1160
1161
1162
1163

1164
1165
1166
1167
1168
1169
1170






1171
1172
1173
1174
1175
1176
1177
1157
1158
1159
1160
1161
1162
1163

1164
1165






1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178







-
+

-
-
-
-
-
-
+
+
+
+
+
+







!!
!!
!!!! Tirets                                                                                       !!
!!
!!

# Tirets, énumérations et dialogues
__<s>/typo(typo_tiret_début_ligne)__    ^[-_][  ] <<- ->> "— |– "           && Dialogues et énumérations : un tiret cadratin [1] ou demi-cadratin [2], suivi d’un espace insécable, est requis.
__<s>/typo(typo_tiret_début_ligne)__    ^[-_][  ] <<- ->> "— |– "           && Dialogues et énumérations : un tiret cadratin [1] ou demi-cadratin [2], suivi d’un espace insécable, est requis.
__<s>/typo(typo_tiret_dans_dialogue)__  ^ *«[  ](-[  ]) @@$ <<- -1>> "— |– "
    && Dialogues : un tiret cadratin [1] ou demi-cadratin [2], 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.)
__<s>/nbsp(nbsp_après_tiret1)__          ^([—–]) +  @@0  <<- ->> "\1 "      && Dialogues et énumérations : ce tiret doit être suivi d’un espace insécable.
__<s>/nbsp(nbsp_après_tiret2)__  ^([—–-])\d  @@0  <<- -1>> "— |– |−"        && Dialogues et énumérations : il faut tiret cadratin [1] ou demi-cadratin [2] suivi d’un espace insécable. S’il s’agit de représenter un nombre négatif, utilisez le signe “moins” [3].
__<s>/nbsp(nbsp_après_tiret3)__  ^([—–-])[\w«“‘]  @@0  <<- -1>> "— |– "     && Dialogues et énumérations : il faut tiret cadratin [1] ou demi-cadratin [2] suivi d’un espace insécable.
__<s>/typo(typo_tiret_incise1)__        " - (?=[0-9])" <<- ->> " – | — | − | −"     && Tiret d’incise : un tiret demi-cadratin [1] ou cadratin [2] est requis. (Ou éventuellement le signe “moins” s’il s’agit d’une soustraction [3] ou de représenter un nombre négatif [4].)
__<s>/typo(typo_tiret_incise2)__        " - (?![0-9])" <<- ->> " – | — | − "        && Tiret d’incise : un tiret demi-cadratin [1] ou cadratin [2] est requis. (Ou éventuellement le signe “moins” [3], s’il s’agit d’une soustraction.)
    && Dialogues : un tiret cadratin [1] ou demi-cadratin [2], 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.)
__<s>/nbsp(nbsp_après_tiret1)__          ^([—–]) +  @@0  <<- ->> "\1 "      && Dialogues et énumérations : ce tiret doit être suivi d’un espace insécable.
__<s>/nbsp(nbsp_après_tiret2)__  ^([—–-])\d  @@0  <<- -1>> "— |– |−"        && Dialogues et énumérations : il faut tiret cadratin [1] ou demi-cadratin [2] suivi d’un espace insécable. S’il s’agit de représenter un nombre négatif, utilisez le signe “moins” [3].
__<s>/nbsp(nbsp_après_tiret3)__  ^([—–-])[\w«“‘]  @@0  <<- -1>> "— |– "     && Dialogues et énumérations : il faut tiret cadratin [1] ou demi-cadratin [2] suivi d’un espace insécable.
__<s>/typo(typo_tiret_incise1)__        " - (?=[0-9])" <<- ->> " – | — | − | −"     && Tiret d’incise : un tiret demi-cadratin [1] ou cadratin [2] est requis. (Ou éventuellement le signe “moins” s’il s’agit d’une soustraction [3] ou de représenter un nombre négatif [4].)
__<s>/typo(typo_tiret_incise2)__        " - (?![0-9])" <<- ->> " – | — | − "        && Tiret d’incise : un tiret demi-cadratin [1] ou cadratin [2] est requis. (Ou éventuellement le signe “moins” [3], s’il s’agit d’une soustraction.)

TEST: {{- }}Ce tiret n’est correct nulle part.                              ->> "— |– "
TEST: {{– }}Il manque toujours un espace insécable !                        ->> "– "
TEST: {{— }}Idem ! etc.                                                     ->> "— "
TEST: {{_ }}C’est long !                                                    ->> "— |– "
TEST: {{—}}Viens là.                                                        ->> "— |– "
TEST: {{-}}200 degrés                                                       ->> "— |– |−"
1205
1206
1207
1208
1209
1210
1211
1212

1213
1214
1215
1216
1217
1218
1219
1206
1207
1208
1209
1210
1211
1212

1213
1214
1215
1216
1217
1218
1219
1220







-
+







__<s>/typo(typo_inférieur_ou_égal)__                [\w  ](<=)[\w  ]  @@* <<- -1>> ≤|⩽              && Signe “inférieur ou égal”.
__<s>/typo(typo_supérieur_ou_égal)__                [\w  ](>=)[\w  ]  @@* <<- -1>> ≥|⩾              && Signe “supérieur ou égal”.

TEST: 3{{>=}}2
TEST: est-ce que a {{<=}} c


# ligatures typographiques : fi, fl, ff, ffi, ffl, ft, st
# ligatures typographiques : fi, fl, ff, ffi, ffl, ft, st
__<s>/liga(ligatures_typographiques)__              [fiflffffifflſtst] <<- ->> =undoLigature(\0)             && Suppression de la ligature typographique.

TEST: __liga__ un {{fl}}ottement                                           ->> fl
TEST: __liga__ une belle {{fi}}gure                                        ->> fi


#__<s]/typo__  °C <<- ->> ℃                                                      && Typographie. Utilisez le signe des degrés approprié.
1252
1253
1254
1255
1256
1257
1258

1259
1260

1261
1262
1263
1264
1265
1266
1267

1268
1269
1270
1271
1272
1273
1274
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







+

-
+







+








TEST: C’est {{«}}stupide{{”}}.
TEST: Quel {{“}}emmerdeur{{»}}, ce gars-là.


__<s>/typo(typo_cohérence_guillemets_doubles_ouvrants)__
    (“)[^”’“«]+?(’)(?![\w'’])  @@0,$
        <<- not ( after("^”") and re.search("“(?:l|d|c|ç|n|m|t|s|j|z|[A-ZÇ]|qu|jusqu|puisqu|lorsqu|quoiqu|quelqu)’", \0) ) >>>
        <<- not before("\\w$") -1>> "‘"                                                             && Guillemet ouvrant différent du guillemet fermant (’).
        <<- -2>> ”                                                                                  && Guillemet fermant différent du guillemet ouvrant (“).
        <<- __also__ -2>> ”                                                                         && Guillemet fermant différent du guillemet ouvrant (“).
__<s>/typo(typo_cohérence_guillemets_doubles_fermants)__
    (‘)[^’“«]+?(”)  @@0,$
        <<- not before("\\w$") -1>> "“"                                                             && Guillemet ouvrant différent du guillemet fermant (”).
        <<- not after("^\\w") -2>> ’                                                                && Guillemet fermant différent du guillemet ouvrant (‘).

TEST: Tu sais, {{‘}}ton ami{{”}} est venu.
TEST: Oui, je vois, mais c’est quand même un {{“}}salopard{{’}}.
TEST: Après “n’”, il faut une forme verbale.


__[i]/typo(typo_guillemets_doubles_ouvrants_non_fermés)__
    (“)\w[^”"»]+$  @@0
        <<- -1>> _                                                                                  && Guillemets fermants introuvables dans la suite du paragraphe.
__[i]/typo(typo_guillemets_doubles_fermants_non_ouverts)__
    ^[^“„«"]+\w(”)  @@$
1325
1326
1327
1328
1329
1330
1331
1332

1333
1334
1335
1336
1337
1338
1339
1340

1341
1342
1343
1344
1345
1346
1347
1328
1329
1330
1331
1332
1333
1334

1335
1336
1337
1338
1339
1340
1341
1342

1343
1344
1345
1346
1347
1348
1349
1350







-
+







-
+







TEST: {{4000}} Å                                ->> 4 000
TEST: {{3240}} µA                               ->> 3 240
TEST: 1111 0011,01 (binaire)


__[s>(num_grand_nombre_avec_points)__
    \d\d?\d?(?:[.]\d\d\d)+(?![0-9])
        <<- option("num") ->> =\0.replace(".", " ")                                                 && Grands nombres : utilisez des espaces insécables plutôt que des points.
        <<- option("num") ->> =\0.replace(".", " ")                                                 && Grands nombres : utilisez des espaces insécables plutôt que des points.
        <<- ~>> =\0.replace(".", "_")

TEST: il cumule {{200.000.000}} de pertes sèches


__[s](num_grand_nombre_avec_espaces)__
    \d\d?\d?(?: \d\d\d)+
        <<- option("num") ->> =\0.replace(" ", " ")                                                 && Grands nombres : utilisez des espaces insécables.
        <<- option("num") ->> =\0.replace(" ", " ")                                                 && Grands nombres : utilisez des espaces insécables.
        <<- ~>> =\0.replace(" ", "_")

TEST: Il a perdu {{20 000}} euros à la Bourse en un seul mois.


!!
!!
1366
1367
1368
1369
1370
1371
1372
1373
1374


1375
1376
1377
1378
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
1369
1370
1371
1372
1373
1374
1375


1376
1377
1378
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







-
-
+
+















-
+








-
+


-
+










-
-
+
+








-
+







!!
!!!! 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)/") 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).
        -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.



!!
!!
!!!! OCR                                                                                          !!
!!
!!

# ?
__<s]/ocr(ocr_point_interrogation)__
    [  ]7
        <<- after0("^(?: +[A-ZÉÈÂ(]|…|[.][.]+| *$)") ->> " ?"                                       && Erreur de numérisation ?
        <<- after0("^(?: +[A-ZÉÈÂ(]|…|[.][.]+| *$)") ->> " ?"                                       && Erreur de numérisation ?

TEST: __ocr__ des chiffrements{{ 7}} Paul n’en sait rien.
TEST: __ocr__ veux-tu en parler{{ 7}}


# !
__<s]/ocr(ocr_exclamation1)__
    [  ]I(?![ ’'][aâeéèêëiîïoôuy])
        <<- ->> " !"                                                                                && Erreur de numérisation ?
        <<- ->> " !"                                                                                && Erreur de numérisation ?
__<s]/ocr(ocr_exclamation2)__
    [  ]1(?= [A-ZÉÈÂÎ])
        <<- not morph(word(1), ";S") and not morph(word(-1), ":R") ->> " !"                         && Erreur de numérisation ?
        <<- not morph(word(1), ";S") and not morph(word(-1), ":R") ->> " !"                         && Erreur de numérisation ?

TEST: __ocr__ Oh{{ I}} c’est pas formidable ?
TEST: __ocr__ Vraiment{{ 1}} Paul n’en savait rien.
TEST: __ocr__ Ça prendra 1 h.
TEST: __ocr__ Valeur : 1 KHz.


# Nombres
__[i]/ocr(ocr_nombres)__
    [\dOI][\dOI]+
        <<- \0 == "II" ->> 11|Il                                                                    && Erreur de numérisation ?
        <<- __else__ and not \0.isdigit() ->> =\0.replace("O", "0").replace("I", "1")               && Erreur de numérisation ?
        <<- \0 == "II" ->> 11|Il                                                                    && Erreur de numérisation ?
        <<- __else__ and not \0.isdigit() ->> =\0.replace("O", "0").replace("I", "1")               && Erreur de numérisation ?

TEST: __ocr__ {{II}} pleut tout le temps.
TEST: __ocr__ En l’an {{2OO1}}, tout commença.


## Casse
__[s]/ocr(ocr_casse_pronom_vconj)__
    {w2}-(On|Ils?|Elles?|Tu|Je|Nous|Vous|Mêmes?|Ci|Là|Une?s|Les?|La|Leur) @@$
        <<- -1>> =\1.lower()                                                                        && Erreur de numérisation ? Casse douteuse.
        <<- -1>> =\1.lower()                                                                        && Erreur de numérisation ? Casse douteuse.

TEST: __ocr__ Part-{{On}} demain ?
TEST: __ocr__ À ce compte-{{Ci}}, on n’en viendra jamais à bout.
TEST: __ocr__ Quelques-{{Uns}} sont incapables d’y parvenir.


## Mots inconnus du dictionnaire
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477




1478
1479
1480
1481
1482
1483
1484
1470
1471
1472
1473
1474
1475
1476




1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487







-
-
-
-
+
+
+
+







TEST: __ocr__ {{[[}}voyons celà].
TEST: __ocr__ {{((}}voyons ceci).


## Mélange chiffres/lettres
__[i]/ocr(ocr_le_la_les_regex)__
    [1[\]][easrnxiocuwàéè]
        <<- \0.endswith("e") ->> le                                                                 && Erreur de numérisation ?
        <<- __else__ and \0.endswith("a") ->> la                                                    && Erreur de numérisation ?
        <<- __else__ and \0.endswith("à") ->> la|là                                                 && Erreur de numérisation ?
        <<- __else__ ->> le|la                                                                      && Erreur de numérisation ?
        <<- \0.endswith("e") ->> le                                                                 && Erreur de numérisation ?
        <<- __else__ and \0.endswith("a") ->> la                                                    && Erreur de numérisation ?
        <<- __else__ and \0.endswith("à") ->> la|là                                                 && Erreur de numérisation ?
        <<- __else__ ->> le|la                                                                      && Erreur de numérisation ?

TEST: __ocr__ avec {{1e}} chien du policier                                                 ->> le
TEST: __ocr__ il le jura sur {{1a}} tête de sa mère                                         ->> la
TEST: __ocr__ {{]à}}                                                                        ->> la|là
TEST: __ocr__ {{1c}} chat du voinsin est idiot                                              ->> le|la
TEST: __ocr__ oui, {{[e}} chien a faim                                                      ->> le

1493
1494
1495
1496
1497
1498
1499
1500

1501
1502
1503
1504
1505
1506
1507
1508

1509
1510
1511
1512
1513
1514
1515
1516
1517


1518
1519
1520
1521
1522
1523
1524
1496
1497
1498
1499
1500
1501
1502

1503
1504
1505
1506
1507
1508
1509
1510

1511
1512
1513
1514
1515
1516
1517
1518


1519
1520
1521
1522
1523
1524
1525
1526
1527







-
+







-
+







-
-
+
+







TEST: {{1a}} venue des problèmes                                ->> la
TEST: {{1es}} enfants sont au lit                               ->> les
TEST: Je… ne {{1e}}… crois pas…                                 ->> le


__[i]/ocr(ocr_les)__
    [1[\]][ea]s
        <<- ->> les                                                                                 && Erreur de numérisation ?
        <<- ->> les                                                                                 && Erreur de numérisation ?

TEST: __ocr__ {{1es}} jours clairs
TEST: __ocr__ {{[as}} amis sont présents


__[i]/ocr(ocr_l_regex)__
    ([1[][’'`‘])[aâeéèêëiîïoôuyh][\w-]*  @@0
        <<- -1>> l’|L’|j’|J’                                                                        && Erreur de numérisation ?
        <<- -1>> l’|L’|j’|J’                                                                        && Erreur de numérisation ?

TEST: __ocr__ {{1’}}année s’annonce agitée.
TEST: __ocr__ {{['}}ouverture du championnat est pour bientôt.


__[i]/ocr(ocr_il_regex)__
    1fs?
        <<- \0.endswith("s") ->> Ils|ils|ifs                                                        && Erreur de numérisation ?
        <<- __else__ ->> Il|il|if                                                                   && Erreur de numérisation ?
        <<- \0.endswith("s") ->> Ils|ils|ifs                                                        && Erreur de numérisation ?
        <<- __else__ ->> Il|il|if                                                                   && Erreur de numérisation ?

TEST: __ocr__ {{1fs}} s’en sortent comme ils peuvent.



!!!
!!!
1605
1606
1607
1608
1609
1610
1611
1612
1613


1614
1615
1616
1617
1618
1619
1620
1608
1609
1610
1611
1612
1613
1614


1615
1616
1617
1618
1619
1620
1621
1622
1623







-
-
+
+







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 ».
__[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
TEST: {{3O}} (chiffre avec un O).                                         ->> 30



!!!! Purge des références aux notes                                                               !!
1631
1632
1633
1634
1635
1636
1637
1638

1639
1640
1641
1642
1643
1644
1645
1634
1635
1636
1637
1638
1639
1640

1641
1642
1643
1644
1645
1646
1647
1648







-
+







TEST: POLITIQUESOCIÉTÉÉCONOMIEMONDECULTUREART DE VIVREMAGAZINE (qui peut faire boguer JavaScript avec certaines regex)


!!!! Traits d’union                                                                               !!

__[i]/tu(tu_trait_union_douteux)__
    ({w1})(?:--|—|–|−|⁃)({w1})  @@0,$
    <<- spell(\1+"-"+\2) and analyse(\1+"-"+\2, ":") ->> \1-\2                                      && Trait d’union : un tiret simple suffit.
    <<- spell(\1+"-"+\2) and analyse(\1+"-"+\2, ":") ->> \1-\2                                      && Trait d’union : un tiret simple suffit.

TEST: Nous préparons une {{contre–attaque}}.
TEST: Nous préparons une {{contre−attaque}}.


__<i]/tu(tu_t_euphonique_incorrect)__
    ([-–—− ]t(?:[’' ][-–—−]?|[-–—−][’' ]?))(ie?ls?|elles?|on|tu)  @@0,$
1778
1779
1780
1781
1782
1783
1784
1785

1786
1787
1788
1789

1790
1791
1792
1793

1794
1795
1796
1797

1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812

1813
1814
1815
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825
1826

1827
1828
1829
1830
1831
1832
1833
1781
1782
1783
1784
1785
1786
1787

1788
1789
1790
1791

1792
1793
1794
1795

1796
1797
1798
1799

1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
1813
1814

1815
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825
1826
1827
1828

1829
1830
1831
1832
1833
1834
1835
1836







-
+



-
+



-
+



-
+














-
+













-
+







!!
!!!! Virgules                                                                                     !!
!!
!!

__virg_virgules_manquantes__
    *WORD  etc  .
        <<- /virg/ -1.:0>> , etc.                                                                   && Avant « etc. », il faut mettre une virgule.|https://fr.wiktionary.org/wiki/etc.
        <<- /virg/ -1.:0>> , etc.                                                                   && Avant « etc. », il faut mettre une virgule.|https://fr.wiktionary.org/wiki/etc.

    *WORD  car  @:(?:Os|D)
        <<- /virg/ not morph(\1, ":[DR]") -1.:2>> , car
        && Si « car » est la conjonction de coordination, une virgule est peut-être souhaitable.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=3447
        && Si « car » est la conjonction de coordination, une virgule est peut-être souhaitable.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=3447

    *WORD  mais  $:Os
        <<- /virg/ not morph(\1, ":D.*:[me]:[si]") -1.:2>> , mais
        && Si « mais » est la conjonction de coordination, une virgule est souhaitable si elle introduit une nouvelle proposition.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=3445
        && Si « mais » est la conjonction de coordination, une virgule est souhaitable si elle introduit une nouvelle proposition.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=3445

    *WORD  donc  [je|j’|il|on]
        <<- /virg/ not morph(\1, ":[VG]") -1.:2>> , donc
        && Si « donc » est la conjonction de coordination, une virgule est souhaitable si elle introduit une nouvelle proposition.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=3448
        && Si « donc » est la conjonction de coordination, une virgule est souhaitable si elle introduit une nouvelle proposition.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=3448

TEST: Un chien, un chat{{ etc.}}                                            ->> , etc.
TEST: Je suis fatigué{{ car}} ils ont joué toute la nuit.                   ->> , car
TEST: Je suis fatigué{{ mais}} il a joué toute la nuit.                     ->> , mais
TEST: il l’a vu de ses propres yeux{{ donc}} il faut y croire.              ->> , donc
TEST: il s’est donc tu
TEST: c’était donc elles les meilleures
TEST: c’était eux qui prenaient tous les risques
TEST: il avançait donc le moyen d’y parvenir
TEST: Chacun peut l’entendre d’une manière différente et donc on se demande bien ce qui est mesuré dans les réponses.


__virg_fin_dialogue__
    .  »  ~^[a-zéà]
        <<- /virg/ -1:2>> " »,| »"          && Ou il faut une virgule (exemple : « Je viens », dit-il). Ou le point est superflu. Ou il faut une majuscule sur le mot suivant.
        <<- /virg/ -1:2>> " »,| »"          && Ou il faut une virgule (exemple : « Je viens », dit-il). Ou le point est superflu. Ou il faut une majuscule sur le mot suivant.

    ,  »  ?,¿  ~^[a-zéà]
        <<- /virg/ -1:-2>> " »,| »"         && Virgule mal placée ou superflue.

TEST: « Ça suffit{{. »}} dit-elle.                                          ->> " »,| »"
TEST: « J’en ai plus qu’assez{{, »}} dis-je.                                ->> " »,| »"
TEST: « C’est ainsi{{, »,}} dis-je.                                         ->> " »,| »"
TEST: dès son premier rendez-vous au centre
TEST: Depuis combien de temps fumez-vous ?


__virg_virgule_avant_points_suspension__
    ,  …
        <<- /virg/ ->> …                    && Typographie : pas de virgule avant les points de suspension.
        <<- /virg/ ->> …                    && Typographie : pas de virgule avant les points de suspension.

TEST: ceci, cela{{, …}}                                                     ->> …


__virg_virgule_après_point__
    *WORD  .  ,
        <<- /virg/ space_after(\1, 0, 0) and space_after(\2, 0, 0)
2827
2828
2829
2830
2831
2832
2833
2834

2835
2836
2837
2838
2839
2840
2841
2842
2843
2844

2845
2846
2847
2848
2849
2850
2851
2830
2831
2832
2833
2834
2835
2836

2837
2838
2839
2840
2841
2842
2843
2844
2845
2846

2847
2848
2849
2850
2851
2852
2853
2854







-
+









-
+







TEST: il n’y a pas faute.
TEST: une séparation hommes/femmes



!!!! Élisions                                                                                     !!

# presque : élision
# presque : élision
__typo_presque__
    presqu’  *WORD
        <<- /typo/ not morph(\2, ">[iî]le/") -1>> "presque "            && Pas d’élision autorisée sur “presque”, sauf avec “presqu’île”.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=1745

TEST: {{Presqu’}}exclusivement bâtie en pierre.
TEST: C’est une presqu’île.
TEST: Cette presqu’ile est particulièrement venteuse.


# quelque : élision
# quelque : élision
__typo_quelque__
    quelqu’  *WORD
        <<- /typo/ not value(\2, "|un|une|") -1>> "quelque "            && Pas d’élision autorisée sur “quelque”, sauf avec “quelqu’un” ou “quelqu’une”.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=1745

TEST: {{Quelqu’}}absurde que ce soit, il faut y céder.
TEST: quelqu’un vient.
TEST: elle s’en est allée avec quelqu’une…
2992
2993
2994
2995
2996
2997
2998
2999

3000
3001
3002
3003
3004
3005
3006
2995
2996
2997
2998
2999
3000
3001

3002
3003
3004
3005
3006
3007
3008
3009







-
+







    ne [lui|leur] en            rendez-vous
    ne [le|la|les|lui|leur]     rendez-vous
    [me|ne|nous|vous|lui]       rendez-vous
        <<- =>> define(\-1, ":VCi1:2p")
        <<- !-1>>

#   [un|mon|ton|son|ce|mes|tes|ses|leurs] rendez-vous
#   rendez-vous seulement défini comme :N:m:i  dans le dictionnaire
#   rendez-vous seulement défini comme <:N:m:i>  dans le dictionnaire

__imp_verbes_composés_impératifs__
    ~\w-l(?:es?|a)-(?:[mt]oi|nous|leur)$
    ~\w-(?:[nv]ous|lui|leur)-en$
    ~\w-[mt]’en$
    ~\w-[mt]’y$
        <<- /imp/ morphVC(\1, ":V", ":E") ->> =suggVerbImpe(\1, True)                               && Ceci n’est pas une forme impérative correcte.|http://fr.wikipedia.org/wiki/Imp%C3%A9ratif_%28grammaire%29
3109
3110
3111
3112
3113
3114
3115
3116

3117
3118
3119

3120
3121
3122
3123
3124
3125
3126
3112
3113
3114
3115
3116
3117
3118

3119
3120
3121

3122
3123
3124
3125
3126
3127
3128
3129







-
+


-
+








# This graph is parsed only if option <ocr> is activated.

## Casse
__ocr_casse__
    /_Tit_
        <<- /ocr/ before("\\w") and (morph(\1, ":G", ":M") or morph(\1, ":[123][sp]", ":[MNA]|>Est/"))
        -:>> =\1.lower()                                                                            && Erreur de numérisation ? Casse improbable.
        -:>> =\1.lower()                                                                            && Erreur de numérisation ? Casse improbable.

    [L’|D’|N’|M’|T’|S’|C’|Ç’]  *WORD
        <<- /ocr/ before("\\w") and not \2.isupper() -1:>> =\1.lower()                              && Erreur de numérisation ? Casse douteuse.
        <<- /ocr/ before("\\w") and not \2.isupper() -1:>> =\1.lower()                              && Erreur de numérisation ? Casse douteuse.

TEST: __ocr__ regarde dans l’obscurité de {{L’}}entrepôt                        ->> l’
TEST: __ocr__ votre ami la regarde, {{Vous}} ne l’avez pas achetée              ->> vous
TEST: __ocr__ pour accommoder son regard, {{La}} lourde forme demeure           ->> la
TEST: __ocr__ parler de Nicole, {{Le}} sommeil ne vient pas.                    ->> le
TEST: __ocr__ a fait de toi, Charles, {{Tu}} étais beau quand                   ->> tu
TEST: __ocr__ s’habituer à se faire servir, {{Au}} début ça                     ->> au
3144
3145
3146
3147
3148
3149
3150
3151

3152
3153
3154

3155
3156
3157

3158
3159
3160

3161
3162
3163

3164
3165
3166

3167
3168
3169

3170
3171
3172

3173
3174
3175
3176
3177
3178
3179
3180
3181
3182
3183
3184
3185
3186
3187
3188
3189
3190
3191
3192
3193

3194
3195
3196
3197
3198
3199
3200
3201
3202
3203
3204
3205
3206
3207
3208
3209
3210

3211
3212
3213
3214
3215
3216
3217
3218

3219
3220
3221
3222
3223
3224
3225
3226

3227
3228
3229
3230
3231
3232
3233
3234

3235
3236
3237
3238
3239
3240
3241
3242

3243
3244
3245
3246
3247
3248
3249
3250
3251
3252
3253
3254
3255
3256
3257
3258

3259
3260
3261
3262
3263
3264
3265
3266
3267
3268
3269
3270
3271
3272
3273
3274

3275
3276
3277
3278
3279
3280
3281
3282

3283
3284
3285
3286
3287
3288
3289
3290
3291
3292
3293
3294
3295
3296
3297
3298

3299
3300
3301

3302
3303
3304
3305
3306
3307
3308
3309
3310
3311

3312
3313
3314
3315
3316
3317
3318
3319

3320
3321
3322
3323
3324
3325
3326
3327

3328
3329
3330
3331
3332
3333
3334
3335

3336
3337
3338
3339
3340
3341
3342
3343

3344
3345
3346
3347
3348
3349
3350
3351

3352
3353
3354

3355
3356
3357
3358
3359
3360
3361
3362
3363
3364
3365
3366
3367
3368

3369
3370
3371
3372
3373
3374
3375
3376
3377

3378
3379
3380

3381
3382
3383

3384
3385
3386

3387
3388
3389
3390
3391
3392
3393
3394
3395
3396
3397

3398
3399
3400
3401
3402
3403
3404
3405

3406
3407
3408
3409
3410
3411
3412
3413

3414
3415
3416
3417
3418
3419
3420
3421
3422
3423

3424
3425
3426

3427
3428
3429
3430
3431
3432
3433
3434
3435

3436
3437
3438
3439
3440
3441
3442
3443

3444
3445
3446
3447
3448
3449
3450
3451
3452

3453
3454
3455

3456
3457
3458

3459
3460
3461
3462
3463
3464
3465
3147
3148
3149
3150
3151
3152
3153

3154
3155
3156

3157
3158
3159

3160
3161
3162

3163
3164
3165

3166
3167
3168

3169
3170
3171

3172
3173
3174

3175
3176
3177
3178
3179
3180
3181
3182
3183
3184
3185
3186
3187
3188
3189
3190
3191
3192
3193
3194
3195

3196
3197
3198
3199
3200
3201
3202
3203
3204
3205
3206
3207
3208
3209
3210
3211
3212

3213
3214
3215
3216
3217
3218
3219
3220

3221
3222
3223
3224
3225
3226
3227
3228

3229
3230
3231
3232
3233
3234
3235
3236

3237
3238
3239
3240
3241
3242
3243
3244

3245
3246
3247
3248
3249
3250
3251
3252
3253
3254
3255
3256
3257
3258
3259
3260

3261
3262
3263
3264
3265
3266
3267
3268
3269
3270
3271
3272
3273
3274
3275
3276

3277
3278
3279
3280
3281
3282
3283
3284

3285
3286
3287
3288
3289
3290
3291
3292
3293
3294
3295
3296
3297
3298
3299
3300

3301
3302
3303

3304
3305
3306
3307
3308
3309
3310
3311
3312
3313

3314
3315
3316
3317
3318
3319
3320
3321

3322
3323
3324
3325
3326
3327
3328
3329

3330
3331
3332
3333
3334
3335
3336
3337

3338
3339
3340
3341
3342
3343
3344
3345

3346
3347
3348
3349
3350
3351
3352
3353

3354
3355
3356

3357
3358
3359
3360
3361
3362
3363
3364
3365
3366
3367
3368
3369
3370

3371
3372
3373
3374
3375
3376
3377
3378
3379

3380
3381
3382

3383
3384
3385

3386
3387
3388

3389
3390
3391
3392
3393
3394
3395
3396
3397
3398
3399

3400
3401
3402
3403
3404
3405
3406
3407

3408
3409
3410
3411
3412
3413
3414
3415

3416
3417
3418
3419
3420
3421
3422
3423
3424
3425

3426
3427
3428

3429
3430
3431
3432
3433
3434
3435
3436
3437

3438
3439
3440
3441
3442
3443
3444
3445

3446
3447
3448
3449
3450
3451
3452
3453
3454

3455
3456
3457

3458
3459
3460

3461
3462
3463
3464
3465
3466
3467
3468







-
+


-
+


-
+


-
+


-
+


-
+


-
+


-
+




















-
+
















-
+







-
+







-
+







-
+







-
+















-
+















-
+







-
+















-
+


-
+









-
+







-
+







-
+







-
+







-
+







-
+


-
+













-
+








-
+


-
+


-
+


-
+










-
+







-
+







-
+









-
+


-
+








-
+







-
+








-
+


-
+


-
+







TEST: __ocr__ {{J }}arrive demain


# Note: l’option “mapos” cherche les apostrophes manquantes après les lettres l, d, n, m, t, s, j, c, ç
__ocr_lettres_isolées2!2__
    [b|c|d|e|f|g|h|i|j|k|l|m|n|o|p|q|r|s|t|u|v|w|x|z]
        <<- /ocr/ before("[   ]$") and not before("\\d[   ]+$") and not (\1.isupper() and value(>1, "|.|<end>|"))
        ->> _                                                                                       && Lettre isolée : erreur de numérisation ?
        ->> _                                                                                       && Lettre isolée : erreur de numérisation ?

    [á|â|ä]
        <<- /ocr/ ->> à|a                                                                           && Lettre isolée : erreur de numérisation ?
        <<- /ocr/ ->> à|a                                                                           && Lettre isolée : erreur de numérisation ?

    [é|è|ê|ë]
        <<- /ocr/ ->> e|à|a                                                                         && Lettre isolée : erreur de numérisation ?
        <<- /ocr/ ->> e|à|a                                                                         && Lettre isolée : erreur de numérisation ?

    [í|ì|î|ï]
        <<- /ocr/ ->> i|à|a                                                                         && Lettre isolée : erreur de numérisation ?
        <<- /ocr/ ->> i|à|a                                                                         && Lettre isolée : erreur de numérisation ?

    [ó|ò|ö]
        <<- /ocr/ ->> ô|o|a|a                                                                       && Lettre isolée : erreur de numérisation ?
        <<- /ocr/ ->> ô|o|a|a                                                                       && Lettre isolée : erreur de numérisation ?

    [ú|ù|û|ü]
        <<- /ocr/ ->> u|à|a                                                                         && Lettre isolée : erreur de numérisation ?
        <<- /ocr/ ->> u|à|a                                                                         && Lettre isolée : erreur de numérisation ?

    [ý|ỳ|ÿ|ŷ]
        <<- /ocr/ ->> y                                                                             && Lettre isolée : erreur de numérisation ?
        <<- /ocr/ ->> y                                                                             && Lettre isolée : erreur de numérisation ?

    ç
        <<- /ocr/ ->> c|a|à                                                                         && Lettre isolée : erreur de numérisation ?
        <<- /ocr/ ->> c|a|à                                                                         && Lettre isolée : erreur de numérisation ?

TEST: __ocr__ des verres luisent sur {{i}} le bureau blanc.
TEST: __ocr__ la voix, {{e}} est celle de…
TEST: __ocr__ ressemble {{h}} une fenêtre de serre.
TEST: __ocr__ viens {{á}} nous
TEST: __ocr__ c’est ça avoir {{é}} faire à lui.
TEST: __ocr__ au point {{í}}
TEST: __ocr__ c’est {{ö}} combien difficile
TEST: __ocr__ viens {{ù}} nous
TEST: __ocr__ elle {{ŷ}} vient
TEST: __ocr__ {{Ç}} n’est pas là.
TEST: __ocr__ Ça a duré 3 h.
TEST: __ocr__ c’est alors que je suis fort.
TEST: __ocr__ X
TEST: __ocr__ V.


# virgules
__ocr_virgules__
    [il|le|la|l’|les|de|d’|ne|n’|me|m’|te|t’|se|s’|à|ce|cet|cette|mon|ma|ta|sa|mes|tes|ses|nos|vos|quelque|quelques|au|aux] ,
        <<- /ocr/ space_after(\1, 0, 0) and not \1.isupper() or value(\1, "|à|") ->> \1             && Erreur de numérisation ? Virgule superflue ?
        <<- /ocr/ space_after(\1, 0, 0) and not \1.isupper() or value(\1, "|à|") ->> \1             && Erreur de numérisation ? Virgule superflue ?

TEST: __ocr__ Pierre entre pour {{se,}} rapprocher de L
TEST: __ocr__ je voudrais faire une question ou deux sur une maison de ce village, la… comment l’appelle-t-on ?


# A
__ocr_A__
    À
        <<- /ocr/ not value(<1, "|<start>|—|–|") ->> A                                              && Erreur de numérisation ?

TEST: __ocr__ Va jusqu’au point {{À}}


# âge / age
__ocr_âge__
    >age
        <<- /ocr/ ->> =\1.replace("a", "â").replace("A", "Â")                                       && Erreur de numérisation ?
        <<- /ocr/ ->> =\1.replace("a", "â").replace("A", "Â")                                       && Erreur de numérisation ?

TEST: __ocr__ l’{{age}}


# autre / antre
__ocr_autre__
    >antre
        <<- /ocr/ ->> =\1.replace("n", "u")                                                         && Erreur de numérisation ?
        <<- /ocr/ ->> =\1.replace("n", "u")                                                         && Erreur de numérisation ?

TEST: __ocr__ cet {{antre}} gars lui semblait bien louche.


# avec / aven / arec
__ocr_avec__
    [arec|aven]
        <<- /ocr/ ->> avec                                                                          && Erreur de numérisation ?
        <<- /ocr/ ->> avec                                                                          && Erreur de numérisation ?

TEST: __ocr__ Elle s’en alla {{arec}} eux sans un regard en arrière.


# avaient / avalent
__ocr_avaient__
    avalent
        <<- /ocr/ ->> avaient                                                                       && Erreur de numérisation ?
        <<- /ocr/ ->> avaient                                                                       && Erreur de numérisation ?

TEST: __ocr__ Ils {{avalent}} très faim.


# avais / avals / axais
__ocr_avis__
    [avals|axais]
        <<- /ocr/ ->> avais                                                                         && Erreur de numérisation ?
        <<- /ocr/ ->> avais                                                                         && Erreur de numérisation ?

TEST: __ocr__ j’{{axais}} souvent perdu le contrôle de moi-même, mais jamais à ce point


# brait / bruit
__ocr_bruit__
    brait
        <<- /ocr/ not value(<1, "|il|ne|n’|âne|ânesse|") ->> bruit                                  && Erreur de numérisation ?

TEST: __ocr__ tout ce qui {{brait}} dans la nuit


# car dans / cardans
__ocr_car_dans__
    cardans
        <<- /ocr/ ->> car dans                                                                      && Erreur de numérisation ?
        <<- /ocr/ ->> car dans                                                                      && Erreur de numérisation ?

TEST: __ocr__ On se tut tous, {{cardans}} l’armée on apprend à la boucler.


# cela
__ocr_cela__
    Gela
        <<- /ocr/ not value(<1, "|il|ne|elle|") ->> Cela                                            && Erreur de numérisation ?

TEST: __ocr__ {{Gela}}, on n’en veut plus.


# celui / celai
__ocr_celui__
    celai
        <<- /ocr/ not value(<1, "|je|ne|le|la|les|") ->> celui                                      && Erreur de numérisation ?
        <<- /ocr/ not value(<1, "|je|ne|le|la|les|") ->> celui                                      && Erreur de numérisation ?

TEST: __ocr__ je suis déjà venu et {{celai}} qui viendra encore.


# ces / cos
__ocr_ces__
    cos
        <<- /ocr/ ->> ces                                                                           && Erreur de numérisation ?
        <<- /ocr/ ->> ces                                                                           && Erreur de numérisation ?

TEST: __ocr__ {{cos}} problèmes sont insolubles.


# C’était / Celait
__ocr_c_était__
    celait
        <<- /ocr/ ->> c’était                                                                       && Erreur de numérisation ?

TEST: __ocr__ {{celait}} perdu d’avance.


# cette / celte / cotte
__ocr_cette__
    [celte|celle]  @:N.*:f:s
        <<- /ocr/ -1>> cette                                                                        && Erreur de numérisation ?
        <<- /ocr/ -1>> cette                                                                        && Erreur de numérisation ?

    cotte
        <<- /ocr/ not morph(<1, ":D.*:f:[si]") ->> cette                                            && Erreur de numérisation ?
        <<- /ocr/ not morph(<1, ":D.*:f:[si]") ->> cette                                            && Erreur de numérisation ?

TEST: __ocr__ mais {{celte}} femme semblait savoir ce qu’elle faisait.
TEST: __ocr__ avec {{celle}} tentative d’humour, il pensait nous faire rire.
TEST: __ocr__ on poirautait, {{cotte}} mariée n’arrivait pas à se décider.


# chère / obère
__ocr_chère__
    obère
        <<- /ocr/ not value(<1, "|j’|n’|l’|m’|t’|s’|il|on|elle|ça|cela|ceci|") ->> chère            && Erreur de numérisation ?
        <<- /ocr/ not value(<1, "|j’|n’|l’|m’|t’|s’|il|on|elle|ça|cela|ceci|") ->> chère            && Erreur de numérisation ?

TEST: __ocr__ cette femme {{obère}} à notre cœur.


# Comme / Gomme
__ocr_comme__
    Gomme
        <<- /ocr/ not value(<1, "|et|ou|où|") ->> Comme                                             && Erreur de numérisation ?
        <<- /ocr/ not value(<1, "|et|ou|où|") ->> Comme                                             && Erreur de numérisation ?

TEST: __ocr__ {{Gomme}} il était sage à cette époque-là !


# Comment / Gomment
__ocr_comment__
    Gomment
        <<- /ocr/ ->> Comment                                                                       && Erreur de numérisation ?
        <<- /ocr/ ->> Comment                                                                       && Erreur de numérisation ?

TEST: __ocr__ {{Gomment}} s’en sortir avec tous ces retards qui s’accumulent ?


# contre / coutre / contra
__ocr_contre__
    [contra|coutre|coutra]
        <<- /ocr/ ->> contre                                                                        && Erreur de numérisation ?
        <<- /ocr/ ->> contre                                                                        && Erreur de numérisation ?

TEST: __ocr__ elle était {{coutre}} cette idée et le serait toujours.


# de / da
__ocr_de__
    da
        <<- /ocr/ ->> de                                                                            && Erreur de numérisation ?
        <<- /ocr/ ->> de                                                                            && Erreur de numérisation ?

TEST: __ocr__ Le nombre {{da}} personnes endettées augmente sans cesse.


# dans / bans / clans
__ocr_dans__
    bans
        <<- /ocr/ not morph(<1, ":D.*:p") ->> dans                                                  && Erreur de numérisation ?
        <<- /ocr/ not morph(<1, ":D.*:p") ->> dans                                                  && Erreur de numérisation ?

    [clans|dons]  [le|la|l’|les|un|une|ce|cet|cette|ces|mon|ton|son|ma|ta|sa|mes|tes|ses|notre|votre|nos|vos|leur|leurs|chaque|chacun|plusieurs|quelques|maints|maintes|tout|tous|toute|toutes|certains|certaines|nombre]
        <<- /ocr/ not morph(<1, ":D.*:p") -1>> dans                                                 && Erreur de numérisation ?
        <<- /ocr/ not morph(<1, ":D.*:p") -1>> dans                                                 && Erreur de numérisation ?

    dam
        <<- /ocr/ not (value(<1, "|grand|") and value(<2, "|au|")) ->> dans                         && Erreur de numérisation ?

TEST: __ocr__ Mais {{bans}} cette ferme, tout était bien organisé.
TEST: __ocr__ sache que, {{clans}} cette ferme, on ne fait que du bio.
TEST: __ocr__ renvoyons ces chiens {{dam}} leur niche
TEST: __ocr__ nous avons vaincu, au grand dam de tous ces grands messieurs


# dame / darne
__ocr_dame__
    [>darne|>daine]
        <<- /ocr/ ->> =\1.replace("rn", "m").replace("in", "m").replace("RN", "M").replace("IN", "M")   && Erreur de numérisation ?
        <<- /ocr/ ->> =\1.replace("rn", "m").replace("in", "m").replace("RN", "M").replace("IN", "M")   && Erreur de numérisation ?

TEST: __ocr__ ces {{darnes}} arrivèrent avec dix minutes d’avance.
TEST: __ocr__ cette {{daine}} élégamment vêtue.


# dé / de / dés / des / dès / dos
__ocr_de_des__
    dé
        <<- /ocr/ not morph(<1, ":D.*:m:[si]") ->> de                                               && Erreur de numérisation ?
        <<- /ocr/ not morph(<1, ":D.*:m:[si]") ->> de                                               && Erreur de numérisation ?

    dés
        <<- /ocr/ not morph(<1, ":D.*:m:p") ->> des|dès                                             && Erreur de numérisation ?
        <<- /ocr/ not morph(<1, ":D.*:m:p") ->> des|dès                                             && Erreur de numérisation ?

    do
        <<- /ocr/ ->> de                                                                            && Erreur de numérisation ?
        <<- /ocr/ ->> de                                                                            && Erreur de numérisation ?

    dos
        <<- /ocr/ not morph(<1, ":D.*:[me]") ->> des|dès                                            && Erreur de numérisation ?
        <<- /ocr/ not morph(<1, ":D.*:[me]") ->> des|dès                                            && Erreur de numérisation ?

TEST: __ocr__ {{dé}} gros camions circulaient toute la journée
TEST: __ocr__ {{dés}} fois, ça ne passe pas
TEST: __ocr__ {{do}} bon matin.
TEST: __ocr__ {{dos}} camions cabossés à n’en plus finir


# de la / delà
__ocr_de_la__
    delà
        <<- /ocr/ not value(<1, "|au|de|en|par|") ->> de la|de là                                   && Erreur de numérisation ?
        <<- /ocr/ not value(<1, "|au|de|en|par|") ->> de la|de là                                   && Erreur de numérisation ?

TEST: __ocr__ la peinture {{delà}} maison s’écaillait


# doute / cloute
__ocr_doute__
    cloute
        <<- /ocr/ ->> doute                                                                         && Erreur de numérisation ?
        <<- /ocr/ ->> doute                                                                         && Erreur de numérisation ?

TEST: __ocr__ Sans aucun {{cloute}}.


# du / dû
__ocr_du__
    dû  @:[NA]:[me]:[si]¬:(?:Y|Ov)
        <<- /ocr/ -1>> du                                                                           && Erreur de numérisation ?
        <<- /ocr/ -1>> du                                                                           && Erreur de numérisation ?

TEST: __ocr__ prendre {{dû}} bon temps
TEST: __ocr__ il aurait dû la trouver
TEST: __ocr__ Tous eussent dû subir ce supplice raffiné.


# elle / elfe
__ocr_elle__
    elfe
        <<- /ocr/ morph(<1, ":R|<start>|>,") or isNextVerb() ->> elle                               && Erreur de numérisation ?
        <<- /ocr/ morph(<1, ":R|<start>|>,") or isNextVerb() ->> elle                               && Erreur de numérisation ?

    elfes
        <<- /ocr/ morph(<1, ":R|<start>|>,") or isNextVerb() ->> elles                              && Erreur de numérisation ?
        <<- /ocr/ morph(<1, ":R|<start>|>,") or isNextVerb() ->> elles                              && Erreur de numérisation ?

TEST: __ocr__ {{elfe}} viendra bientôt
TEST: __ocr__ {{Elfes}} s’ennuyaient à mourir.


# est / ost
__ocr_est__
    ost
        <<- /ocr/ ->> est                                                                           && Erreur de numérisation ?
        <<- /ocr/ ->> est                                                                           && Erreur de numérisation ?

TEST: __ocr__ Le cheval {{ost}} attaché.


# et / cl
__ocr_et__
    [cl|c1|e1|el]
        <<- /ocr/ not before("[0-9] +$") ->> et                                                     && Erreur de numérisation ?
        <<- /ocr/ not before("[0-9] +$") ->> et                                                     && Erreur de numérisation ?

TEST: __ocr__ elle {{cl}} lui, c’était pour la vie.
TEST: __ocr__ {{El}} il faisait froid là-haut


# état / étal
__ocr_état_étais_étaient__
    étal
        <<- /ocr/ ->> état                                                                          && Erreur de numérisation ?
        <<- /ocr/ ->> état                                                                          && Erreur de numérisation ?

    [étals|étale]
        <<- /ocr/ ->> étais|états                                                                   && Erreur de numérisation ?
        <<- /ocr/ ->> étais|états                                                                   && Erreur de numérisation ?

    étalent
        <<- /ocr/ ->> étaient                                                                       && Erreur de numérisation ?
        <<- /ocr/ ->> étaient                                                                       && Erreur de numérisation ?

TEST: __ocr__ l’{{étal}} des finances ne le permet pas
TEST: __ocr__ Quels {{étals}} sont venus ?
TEST: __ocr__ Ce qu’ils {{étalent}} vraiment, nul ne le savait.


# êtes
3479
3480
3481
3482
3483
3484
3485
3486

3487
3488
3489
3490
3491

3492
3493
3494
3495
3496
3497
3498
3482
3483
3484
3485
3486
3487
3488

3489
3490
3491
3492
3493

3494
3495
3496
3497
3498
3499
3500
3501







-
+




-
+







TEST: __ocr__ Quoiqu’ils {{fessent}} ça donne de la merde
TEST: __ocr__ {{fesse}} que Dieu nous entende


# fille / tille
__ocr_fille__
    tille
        <<- /ocr/ ->> fille                                                                         && Erreur de numérisation ?
        <<- /ocr/ ->> fille                                                                         && Erreur de numérisation ?

TEST: __ocr__ Cette {{tille}} n’en avait jamais assez.


# fol(s) / foi(s)
# fol·s / foi·s
__ocr_foi__
    [fol|fols]
        <<- /ocr/ ->> =\1.replace("l", "i").replace("L", "I")                                       && Erreur de numérisation ?

TEST: __ocr__  ils sont quelques {{fols}} battus$


3513
3514
3515
3516
3517
3518
3519
3520

3521
3522
3523
3524
3525
3526
3527
3528

3529
3530
3531

3532
3533
3534

3535
3536
3537

3538
3539
3540
3541
3542
3543
3544
3545
3546
3547
3548
3549
3550
3551
3552

3553
3554
3555
3556
3557
3558
3559
3560

3561
3562
3563
3564
3565
3566
3567
3568

3569
3570
3571

3572
3573
3574

3575
3576
3577

3578
3579
3580
3581
3582
3583
3584
3585
3586
3587
3588
3589
3590


3591
3592
3593
3594

3595
3596
3597
3598
3599
3600
3601
3516
3517
3518
3519
3520
3521
3522

3523
3524
3525
3526
3527
3528
3529
3530

3531
3532
3533

3534
3535
3536

3537
3538
3539

3540
3541
3542
3543
3544
3545
3546
3547
3548
3549
3550
3551
3552
3553
3554

3555
3556
3557
3558
3559
3560
3561
3562

3563
3564
3565
3566
3567
3568
3569
3570

3571
3572
3573

3574
3575
3576

3577
3578
3579

3580
3581
3582
3583
3584
3585
3586
3587
3588
3589
3590
3591


3592
3593
3594
3595
3596

3597
3598
3599
3600
3601
3602
3603
3604







-
+







-
+


-
+


-
+


-
+














-
+







-
+







-
+


-
+


-
+


-
+











-
-
+
+



-
+







TEST: __ocr__ qui ne {{fout}} rien de leur journée
TEST: __ocr__ il {{fout}} entendre cette voix


# fut / rut
__ocr_fut__
    rut
        <<- /ocr/ ->> fut                                                                           && Erreur de numérisation ?
        <<- /ocr/ ->> fut                                                                           && Erreur de numérisation ?

TEST: __ocr__ ce petit {{rut}} traité comme un chien


# il / n / ils / U / Us / i1 / if / 11
__ocr_il__
    [<start>|,|(]  [n|h|d]  ~^[bcçdfghjklmnpqrstvwxz]
        <<- /ocr/ morph(\3, ":(?:O[on]|3s)") -2>> il                                                && Erreur de numérisation ?
        <<- /ocr/ morph(\3, ":(?:O[on]|3s)") -2>> il                                                && Erreur de numérisation ?

    [U|if|i1]
        <<- /ocr/ ->> Il|il                                                                         && Erreur de numérisation ?
        <<- /ocr/ ->> Il|il                                                                         && Erreur de numérisation ?

    [Us|ifs|i1s]
        <<- /ocr/ ->> Ils|ils                                                                       && Erreur de numérisation ?
        <<- /ocr/ ->> Ils|ils                                                                       && Erreur de numérisation ?

    11
        <<- /ocr/ not morph(>1, ":N", "*") ->> Il|il                                                && Erreur de numérisation ?
        <<- /ocr/ not morph(>1, ":N", "*") ->> Il|il                                                && Erreur de numérisation ?

TEST: __ocr__ {{n}} contient trop de soufre.
TEST: __ocr__ {{U}} arrive
TEST: __ocr__ {{Us}} arrive demain.
TEST: __ocr__ {{i1s}} en savent beaucoup trop pour leur propre bien.
TEST: __ocr__ {{11}} n’en sait rien
TEST: __ocr__ elle a 11 ans.
TEST: __ocr__ 11 jours de souffrance
TEST: __ocr__ nous sommes le 11 septembre


# fa / la
__ocr_la__
    fa
        <<- /ocr/ ->> la                                                                            && Erreur de numérisation ?
        <<- /ocr/ ->> la                                                                            && Erreur de numérisation ?

TEST: __ocr__ dans {{fa}} demeure


# large / largo
__ocr_large__
    >largo
        <<- /ocr/ ->> =\1.replace("o", "e")                                                         && Erreur de numérisation ?
        <<- /ocr/ ->> =\1.replace("o", "e")                                                         && Erreur de numérisation ?

TEST: __ocr__ elle pense {{largo}}


# l’ / j’ / Y / I
__ocr_lj1__
    ~^Y’[aâeéèêëiîïoôuyh]
        <<- /ocr/ ->> ="l’"+\1[2:] + "|L’"+\1[2:] + "|j’"+\1[2:] + "|J’"+\1[2:]                     && Erreur de numérisation ?
        <<- /ocr/ ->> ="l’"+\1[2:] + "|L’"+\1[2:] + "|j’"+\1[2:] + "|J’"+\1[2:]                     && Erreur de numérisation ?

    Y  ~^[aâeéèêëiîïoôuyh]
        <<- /ocr/ before("\\w") and not morph(\2, ":Y") ->> l’\2|j’\2                               && Erreur de numérisation ?
        <<- /ocr/ before("\\w") and not morph(\2, ":Y") ->> l’\2|j’\2                               && Erreur de numérisation ?

    ~^[Ii]’[aâeéèêëiîïoôuyh]
        <<- /ocr/ ->> ="l’"+\1[2:] + "|L’"+\1[2:] + "|j’"+\1[2:] + "|J’"+\1[2:]                     && Erreur de numérisation ?
        <<- /ocr/ ->> ="l’"+\1[2:] + "|L’"+\1[2:] + "|j’"+\1[2:] + "|J’"+\1[2:]                     && Erreur de numérisation ?

    [I|i|1]  ~^[aâeéèêëiîïoôuy]
        <<- /ocr/ ->> l’\2|L’\2|j’\2|J’\2                                                           && Erreur de numérisation ?
        <<- /ocr/ ->> l’\2|L’\2|j’\2|J’\2                                                           && Erreur de numérisation ?

TEST: __ocr__ {{Y’arrive}} demain.
TEST: __ocr__ et {{Y acte}}
TEST: __ocr__ {{I’arrive}} demain.
TEST: __ocr__ {{1 entente}} cordiale


# l’ / V / P
__ocr_l__
    ~^V.
        <<- /ocr/ \1.istitle() and before("\\w") and morph(\1, ":", ":M") >>>
        <<- /ocr/ spell(\1[1:]) -:>> ="v"+\1[1:] + "|l’"+\1[1:]                                     && Erreur de numérisation ?
        <<- /ocr/ __else__ -:>> ="v"+\1[1:]                                                         && Erreur de numérisation ?
        <<- /ocr/ spell(\1[1:]) -:>> ="v"+\1[1:] + "|l’"+\1[1:]                                     && Erreur de numérisation ?
        <<- /ocr/ __else__ -:>> ="v"+\1[1:]                                                         && Erreur de numérisation ?

    ~^P[aâeéêèiîïoôuy]
        <<- /ocr/ before("\\w") and morph(\1, ":", ":M") and spell(\1[1:])
        -:>> ="l’"+\1[1:] + "|p"+\1[1:]                                                             && Erreur de numérisation ?
        -:>> ="l’"+\1[1:] + "|p"+\1[1:]                                                             && Erreur de numérisation ?

TEST: __ocr__ beaucoup de {{Vélos}} à Versailles.
TEST: __ocr__ avec {{Vagile}} méthode de notre amie Virginie, tout est possible.
TEST: __ocr__ Viens demain.
TEST: __ocr__ Ce jour où Valérie eut sa licence de droit.
TEST: __ocr__ Il scrute Pierre, {{Pair}} maussade.
TEST: __ocr__ Une grosse vague arrivait et {{Peau}} remplit.
3610
3611
3612
3613
3614
3615
3616
3617

3618
3619
3620
3621
3622
3623
3624
3625

3626
3627
3628

3629
3630
3631

3632
3633
3634

3635
3636
3637
3638
3639
3640
3641
3642
3643
3644
3645

3646
3647
3648

3649
3650
3651
3652
3653
3654
3655
3656
3657

3658
3659
3660

3661
3662
3663

3664
3665
3666

3667
3668
3669
3670
3671
3672
3673
3674
3675
3676
3677
3678
3679
3680
3681
3682
3683
3684
3685

3686
3687
3688

3689
3690
3691

3692
3693
3694
3695
3696
3697
3698
3613
3614
3615
3616
3617
3618
3619

3620
3621
3622
3623
3624
3625
3626
3627

3628
3629
3630

3631
3632
3633

3634
3635
3636

3637
3638
3639
3640
3641
3642
3643
3644
3645
3646
3647

3648
3649
3650

3651
3652
3653
3654
3655
3656
3657
3658
3659

3660
3661
3662

3663
3664
3665

3666
3667
3668

3669
3670
3671
3672
3673
3674
3675
3676
3677
3678
3679
3680
3681
3682
3683
3684
3685
3686
3687

3688
3689
3690

3691
3692
3693

3694
3695
3696
3697
3698
3699
3700
3701







-
+







-
+


-
+


-
+


-
+










-
+


-
+








-
+


-
+


-
+


-
+


















-
+


-
+


-
+








TEST: __ocr__ il faut {{lavoir}} pour le croire.


# l’était / Tétait
__ocr_l_était__
    Tétait
        <<- /ocr/ -:>> l’était|t’était|T’était                                                      && Erreur de numérisation ?
        <<- /ocr/ -:>> l’était|t’était|T’était                                                      && Erreur de numérisation ?

TEST: __ocr__ perdu, cet homme {{Tétait}}


# le / les / lé / lés / lui / lai / lei / la / tu / lu
__ocr_le_la_les__
    >lé
        <<- /ocr/ ->> =\1.replace("é", "e").replace("É", "E")                                       && Erreur de numérisation ?
        <<- /ocr/ ->> =\1.replace("é", "e").replace("É", "E")                                       && Erreur de numérisation ?

    [lai|lei]
        <<- /ocr/ ->> lui|les                                                                       && Erreur de numérisation ?
        <<- /ocr/ ->> lui|les                                                                       && Erreur de numérisation ?

    los
        <<- /ocr/ ->> les                                                                           && Erreur de numérisation ?
        <<- /ocr/ ->> les                                                                           && Erreur de numérisation ?

    lu
        <<- /ocr/ not morph(<1, ":(?:V0|N.*:m:[si])") ->> tu|le|la                                  && Erreur de numérisation ?
        <<- /ocr/ not morph(<1, ":(?:V0|N.*:m:[si])") ->> tu|le|la                                  && Erreur de numérisation ?

TEST: __ocr__ il s’agit de {{lés}} observer.
TEST: __ocr__ {{lai}} gros sont mal vus.
TEST: __ocr__ {{lu}} as si bien réussi
TEST: __ocr__ contre {{los}} impies


# M. / Mr / M
__ocr_mr__
    M ,  /_Tit_
        <<- /ocr/ space_after(\1, 0, 1) -1:2>> "Mr |M. "                                                                  && Erreur de numérisation ?
        <<- /ocr/ space_after(\1, 0, 1) -1:2>> "Mr |M. "                                                                  && Erreur de numérisation ?

    M  /_Tit_
        <<- /ocr/ -1>> "Mr |M. "                                                                    && Erreur de numérisation ?
        <<- /ocr/ -1>> "Mr |M. "                                                                    && Erreur de numérisation ?

TEST: __ocr__ {{M,}} Patrick nous a oubliés.
TEST: __ocr__ Rencontre avec {{M}} Black.


# Mais / Hais / Mats / niais
__ocr_mais__
    Hais
        <<- /ocr/ ->> Mais                                                                          && Erreur de numérisation ?
        <<- /ocr/ ->> Mais                                                                          && Erreur de numérisation ?

    mats
        <<- /ocr/ not morph(<1, ":D:[me]:p") ->> mais                                               && Erreur de numérisation ?
        <<- /ocr/ not morph(<1, ":D:[me]:p") ->> mais                                               && Erreur de numérisation ?

    maïs
        <<- /ocr/ not morph(<1, ":D:(?:m:s|e:p)") ->> mais                                          && Erreur de numérisation ?
        <<- /ocr/ not morph(<1, ":D:(?:m:s|e:p)") ->> mais                                          && Erreur de numérisation ?

    niais
        <<- /ocr/ not morph(<1, ">(?:homme|ce|quel|être)/") ->> mais                                && Erreur de numérisation ?
        <<- /ocr/ not morph(<1, ">(?:homme|ce|quel|être)/") ->> mais                                && Erreur de numérisation ?

TEST: __ocr__ {{Hais}} il en sait trop.
TEST: __ocr__ c’était bien, {{mats}} quelle journée
TEST: __ocr__ c’est bien, {{niais}} trop subtil.
TEST: __ocr__ c’est parfait, {{maïs}} trop subtil.


# matin
__ocr_matin__
    [mâtin|mâtins]
        <<- /ocr/ ->> =\1.replace("â", "a").replace("Â", "A")                                       && Erreur de numérisation ?

TEST: __ocr__ ce {{mâtin}}, il y eut une tempête.


# même / même / mème / mémo / môme
__ocr_même__
    >môme
        <<- /ocr/ ->> =\1.replace("ô", "ê").replace("Ô", "Ê")                                       && Erreur de numérisation ?
        <<- /ocr/ ->> =\1.replace("ô", "ê").replace("Ô", "Ê")                                       && Erreur de numérisation ?

    >mème
        <<- /ocr/ ->> =\1.replace("è", "ê").replace("È", "Ê")                                       && Erreur de numérisation ?
        <<- /ocr/ ->> =\1.replace("è", "ê").replace("È", "Ê")                                       && Erreur de numérisation ?

    >mémo
        <<- /ocr/ ->> =\1.replace("é", "ê").replace("É", "Ê").replace("o", "e").replace("O", "E")   && Erreur de numérisation ?
        <<- /ocr/ ->> =\1.replace("é", "ê").replace("É", "Ê").replace("o", "e").replace("O", "E")   && Erreur de numérisation ?

TEST: __ocr__ J’en ai assez {{môme}} si ça ne se voit pas.
TEST: __ocr__ Ces {{mèmes}} hommes qui nous ont lâchés au pire moment
TEST: __ocr__ C’est l’incessant retour du {{mémo}}.


# mes
3706
3707
3708
3709
3710
3711
3712
3713

3714
3715
3716
3717
3718
3719
3720
3721

3722
3723
3724
3725
3726
3727
3728
3729
3730
3731
3732
3733
3734
3735
3736
3737

3738
3739
3740
3741
3742
3743
3744
3745
3746

3747
3748
3749

3750
3751
3752
3753
3754
3755
3756
3757
3758
3759

3760
3761
3762

3763
3764
3765
3766
3767
3768
3769
3770
3771
3772
3773
3774
3775

3776
3777
3778

3779
3780
3781

3782
3783
3784
3785
3786
3787
3788
3789
3790
3791

3792
3793
3794
3795
3796
3797
3798
3799

3800
3801
3802

3803
3804
3805
3806
3807
3808
3809
3810
3811

3812
3813
3814
3815
3816
3817
3818
3819

3820
3821
3822
3823
3824
3825
3826
3827

3828
3829
3830
3831
3832
3833
3834
3835

3836
3837
3838
3839
3840
3841
3842
3843

3844
3845
3846

3847
3848
3849
3850
3851
3852
3853
3854
3855
3856

3857
3858
3859
3860
3861
3862
3863
3709
3710
3711
3712
3713
3714
3715

3716
3717
3718
3719
3720
3721
3722
3723

3724
3725
3726
3727
3728
3729
3730
3731
3732
3733
3734
3735
3736
3737
3738
3739

3740
3741
3742
3743
3744
3745
3746
3747
3748

3749
3750
3751

3752
3753
3754
3755
3756
3757
3758
3759
3760
3761

3762
3763
3764

3765
3766
3767
3768
3769
3770
3771
3772
3773
3774
3775
3776
3777

3778
3779
3780

3781
3782
3783

3784
3785
3786
3787
3788
3789
3790
3791
3792
3793

3794
3795
3796
3797
3798
3799
3800
3801

3802
3803
3804

3805
3806
3807
3808
3809
3810
3811
3812
3813

3814
3815
3816
3817
3818
3819
3820
3821

3822
3823
3824
3825
3826
3827
3828
3829

3830
3831
3832
3833
3834
3835
3836
3837

3838
3839
3840
3841
3842
3843
3844
3845

3846
3847
3848

3849
3850
3851
3852
3853
3854
3855
3856
3857
3858

3859
3860
3861
3862
3863
3864
3865
3866







-
+







-
+















-
+








-
+


-
+









-
+


-
+












-
+


-
+


-
+









-
+







-
+


-
+








-
+







-
+







-
+







-
+







-
+


-
+









-
+







TEST: __ocr__ elle est fière de {{mas}} succès
TEST: __ocr__ Est-ce que tu vas nier {{nies}} réussites


# mon / won
__ocr_mon__
    won
        <<- /ocr/ ->> mon                                                                           && Erreur de numérisation ?
        <<- /ocr/ ->> mon                                                                           && Erreur de numérisation ?

TEST: __ocr__ c’est {{won}} ami


# mot / mol / moi
__ocr_mot__
    [mol|mols]
        <<- /ocr/ ->> =\1.replace("l", "t").replace("L", "T")+"|"+\1.replace("l", "i").replace("L", "I")  && Erreur de numérisation ?
        <<- /ocr/ ->> =\1.replace("l", "t").replace("L", "T")+"|"+\1.replace("l", "i").replace("L", "I")  && Erreur de numérisation ?

TEST: __ocr__ c’est un {{mol}} très dur.


# moyen
__ocr_moyen__
    >moyeu
        <<- /ocr/ ->> moyen|moyens                                                                  && Erreur de numérisation ?

TEST: __ocr__ quel {{moyeu}} employer ?


# ne / na / no / rie
__ocr_ne__
    [no|na|rie]
        <<- /ocr/ ->> ne                                                                            && Erreur de numérisation ?
        <<- /ocr/ ->> ne                                                                            && Erreur de numérisation ?

TEST: __ocr__ {{no}} fais rien que tu pourrais regretter
TEST: __ocr__ elle avance, mais {{rie}} prend jamais de risque inconsidéré.


# nous / noue / noua
__ocr_nous__
    [noue|noua]
        <<- /ocr/ ->> nous                                                                          && Erreur de numérisation ?
        <<- /ocr/ ->> nous                                                                          && Erreur de numérisation ?

    mous
        <<- /ocr/ morph(<1, "<start>|>,|:(?:R|Os|X)") ->> nous                                      && Erreur de numérisation ?
        <<- /ocr/ morph(<1, "<start>|>,|:(?:R|Os|X)") ->> nous                                      && Erreur de numérisation ?

TEST: __ocr__ {{noue}} attaquer à eux signerait notre perte.
TEST: __ocr__ il finit par {{mous}} énerver avec ces histoires sans fin
TEST: __ocr__ {{mous}} croire invincibles


# par / paf / pan / pat
__ocr_par__
    [paf|pat]
        <<- /ocr/ ->> par                                                                           && Erreur de numérisation ?
        <<- /ocr/ ->> par                                                                           && Erreur de numérisation ?

    pan
        <<- /ocr/ ->> par|peu                                                                       && Erreur de numérisation ?
        <<- /ocr/ ->> par|peu                                                                       && Erreur de numérisation ?

    pur @:[DMT]
        <<- /ocr/ -1>> par                                                                          && Erreur de numérisation ?

TEST: __ocr__ Une seule action {{paf}} jour
TEST: __ocr__ {{Pur}} la déesse !
TEST: __ocr__ attaqué {{pan}} deux fois


# par le / par la / par les / parle / parla / parles
__ocr_par_le_la_les__
    parle  @:[NA].*:[me]:[si]
        <<- /ocr/ not value(<1, "|ne|il|on|elle|je|") -1>> par le                                   && Erreur de numérisation ?
        <<- /ocr/ not value(<1, "|ne|il|on|elle|je|") -1>> par le                                   && Erreur de numérisation ?

    parla  @:[NA].*:[fe]:[si]
        <<- /ocr/ not value(<1, "|ne|il|on|elle|") -1>> par la                                      && Erreur de numérisation ?
        <<- /ocr/ not value(<1, "|ne|il|on|elle|") -1>> par la                                      && Erreur de numérisation ?

    parles  @:[NA].*:[pi]
        <<- /ocr/ not value(<1, "|ne|tu|") -1>> par les                                             && Erreur de numérisation ?
        <<- /ocr/ not value(<1, "|ne|tu|") -1>> par les                                             && Erreur de numérisation ?

TEST: __ocr__ {{parle}} glaive et le mensonge, l’Église s’imposa.
TEST: __ocr__ {{parla}} force, on peut réussir
TEST: __ocr__ tu fus trompée {{parles}} mensonges permanents de son beau-père.


# pendant / pondant
__ocr_pendant__
    pondant
        <<- /ocr/ ->> pendant                                                                       && Erreur de numérisation ?
        <<- /ocr/ ->> pendant                                                                       && Erreur de numérisation ?

TEST: __ocr__ {{pondant}} qu’elle travaille, il se prélasse.


# peu / peut / peux / pou
__ocr_peu_peux_peut__
    pou
        <<- /ocr/ not morph(<1, ":D.*:m:s") ->> peu                                                 && Erreur de numérisation ?
        <<- /ocr/ not morph(<1, ":D.*:m:s") ->> peu                                                 && Erreur de numérisation ?

    poux
        <<- /ocr/ not morph(<1, ":D.*:m:p") ->> peux|peut|pour                                      && Erreur de numérisation ?
        <<- /ocr/ not morph(<1, ":D.*:m:p") ->> peux|peut|pour                                      && Erreur de numérisation ?

TEST: __ocr__ il est {{pou}} probable qu’il y parvienne.
TEST: __ocr__ elles sont venues {{poux}} voir de leurs propres yeux.


# plus / pins
__ocr_plus__
    pins
        <<- /ocr/ ->> plus                                                                          && Erreur de numérisation ?
        <<- /ocr/ ->> plus                                                                          && Erreur de numérisation ?

TEST: __ocr__ ils sont {{pins}} instruits qu’il n’y paraît.


# puis / pois
__ocr_puis__
    pois
        <<- /ocr/ not morph(<1, ":D.*:m:p") ->> puis                                                && Erreur de numérisation ?
        <<- /ocr/ not morph(<1, ":D.*:m:p") ->> puis                                                && Erreur de numérisation ?

TEST: __ocr__ elles sont venues, {{pois}} elles sont parties.


# pour / pouf
__ocr_pour__
    pouf
        <<- /ocr/ not morph(<1, ":D.*:f:s") ->> pour                                                && Erreur de numérisation ?
        <<- /ocr/ not morph(<1, ":D.*:f:s") ->> pour                                                && Erreur de numérisation ?

TEST: __ocr__ {{pouf}} elle, il était prêt à tout.


# près / prés
__ocr_près__
    prés
        <<- /ocr/ not morph(<1, ":D.*:[me]:p") ->> près                                             && Erreur de numérisation ?
        <<- /ocr/ not morph(<1, ":D.*:[me]:p") ->> près                                             && Erreur de numérisation ?

TEST: __ocr__ ils sont arrivés {{prés}} de la tombe.


# que / quo
__ocr_que__
    qua
        <<- /ocr/ not value(<1, "|sine|") ->> que                                                   && Erreur de numérisation ?
        <<- /ocr/ not value(<1, "|sine|") ->> que                                                   && Erreur de numérisation ?

    quo
        <<- /ocr/ not value(<1, "|statu|") ->> que                                                  && Erreur de numérisation ?
        <<- /ocr/ not value(<1, "|statu|") ->> que                                                  && Erreur de numérisation ?

TEST: __ocr__ elles ne savent pas {{qua}} faire
TEST: __ocr__ {{Quo}} penser de tout ceci ?
TEST: __ocr__ pour elle, c’est une condition sine qua non.


# qu’importe
__ocr_qu_importe__
    qu’ [importé|importa]
        <<- /ocr/ -2>> importe                                                                      && Erreur de numérisation ?
        <<- /ocr/ -2>> importe                                                                      && Erreur de numérisation ?

TEST: __ocr__ Qu’{{importé}} le flacon, pourvu qu’on ait l’ivresse.


# reine / ruine
__ocr_reine_ruine__
    >rainer
3875
3876
3877
3878
3879
3880
3881
3882

3883
3884
3885
3886
3887
3888
3889
3890

3891
3892
3893

3894
3895
3896
3897
3898
3899
3900
3901
3902
3903
3904
3905
3906
3907
3908
3909
3910

3911
3912
3913
3914
3915
3916
3917
3918
3919
3920
3921
3922

3923
3924
3925
3926
3927
3928
3929
3930

3931
3932
3933
3934
3935
3936
3937
3938

3939
3940
3941
3942
3943
3944
3945
3946

3947
3948
3949
3950
3951
3952
3953
3954

3955
3956
3957
3958
3959
3960
3961
3962

3963
3964
3965
3966
3967
3968
3969
3970

3971
3972
3973
3974
3975
3976
3977
3978

3979
3980
3981
3982
3983
3984
3985
3986
3987

3988
3989
3990
3991
3992
3993
3994
3995

3996
3997
3998

3999
4000
4001
4002
4003
4004
4005
3878
3879
3880
3881
3882
3883
3884

3885
3886
3887
3888
3889
3890
3891
3892

3893
3894
3895

3896
3897
3898
3899
3900
3901
3902
3903
3904
3905
3906
3907
3908
3909
3910
3911
3912

3913
3914
3915
3916
3917
3918
3919
3920
3921
3922
3923
3924

3925
3926
3927
3928
3929
3930
3931
3932

3933
3934
3935
3936
3937
3938
3939
3940

3941
3942
3943
3944
3945
3946
3947
3948

3949
3950
3951
3952
3953
3954
3955
3956

3957
3958
3959
3960
3961
3962
3963
3964

3965
3966
3967
3968
3969
3970
3971
3972

3973
3974
3975
3976
3977
3978
3979
3980

3981
3982
3983
3984
3985
3986
3987
3988
3989

3990
3991
3992
3993
3994
3995
3996
3997

3998
3999
4000

4001
4002
4003
4004
4005
4006
4007
4008







-
+







-
+


-
+
















-
+











-
+







-
+







-
+







-
+







-
+







-
+







-
+







-
+








-
+







-
+


-
+








TEST: __ocr__ {{Quêtant}} la fille d’une déesse, elle n’avait pas à se justifier.


# qui / gui
__ocr_qui__
    gui
        <<- /ocr/ not morph(<1, ":D.*:m:s") ->> qui                                                 && Erreur de numérisation ?
        <<- /ocr/ not morph(<1, ":D.*:m:s") ->> qui                                                 && Erreur de numérisation ?

TEST: __ocr__ avec {{gui}} faire alliance ?


# s’il / sil
__ocr_s_il__
    sil
        <<- /ocr/ ->> s’il                                                                          && Erreur de numérisation ?
        <<- /ocr/ ->> s’il                                                                          && Erreur de numérisation ?

    sils
        <<- /ocr/ ->> s’ils                                                                         && Erreur de numérisation ?
        <<- /ocr/ ->> s’ils                                                                         && Erreur de numérisation ?

TEST: __ocr__ {{sil}} avait su, il n’aurait rien tenté de trop audacieux.
TEST: __ocr__ {{sils}} étaient venus, on l’aurait vu.


# son / sou
__ocr_son__
    sou
        <<- /ocr/ ->> son                                                                           && Erreur de numérisation ?

TEST: __ocr__ ça vient de {{sou}} ami


# sur / sar
__ocr_sur__
    sar
        <<- /ocr/ ->> sur                                                                           && Erreur de numérisation ?
        <<- /ocr/ ->> sur                                                                           && Erreur de numérisation ?

    sui
        <<- /ocr/ not value(>1, "|generis|") ->> sur                                                && Erreur de numérisation ?

TEST: __ocr__ il ne savait rien {{sar}} eux.
TEST: __ocr__ il en est {{sui}}


# tard / lard
__ocr_tard__
    lard
        <<- /ocr/ not value(<1, "|le|ce|mon|ton|son|du|un|") ->> tard                               && Erreur de numérisation ?
        <<- /ocr/ not value(<1, "|le|ce|mon|ton|son|du|un|") ->> tard                               && Erreur de numérisation ?

TEST: __ocr__ elles seront là tôt ou {{lard}}.


# tandis que / taudis
__ocr_tandis__
    taudis [que|qu’]
        <<- /ocr/ -1>> tandis                                                                       && Erreur de numérisation ?
        <<- /ocr/ -1>> tandis                                                                       && Erreur de numérisation ?

TEST: __ocr__ mais {{taudis}} qu’elle œuvrait à leur salut, les nuages s’amoncelaient.


# l’est / Test
__ocr_l_est__
    Test
        <<- /ocr/ before("\\w") ->> l’est                                                           && Erreur de numérisation ?
        <<- /ocr/ before("\\w") ->> l’est                                                           && Erreur de numérisation ?

TEST: __ocr__ ça {{Test}} à leurs yeux.


# tête / tète
__ocr_tête__
    tète
        <<- /ocr/ not value(<1, "|je|il|elle|on|ne|ça|") ->> =\1.replace("è", "ê").replace("È", "Ê")    && Erreur de numérisation ?
        <<- /ocr/ not value(<1, "|je|il|elle|on|ne|ça|") ->> =\1.replace("è", "ê").replace("È", "Ê")    && Erreur de numérisation ?

TEST: __ocr__ cette forte {{tète}} n’écoute jamais personne.


# tin / fin / un
__ocr_fin_un__
    tin
        <<- /ocr/ ->> fin|un                                                                        && Erreur de numérisation ?
        <<- /ocr/ ->> fin|un                                                                        && Erreur de numérisation ?

TEST: __ocr__ c’était {{tin}} marchand vaniteux.


# ton / tan
__ocr_ton__
    >tan
        <<- /ocr/ ->> =\1.replace("a", "o").replace("A", "O")                                       && Erreur de numérisation ?
        <<- /ocr/ ->> =\1.replace("a", "o").replace("A", "O")                                       && Erreur de numérisation ?

TEST: __ocr__ pour {{tan}} propre bien.


# toute / tonte
__ocr_toute__
    >tonte
        <<- /ocr/ ->> =\1.replace("n", "u").replace("N", "U")                                       && Erreur de numérisation ?
        <<- /ocr/ ->> =\1.replace("n", "u").replace("N", "U")                                       && Erreur de numérisation ?

TEST: __ocr__ à {{tonte}} fin utile


# tu es / tues
__ocr_tu_es__
    tues
        <<- /ocr/ not morph(<1, ":(?:N.*:f:p|V0e.*:3p)|>(?:tu|ne)/") ->> tu es                      && Erreur de numérisation ?
        <<- /ocr/ not morph(<1, ":(?:N.*:f:p|V0e.*:3p)|>(?:tu|ne)/") ->> tu es                      && Erreur de numérisation ?

TEST: __ocr__ dans tous les cas, {{tues}} foutue.
TEST: __ocr__ ses actions tues.


# un / vin
__ocr_un__
    vin
        <<- /ocr/ not value(<1, "|ce|de|du|un|quel|leur|le|") ->> un                                && Erreur de numérisation ?
        <<- /ocr/ not value(<1, "|ce|de|du|un|quel|leur|le|") ->> un                                && Erreur de numérisation ?

TEST: __ocr__ {{vin}} mathématicien hors du commun.


# une / ure / vine
__ocr_une__
    ure
        <<- /ocr/ ->> une                                                                           && Erreur de numérisation ?
        <<- /ocr/ ->> une                                                                           && Erreur de numérisation ?

    vine
        <<- /ocr/ ->> une                                                                           && Erreur de numérisation ?
        <<- /ocr/ ->> une                                                                           && Erreur de numérisation ?

TEST: __ocr__ il avait {{ure}} femme élégante et silencieuse
TEST: __ocr__ c’est pour {{vine}} amie


# vêtement / vêlement
__ocr_vêtement__
4032
4033
4034
4035
4036
4037
4038
4039

4040
4041
4042
4043
4044
4045
4046
4035
4036
4037
4038
4039
4040
4041

4042
4043
4044
4045
4046
4047
4048
4049







-
+








TEST: __ocr__ La femme {{volt}} plus loin


# vous / voua / voue
__ocr_vous__
    [voue|voua]
        <<- /ocr/ ->> vous                                                                          && Erreur de numérisation ?
        <<- /ocr/ ->> vous                                                                          && Erreur de numérisation ?

TEST: __ocr__ avec {{voue}}, je n’ai pas confiance.



@@@@
@@@@
4121
4122
4123
4124
4125
4126
4127
4128

4129
4130
4131
4132
4133
4134
4135
4136
4137
4138
4139
4140
4141
4142
4143
4144
4145
4146
4147
4148
4149

4150
4151
4152
4153
4154


4155
4156
4157
4158
4159
4160
4161
4124
4125
4126
4127
4128
4129
4130

4131
4132
4133
4134
4135
4136
4137
4138
4139
4140
4141
4142
4143
4144
4145
4146
4147
4148
4149
4150
4151

4152
4153
4154
4155


4156
4157
4158
4159
4160
4161
4162
4163
4164







-
+




















-
+



-
-
+
+







TEST: combien {{d’}}iourtes                                                 ->> de


# ce -> cet
__eleu_euphonie_cet__
    ce  ~^[aâeéèêiîoôuûyœæ]
        <<- /eleu/ not re.search("(?i)^(?:I(?:I|V|X|er|ᵉʳ))", \2) and morph(\2, ":[NA].*:[me]", ":G|;é")
        -1>> cet                                                                && Euphonie : “ce” devient “cet” devant un mot commençant par une voyelle.|https://fr.wikipedia.org/wiki/Euphonie
        -1>> cet                                                                && Euphonie : “ce” devient “cet” devant un mot commençant par une voyelle.|https://fr.wikipedia.org/wiki/Euphonie

TEST: {{ce}} animal est dangereux
TEST: ce yacht


# Verbe 1ʳᵉ personne du singulier, interrogatif… xxxé-je
__eleu_é_je__
    /-je
        <<- /eleu/ morphVC(\1, "V1.*:1s") and \1.endswith("e-je") ->> =\1.replace("e-je", "é-je")+"|"+\1.replace("e-je", "è-je")
        && Euphonie. Pour les verbes finissant par “e” à l’interrogatif à la 1ʳᵉ personne du singulier, mettez un accent aigu ou grave sur le “e” final. Exemple : “pensé-je” (présent), à ne pas confondre avec “pensais-je” (imparfait).|https://fr.wikipedia.org/wiki/Euphonie

TEST: {{pense-je}}                                                                      ->> pensé-je|pensè-je
TEST: pensé-je
TEST: souhaitè-je


# ma, ta, sa / mon, ton, son
__eleu_euphonie_ma_ta_sa__
    [ma|ta]  ~^[aâeéèêiîoôuûyœæ].
        <<- /eleu/ morph(\2, ":[NA]", ":G|;é") and not re.search("(?i)^(?:I(?:I|V|X|i?[eè]?re|ʳᵉ))", \2)
        -1>> =\1[0:1]+"on"                                                      && Euphonie : lorsque le déterminant “\1” est suivi d’un nom ou d’un adjectif commençant par une voyelle, il est d’usage d’utiliser le pronom  “mon”, “ton” ou “son” pour respecter l’euphonie. Exemple : mon étoile (féminin).|https://fr.wikipedia.org/wiki/Euphonie
        -1>> =\1[0:1]+"on"                                                      && Euphonie : lorsque le déterminant “\1” est suivi d’un nom ou d’un adjectif commençant par une voyelle, il est d’usage d’utiliser le pronom “mon”, “ton” ou “son” pour respecter l’euphonie. Exemple : mon étoile (féminin).|https://fr.wikipedia.org/wiki/Euphonie

    sa  ~^[aâeéèêiîoôuûyœæ].
        <<- /eleu/ not \1.isupper() and morph(\2, ":[NA]", ":G|;é") and not re.search("(?i)^(?:I(?:I|V|X|i?[eè]?re|ʳᵉ))", \2) >>>
        <<- /eleu/ morph(\2, ":[123][sp]") -1>> =\1[0:1]+"on|ça"                && Euphonie : lorsque le déterminant “\1” est suivi d’un nom ou d’un adjectif commençant par une voyelle, il est d’usage d’utiliser le pronom  “mon”, “ton” ou “son” pour respecter l’euphonie. (À moins que vous ne confondiez “sa” et “ça”.) Exemple : son étoile (féminin), ça existe.|https://fr.wikipedia.org/wiki/Euphonie
        <<- /eleu/ __else__ -1>> =\1[0:1]+"on"                                  && Euphonie : lorsque le déterminant “\1” est suivi d’un nom ou d’un adjectif commençant par une voyelle, il est d’usage d’utiliser le pronom  “mon”, “ton” ou “son” pour respecter l’euphonie. Exemple : son étoile (féminin).|https://fr.wikipedia.org/wiki/Euphonie
        <<- /eleu/ morph(\2, ":[123][sp]") -1>> =\1[0:1]+"on|ça"                && Euphonie : lorsque le déterminant “\1” est suivi d’un nom ou d’un adjectif commençant par une voyelle, il est d’usage d’utiliser le pronom “mon”, “ton” ou “son” pour respecter l’euphonie. (À moins que vous ne confondiez “sa” et “ça”.) Exemple : son étoile (féminin), ça existe.|https://fr.wikipedia.org/wiki/Euphonie
        <<- /eleu/ __else__ -1>> =\1[0:1]+"on"                                  && Euphonie : lorsque le déterminant “\1” est suivi d’un nom ou d’un adjectif commençant par une voyelle, il est d’usage d’utiliser le pronom “mon”, “ton” ou “son” pour respecter l’euphonie. Exemple : son étoile (féminin).|https://fr.wikipedia.org/wiki/Euphonie

TEST: {{ta}} aimée                                              ->> ton
TEST: {{ma}} obligée                                            ->> mon
TEST: {{sa}} œuvre                                              ->> son|ça
TEST: {{sa}} existence                                          ->> son
TEST: SA déchue aux yeux du Fuhrer
TEST: Ce couple va donner à la France sa très importante collection qui rejoindra le musée d’Orsay
4208
4209
4210
4211
4212
4213
4214
4215

4216
4217
4218

4219
4220
4221

4222
4223
4224

4225
4226
4227

4228
4229
4230

4231
4232
4233

4234
4235
4236

4237
4238
4239

4240
4241
4242

4243
4244
4245
4246
4247
4248
4249
4250
4251
4252
4253
4254
4255
4256
4257
4258
4259

4260
4261
4262
4263

4264
4265
4266
4267

4268
4269
4270
4271

4272
4273
4274
4275

4276
4277
4278
4279

4280
4281
4282
4283

4284
4285
4286
4287

4288
4289
4290

4291
4292
4293

4294
4295
4296
4297

4298
4299

4300
4301
4302
4303
4304
4305
4306
4211
4212
4213
4214
4215
4216
4217

4218
4219
4220

4221
4222
4223

4224
4225
4226

4227
4228
4229

4230
4231
4232

4233
4234
4235

4236
4237
4238

4239
4240
4241

4242
4243
4244

4245
4246
4247
4248
4249
4250
4251
4252
4253
4254
4255
4256
4257
4258
4259
4260
4261

4262
4263
4264
4265

4266
4267
4268
4269

4270
4271
4272
4273

4274
4275
4276
4277

4278
4279
4280
4281

4282
4283
4284
4285

4286
4287
4288
4289

4290
4291
4292

4293
4294
4295

4296
4297
4298
4299

4300
4301

4302
4303
4304
4305
4306
4307
4308
4309







-
+


-
+


-
+


-
+


-
+


-
+


-
+


-
+


-
+


-
+
















-
+



-
+



-
+



-
+



-
+



-
+



-
+



-
+


-
+


-
+



-
+

-
+







!!!! Nombres ordinaux                                                                             !!
!!
!!

__typo_ordinaux_chiffres_exposants__
# Désactivé dans Writer pour éviter la confusion avec le formatage exposant
    1er
        <<- /typo/ sContext != "Writer" ->> 1ᵉʳ     && Nombre ordinal. Premier : 1ᵉʳ. Première : 1ʳᵉ. Premiers : 1ᵉʳˢ. Premières : 1ʳᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
        <<- /typo/ sContext != "Writer" ->> 1ᵉʳ     && Nombre ordinal. Premier : 1ᵉʳ. Première : 1ʳᵉ. Premiers : 1ᵉʳˢ. Premières : 1ʳᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271

    1ers
        <<- /typo/ sContext != "Writer" ->> 1ᵉʳˢ    && Nombre ordinal. Premier : 1ᵉʳ. Première : 1ʳᵉ. Premiers : 1ᵉʳˢ. Premières : 1ʳᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
        <<- /typo/ sContext != "Writer" ->> 1ᵉʳˢ    && Nombre ordinal. Premier : 1ᵉʳ. Première : 1ʳᵉ. Premiers : 1ᵉʳˢ. Premières : 1ʳᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271

    1re
        <<- /typo/ sContext != "Writer" ->> 1ʳᵉ     && Nombre ordinal. Premier : 1ᵉʳ. Première : 1ʳᵉ. Premiers : 1ᵉʳˢ. Premières : 1ʳᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
        <<- /typo/ sContext != "Writer" ->> 1ʳᵉ     && Nombre ordinal. Premier : 1ᵉʳ. Première : 1ʳᵉ. Premiers : 1ᵉʳˢ. Premières : 1ʳᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271

    1res
        <<- /typo/ sContext != "Writer" ->> 1ʳᵉˢ    && Nombre ordinal. Premier : 1ᵉʳ. Première : 1ʳᵉ. Premiers : 1ᵉʳˢ. Premières : 1ʳᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
        <<- /typo/ sContext != "Writer" ->> 1ʳᵉˢ    && Nombre ordinal. Premier : 1ᵉʳ. Première : 1ʳᵉ. Premiers : 1ᵉʳˢ. Premières : 1ʳᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271

    2d
        <<- /typo/ sContext != "Writer" ->> 2ᵈ      && Nombre ordinal. Second : 2ᵈ. Seconde : 2ᵈᵉ. Seconds : 2ᵈˢ. Secondes : 2ᵈᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
        <<- /typo/ sContext != "Writer" ->> 2ᵈ      && Nombre ordinal. Second : 2ᵈ. Seconde : 2ᵈᵉ. Seconds : 2ᵈˢ. Secondes : 2ᵈᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271

    2ds
        <<- /typo/ sContext != "Writer" ->> 2ᵈˢ     && Nombre ordinal. Second : 2ᵈ. Seconde : 2ᵈᵉ. Seconds : 2ᵈˢ. Secondes : 2ᵈᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
        <<- /typo/ sContext != "Writer" ->> 2ᵈˢ     && Nombre ordinal. Second : 2ᵈ. Seconde : 2ᵈᵉ. Seconds : 2ᵈˢ. Secondes : 2ᵈᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271

    2de
        <<- /typo/ sContext != "Writer" ->> 2ᵈᵉ     && Nombre ordinal. Second : 2ᵈ. Seconde : 2ᵈᵉ. Seconds : 2ᵈˢ. Secondes : 2ᵈᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
        <<- /typo/ sContext != "Writer" ->> 2ᵈᵉ     && Nombre ordinal. Second : 2ᵈ. Seconde : 2ᵈᵉ. Seconds : 2ᵈˢ. Secondes : 2ᵈᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271

    2des
        <<- /typo/ sContext != "Writer" ->> 2ᵈᵉˢ    && Nombre ordinal. Second : 2ᵈ. Seconde : 2ᵈᵉ. Seconds : 2ᵈˢ. Secondes : 2ᵈᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
        <<- /typo/ sContext != "Writer" ->> 2ᵈᵉˢ    && Nombre ordinal. Second : 2ᵈ. Seconde : 2ᵈᵉ. Seconds : 2ᵈˢ. Secondes : 2ᵈᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271

    ~^\d+e$
        <<- /typo/ \1 != "1e" and sContext != "Writer" ->> =\1[:-1]+"ᵉ"         && Nombre ordinal singulier. Exemples : 2ᵉ, 3ᵉ, 4ᵉ…|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
        <<- /typo/ \1 != "1e" and sContext != "Writer" ->> =\1[:-1]+"ᵉ"         && Nombre ordinal singulier. Exemples : 2ᵉ, 3ᵉ, 4ᵉ…|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271

    ~^\d+es$
        <<- /typo/ \1 != "1es" and sContext != "Writer" ->> =\1[:-2]+"ᵉˢ"       && Nombre ordinal pluriel. Exemples : 2ᵉˢ, 3ᵉˢ, 4ᵉˢ…|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
        <<- /typo/ \1 != "1es" and sContext != "Writer" ->> =\1[:-2]+"ᵉˢ"       && Nombre ordinal pluriel. Exemples : 2ᵉˢ, 3ᵉˢ, 4ᵉˢ…|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271

TEST: le {{1er}} qui m’emmerde, je le fusille       ->> 1ᵉʳ
TEST: les {{1ers}} seront toujours là               ->> 1ᵉʳˢ
TEST: la {{1re}} classe                             ->> 1ʳᵉ
TEST: les {{1res}} classes                          ->> 1ʳᵉˢ
TEST: être {{2d}} au classement                     ->> 2ᵈ
TEST: éternels {{2ds}}                              ->> 2ᵈˢ
TEST: la {{2de}} fois                               ->> 2ᵈᵉ
TEST: les {{2des}}                                  ->> 2ᵈᵉˢ
TEST: c’est le {{3e}}                               ->> 3ᵉ
TEST: les {{4es}} vont en cours.                    ->> 4ᵉˢ


__typo_ordinaux_chiffres_incorrects__
    1 [ier|er]
    1ier
        <<- /typo/ ->> 1ᵉʳ          && Nombre ordinal. Premier : 1ᵉʳ. Première : 1ʳᵉ. Premiers : 1ᵉʳˢ. Premières : 1ʳᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
        <<- /typo/ ->> 1ᵉʳ          && Nombre ordinal. Premier : 1ᵉʳ. Première : 1ʳᵉ. Premiers : 1ᵉʳˢ. Premières : 1ʳᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271

    1 [iers|ers]
    1iers
        <<- /typo/ ->> 1ᵉʳˢ         && Nombre ordinal. Premier : 1ᵉʳ. Première : 1ʳᵉ. Premiers : 1ᵉʳˢ. Premières : 1ʳᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
        <<- /typo/ ->> 1ᵉʳˢ         && Nombre ordinal. Premier : 1ᵉʳ. Première : 1ʳᵉ. Premiers : 1ᵉʳˢ. Premières : 1ʳᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271

    1 [ière|ère|re]
    [1ière|1ère]
        <<- /typo/ ->> 1ʳᵉ          && Nombre ordinal. Premier : 1ᵉʳ. Première : 1ʳᵉ. Premiers : 1ᵉʳˢ. Premières : 1ʳᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
        <<- /typo/ ->> 1ʳᵉ          && Nombre ordinal. Premier : 1ᵉʳ. Première : 1ʳᵉ. Premiers : 1ᵉʳˢ. Premières : 1ʳᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271

    1 [ières|ères|res]
    [1ières|1ères]
        <<- /typo/ ->> 1ʳᵉˢ         && Nombre ordinal. Premier : 1ᵉʳ. Première : 1ʳᵉ. Premiers : 1ᵉʳˢ. Premières : 1ʳᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
        <<- /typo/ ->> 1ʳᵉˢ         && Nombre ordinal. Premier : 1ᵉʳ. Première : 1ʳᵉ. Premiers : 1ᵉʳˢ. Premières : 1ʳᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271

    2 nd
    2nd
        <<- /typo/ ->> 2ᵈ           && Nombre ordinal. Second : 2ᵈ. Seconde : 2ᵈᵉ. Seconds : 2ᵈˢ. Secondes : 2ᵈᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
        <<- /typo/ ->> 2ᵈ           && Nombre ordinal. Second : 2ᵈ. Seconde : 2ᵈᵉ. Seconds : 2ᵈˢ. Secondes : 2ᵈᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271

    2 nds
    2nds
        <<- /typo/ ->> 2ᵈˢ          && Nombre ordinal. Second : 2ᵈ. Seconde : 2ᵈᵉ. Seconds : 2ᵈˢ. Secondes : 2ᵈᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
        <<- /typo/ ->> 2ᵈˢ          && Nombre ordinal. Second : 2ᵈ. Seconde : 2ᵈᵉ. Seconds : 2ᵈˢ. Secondes : 2ᵈᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271

    2 nde
    2nde
        <<- /typo/ ->> 2ᵈᵉ          && Nombre ordinal. Second : 2ᵈ. Seconde : 2ᵈᵉ. Seconds : 2ᵈˢ. Secondes : 2ᵈᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
        <<- /typo/ ->> 2ᵈᵉ          && Nombre ordinal. Second : 2ᵈ. Seconde : 2ᵈᵉ. Seconds : 2ᵈˢ. Secondes : 2ᵈᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271

    2 ndes
    2ndes
        <<- /typo/ ->> 2ᵈᵉˢ         && Nombre ordinal. Second : 2ᵈ. Seconde : 2ᵈᵉ. Seconds : 2ᵈˢ. Secondes : 2ᵈᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
        <<- /typo/ ->> 2ᵈᵉˢ         && Nombre ordinal. Second : 2ᵈ. Seconde : 2ᵈᵉ. Seconds : 2ᵈˢ. Secondes : 2ᵈᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271

    ~^\d+$  [e|è|ième|ieme|ème|eme]
        <<- /typo/ ->> \1ᵉ          && Nombre ordinal singulier. Exemples : 2ᵉ, 3ᵉ, 4ᵉ…|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
        <<- /typo/ ->> \1ᵉ          && Nombre ordinal singulier. Exemples : 2ᵉ, 3ᵉ, 4ᵉ…|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271

    ~^\d+$  [es|ès|ièmes|iemes|èmes|emes]
        <<- /typo/ ->> \1ᵉˢ         && Nombre ordinal pluriel. Exemples : 2ᵉˢ, 3ᵉˢ, 4ᵉˢ…|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
        <<- /typo/ ->> \1ᵉˢ         && Nombre ordinal pluriel. Exemples : 2ᵉˢ, 3ᵉˢ, 4ᵉˢ…|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271

    ~^\d+(?:è|i?[èe]me)s?$
        <<- /typo/ \1.endswith("s")
        ->> =\1.replace("mes", "").replace("è", "").replace("e", "").replace("i", "") + "ᵉˢ"    && Nombre ordinal pluriel. Exemples : 2ᵉˢ, 3ᵉˢ, 4ᵉˢ…|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
        ->> =\1.replace("mes", "").replace("è", "").replace("e", "").replace("i", "") + "ᵉˢ"    && Nombre ordinal pluriel. Exemples : 2ᵉˢ, 3ᵉˢ, 4ᵉˢ…|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
        <<- /typo/ __else__
        ->> =\1.replace("me", "").replace("è", "").replace("e", "").replace("i", "") + "ᵉ"      && Nombre ordinal singulier. Exemples : 2ᵉ, 3ᵉ, 4ᵉ…|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
        ->> =\1.replace("me", "").replace("è", "").replace("e", "").replace("i", "") + "ᵉ"      && Nombre ordinal singulier. Exemples : 2ᵉ, 3ᵉ, 4ᵉ…|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271

TEST: le {{1ier}} de chaque semaine             ->> 1ᵉʳ
TEST: les {{1 iers}}                            ->> 1ᵉʳˢ
TEST: la {{1ière}} fois, c’est la plus dure     ->> 1ʳᵉ
TEST: les {{1ières}}                            ->> 1ʳᵉˢ
TEST: le {{2nd}} du mois                        ->> 2ᵈ
TEST: les {{2nds}} du mois                      ->> 2ᵈˢ
4323
4324
4325
4326
4327
4328
4329
4330
4331


4332
4333
4334
4335


4336
4337
4338
4339


4340
4341
4342
4343


4344
4345
4346
4347


4348
4349
4350
4351


4352
4353
4354
4355


4356
4357
4358
4359


4360
4361
4362

4363
4364

4365
4366
4367

4368
4369

4370
4371
4372

4373
4374

4375
4376
4377

4378
4379

4380
4381
4382
4383
4384
4385
4386
4326
4327
4328
4329
4330
4331
4332


4333
4334
4335
4336


4337
4338
4339
4340


4341
4342
4343
4344


4345
4346
4347
4348


4349
4350
4351
4352


4353
4354
4355
4356


4357
4358
4359
4360


4361
4362
4363
4364

4365
4366

4367
4368
4369

4370
4371

4372
4373
4374

4375
4376

4377
4378
4379

4380
4381

4382
4383
4384
4385
4386
4387
4388
4389







-
-
+
+


-
-
+
+


-
-
+
+


-
-
+
+


-
-
+
+


-
-
+
+


-
-
+
+


-
-
+
+


-
+

-
+


-
+

-
+


-
+

-
+


-
+

-
+







#TEST: __romain__ Anno {{MXXXIII}}                   ->> ⅯⅩⅩⅩⅠⅠⅠ
#TEST: __romain__ j’ai eu un CDI.
#TEST: __romain__ c’est un écran LCD


__typo_ordinaux_chiffres_romains_exposants!5__
    Ier
        <<- /typo/ sContext != "Writer" and not option("romain") ->> Iᵉʳ     && Nombre ordinal romain. Premier : Iᵉʳ. Première : Iʳᵉ. Premiers : Iᵉʳˢ. Premières : Iʳᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
#        <<- /romain/ ->> Ⅰᵉʳ     && Nombre ordinal romain. Premier : Iᵉʳ. Première : Iʳᵉ. Premiers : Iᵉʳˢ. Premières : Iʳᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
        <<- /typo/ sContext != "Writer" and not option("romain") ->> Iᵉʳ     && Nombre ordinal romain. Premier : Iᵉʳ. Première : Iʳᵉ. Premiers : Iᵉʳˢ. Premières : Iʳᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
#        <<- /romain/ ->> Ⅰᵉʳ     && Nombre ordinal romain. Premier : Iᵉʳ. Première : Iʳᵉ. Premiers : Iᵉʳˢ. Premières : Iʳᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271

    Iers
        <<- /typo/ sContext != "Writer" and not option("romain") ->> Iᵉʳˢ    && Nombre ordinal romain. Premier : Iᵉʳ. Première : Iʳᵉ. Premiers : Iᵉʳˢ. Premières : Iʳᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
#        <<- /romain/ ->> Ⅰᵉʳˢ    && Nombre ordinal romain. Premier : Iᵉʳ. Première : Iʳᵉ. Premiers : Iᵉʳˢ. Premières : Iʳᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
        <<- /typo/ sContext != "Writer" and not option("romain") ->> Iᵉʳˢ    && Nombre ordinal romain. Premier : Iᵉʳ. Première : Iʳᵉ. Premiers : Iᵉʳˢ. Premières : Iʳᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
#        <<- /romain/ ->> Ⅰᵉʳˢ    && Nombre ordinal romain. Premier : Iᵉʳ. Première : Iʳᵉ. Premiers : Iᵉʳˢ. Premières : Iʳᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271

    Ire
        <<- /typo/ sContext != "Writer" and not option("romain") ->> Iʳᵉ     && Nombre ordinal romain. Premier : Iᵉʳ. Première : Iʳᵉ. Premiers : Iᵉʳˢ. Premières : Iʳᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
#        <<- /romain/ ->> Ⅰʳᵉ     && Nombre ordinal romain. Premier : Iᵉʳ. Première : Iʳᵉ. Premiers : Iᵉʳˢ. Premières : Iʳᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
        <<- /typo/ sContext != "Writer" and not option("romain") ->> Iʳᵉ     && Nombre ordinal romain. Premier : Iᵉʳ. Première : Iʳᵉ. Premiers : Iᵉʳˢ. Premières : Iʳᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
#        <<- /romain/ ->> Ⅰʳᵉ     && Nombre ordinal romain. Premier : Iᵉʳ. Première : Iʳᵉ. Premiers : Iᵉʳˢ. Premières : Iʳᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271

    Ires
        <<- /typo/ sContext != "Writer" and not option("romain") ->> Iʳᵉˢ    && Nombre ordinal romain. Premier : Iᵉʳ. Première : Iʳᵉ. Premiers : Iᵉʳˢ. Premières : Iʳᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
#        <<- /romain/ ->> Ⅰʳᵉˢ    && Nombre ordinal romain. Premier : Iᵉʳ. Première : Iʳᵉ. Premiers : Iᵉʳˢ. Premières : Iʳᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
        <<- /typo/ sContext != "Writer" and not option("romain") ->> Iʳᵉˢ    && Nombre ordinal romain. Premier : Iᵉʳ. Première : Iʳᵉ. Premiers : Iᵉʳˢ. Premières : Iʳᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
#        <<- /romain/ ->> Ⅰʳᵉˢ    && Nombre ordinal romain. Premier : Iᵉʳ. Première : Iʳᵉ. Premiers : Iᵉʳˢ. Premières : Iʳᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271

    IId
        <<- /typo/ sContext != "Writer" and not option("romain") ->> IIᵈ     && Nombre ordinal romain. Second : IIᵈ. Seconde : IIᵈᵉ. Seconds : IIᵈˢ. Secondes : IIᵈᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
#        <<- /romain/ ->> ⅠⅠᵈ     && Nombre ordinal romain. Second : IIᵈ. Seconde : IIᵈᵉ. Seconds : IIᵈˢ. Secondes : IIᵈᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
        <<- /typo/ sContext != "Writer" and not option("romain") ->> IIᵈ     && Nombre ordinal romain. Second : IIᵈ. Seconde : IIᵈᵉ. Seconds : IIᵈˢ. Secondes : IIᵈᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
#        <<- /romain/ ->> ⅠⅠᵈ     && Nombre ordinal romain. Second : IIᵈ. Seconde : IIᵈᵉ. Seconds : IIᵈˢ. Secondes : IIᵈᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271

    IIds
        <<- /typo/ sContext != "Writer" and not option("romain") ->> IIᵈˢ    && Nombre ordinal romain. Second : IIᵈ. Seconde : IIᵈᵉ. Seconds : IIᵈˢ. Secondes : IIᵈᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
#        <<- /romain/ ->> ⅠⅠᵈˢ    && Nombre ordinal romain. Second : IIᵈ. Seconde : IIᵈᵉ. Seconds : IIᵈˢ. Secondes : IIᵈᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
        <<- /typo/ sContext != "Writer" and not option("romain") ->> IIᵈˢ    && Nombre ordinal romain. Second : IIᵈ. Seconde : IIᵈᵉ. Seconds : IIᵈˢ. Secondes : IIᵈᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
#        <<- /romain/ ->> ⅠⅠᵈˢ    && Nombre ordinal romain. Second : IIᵈ. Seconde : IIᵈᵉ. Seconds : IIᵈˢ. Secondes : IIᵈᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271

    IIde
        <<- /typo/ sContext != "Writer" and not option("romain") ->> IIᵈᵉ    && Nombre ordinal romain. Second : IIᵈ. Seconde : IIᵈᵉ. Seconds : IIᵈˢ. Secondes : IIᵈᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
#        <<- /romain/ ->> ⅠⅠᵈᵉ    && Nombre ordinal romain. Second : IIᵈ. Seconde : IIᵈᵉ. Seconds : IIᵈˢ. Secondes : IIᵈᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
        <<- /typo/ sContext != "Writer" and not option("romain") ->> IIᵈᵉ    && Nombre ordinal romain. Second : IIᵈ. Seconde : IIᵈᵉ. Seconds : IIᵈˢ. Secondes : IIᵈᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
#        <<- /romain/ ->> ⅠⅠᵈᵉ    && Nombre ordinal romain. Second : IIᵈ. Seconde : IIᵈᵉ. Seconds : IIᵈˢ. Secondes : IIᵈᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271

    IIdes
        <<- /typo/ sContext != "Writer" and not option("romain") ->> IIᵈᵉˢ   && Nombre ordinal romain. Second : IIᵈ. Seconde : IIᵈᵉ. Seconds : IIᵈˢ. Secondes : IIᵈᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
#        <<- /romain/ ->> ⅠⅠᵈᵉˢ   && Nombre ordinal romain. Second : IIᵈ. Seconde : IIᵈᵉ. Seconds : IIᵈˢ. Secondes : IIᵈᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
        <<- /typo/ sContext != "Writer" and not option("romain") ->> IIᵈᵉˢ   && Nombre ordinal romain. Second : IIᵈ. Seconde : IIᵈᵉ. Seconds : IIᵈˢ. Secondes : IIᵈᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
#        <<- /romain/ ->> ⅠⅠᵈᵉˢ   && Nombre ordinal romain. Second : IIᵈ. Seconde : IIᵈᵉ. Seconds : IIᵈˢ. Secondes : IIᵈᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271

    ~^[IVXLCDM]{2,20}e$
        <<- /typo/ sContext != "Writer" and not option("romain") ->> =\1[:-1]+"ᵉ"    && Nombre ordinal romain singulier. Exemples : IIᵉ, IIIᵉ, IVᵉ…|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
        <<- /typo/ sContext != "Writer" and not option("romain") ->> =\1[:-1]+"ᵉ"    && Nombre ordinal romain singulier. Exemples : IIᵉ, IIIᵉ, IVᵉ…|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
#        <<- /romain/ ->> =\1[:-1].replace("I", "Ⅰ").replace("V", "Ⅴ").replace("X", "Ⅹ").replace("L", "Ⅼ").replace("C", "Ⅽ").replace("D", "Ⅾ").replace("M", "Ⅿ")+"ᵉ"
#        && Nombre ordinal romain singulier. Exemples : IIᵉ, IIIᵉ, IVᵉ…|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
#        && Nombre ordinal romain singulier. Exemples : IIᵉ, IIIᵉ, IVᵉ…|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271

    [Ie|Ve|Xe]
        <<- /typo/ sContext != "Writer" and not option("romain") ->> =\1[:-1]+"ᵉ"    && Nombre ordinal romain singulier. Exemples : IIᵉ, IIIᵉ, IVᵉ…|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
        <<- /typo/ sContext != "Writer" and not option("romain") ->> =\1[:-1]+"ᵉ"    && Nombre ordinal romain singulier. Exemples : IIᵉ, IIIᵉ, IVᵉ…|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
#        <<- /romain/ ->> =\1[:-1].replace("I", "Ⅰ").replace("V", "Ⅴ").replace("X", "Ⅹ").replace("L", "Ⅼ").replace("C", "Ⅽ").replace("D", "Ⅾ").replace("M", "Ⅿ")+"ᵉ"
#        && Nombre ordinal romain singulier. Exemples : IIᵉ, IIIᵉ, IVᵉ…|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
#        && Nombre ordinal romain singulier. Exemples : IIᵉ, IIIᵉ, IVᵉ…|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271

    ~^[IVXLCDM]{2,20}es$
        <<- /typo/ sContext != "Writer" and not option("romain") ->> =\1[:-2]+"ᵉˢ"   && Nombre ordinal romain pluriel. Exemples : IIᵉˢ, IIIᵉˢ, IVᵉˢ…|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
        <<- /typo/ sContext != "Writer" and not option("romain") ->> =\1[:-2]+"ᵉˢ"   && Nombre ordinal romain pluriel. Exemples : IIᵉˢ, IIIᵉˢ, IVᵉˢ…|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
#        <<- /romain/ ->> =\1[:-2].replace("I", "Ⅰ").replace("V", "Ⅴ").replace("X", "Ⅹ").replace("L", "Ⅼ").replace("C", "Ⅽ").replace("D", "Ⅾ").replace("M", "Ⅿ")+"ᵉˢ"
#        && Nombre ordinal romain pluriel. Exemples : IIᵉˢ, IIIᵉˢ, IVᵉˢ…|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
#        && Nombre ordinal romain pluriel. Exemples : IIᵉˢ, IIIᵉˢ, IVᵉˢ…|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271

    [Ies|Ves|Xes]
        <<- /typo/ sContext != "Writer" and not option("romain") ->> =\1[:-2]+"ᵉˢ"   && Nombre ordinal romain pluriel. Exemples : IIᵉˢ, IIIᵉˢ, IVᵉˢ…|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
        <<- /typo/ sContext != "Writer" and not option("romain") ->> =\1[:-2]+"ᵉˢ"   && Nombre ordinal romain pluriel. Exemples : IIᵉˢ, IIIᵉˢ, IVᵉˢ…|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
#        <<- /romain/ ->> =\1[:-2].replace("I", "Ⅰ").replace("V", "Ⅴ").replace("X", "Ⅹ").replace("L", "Ⅼ").replace("C", "Ⅽ").replace("D", "Ⅾ").replace("M", "Ⅿ")+"ᵉˢ"
#        && Nombre ordinal romain pluriel. Exemples : IIᵉˢ, IIIᵉˢ, IVᵉˢ…|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
#        && Nombre ordinal romain pluriel. Exemples : IIᵉˢ, IIIᵉˢ, IVᵉˢ…|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271

TEST: François {{Ier}}                          ->> Iᵉʳ
TEST: les {{Iers}}                              ->> Iᵉʳˢ
TEST: la {{Ire}}                                ->> Iʳᵉ
TEST: les {{Ires}}                              ->> Iʳᵉˢ
TEST: le {{IId}}                                ->> IIᵈ
TEST: les {{IIds}}                              ->> IIᵈˢ
4405
4406
4407
4408
4409
4410
4411
4412
4413


4414
4415
4416
4417
4418


4419
4420
4421
4422
4423


4424
4425
4426
4427
4428


4429
4430
4431
4432
4433


4434
4435
4436
4437
4438


4439
4440
4441
4442
4443


4444
4445
4446
4447
4448


4449
4450
4451

4452
4453

4454
4455
4456

4457
4458

4459
4460
4461
4462
4463

4464
4465

4466
4467
4468

4469
4470
4471

4472
4473
4474
4475
4476
4477
4478
4408
4409
4410
4411
4412
4413
4414


4415
4416
4417
4418
4419


4420
4421
4422
4423
4424


4425
4426
4427
4428
4429


4430
4431
4432
4433
4434


4435
4436
4437
4438
4439


4440
4441
4442
4443
4444


4445
4446
4447
4448
4449


4450
4451
4452
4453

4454
4455

4456
4457
4458

4459
4460

4461
4462
4463
4464
4465

4466
4467

4468
4469
4470

4471
4472
4473

4474
4475
4476
4477
4478
4479
4480
4481







-
-
+
+



-
-
+
+



-
-
+
+



-
-
+
+



-
-
+
+



-
-
+
+



-
-
+
+



-
-
+
+


-
+

-
+


-
+

-
+




-
+

-
+


-
+


-
+







#TEST: __romain__ {{XXXIIes}}                    ->> ⅩⅩⅩⅠⅠᵉˢ
#TEST: __romain__ les {{Ves}} siècles            ->> Ⅴᵉˢ


__typo_ordinaux_chiffres_romains_incorrects!5__
    I ier
    Iier
        <<- /typo/ ->> Iᵉʳ                                  && Nombre ordinal romain. Premier : Iᵉʳ. Première : Iʳᵉ. Premiers : Iᵉʳˢ. Premières : Iʳᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
#        <<- /romain/ __else__ ->> Ⅰᵉʳ                     && Nombre ordinal romain. Premier : Iᵉʳ. Première : Iʳᵉ. Premiers : Iᵉʳˢ. Premières : Iʳᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
        <<- /typo/ ->> Iᵉʳ                                  && Nombre ordinal romain. Premier : Iᵉʳ. Première : Iʳᵉ. Premiers : Iᵉʳˢ. Premières : Iʳᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
#        <<- /romain/ __else__ ->> Ⅰᵉʳ                     && Nombre ordinal romain. Premier : Iᵉʳ. Première : Iʳᵉ. Premiers : Iᵉʳˢ. Premières : Iʳᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271

    I iers
    Iiers
        <<- /typo/ ->> Iᵉʳˢ                                 && Nombre ordinal romain. Premier : Iᵉʳ. Première : Iʳᵉ. Premiers : Iᵉʳˢ. Premières : Iʳᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
#        <<- /romain/ __else__ ->> Ⅰᵉʳˢ                    && Nombre ordinal romain. Premier : Iᵉʳ. Première : Iʳᵉ. Premiers : Iᵉʳˢ. Premières : Iʳᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
        <<- /typo/ ->> Iᵉʳˢ                                 && Nombre ordinal romain. Premier : Iᵉʳ. Première : Iʳᵉ. Premiers : Iᵉʳˢ. Premières : Iʳᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
#        <<- /romain/ __else__ ->> Ⅰᵉʳˢ                    && Nombre ordinal romain. Premier : Iᵉʳ. Première : Iʳᵉ. Premiers : Iᵉʳˢ. Premières : Iʳᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271

    I ière
    Iière
        <<- /typo/ ->> Iʳᵉ                                  && Nombre ordinal romain. Premier : Iᵉʳ. Première : Iʳᵉ. Premiers : Iᵉʳˢ. Premières : Iʳᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
#        <<- /romain/ __else__ ->> Ⅰʳᵉ                     && Nombre ordinal romain. Premier : Iᵉʳ. Première : Iʳᵉ. Premiers : Iᵉʳˢ. Premières : Iʳᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
        <<- /typo/ ->> Iʳᵉ                                  && Nombre ordinal romain. Premier : Iᵉʳ. Première : Iʳᵉ. Premiers : Iᵉʳˢ. Premières : Iʳᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
#        <<- /romain/ __else__ ->> Ⅰʳᵉ                     && Nombre ordinal romain. Premier : Iᵉʳ. Première : Iʳᵉ. Premiers : Iᵉʳˢ. Premières : Iʳᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271

    I ières
    Iières
        <<- /typo/ ->> Iʳᵉˢ                                 && Nombre ordinal romain. Premier : Iᵉʳ. Première : Iʳᵉ. Premiers : Iᵉʳˢ. Premières : Iʳᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
#        <<- /romain/ __else__ ->> Ⅰʳᵉˢ                    && Nombre ordinal romain. Premier : Iᵉʳ. Première : Iʳᵉ. Premiers : Iᵉʳˢ. Premières : Iʳᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
        <<- /typo/ ->> Iʳᵉˢ                                 && Nombre ordinal romain. Premier : Iᵉʳ. Première : Iʳᵉ. Premiers : Iᵉʳˢ. Premières : Iʳᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
#        <<- /romain/ __else__ ->> Ⅰʳᵉˢ                    && Nombre ordinal romain. Premier : Iᵉʳ. Première : Iʳᵉ. Premiers : Iᵉʳˢ. Premières : Iʳᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271

    II nd
    IInd
        <<- /typo/ ->> IIᵈ                                  && Nombre ordinal romain. Second : IIᵈ. Seconde : IIᵈᵉ. Seconds : IIᵈˢ. Secondes : IIᵈᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
#        <<- /romain/ __else__ ->> ⅠⅠᵈ                     && Nombre ordinal romain. Second : IIᵈ. Seconde : IIᵈᵉ. Seconds : IIᵈˢ. Secondes : IIᵈᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
        <<- /typo/ ->> IIᵈ                                  && Nombre ordinal romain. Second : IIᵈ. Seconde : IIᵈᵉ. Seconds : IIᵈˢ. Secondes : IIᵈᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
#        <<- /romain/ __else__ ->> ⅠⅠᵈ                     && Nombre ordinal romain. Second : IIᵈ. Seconde : IIᵈᵉ. Seconds : IIᵈˢ. Secondes : IIᵈᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271

    II nds
    IInds
        <<- /typo/ ->> IIᵈˢ                                 && Nombre ordinal romain. Second : IIᵈ. Seconde : IIᵈᵉ. Seconds : IIᵈˢ. Secondes : IIᵈᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
#        <<- /romain/ __else__ ->> ⅠⅠᵈˢ                    && Nombre ordinal romain. Second : IIᵈ. Seconde : IIᵈᵉ. Seconds : IIᵈˢ. Secondes : IIᵈᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
        <<- /typo/ ->> IIᵈˢ                                 && Nombre ordinal romain. Second : IIᵈ. Seconde : IIᵈᵉ. Seconds : IIᵈˢ. Secondes : IIᵈᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
#        <<- /romain/ __else__ ->> ⅠⅠᵈˢ                    && Nombre ordinal romain. Second : IIᵈ. Seconde : IIᵈᵉ. Seconds : IIᵈˢ. Secondes : IIᵈᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271

    II nde
    IInde
        <<- /typo/ ->> IIᵈᵉ                                 && Nombre ordinal romain. Second : IIᵈ. Seconde : IIᵈᵉ. Seconds : IIᵈˢ. Secondes : IIᵈᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
#        <<- /romain/ __else__ ->> ⅠⅠᵈᵉ                    && Nombre ordinal romain. Second : IIᵈ. Seconde : IIᵈᵉ. Seconds : IIᵈˢ. Secondes : IIᵈᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
        <<- /typo/ ->> IIᵈᵉ                                 && Nombre ordinal romain. Second : IIᵈ. Seconde : IIᵈᵉ. Seconds : IIᵈˢ. Secondes : IIᵈᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
#        <<- /romain/ __else__ ->> ⅠⅠᵈᵉ                    && Nombre ordinal romain. Second : IIᵈ. Seconde : IIᵈᵉ. Seconds : IIᵈˢ. Secondes : IIᵈᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271

    II ndes
    IIndes
        <<- /typo/ ->> IIᵈᵉˢ                                && Nombre ordinal romain. Second : IIᵈ. Seconde : IIᵈᵉ. Seconds : IIᵈˢ. Secondes : IIᵈᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
#        <<- /romain/ __else__ ->> ⅠⅠᵈᵉˢ                   && Nombre ordinal romain. Second : IIᵈ. Seconde : IIᵈᵉ. Seconds : IIᵈˢ. Secondes : IIᵈᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
        <<- /typo/ ->> IIᵈᵉˢ                                && Nombre ordinal romain. Second : IIᵈ. Seconde : IIᵈᵉ. Seconds : IIᵈˢ. Secondes : IIᵈᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
#        <<- /romain/ __else__ ->> ⅠⅠᵈᵉˢ                   && Nombre ordinal romain. Second : IIᵈ. Seconde : IIᵈᵉ. Seconds : IIᵈˢ. Secondes : IIᵈᵉˢ.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271

    ~^[IVXLCDM]{1,20}$  [e|è|ième|ieme|ème|eme]
        <<- /typo/ ->> \1ᵉ                                  && Nombre ordinal romain singulier. Exemples : IIᵉ, IIIᵉ, IVᵉ…|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
        <<- /typo/ ->> \1ᵉ                                  && Nombre ordinal romain singulier. Exemples : IIᵉ, IIIᵉ, IVᵉ…|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
#        <<- /romain/ __else__ ->> =\1.replace("I", "Ⅰ").replace("V", "Ⅴ").replace("X", "Ⅹ").replace("L", "Ⅼ").replace("C", "Ⅽ").replace("D", "Ⅾ").replace("M", "Ⅿ") + "ᵉ"
#        && Nombre ordinal romain singulier. Exemples : 2ᵉ, 3ᵉ, 4ᵉ…|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
#        && Nombre ordinal romain singulier. Exemples : 2ᵉ, 3ᵉ, 4ᵉ…|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271

    ~^[IVXLCDM]{1,20}$  [es|ès|ièmes|iemes|èmes|emes]
        <<- /typo/ ->> \1ᵉˢ                                 && Nombre ordinal romain pluriel. Exemples : IIᵉˢ, IIIᵉˢ, IVᵉˢ…|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
        <<- /typo/ ->> \1ᵉˢ                                 && Nombre ordinal romain pluriel. Exemples : IIᵉˢ, IIIᵉˢ, IVᵉˢ…|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
#        <<- /romain/ __else__ ->> =\1.replace("I", "Ⅰ").replace("V", "Ⅴ").replace("X", "Ⅹ").replace("L", "Ⅼ").replace("C", "Ⅽ").replace("D", "Ⅾ").replace("M", "Ⅿ") + "ᵉˢ"
#        && Nombre ordinal romain pluriel. Exemples : 2ᵉˢ, 3ᵉˢ, 4ᵉˢ…|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
#        && Nombre ordinal romain pluriel. Exemples : 2ᵉˢ, 3ᵉˢ, 4ᵉˢ…|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271

    ~^[IVXLCDM]{1,20}(?:è|i?[èe]me)s?$
        <<- /typo/ not morph(\1, ":G") >>>
        <<- /typo/ \1.endswith("s") or \1.endswith("S")
        ->> =\1.replace("mes", "").replace("è", "").replace("e", "").replace("i", "") + "ᵉˢ"        && Nombre ordinal romain pluriel. Exemples : IIᵉˢ, IIIᵉˢ, IVᵉˢ…|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
        ->> =\1.replace("mes", "").replace("è", "").replace("e", "").replace("i", "") + "ᵉˢ"        && Nombre ordinal romain pluriel. Exemples : IIᵉˢ, IIIᵉˢ, IVᵉˢ…|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
        <<- /typo/ __else__
        ->> =\1.replace("me", "").replace("è", "").replace("e", "").replace("i", "") + "ᵉ"         &&  Nombre ordinal romain singulier. Exemples : IIᵉ, IIIᵉ, IVᵉ…|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
        ->> =\1.replace("me", "").replace("è", "").replace("e", "").replace("i", "") + "ᵉ"         &&  Nombre ordinal romain singulier. Exemples : IIᵉ, IIIᵉ, IVᵉ…|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
#        <<- /romain/ \1.endswith("s") or \1.endswith("S")
#        ->> =\1.replace("I", "Ⅰ").replace("V", "Ⅴ").replace("X", "Ⅹ").replace("L", "Ⅼ").replace("C", "Ⅽ").replace("D", "Ⅾ").replace("M", "Ⅿ").replace("mes", "").replace("è", "").replace("e", "").replace("i", "")+"ᵉˢ"
#        && Nombre ordinal romain pluriel. Exemples : IIᵉˢ, IIIᵉˢ, IVᵉˢ…|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
#        && Nombre ordinal romain pluriel. Exemples : IIᵉˢ, IIIᵉˢ, IVᵉˢ…|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
#        <<- /romain/ __else__
#        ->> =\1.replace("I", "Ⅰ").replace("V", "Ⅴ").replace("X", "Ⅹ").replace("L", "Ⅼ").replace("C", "Ⅽ").replace("D", "Ⅾ").replace("M", "Ⅿ").replace("me", "").replace("è", "").replace("e", "").replace("i", "")+"ᵉ"
#        &&  Nombre ordinal romain singulier. Exemples : IIᵉ, IIIᵉ, IVᵉ…|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271
#        &&  Nombre ordinal romain singulier. Exemples : IIᵉ, IIIᵉ, IVᵉ…|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4271

TEST: François {{Iier}}                         ->> Iᵉʳ
TEST: {{Iiers}}                                 ->> Iᵉʳˢ
TEST: {{I ière}}                                ->> Iʳᵉ
TEST: {{Iières}}                                ->> Iʳᵉˢ
TEST: le {{IInd}} siècle                        ->> IIᵈ
TEST: {{IInds}}                                 ->> IIᵈˢ
4540
4541
4542
4543
4544
4545
4546
4547

4548
4549
4550

4551
4552
4553
4554
4555
4556
4557
4543
4544
4545
4546
4547
4548
4549

4550
4551
4552

4553
4554
4555
4556
4557
4558
4559
4560







-
+


-
+







    *NUM  -  ~^\d\d?$  -  ~^\d{2,5}$
        <<- \1.isdigit() ~>> ␣
        <<- =>> change_meta(\1, "DATE")


__date_jour_mois_année__
    31 [avril|juin|septembre|novembre]
        <<- /date/ space_after(\1, 1, 1) ->> 30 \2                                                  && Cette date est invalide. Il n’y a que 30 jours en \2.
        <<- /date/ space_after(\1, 1, 1) ->> 30 \2                                                  && Cette date est invalide. Il n’y a que 30 jours en \2.

    [30|31] février
        <<- /date/ space_after(\1, 1, 1) ->> 28 février|29 février                                  && Cette date est invalide. Il n’y a que 28 ou 29 jours en février.
        <<- /date/ space_after(\1, 1, 1) ->> 28 février|29 février                                  && Cette date est invalide. Il n’y a que 28 ou 29 jours en février.

    ~^\d\d?$  [janvier|février|mars|avril|mai|juin|juillet|aout|août|septembre|octobre|novembre|décembre]  ~^\d{2,5}$
        <<- /date/ not checkDate(\1, \2, \3) ->> _                                                  && Cette date est invalide.

TEST: le {{31 avril}}
TEST: le {{30 février}}
TEST: {{29 février 2011}}
4681
4682
4683
4684
4685
4686
4687
4688

4689
4690
4691
4692
4693
4694
4695
4684
4685
4686
4687
4688
4689
4690

4691
4692
4693
4694
4695
4696
4697
4698







-
+







        <<- /tu/ not value(\2, "|a|") ->> mi-\2                                      && S’il s’agit d’un seul mot, il manque un trait d’union.

TEST: J’ai été engagé pour un {{mi temps}}.


__tu_préfixe_quasi__
    quasi  @:N¬:[AGW]
        <<- /tu/ morph(<1, ":D") ->> quasi-\2                   && Il manque un trait d’union : « quasi » s’accroche au mot qui le suit s’il s’agit d’un nom.
        <<- /tu/ morph(<1, ":D") ->> quasi-\2                   && Il manque un trait d’union : « quasi » s’accroche au mot qui le suit s’il s’agit d’un nom.

    quasi
        <<- ~>> *

TEST: leurs {{quasi indifférences}}

    ~^[Qq]uasi-.+$
4888
4889
4890
4891
4892
4893
4894
4895

4896
4897
4898
4899
4900
4901
4902
4891
4892
4893
4894
4895
4896
4897

4898
4899
4900
4901
4902
4903
4904
4905







-
+







    [oui|ouï] dire
        <<- /tu/ morph(<1, ":G") ->> ouï-dire                   && Il manque probablement un trait d’union.

    par [dessous|dessus|devant|delà|derrière|dehors|dedans|devers]
        <<- /tu/ ->> par-\2                                     && Il manque un trait d’union.

    par ci ?,¿ par là
        <<- /tu/ ->> par-ci par-là|par-ci, par-là               && Trait(s) d’union manquant(s).
        <<- /tu/ ->> par-ci par-là|par-ci, par-là               && Traits d’union manquants.

    vis [à|a] vis
        <<- /tu/ ->> vis-à-vis                                  && Il manque les traits d’union.

TEST: on a fait {{à la va vite}}…
TEST: partir {{à contre cœur}}
TEST: Ils font des tests {{à tout va}}
5031
5032
5033
5034
5035
5036
5037
5038

5039
5040
5041
5042
5043
5044
5045
5034
5035
5036
5037
5038
5039
5040

5041
5042
5043
5044
5045
5046
5047
5048







-
+







        <<- /tu/ ->> \1\2|\1-\2|\2 \1                           && Mettez un trait d’union, fusionnez ou inversez les termes.
        <<- ~>> ␣

    [copié+ses|copier] / [coller|collé+ses]
    [copié-coller|copiée-coller|copiés-coller|copiées-coller]
    [copier-collé|copier-collée|copier-collés|copier-collées]
        <<- /tu/ ->> copier-coller|copié-collé|copiée-collée|copiés-collés|copiées-collées
        && Copier-coller pour la verbe ou l’action, copié-collé (et ses variantes) pour ce qui est copié-collé.
        && Copier-coller pour le verbe ou l’action, copié-collé (et ses variantes) pour ce qui est copié-collé.

    >cul de sac
        <<- /tu/ ->> \1-\2-\3                                   && Mettez des traits d’union.|https://fr.wiktionary.org/wiki/cul-de-sac

    déjà vu
        <<- /tu/ morph(<1, ":D.*:[me]") ->> \1-\2               && S’il s’agit d’un nom, mettez un trait d’union.|https://fr.wiktionary.org/wiki/d%C3%A9j%C3%A0-vu

5295
5296
5297
5298
5299
5300
5301
5302

5303
5304
5305
5306
5307
5308
5309
5298
5299
5300
5301
5302
5303
5304

5305
5306
5307
5308
5309
5310
5311
5312







-
+







    [va+s] [t-en|>tan|tant] [>guerre|guère]
    vat’en [>guerre|guère]
    vat-en [>guerre|guère]
    vat [en|>an] [>guerre|guère]
    va-t-en [>guerre|guère]
    va-t’en-guerre
    va-t-en-guère
        <<- /tu/ ->> va-t-en-guerre                                                                 && Va-t-en-guerre (invariable) : des traits d’union sont nécessaires.|https://fr.wiktionary.org/wiki/va-t-en-guerre
        <<- /tu/ ->> va-t-en-guerre                                                                 && Va-t-en-guerre (invariable) : des traits d’union sont nécessaires.|https://fr.wiktionary.org/wiki/va-t-en-guerre

TEST: {{Va-t-en}}, c’en est assez.
TEST: Un {{va-t’en guerre}}, on ne peut pas lui faire confiance.
TEST: Les {{va-t-en guerre}} sont de sortie.
TEST: Elle va t’en donner, des devoirs.


5415
5416
5417
5418
5419
5420
5421
5422

5423
5424
5425
5426
5427
5428
5429

5430
5431
5432
5433

5434
5435
5436
5437
5438
5439
5440
5418
5419
5420
5421
5422
5423
5424

5425
5426
5427
5428
5429
5430
5431

5432
5433
5434
5435

5436
5437
5438
5439
5440
5441
5442
5443







-
+






-
+



-
+








    [vingt|vingts] [deux|trois|quatre|cinq|six|sept|huit|neuf]
    [vingt|vingts] [>deuxième|>troisième|>quatrième|>cinquième|>sixième|>septième|>huitième|>neuvième]
        <<- /tu/ not value(<1, "|quatre|") ->> vingt-\2                                             && Il manque un trait d’union.

    soixante [dix|douze|treize|quatorze|quinze|seize|dix-sept|dix-huit|dix-neuf]
    soixante [>dixième|>douzième|>treizième|>quatorzième|>quinzième|>seizième|>dix-septième|>dix-huitième|>dix-neuvième]
        <<- /tu/ ->> \1-\2                                                                          && Trait(s) d’union manquant(s).
        <<- /tu/ ->> \1-\2                                                                          && Traits d’union manquants.

    quatre [vingt|vingts]
        <<- /tu/ not morph(>1, ":B:e:p") ->> \1-\2                                                  && Il manque un trait d’union.

    quatre [vingt|vingts] [un|une|deux|trois|quatre|cinq|six|sept|huit|neuf|dix|onze|douze|treize|quatorze|quinze|seize|dix-sept|dix-huit|dix-neuf]
    quatre [vingt|vingts] [>unième|>deuxième|>troisième|>quatrième|>cinquième|>sixième|>septième|>huitième|>neuvième|>dixième|>onzième|>douzième|>treizième|>quatorzième|>quinzième|>seizième|>dix-septième|>dix-huitième|>dix-neuvième]
        <<- /tu/ ->> quatre-vingt-\3                                                                && Trait(s) d’union manquant(s).
        <<- /tu/ ->> quatre-vingt-\3                                                                && Traits d’union manquants.

    [quatre-vingt|quatre-vingts] [un|une|deux|trois|quatre|cinq|six|sept|huit|neuf|dix|onze|douze|treize|quatorze|quinze|seize|dix-sept|dix-huit|dix-neuf]
    [quatre-vingt|quatre-vingts] [>unième|>deuxième|>troisième|>quatrième|>cinquième|>sixième|>septième|>huitième|>neuvième|>dixième|>onzième|>douzième|>treizième|>quatorzième|>quinzième|>seizième|>dix-septième|>dix-huitième|>dix-neuvième]
        <<- /tu/ ->> quatre-vingt-\2                                                                && Trait(s) d’union manquant(s).
        <<- /tu/ ->> quatre-vingt-\2                                                                && Trait d’union manquant.

TEST: Il en veut {{vingts}} !                   ->> vingt
TEST: Y a-t-il {{quarante deux}} pages ?        ->> quarante-deux
TEST: J’en veux {{quatre-vingt}} !              ->> quatre-vingts
TEST: Non, {{quatre-vingts deux}} !             ->> quatre-vingt-deux
TEST: {{Quatre vingts deux}}.                   ->> Quatre-vingt-deux
TEST: {{quatre vingt}} hommes                   ->> quatre-vingt
5608
5609
5610
5611
5612
5613
5614
5615

5616
5617
5618
5619
5620
5621
5622
5623

5624
5625
5626
5627
5628

5629
5630
5631
5632

5633
5634
5635
5636

5637
5638
5639
5640
5641
5642
5643
5644
5645
5646
5647
5648
5649
5650
5651
5652
5653
5654
5655
5656
5657

5658
5659
5660
5661
5662

5663
5664
5665
5666

5667
5668
5669
5670

5671
5672
5673
5674
5675
5676
5677
5678
5679
5680
5681
5682
5683
5684
5685
5686
5687
5688
5689

5690
5691
5692
5693
5694
5695
5696
5611
5612
5613
5614
5615
5616
5617

5618
5619
5620
5621
5622
5623
5624
5625

5626
5627
5628
5629
5630

5631
5632
5633
5634

5635
5636
5637
5638

5639
5640
5641
5642
5643
5644
5645
5646
5647
5648
5649
5650
5651
5652
5653
5654
5655
5656
5657
5658
5659

5660
5661
5662
5663
5664

5665
5666
5667
5668

5669
5670
5671
5672

5673
5674
5675
5676
5677
5678
5679
5680
5681
5682
5683
5684
5685
5686
5687
5688
5689
5690
5691

5692
5693
5694
5695
5696
5697
5698
5699







-
+







-
+




-
+



-
+



-
+




















-
+




-
+



-
+



-
+


















-
+








TEST: je suis allé dans la {{grand’rue}}.                           ->> grand-rue
TEST: la grand-rue
TEST: sur la grand-place



!!!! Trait d’union : formes interrogative (nous/vous)                                             !!
!!!! Trait d’union : formes interrogative (nous/vous)                                             !!

__inte_union_nous1!7__
    [ne|n’]  ?[le|la|l’|les|en|me|m’|te|t’|se|s’|nous|vous|lui|leur|y]¿  ~ons$  nous
    [ne|n’]  [me|m’|te|t’|se|s’|nous|vous]   [le|la|l’|les|en|y]         ~ons$  nous
    [ne|n’]  [le|la|l’|les]                  [lui|leur|en|y]             ~ons$  nous
    [ne|n’]  [lui|leur|y]                    en                          ~ons$  nous
        <<- /inte/ space_after(\-2, 1, 1) and morph(\-2, ":V.*:1p", ":[GW]") and not tag_before(\1, "_1p_")
        --2:-1>> \-2-\-1                                                                            && Forme interrogative ? Mettez un trait d’union.
        --2:-1>> \-2-\-1                                                                            && Forme interrogative ? Mettez un trait d’union.

    ,  ~ons$  nous  [<end>|,|)]
    ,  ~ons$  nous  @:¬:(?:1p|Y)
        <<- /inte/ space_after(\2, 1, 1) and morph(\2, ":V.*:1p", ":[GW]") and not value(\2, "|veuillons|sachons|")
        -2:3>> \2-\3                                                                                && Forme interrogative ? Mettez un trait d’union.
        -2:3>> \2-\3                                                                                && Forme interrogative ? Mettez un trait d’union.

    <start>  ~ons  nous
        <<- /inte/ space_after(\2, 1, 1) and morph(\2, ":V.*:1p", ":[GW]") and not value(\2, "|veuillons|sachons|allons|venons|partons|")
        -2:3>> \2-\3                                                                                && Forme interrogative ? Mettez un trait d’union.
        -2:3>> \2-\3                                                                                && Forme interrogative ? Mettez un trait d’union.

    [comment|pourquoi|combien|que|qu’|quoique|quoiqu’|où|puis|quand|qui]  ~ons  nous
        <<- /inte/ space_after(\2, 1, 1) and morph(\2, ":V.*:1p", ":[GW]") and not value(\2, "|veuillons|sachons|")
        -2:3>> \2-\3                                                                                && Forme interrogative ? Mettez un trait d’union.
        -2:3>> \2-\3                                                                                && Forme interrogative ? Mettez un trait d’union.

TEST: n’y {{retrouverons nous}} jamais la tranquilité ?
TEST: pourquoi n’en {{entendons nous}} jamais parler ?
TEST: que {{pouvons nous}} dans cette vie
TEST: que {{pouvons nous}} faire ?
TEST: {{Connaissons nous}} réellement cette langue ?
TEST: ils sont, {{croyons nous}}, indéfendables
TEST: nous pensons alors vraiment, allons nous perdre dans les bois
TEST: Sachons nous conformer à ces restrictions et faisons notre travail.
TEST: allons nous détendre à la piscine.
TEST: partons nous détendre à la montagne
TEST: Nous ne pouvons nous contenter de parler


__inte_union_vous1!7__
    [ne|n’]  ?[le|la|l’|les|en|me|m’|te|t’|se|s’|nous|vous|lui|leur|y]¿  ~ez$  vous
    [ne|n’]  [me|m’|te|t’|se|s’|nous|vous]   [le|la|l’|les|en|y]         ~ez$  vous
    [ne|n’]  [le|la|l’|les]                  [lui|leur|en|y]             ~ez$  vous
    [ne|n’]  [lui|leur|y]                    en                          ~ez$  vous
        <<- /inte/ space_after(\-2, 1, 1) and morph(\-2, ":V.*:2p", ":[GW]") and not tag_before(\1, "_2p_")
        --2:-1>> \-2-\-1       && Forme interrogative ? Mettez un trait d’union.
        --2:-1>> \-2-\-1       && Forme interrogative ? Mettez un trait d’union.

    ,  ~ez$  vous  [<end>|,|)]
    ,  ~ez$  vous  @:¬:(?:2p|Y)
        <<- /inte/ space_after(\2, 1, 1) and morph(\2, ":V.*:2p", ":[GW]") and not value(\2, "|veuillez|sachez|")
        -2:3>> \2-\3                                                                                && Forme interrogative ? Mettez un trait d’union.
        -2:3>> \2-\3                                                                                && Forme interrogative ? Mettez un trait d’union.

    <start>  ~ez$  vous
        <<- /inte/ space_after(\2, 1, 1) and morph(\2, ":V.*:2p", ":[GW]") and not value(\2, "|veuillez|sachez|allez|venez|partez|")
        -2:3>> \2-\3                                                                                && Forme interrogative ? Mettez un trait d’union.
        -2:3>> \2-\3                                                                                && Forme interrogative ? Mettez un trait d’union.

    [comment|pourquoi|combien|que|qu’|quoique|quoiqu’|où|puis|quand|qui]  ~ez$  vous
        <<- /inte/ space_after(\2, 1, 1) and morph(\2, ":V.*:2p", ":[GW]") and not value(\2, "|veuillez|sachez|")
        -2:3>> \2-\3                                                                                && Forme interrogative ? Mettez un trait d’union.
        -2:3>> \2-\3                                                                                && Forme interrogative ? Mettez un trait d’union.

TEST: ne {{soutiendrez vous}} pas cette proposition ?
TEST: n’en {{voulez vous}} jamais à ces gens ?
TEST: je suis, {{penserez vous}}, un imbécile.
TEST: {{pouvez vous}} réussir ?
TEST: comment {{pensez vous}} y parvenir
TEST: {{Osez vous}} remettre en question notre autorité.
#TEST: Osez vous remettre en question.
TEST: veuillez vous adresser à notre secretaire pour prendre rendez-vous.
TEST: Allez vous faire foutre.
TEST: Venez vous défouler sur ces connards.
TEST: Vous ne pouvez vous satisfaire de si peu.


!!!! Virgules (2)                                                                                 !!

__virg_dialogue_après_nom_propre__
    [<start>|,|(]  $:M¬:G  [/-je|/-tu|/-on|/-nous|/-vous|/-ils|/-elles|/-iels|/_VCimp_]
        <<- /virg/ -2>> \2,                                                                         && Dialogue ? Ajoutez une virgule pour mettre en incise la personne à qui s’adresse la réplique.
        <<- /virg/ -2>> \2,                                                                         && Dialogue ? Ajoutez une virgule pour mettre en incise la personne à qui s’adresse la réplique.

TEST: {{Maria}} donnez-vous du temps ?
TEST: {{Marion}} passe-moi le sel.
TEST: {{Paul}} prends-lui la main.
TEST: {{Julien}} donne-moi le sel.
TEST: Alexandre tient-il ses généraux ?
TEST: Alexandra vient-elle ?
5725
5726
5727
5728
5729
5730
5731
5732

5733
5734
5735

5736
5737
5738

5739
5740
5741
5742
5743
5744
5745
5728
5729
5730
5731
5732
5733
5734

5735
5736
5737

5738
5739
5740

5741
5742
5743
5744
5745
5746
5747
5748







-
+


-
+


-
+









!!!! A / À: accentuation la préposition en début de phrase                                        !!

__typo_À_début_phrase!7__
    <start>  A  @:[GNAY]¬:(?:Q|3s)
        <<- /typo/ not value(\3, "|t’|priori|posteriori|postériori|contrario|capella|fortiori|giorno|")
        -2>> À                                                                                      && S’il s’agit de la préposition « à », il faut accentuer la majuscule.
        -2>> À                                                                                      && S’il s’agit de la préposition « à », il faut accentuer la majuscule.

    <start>  A  bientôt  [<end>|,|)]
        <<- /typo/ -2>> À                                                                           && S’il s’agit de la préposition « à », il faut accentuer la majuscule.
        <<- /typo/ -2>> À                                                                           && S’il s’agit de la préposition « à », il faut accentuer la majuscule.

    <start>  A  t’  *WORD
        <<- /typo/ not value(\4, "|il|ils|elle|elles|iel|iels|on|ont|") -2>> À                      && S’il s’agit de la préposition « à », il faut accentuer la majuscule.
        <<- /typo/ not value(\4, "|il|ils|elle|elles|iel|iels|on|ont|") -2>> À                      && S’il s’agit de la préposition « à », il faut accentuer la majuscule.

TEST: {{A}} vaincre sans péril, on triomphe sans gloire.
TEST: « {{A}} partir de maintenant, ce ne sera plus comme avant.
TEST: — {{A}} n’en plus pouvoir
TEST: — {{A}} t’emmener loin de tout ceci.
TEST: {{A}} bientôt, mon ami.
TEST: A bientôt fini son devoir.
5766
5767
5768
5769
5770
5771
5772
5773

5774
5775
5776
5777
5778
5779
5780
5781
5782

5783
5784
5785
5786

5787
5788
5789
5790

5791
5792
5793
5794

5795
5796
5797
5798
5799
5800
5801
5769
5770
5771
5772
5773
5774
5775

5776
5777
5778
5779
5780
5781
5782
5783
5784

5785
5786
5787
5788

5789
5790
5791
5792

5793
5794
5795
5796

5797
5798
5799
5800
5801
5802
5803
5804







-
+








-
+



-
+



-
+



-
+







!!
!!

### double négation
__double_négation__
    pas [personne|aucun|aucune|jamais]
        <<- /conf/ not morph(<1, ":D.*:[me]") ->> \1|pas, \1
        && Double négation : les mots « pas \1 » ne devraient pas se succéder. Si ces mots appartiennent à des propositions distinctes, une virgule est peut-être préférable.
        && Double négation : les mots « pas \1 » ne devraient pas se succéder. Si ces mots appartiennent à des propositions distinctes, une virgule est peut-être préférable.

TEST: Ce que tu ne fais {{pas jamais}}.


### incohérences globales (attention à la casse du 2e mot, car beaucoup de sigles peuvent tromper)
__conf_incohérences_globales__
    [ce|cet|cette|ma|ta|sa|mon] [ces|des|les|mes|ses|tes|nos|vos|ce|cet|cette|ma|ta|sa|mon|je|tu|il|ils|elle|elles|iel|iels|nous|vous|on]
        <<- /conf/ not \1.isupper() and not \2.isupper()
        -2>> =suggSimil(\2, ":[NA].*:[si]", True)                                                   && Incohérence : les mots “\1” et “\2” ne devraient pas se succéder.
        -2>> =suggSimil(\2, ":[NA].*:[si]", True)                                                   && Incohérence : les mots “\1” et “\2” ne devraient pas se succéder.

    [quel|quelle] [ces|des|les|mes|ses|tes|nos|vos|ce|cet|cette|ma|ta|sa|mon|je|tu|il|ils|elle|elles|iel|iels|nous|vous|on]
        <<- /conf/ not \1.isupper() and not \2.isupper() and not value(<1, "|tel|telle|")
        -2>> =suggSimil(\2, ":[NA].*:[si]", True)                                                   && Incohérence : les mots “\1” et “\2” ne devraient pas se succéder.
        -2>> =suggSimil(\2, ":[NA].*:[si]", True)                                                   && Incohérence : les mots “\1” et “\2” ne devraient pas se succéder.

    [ces|les|mes|tes|ces|nos|vos] [ces|des|les|mes|ses|tes|nos|vos|ce|cet|cette|ma|ta|sa|mon|je|tu|il|ils|elle|elles|iel|iels|nous|vous|on]
        <<- /conf/ not \1.isupper() and not \2.isupper()
        -2>> =suggSimil(\2, ":[NA].*:[pi]", True)                                                   && Incohérence : les mots “\1” et “\2” ne devraient pas se succéder.
        -2>> =suggSimil(\2, ":[NA].*:[pi]", True)                                                   && Incohérence : les mots “\1” et “\2” ne devraient pas se succéder.

    [quels|quelles] [ces|des|les|mes|ses|tes|nos|vos|ce|cet|cette|ma|ta|sa|mon|je|tu|il|ils|elle|elles|iel|iels|nous|vous|on]
        <<- /conf/ not \1.isupper() and not \2.isupper() and not value(<1, "|tels|telles|")
        -2>> =suggSimil(\2, ":[NA].*:[pi]", True)                                                   && Incohérence : les mots “\1” et “\2” ne devraient pas se succéder.
        -2>> =suggSimil(\2, ":[NA].*:[pi]", True)                                                   && Incohérence : les mots “\1” et “\2” ne devraient pas se succéder.

TEST: {{Ces}} {{cette}} canaille qui nous a donné tant de fil à retordre.
TEST: Quel {{tes}} voulez-vous
TEST: tes {{les}} sont périmés
TEST: Mon {{il}} est une merveille.
TEST: Quels {{mes}} délicieux

5841
5842
5843
5844
5845
5846
5847
5848

5849
5850
5851
5852

5853
5854
5855
5856
5857
5858
5859
5844
5845
5846
5847
5848
5849
5850

5851
5852
5853
5854

5855
5856
5857
5858
5859
5860
5861
5862







-
+



-
+







TEST: Elles sont parties {{de puis}} au moins trois heures.
TEST: Depuis le temps que ça existe, tu devrais être au courant.


__conf_au_qqch__
    au  [ces|des|les|mes|ses|tes|nos|vos|ce|cet|cette|ma|ta|sa|mon|je|tu|il|ils|elle|elles|iel|iels|nous|vous|on|parce]
        <<- /conf/ not \1.isupper() and not \2.isupper()
        -2>> =suggSimil(\2, ":[NA].*:[si]", True)                                                   && Incohérence : les mots “\1” et “\2” ne devraient pas se succéder.
        -2>> =suggSimil(\2, ":[NA].*:[si]", True)                                                   && Incohérence : les mots “\1” et “\2” ne devraient pas se succéder.

    aux [ces|des|les|mes|ses|tes|nos|vos|ce|cet|cette|ma|ta|sa|mon|je|tu|il|ils|elle|elles|iel|iels|nous|vous|on|parce]
        <<- /conf/ not \1.isupper() and not \2.isupper()
        -2>> =suggSimil(\2, ":[NA].*:[pi]", True)                                                   && Incohérence : les mots “\1” et “\2” ne devraient pas se succéder.
        -2>> =suggSimil(\2, ":[NA].*:[pi]", True)                                                   && Incohérence : les mots “\1” et “\2” ne devraient pas se succéder.

    [au|aux] [quel|quels|quelle|quelles]
    [au|aux] qu’ [elle|elles]
        <<- /conf/ ->> auquel|auxquels|auxquelles                                                   && Incohérence. Soudez les deux mots.|https://fr.wiktionary.org/wiki/auquel

    [au|aux] combien  @:[AYW]
        <<- /conf/ -1:2>> ô combien                                                                 && Confusion probable.|https://fr.wiktionary.org/wiki/%C3%B4_combien
5895
5896
5897
5898
5899
5900
5901
5902

5903
5904
5905
5906
5907
5908
5909
5898
5899
5900
5901
5902
5903
5904

5905
5906
5907
5908
5909
5910
5911
5912







-
+







TEST: {{En}} Avignon
TEST: {{En}} Agen


# avoir été
__bs_avoir_été_chez__
    >avoir été chez
        <<- /bs/ not value(<1, "|l’|") ->> _                                                        && Tournure familière. Utilisez « être allé ».
        <<- /bs/ not value(<1, "|l’|") ->> _                                                        && Tournure familière. Utilisez « être allé ».

TEST: J’{{ai été chez}} le coiffeur.
TEST: Chez les intellectuels, le mot utopie n’a jamais été synonyme de folie, mais il l’a été pour l’homme de la rue.
TEST: Saoul, je l’ai été chez mon ami, mais après ça allait mieux.


# abyme / abîme
5954
5955
5956
5957
5958
5959
5960
5961

5962
5963
5964
5965
5966
5967
5968
5957
5958
5959
5960
5961
5962
5963

5964
5965
5966
5967
5968
5969
5970
5971







-
+







TEST: incessamment {{sous peut}}
TEST: ils arrivent {{incessamment sous peu}}.


# pire
__bs_pire__
    [moins|aussi|plus] >pire
        <<- /bs/ -2>> mauvais|mauvaise|mauvaises                    && Tournure erronée : “\1 \2”. Utilisez “mauvais”.|http://www.academie-francaise.fr/plus-pire-moins-pire
        <<- /bs/ -2>> mauvais|mauvaise|mauvaises                    && Tournure erronée : “\1 \2”. Utilisez “mauvais”.|http://www.academie-francaise.fr/plus-pire-moins-pire

    de mal en >pire
        <<- /bs/ ->> de mal en pis                                  && Tournure erronée. Écrivez “de mal en pis”.

    au pire aller
        <<- /bs/ ->> au pis aller                                   && Tournure erronée. Écrivez “au pis aller”.|https://fr.wiktionary.org/wiki/au_pis_aller

6028
6029
6030
6031
6032
6033
6034
6035

6036
6037
6038
6039
6040
6041
6042
6043
6044

6045
6046
6047
6048
6049
6050
6051
6031
6032
6033
6034
6035
6036
6037

6038
6039
6040
6041
6042
6043
6044
6045
6046

6047
6048
6049
6050
6051
6052
6053
6054







-
+








-
+







        ->> bien qu’|quoiqu’                                                                        && “Malgré que” est une tournure populaire. Utilisez “bien que” ou “quoique”.

TEST: {{Malgré que}} je sois fou.
TEST: {{malgré qu’}}elle soit là.


#([mts]e|[nv]ous) (rappel\w+) (de) <<- word(1) != "ne" and not morph(word(1), ":V")
#   -3>> _                                                     && Expression impropre. « Se rappeler quelque chose » ou « Se souvenir de quelque chose ».
#   -3>> _                                                     && Expression impropre. « Se rappeler quelque chose » ou « Se souvenir de quelque chose ».
#Se rappelle de l’amour

#enjoindre à qqn de faire qqch


__code_legacy__
    legacy code
    code legacy
        <<- /bs/ ->> code hérité|code reliquat                                                      && \1 \2. Anglicisme superflu.
        <<- /bs/ ->> code hérité|code reliquat                                                      && Anglicisme superflu.

TEST: c’est du {{legacy code}}.
TEST: ce {{code legacy}} est un cauchemar



!!
6405
6406
6407
6408
6409
6410
6411
6412
6413


6414
6415
6416
6417
6418
6419
6420
6421

6422
6423
6424
6425
6426
6427
6428

6429
6430
6431
6432
6433
6434
6435
6408
6409
6410
6411
6412
6413
6414


6415
6416
6417
6418
6419
6420
6421
6422
6423

6424
6425
6426
6427
6428
6429
6430
6431
6432
6433
6434
6435
6436
6437
6438
6439







-
-
+
+







-
+







+







TEST: J’leur en {{veut}} pas, à ces crétins.
TEST: je t’en {{parlé}}
TEST: Je est un autre.


__conf_je_non_verbe__
    je  @:¬:(?:V|Ov)
        <<- /conf/ not value(\2, "|soussigné|soussignée|") and not morph(<1, ":1s")
        -2>> =suggSimil(\2, ":(?:1s|Ov)", False)                                                    && Incohérence avec “je” : “\2” devrait être un verbe, un pronom objet, un adverbe de négation, etc.
        <<- /conf/ not value(\2, "|soussigné|soussignée|") and not morph(<1, ":1s|>pronom/")
        -2>> =suggSimil(\2, ":(?:1s|Ov)", False)                                                    && Incohérence avec “je” : “\2” devrait être un verbe, un pronom objet, un adverbe de négation, etc.

    j’       ?[en|y]¿                                                             @:¬:(?:V|Ov)
    [je|j’]  [ne|n’|le|la|l’|les|me|m’|te|t’|se|s’|nous|vous|lui|leur]            @:¬:(?:V|Ov)
    [je|j’]  [ne|n’]    [le|la|l’|les|en|me|m’|te|t’|se|s’|nous|vous|lui|leur|y]  @:¬:(?:V|Ov)
    [je|j’]  ?[ne|n’]¿  [me|m’|te|t’|se|s’|nous|vous]  [le|la|l’|les|en|y]        $:¬:V
    [je|j’]  ?[ne|n’]¿  [le|la|l’|les]                 [lui|leur|en|y]            $:¬:V
    [je|j’]  ?[ne|n’]¿  [lui|leur]                     en                         $:¬:V
        <<- /conf/ --1>> =suggSimil(\-1, ":(?:1s|Ov)", False)                                       && Incohérence avec “\1” : “\-1” devrait être un verbe, un pronom objet, un adverbe de négation, etc.
        <<- /conf/ --1>> =suggSimil(\-1, ":(?:1s|Ov)", False)                                       && Incohérence avec “\1” : “\-1” devrait être un verbe, un pronom objet, un adverbe de négation, etc.

TEST: Je ne le {{croix}} pas
TEST: Je {{travail}}.                                       ->> travaille
TEST: Je vous {{tellement}} reconnaissant.
TEST: Je m’en {{fou}}.
TEST: Je soussigné, M. X., déclare que…
TEST: j’ai l’impression de ne même pas savoir ce qu’est un « juif français ».
TEST: les pronoms “je” et “tu”


## 2sg
__conj_tu__
    tu                                                                       @:V¬:(?:Ov|P|[ISK].*:2s)
    tu  [ne|n’|le|la|l’|les|en|me|m’|te|t’|se|s’|nous|vous|lui|leur|y]       @:V¬:(?:Ov|P|[ISK].*:2s)
    tu  [ne|n’]    [le|la|l’|les|en|me|m’|te|t’|se|s’|nous|vous|lui|leur|y]  @:V¬:(?:Ov|P|[ISK].*:2s)
6449
6450
6451
6452
6453
6454
6455
6456

6457
6458
6459
6460
6461
6462
6463
6453
6454
6455
6456
6457
6458
6459

6460
6461
6462
6463
6464
6465
6466
6467







-
+







__conf_tu_non_verbe__
    tu                                                                       @:¬:(?:V|Ov)
    tu  [ne|n’|le|la|l’|les|en|me|m’|te|t’|se|s’|nous|vous|lui|leur|y]       @:¬:(?:V|Ov)
    tu  [ne|n’]    [le|la|l’|les|en|me|m’|te|t’|se|s’|nous|vous|lui|leur|y]  @:¬:(?:V|Ov)
    tu  ?[ne|n’]¿  [me|m’|te|t’|se|s’|nous|vous]  [le|la|l’|les|en|y]        $:¬:V
    tu  ?[ne|n’]¿  [le|la|l’|les]                 [lui|leur|en|y]            $:¬:V
    tu  ?[ne|n’]¿  [lui|leur]                     en                         $:¬:V
        <<- /conf/ not morph(<1, ":(?:2s|V0|R)") --1>> =suggSimil(\-1, ":(?:2s|Ov)", False)         && Incohérence avec “tu” : “\-1” devrait être un verbe, un pronom objet, un adverbe de négation, etc.
        <<- /conf/ not morph(<1, ":(?:2s|V0|R)") --1>> =suggSimil(\-1, ":(?:2s|Ov)", False)         && Incohérence avec “tu” : “\-1” devrait être un verbe, un pronom objet, un adverbe de négation, etc.

TEST: tu {{croix}} que tu sais quelque chose, mais tu ne sais rien.
TEST: tu la {{croix}} idiote ?
TEST: Elles sont à tu et à toi.


## 3sg
6489
6490
6491
6492
6493
6494
6495
6496

6497
6498
6499
6500
6501
6502
6503
6504

6505
6506
6507
6508
6509
6510
6511
6493
6494
6495
6496
6497
6498
6499

6500
6501
6502
6503
6504
6505
6506
6507

6508
6509
6510
6511
6512
6513
6514
6515







-
+







-
+







TEST: il n’y {{aurais}} plus rien à attendre de la religion et de la politique.
TEST: il y en {{as}}.


__conf_il_non_verbe__
    il  @:¬:(?:V|Ov)
        <<- /conf/ not morph(<1, ":3s") and not value(<1, "|t’|") and not value(\-1, "|c’|ce|ou|si|")
        -2>> =suggSimil(\2, ":(?:3s|Ov)", False)                                                    && Incohérence avec “\1” : “\2” devrait être un verbe, un pronom objet, un adverbe de négation, etc.
        -2>> =suggSimil(\2, ":(?:3s|Ov)", False)                                                    && Incohérence avec “\1” : “\2” devrait être un verbe, un pronom objet, un adverbe de négation, etc.

    il  [ne|n’|le|la|l’|les|en|me|m’|te|t’|se|s’|nous|vous|lui|leur|y]       @:¬:(?:V|Ov)
    il  [ne|n’]    [le|la|l’|les|en|me|m’|te|t’|se|s’|nous|vous|lui|leur|y]  @:¬:(?:V|Ov)
    il  ?[ne|n’]¿  [me|m’|te|t’|se|s’|nous|vous]  [le|la|l’|les|en|y]        $:¬:V
    il  ?[ne|n’]¿  [le|la|l’|les]                 [lui|leur|en|y]            $:¬:V
    il  ?[ne|n’]¿  [lui|leur]                     en                         $:¬:V
        <<- /conf/ not morph(<1, ":3s") and not value(<1, "|t’|") and not value(\-1, "|c’|ce|")
        --1>> =suggSimil(\-1, ":(?:3s|Ov)", False)                                                  && Incohérence avec “\1” : “\-1” devrait être un verbe, un pronom objet, un adverbe de négation, etc.
        --1>> =suggSimil(\-1, ":(?:3s|Ov)", False)                                                  && Incohérence avec “\1” : “\-1” devrait être un verbe, un pronom objet, un adverbe de négation, etc.

TEST: il {{et}} parti.
TEST: il nous {{et}} indispensable.
TEST: Il ne {{travail}} pas le week-end.
TEST: il m’{{arête}} encore une fois avec une impudence insupportable.
TEST: il n’y {{pas}} beaucoup d’entente entre eux.
TEST: Il {{ce}} {{sent}} seul
6529
6530
6531
6532
6533
6534
6535
6536

6537
6538
6539
6540
6541
6542
6543
6544

6545
6546
6547
6548
6549
6550
6551
6533
6534
6535
6536
6537
6538
6539

6540
6541
6542
6543
6544
6545
6546
6547

6548
6549
6550
6551
6552
6553
6554
6555







-
+







-
+







TEST: on {{refuses}} tout cela
TEST: on ne se {{bougent}} pas suffisamment


__conf_on_non_verbe__
    on  @:¬:(?:V|Ov)|>ou/
        <<- /conf/ not morph(<1, ":3s") and not value(<1, "|n’|m’|t’|s’|") and not value(\-1, "|c’|ce|si|")
        -2>> =suggSimil(\2, ":(?:3s|Oo)", False)                                                    && Incohérence avec “\1” : “\2” devrait être un verbe, un pronom objet, un adverbe de négation, etc.
        -2>> =suggSimil(\2, ":(?:3s|Oo)", False)                                                    && Incohérence avec “\1” : “\2” devrait être un verbe, un pronom objet, un adverbe de négation, etc.

    on  [ne|n’|le|la|l’|les|en|me|m’|te|t’|se|s’|nous|vous|lui|leur|y]       @:¬:(?:V|Ov)
    on  [ne|n’]    [le|la|l’|les|en|me|m’|te|t’|se|s’|nous|vous|lui|leur|y]  @:¬:(?:V|Ov)
    on  ?[ne|n’]¿  [me|m’|te|t’|se|s’|nous|vous]  [le|la|l’|les|en|y]        @:¬:(?:V|Ov)
    on  ?[ne|n’]¿  [le|la|l’|les]                 [lui|leur|en|y]            @:¬:(?:V|Ov)
    on  ?[ne|n’]¿  [lui|leur]                     en                         @:¬:(?:V|Ov)
        <<- /conf/ not morph(<1, ":3s") and not value(<1, "|n’|m’|t’|s’|") and not value(\-1, "|c’|ce|")
        --1>> =suggSimil(\-1, ":(?:3s|Ov)", False)                                                  && Incohérence avec “\1” : “\-1” devrait être un verbe, un pronom objet, un adverbe de négation, etc.
        --1>> =suggSimil(\-1, ":(?:3s|Ov)", False)                                                  && Incohérence avec “\1” : “\-1” devrait être un verbe, un pronom objet, un adverbe de négation, etc.

TEST: on {{et}} parti.
TEST: on nous {{et}} indispensable.
TEST: on ne {{travail}} pas le week-end.
TEST: on m’{{arête}} encore une fois avec une impudence insupportable.
TEST: on n’y {{pas}} beaucoup d’entente entre eux.
TEST: on est normal de ne presque pas payer des gens qui effectuent un travail
6559
6560
6561
6562
6563
6564
6565
6566

6567
6568
6569
6570
6571
6572
6573
6563
6564
6565
6566
6567
6568
6569

6570
6571
6572
6573
6574
6575
6576
6577







-
+








    [ce|c’]                         @>être/:V¬:(?:N|A|3[sp]|P|Q|Ov)
    [ce|c’]  [le|l’]                @>être/:V¬:(?:N|A|3s|P|Q|Ov)
    [ce|c’]  [ne|n’]  ?[le|l’|en]¿  @>être/:V¬:(?:3[sp]|P|Q|Ov)
        <<- /conj/ --1>> =suggVerb(\-1, ":3s")                                                      && Conjugaison erronée. Accord avec “\1”. Le verbe devrait être à la 3ᵉ personne du singulier.

    [c’|ç’]                         @:¬:(?:[123][sp]|Y|P|Ov|X)|>que/
        <<- /conf/ -2>> =suggSimil(\2, ":3s", False)                                                && Incohérence avec « \1 » : « \2 » devrait être un verbe.
        <<- /conf/ -2>> =suggSimil(\2, ":3s", False)                                                && Incohérence avec « \1 » : « \2 » devrait être un verbe.

TEST: pour toi qui sais tout, ce ne le {{fus}} pas
TEST: ce secret tu, ce {{devais}} être un cauchemar.
TEST: Ce peut être un chien ou un chat.
TEST: ce ne peut être aussi stupide.
TEST: ce dut être un cauchemar.
TEST: ce devra être un véritable expert pour accomplir une tâche aussi difficile.
6591
6592
6593
6594
6595
6596
6597
6598

6599
6600
6601

6602
6603
6604

6605
6606
6607
6608

6609
6610
6611

6612
6613
6614
6615
6616
6617
6618
6619
6620
6621
6622
6623
6624
6625
6626
6627
6628
6629

6630
6631
6632

6633
6634
6635
6636
6637
6638
6639
6640
6641
6642

6643
6644
6645
6646
6647
6648
6649
6650
6651
6652
6653
6654
6655
6656
6657
6658
6659
6660

6661
6662
6663
6664
6665
6666
6667
6595
6596
6597
6598
6599
6600
6601

6602
6603
6604

6605
6606
6607

6608
6609
6610
6611

6612
6613
6614

6615
6616
6617
6618
6619
6620
6621
6622
6623
6624
6625
6626
6627
6628
6629
6630
6631
6632

6633
6634
6635

6636
6637
6638
6639
6640
6641
6642
6643
6644
6645

6646
6647
6648
6649
6650
6651
6652
6653
6654
6655
6656
6657
6658
6659
6660
6661
6662
6663

6664
6665
6666
6667
6668
6669
6670
6671







-
+


-
+


-
+



-
+


-
+

















-
+


-
+









-
+

















-
+







TEST: C’en était malsain.
TEST: C’en devenait trop.
TEST: C’en pouvait être effrayant.


__conf_c_s_verbe__
    [il|ils|on|ne|n’]  c’
        <<- /conj/ -2>> s’                                                      && Confusion. Le pronom personnel objet s’écrit “se”, la graphie élidée s’.
        <<- /conj/ -2>> s’                                                      && Confusion. La graphie élidée du pronom personnel « se » s’écrit « s’ ».

    [<start>|,|(]  [elle|elles|iel|iels|lui|eux]  c’  ?en¿  >être  ?$:W¿  $:Q
        <<- /conj/ -3>> s’                                                      && Confusion. Le pronom personnel objet s’écrit “se”, la graphie élidée s’.
        <<- /conj/ -3>> s’                                                      && Confusion. La graphie élidée du pronom personnel « se » s’écrit « s’ ».

    [<start>|,|(]  [elle|elles|iel|iels|lui|eux]  c’  ?en¿  $:V¬:V0e
        <<- /conj/ -3>> s’                                                      && Confusion. Le pronom personnel objet s’écrit “se”, la graphie élidée s’.
        <<- /conj/ -3>> s’                                                      && Confusion. La graphie élidée du pronom personnel « se » s’écrit « s’ ».

    c’ y
    c’ @:V¬>(?:avoir|être|devoir|devenir|pouvoir|vouloir|savoir)/.*:3[sp]
        <<- /conj/ -1>> s’                                                      && Confusion. Le pronom personnel objet s’écrit “se”, la graphie élidée s’.
        <<- /conj/ -1>> s’                                                      && Confusion. La graphie élidée du pronom personnel « se » s’écrit « s’ ».

    s’ >avoir
        <<- /conf/ -1>> c’|ç’                                                   && Confusion. Avec “\2” (du verbe “avoir”), le pronom personnel sujet est “ce” ou “ça” dont les graphies élidées sont c’ et ç’.
        <<- /conf/ -1>> c’|ç’                                       && Confusion. Avec “\2” (du verbe “avoir”), le pronom personnel sujet est “ce” ou “ça” dont les graphies élidées sont « c’ » et « ç’ ».

TEST: {{S’en}} était vraiment trop !
TEST: Car {{s’en}} était vraiment fini !
TEST: il {{c’}}en est vite lassé.
TEST: elles {{c’}}étaient trop vanté de ses mérites
TEST: cet homme, perdu dans ses pensées, allait {{c’}}en faire du souci.
TEST: il {{c’}}accoutumait à sa nouvelle fonction.
TEST: elle {{c’}}anime dès qu’on fait du bruit.
TEST: eux {{c’}}étaient pris
TEST: {{s’}}{{avait}} fonctionné
TEST: {{c’}}y adonne avec passion
TEST: c’était merveilleux.
TEST: lui c’est un objet


__conf_ce_qui_verbe__
    ce qui  ?[lui|leur|leurs|nous|vous]¿  (et)  ?@:[WX]¿  ?@:[WX]¿  @:(?:[AQD]|V1.*:Y)
        <<- /conf/ -1>> est                                                     && Confusion probable : “et” est une conjonction de coordination. Pour le verbe “être”, écrivez “est”.
        <<- /conf/ -1>> est                                                     && Confusion probable : “et” est une conjonction de coordination. Pour le verbe “être”, écrivez “est”.

    ce qui  ?[lui|leur|leurs|nous|vous]¿  (étai)  ?@:[WX]¿  ?@:[WX]¿  @:(?:[AQD]|V1.*:Y)
        <<- /conf/ -1>> était                                                   && Confusion probable : “étai” est un nom commun. Pour le verbe “être”, écrivez “était”.
        <<- /conf/ -1>> était                                                   && Confusion probable : “étai” est un nom commun. Pour le verbe “être”, écrivez “était”.

TEST: ce qui {{et}} beau.
TEST: ce qui {{étai}} notre lot.
TEST: ce qui lui {{étai}} propre
TEST: ce qui nous {{et}} pas vraiment utile


__conj_mieux_vaut__
    mieux  ?[ne|n’]¿  [vaux|valais|valus|vaudras|vaudrais]
        <<- /conj/ --1>> =\-1[:-1]+"t"                                                              && Conjugaison erronée. Accord avec “mieux” : utilisez la 3ᵉ personne du singulier.
        <<- /conj/ --1>> =\-1[:-1]+"t"                                                              && Conjugaison erronée. Accord avec “mieux” : utilisez la 3ᵉ personne du singulier.

TEST: avec toi qui ne sais rien de rien, mieux {{vaux}} ne rien dire.
TEST: Mais là-bas mieux {{valais}} ouvrir sa gueule que se taire.



## 1pl
__conj_nous__
    <start>  nous  @:V¬:(?:G|Y|P|1p|3[sp]|Ov)
        <<- /conj/ not value(>1, "|je|tu|il|elle|on|nous|vous|ils|elles|iel|iels|")
        -3>> =suggVerb(\3, ":1p")                                                                   && Conjugaison erronée. Accord avec “nous”. Le verbe devrait être à la 1ʳᵉ personne du pluriel.

    [<start>|,|(|puisque|lorsque|quand|quoique|combien|qui|pourquoi|comment|où]  nous  [ne|n’]    ?[le|la|l’|les|en|y]¿                               @:V¬:(?:1p|Ov)
    [<start>|,|(|puisque|lorsque|quand|quoique|combien|qui|pourquoi|comment|où]  nous  ?[ne|n’]¿  [me|m’|nous|vous|lui|leur]                          @:V¬:(?:1p|Ov)
    [<start>|,|(|puisque|lorsque|quand|quoique|combien|qui|pourquoi|comment|où]  nous  ?[ne|n’]¿  [me|m’|te|t’|se|s’|nous|vous]  [le|la|l’|les|en|y]  $:V¬:1p
    [<start>|,|(|puisque|lorsque|quand|quoique|combien|qui|pourquoi|comment|où]  nous  ?[ne|n’]¿  [le|la|l’|les]                 [lui|leur|en|y]      $:V¬:1p
    [<start>|,|(|puisque|lorsque|quand|quoique|combien|qui|pourquoi|comment|où]  nous  ?[ne|n’]¿  [lui|leur]                     en                   $:V¬:1p
        <<- /conj/ --1>> =suggVerb(\-1, ":1p")                                                      && Conjugaison erronée. Accord avec “nous”. Le verbe devrait être à la 1ʳᵉ personne du pluriel..
        <<- /conj/ --1>> =suggVerb(\-1, ":1p")                                                      && Conjugaison erronée. Accord avec “nous”. Le verbe devrait être à la 1ʳᵉ personne du pluriel.

    [<start>|,|(|puisque|lorsque|quand|quoique|combien|pourquoi|comment|où]  nous  [le|la|l’|les|en|y]   @:V[123]..t_._[e_][a_]¬:(?:1p|Ov|Y|P)
        <<- /conj/ --1>> =suggVerb(\-1, ":2p")                                                      && Conjugaison possiblement erronée. Accord avec “nous”. Le verbe devrait être à la 1ʳᵉ personne du pluriel.

TEST: Nous {{arriverez}} demain.
TEST: Nous {{travaillez}}.
TEST: nous {{donné}} trop de considération
6736
6737
6738
6739
6740
6741
6742
6743

6744
6745
6746
6747
6748
6749
6750
6751

6752
6753
6754
6755
6756
6757
6758
6740
6741
6742
6743
6744
6745
6746

6747
6748
6749
6750
6751
6752
6753
6754

6755
6756
6757
6758
6759
6760
6761
6762







-
+







-
+







TEST: ils me les {{laissés}}.
TEST: j’ai peur qu’il ne leur {{face}} quelque chose de mal


__conf_ils_non_verbe__
    ils  @:¬:(?:V|Ov)|>ou/
        <<- /conf/ not morph(<1, ":3p") and not value(<1, "|t’|")
        -2>> =suggSimil(\2, ":(?:3p|Ov)", False)                                                    && Incohérence avec “ils” : “\2” devrait être un verbe, un pronom objet, un adverbe de négation, etc.
        -2>> =suggSimil(\2, ":(?:3p|Ov)", False)                                                    && Incohérence avec “ils” : “\2” devrait être un verbe, un pronom objet, un adverbe de négation, etc.

    ils  [ne|n’|le|la|l’|les|en|me|m’|te|t’|se|s’|nous|vous|lui|leur|y]       @:¬:(?:V|Ov)
    ils  ?[ne|n’]¿  [le|la|l’|les|en|me|m’|te|t’|se|s’|nous|vous|lui|leur|y]  @:¬:(?:V|Ov)
    ils  ?[ne|n’]¿  [me|m’|te|t’|se|s’|nous|vous]  [le|la|l’|les|en|y]        $:¬:V
    ils  ?[ne|n’]¿  [le|la|l’|les]                 [lui|leur|en|y]            $:¬:V
    ils  ?[ne|n’]¿  [lui|leur]                     en                         $:¬:V
        <<- /conf/ not morph(<1, ":3p") and not value(<1, "|t’|")
        -3>> =suggSimil(\3, ":(?:3p|Ov)", False)                                                    && Incohérence avec “ils” : “\3” devrait être un verbe, un pronom objet, un adverbe de négation, etc.
        -3>> =suggSimil(\3, ":(?:3p|Ov)", False)                                                    && Incohérence avec “ils” : “\3” devrait être un verbe, un pronom objet, un adverbe de négation, etc.

TEST: ils {{son}} du même bois.
TEST: Ils {{étai}} partie au {{restaurent}}
TEST: ils leur {{étai}} indifférent


## se + incohérence
6781
6782
6783
6784
6785
6786
6787
6788

6789
6790
6791
6792
6793
6794
6795

6796
6797
6798

6799
6800

6801
6802
6803
6804

6805
6806
6807
6808
6809
6810
6811
6785
6786
6787
6788
6789
6790
6791

6792
6793
6794
6795
6796
6797
6798

6799
6800
6801

6802
6803

6804
6805
6806
6807

6808
6809
6810
6811
6812
6813
6814
6815







-
+






-
+


-
+

-
+



-
+







        <<- !2>>
        <<- ~>> *


__non_verbe_après_préverbes__
    [ne|n’]     [le|la|l’|les]      [lui|leur|en|y]         @:¬:(?:[123][sp]|Y|P|Ov|X)
    [ne|n’]     [lui|leur]          en                      @:¬:(?:[123][sp]|Y|P|Ov|X)
        <<- /conf/ -4>> =suggSimil(\4, ":(?:[123][sp]|Y)", False)                                   && Incohérence avec « \1 \2 \3 » : « \4 » devrait être un verbe.
        <<- /conf/ -4>> =suggSimil(\4, ":(?:[123][sp]|Y)", False)                                   && Incohérence avec « \1 \2 \3 » : « \4 » devrait être un verbe.

    [ne|n’]              [le|la|l’|les|nous|vous|lui|leur]  @:¬:(?:[123][sp]|Y|P|Ov|X)|>(?:presque|rien|guère)/
    n’                   [en|y]                             @:¬:(?:[123][sp]|Y|P|Ov|X|W)|>(?:presque|rien|guère)/
    [me|m’|te|t’|se|s’]  [le|la|l’|les]                     @:¬:(?:[123][sp]|Y|P|Ov|X)|>(?:presque|rien|guère)/
    [me|m’|te|t’]        [en|y]                             @:¬:(?:[123][sp]|Y|P|Ov|X)|>(?:presque|rien|guère|voici|revoici|voilà|revoilà)/
    [se|s’]              [en|y]                             @:¬:(?:[123][sp]|Y|P|Ov|X)|>(?:presque|rien|guère)/
        <<- /conf/ -3>> =suggSimil(\3, ":(?:[123][sp]|Y)", False)                                   && Incohérence avec « \1 \2 » : « \3 » devrait être un verbe.
        <<- /conf/ -3>> =suggSimil(\3, ":(?:[123][sp]|Y)", False)                                   && Incohérence avec « \1 \2 » : « \3 » devrait être un verbe.

    [nous|vous]           y                                 @:¬:(?:[123][sp]|Y|P|Ov|X)|>(?:presque|rien|guère|voici|revoici|voilà|revoilà)/
        <<- /conf/ not morph(<1, ":R") -3>> =suggSimil(\3, ":(?:[123][sp]|Y)", False)               && Incohérence avec « \1 \2 » : « \3 » devrait être un verbe.
        <<- /conf/ not morph(<1, ":R") -3>> =suggSimil(\3, ":(?:[123][sp]|Y)", False)               && Incohérence avec « \1 \2 » : « \3 » devrait être un verbe.

    [ne|n’]                                                 @:¬:(?:[123][sp]|Y|P|Ov|X|W)|>(?:[mtsl]’|même|presque|rien|guère)/
    [ne|n’]                                                 @:¬:(?:[123][sp]|Y|P|Ov|X|W)|>(?:même|presque|rien|guère)/
    [me|m’|te|t’]                                           @:¬:(?:[123][sp]|Y|P|Ov|X)|>(?:presque|rien|guère|voici|revoici|voilà|revoilà)/
    se                                                      @:¬:(?:[123][sp]|Y|P|Ov|X)|>(?:presque|rien|guère|qu[ei’])/
    s’                                                      @:¬:(?:[123][sp]|Y|P|Ov|X)|>(?:ils?|qu[ei’])/
        <<- /conf/ -2>> =suggSimil(\2, ":(?:[123][sp]|Y)", False)                                   && Incohérence avec « \1 » : « \2 » devrait être un verbe.
        <<- /conf/ not value(<1, "|pronom|") -2>> =suggSimil(\2, ":(?:[123][sp]|Y)", False)         && Incohérence avec « \1 » : « \2 » devrait être un verbe.

TEST: ne leur en {{fil}} pas
TEST: ne l’{{oubli}} pas
TEST: ne {{pensée}} rien, jamais
TEST: n’en {{laissée}} que des miettes
TEST: s’y {{intéressé}}
TEST: J’y {{travail}}.
6828
6829
6830
6831
6832
6833
6834

6835
6836
6837
6838
6839
6840
6841
6832
6833
6834
6835
6836
6837
6838
6839
6840
6841
6842
6843
6844
6845
6846







+







TEST: T’y voilà propulsé.
TEST: t’en voilà débarrassée.
TEST: N’oublient-ils pas ce qu’ils étaient autrefois…
TEST: Ne presque jamais réussir un plat aussi simple, c’est de l’incompétence pure et simple.
TEST: c’est vous les journalistes qui l’avez écrit
TEST: C’est nous les patrons
TEST: me revoilà
TEST: ne l’avoir pas vu plus tôt


__loc_notre_père_qui_es_au_cieux__
    notre père qui [es|est] aux cieux
        <<- !4>>
        <<- ~3:0>> *

7036
7037
7038
7039
7040
7041
7042
7043

7044
7045
7046
7047
7048
7049

7050
7051
7052

7053
7054
7055
7056
7057
7058
7059
7060
7061
7062
7063
7064
7065
7066
7067
7068
7069
7070

7071
7072
7073
7074

7075
7076
7077
7078
7079


7080
7081

7082
7083
7084
7085
7086
7087
7088
7089
7090
7091
7092
7093
7094
7095
7096
7097
7098
7099
7100
7101

7102
7103
7104
7105

7106
7107
7108
7109

7110
7111
7112
7113

7114
7115
7116
7117
7118

7119
7120
7121
7122

7123
7124
7125
7126

7127
7128
7129
7130

7131
7132
7133
7134
7135
7136
7137
7138
7139
7140
7141
7142
7143
7144
7145
7146
7147
7148
7149

7150
7151
7152

7153
7154
7155
7156

7157
7158
7159
7160
7161

7162
7163
7164
7165

7166
7167
7168
7169

7170
7171
7172
7173

7174
7175
7176
7177

7178
7179
7180
7181
7182
7183
7184
7185
7186
7187
7188
7189
7190
7191
7192
7193

7194
7195
7196

7197
7198
7199
7200
7201
7202
7203
7204
7205
7206
7207
7208


7209
7210
7211
7212
7213
7214

7215
7216
7217
7218
7219
7220
7221
7222


7223
7224
7225
7226
7227
7228
7229
7230
7231

7232
7233

7234
7235
7236
7237
7238
7239
7240
7241
7242
7243

7244
7245
7246
7247
7248
7249
7250
7251
7252

7253
7254
7255
7256

7257
7258
7259
7260
7261
7262
7263
7264
7265
7266
7267

7268
7269
7270
7271
7272
7273
7274
7041
7042
7043
7044
7045
7046
7047

7048
7049
7050
7051
7052
7053

7054
7055
7056

7057
7058
7059
7060
7061
7062
7063
7064
7065
7066
7067
7068
7069
7070
7071
7072
7073
7074

7075
7076
7077
7078

7079
7080
7081
7082


7083
7084
7085

7086
7087
7088
7089
7090
7091
7092
7093
7094
7095
7096
7097
7098
7099
7100
7101
7102
7103
7104
7105

7106
7107
7108
7109

7110
7111
7112
7113

7114
7115
7116
7117

7118
7119
7120
7121
7122

7123
7124
7125
7126

7127
7128
7129
7130

7131
7132
7133
7134

7135
7136
7137
7138
7139
7140
7141
7142
7143
7144
7145
7146
7147
7148
7149
7150
7151
7152
7153

7154
7155
7156

7157
7158
7159
7160

7161
7162
7163
7164
7165

7166
7167
7168
7169

7170
7171
7172
7173

7174
7175
7176
7177

7178
7179
7180
7181

7182
7183
7184
7185
7186
7187
7188
7189
7190
7191
7192
7193
7194
7195
7196
7197

7198
7199
7200

7201
7202
7203
7204
7205
7206
7207
7208
7209
7210
7211
7212

7213
7214
7215
7216
7217
7218
7219

7220
7221
7222
7223
7224
7225
7226


7227
7228
7229
7230
7231
7232
7233
7234
7235
7236

7237
7238

7239
7240
7241
7242
7243
7244
7245
7246
7247
7248

7249
7250
7251
7252
7253
7254
7255
7256
7257

7258
7259
7260
7261

7262
7263
7264
7265
7266
7267
7268
7269
7270
7271
7272

7273
7274
7275
7276
7277
7278
7279
7280







-
+





-
+


-
+

















-
+



-
+



-
-
+
+

-
+



















-
+



-
+



-
+



-
+




-
+



-
+



-
+



-
+


















-
+


-
+



-
+




-
+



-
+



-
+



-
+



-
+















-
+


-
+











-
+
+





-
+






-
-
+
+








-
+

-
+









-
+








-
+



-
+










-
+







!!
!!!! Confusions générales                                                                         !!
!!
!!

__conf_usage_impropre__
    au  le  @:[NA]
        <<- /conf/ not \1.isupper() and \2.islower() -1:2>> au              && Usage impropre. Après “au”, l’article “le” est inapproprié. (Ex : Je vais à la gare, je vais au stade.)
        <<- /conf/ not \1.isupper() and \2.islower() -1:2>> au              && Usage impropre. Après “au”, l’article “le” est inapproprié. (Ex : Je vais à la gare, je vais au stade.)

    au  les  @:[NA]
        <<- /conf/ not \1.isupper() and \2.islower() -1:2>> aux             && Usage impropre. Après “au”, l’article “les” n’est pas nécessaire.

    au  la  @:[NAQ].*:[fe]
        <<- /conf/ not \1.isupper() and \2.islower() -1>> à                 && Usage impropre. Avec un nom féminin, utilisez la préposition “à”. (Ex : Je vais à la gare, je vais au stade.)
        <<- /conf/ not \1.isupper() and \2.islower() -1>> à                 && Usage impropre. Avec un nom féminin, utilisez la préposition “à”. (Ex : Je vais à la gare, je vais au stade.)

    au  l’
        <<- /conf/ \2 == "l’" -1>> à                                        && Usage impropre. Exemple : Elle va à l’opéra. Elle va au bal.
        <<- /conf/ \2 == "l’" -1>> à                                        && Usage impropre. Exemple : Elle va à l’opéra. Elle va au bal.

TEST: {{au le}} chien
TEST: {{au les}} armoires
TEST: qui sont {{au}} l’usage
TEST: {{au}} la passion


__conf_de_du_d__
    [de|du]  d’  *WORD
        <<- /conf/ not \1.isupper() and \3.islower() -1:2>> d’          && Incohérence.

TEST: Ça t’arrive {{de d’}}arriver à l’heure ?
TEST: Les écrits de d’Alembert.


__conf_déterminant_fem_sing_verbe__
    [ma|ta|cette|ladite]  @:(?:Y|[123][sp])¬:[NA]
        <<- /conf/ \2.islower() -2>> =suggSimil(\2, ":[NA]:[fe]:[si]", True)                        && Incohérence avec « \1 » : « \2 » est un verbe.
        <<- /conf/ \2.islower() -2>> =suggSimil(\2, ":[NA]:[fe]:[si]", True)                        && Incohérence avec « \1 » : « \2 » est un verbe.

    quelle  @:V[123].*:(?:Y|[123][sp])¬:[NA]|>(?:pouvoir|vouloir|aller|devoir)/
        <<- /conf/ \2.islower() and not value(<1, "|le|la|les|") and hasSimil(\2, ":[NA]:[fe]:[si]")
        -2>> =suggSimil(\2, ":[NA]:[fe]:[si]", True)                                                && Incohérence avec « \1 » : « \2 » est un verbe.
        -2>> =suggSimil(\2, ":[NA]:[fe]:[si]", True)                                                && Incohérence avec « \1 » : « \2 » est un verbe.

    sa  @:(?:Y|[123][sp])¬:(?:N.*:[fe]|A|W)
        <<- /conf/ not \1.isupper() and \2.islower() >>>
        <<- /conf/ morph(\2, "V.....[pqx]") -1>> ça|se                                              && Confusion : « \2 » est un verbe. Exemples : sa jambe, ça vient. (Une faute de frappe peut-être ?)
        <<- /conf/ __else__ -1>> ça                                                                 && Confusion : « \2 » est un verbe. Exemples : sa jambe, ça vient.
        <<- /conf/ morph(\2, "V.....[pqx]") -1>> ça|se                                              && Confusion : « \2 » est un verbe. Exemples : sa jambe, ça vient. (Une faute de frappe peut-être ?)
        <<- /conf/ __else__ -1>> ça                                                                 && Confusion : « \2 » est un verbe. Exemples : sa jambe, ça vient.
        <<- /conf/ not morph(\2, ":V0") and hasSimil(\2)
        -2>> =suggSimil(\2, ":[NA]:[fe]:[si]", True)                                                && Incohérence avec « \1 » : « \2 » est un verbe.
        -2>> =suggSimil(\2, ":[NA]:[fe]:[si]", True)                                                && Incohérence avec « \1 » : « \2 » est un verbe.

    sa  a
        <<- /conf/ not \1.isupper() -1>> ça                                                         && Confusion. Si vous voulez dire “cela”, écrivez “ça”.

TEST: Cette {{pèle}} est trop fragile.
TEST: {{sa}} devient difficile.
TEST: il me tendit {{sa}} {{pèche}}.
TEST: {{sa}} prend du temps.                                                  ->> ça|se
TEST: {{çà}} va                                                               ->> ça
TEST: {{sa}} va                                                               ->> ça
TEST: {{sa}} a tout changé                                                    ->> ça
TEST: {{quelle}} {{camera}} ce serait ?
TEST: quelle serait la solution ?
TEST: quelle pourrait être la solution à ce problème ?


__conf_déterminant_mas_sing_verbe__
    du  @:(?:Y|[123][sp]|P)¬:[NAQ]
        <<- /conf/ \2.islower() and not ( morph(\-1, ":V[023].*:Y") and ( morph(<1, ":V0a|>(?:jamais|pas)") or tag(<1, "_VCint_") ) )
        -2>> =suggSimil(\2, ":[NA]:[me]:[si]", True)                                                && Incohérence avec “\1” : “\2” est un verbe.
        -2>> =suggSimil(\2, ":[NA]:[me]:[si]", True)                                                && Incohérence avec “\1” : “\2” est un verbe.

    [cet|ledit|dudit]  @:(?:Y|[123][sp])¬:[NAQ]
        <<- /conf/ \2.islower()
        -2>> =suggSimil(\2, ":[NA]:[me]:[si]", True)                                                && Incohérence avec “\1” : “\2” est un verbe.
        -2>> =suggSimil(\2, ":[NA]:[me]:[si]", True)                                                && Incohérence avec “\1” : “\2” est un verbe.

    quel  @:V[123].*:(?:Y|[123][sp])¬:[NAQ]|>(?:pouvoir|vouloir|aller|devoir)/
        <<- /conf/ \2.islower() and not value(<1, "|le|la|les|")
        -2>> =suggSimil(\2, ":[NA]:[me]:[si]", True)                                                && Incohérence avec “\1” : “\2” est un verbe.
        -2>> =suggSimil(\2, ":[NA]:[me]:[si]", True)                                                && Incohérence avec “\1” : “\2” est un verbe.

    au  @:(?:Y|[123][sp])¬:[NAQ]
        <<- /conf/ \2.islower() and not value(\2, "|sortir|")
        -2>> =suggSimil(\2, ":[NA]:[me]:[si]", True)                                                && Incohérence avec “\1” : “\2” est un verbe.
        -2>> =suggSimil(\2, ":[NA]:[me]:[si]", True)                                                && Incohérence avec “\1” : “\2” est un verbe.

    ce  @:V.*:(?:Y|[123][sp])¬:[NAQ]:.:[si]
        <<- /conf/ \2.islower()
            and not value(\2, "|faire|sont|soit|fut|fût|serait|sera|seront|soient|furent|fussent|seraient|peut|pouvait|put|pût|pourrait|pourra|doit|dut|dût|devait|devrait|devra|") and hasSimil(\2)
        -2>> =suggSimil(\2, ":[NA]:[me]:[si]", True)                                                && Incohérence avec “\1” : “\2” est un verbe.
        -2>> =suggSimil(\2, ":[NA]:[me]:[si]", True)                                                && Incohérence avec “\1” : “\2” est un verbe.

    [mon|chaque]  @:(?:Y|[123][sp])¬:[NAQ]
        <<- /conf/ \2.islower()
        -2>> =suggSimil(\2, ":[NA]:.:[si]", True)                                                   && Incohérence avec “\1” : “\2” est un verbe.
        -2>> =suggSimil(\2, ":[NA]:.:[si]", True)                                                   && Incohérence avec “\1” : “\2” est un verbe.

    [<start>|,|(]  [ton|son|audit]  @:(?:Y|[123][sp])¬:[NAQ]
        <<- /conf/ \3.islower()
        -3>> =suggSimil(\3, ":[NA]:[me]:[si]", True)                                                && Incohérence avec “\2” : “\3” est un verbe.
        -3>> =suggSimil(\3, ":[NA]:[me]:[si]", True)                                                && Incohérence avec “\2” : “\3” est un verbe.

    [un|une]  @:(?:Y|[123][sp])¬:[GNA]  ?$:W¿  @:A¬:[GM]
        <<- /conf/ not value(<1, "|dont|l’|d’|sauf|excepté|qu’|") and not before("(?i)\\bun à +$") and not morph(\2, ":V0")
        -2>> =suggSimil(\2, ":[NAQ]:[me]:[si]", True)                                               && Incohérence avec “\1” : “\2” est une forme verbale conjuguée.
        -2>> =suggSimil(\2, ":[NAQ]:[me]:[si]", True)                                               && Incohérence avec “\1” : “\2” est une forme verbale conjuguée.

TEST: un {{maintient}} difficile.
TEST: cet {{plaît}} est infectée.
TEST: {{ce}} {{rappelle}} n’en finit pas.
TEST: mon {{rackette}} n’a pas porté les fruits espérés.
TEST: ton {{recèle}} avait été dévoilé
TEST: quel {{impacte}} cela aura-t-il ?
TEST: chaque {{désire}} importe.
TEST: l’attuque du {{briguant}}
TEST: quelqu’un arrive.
TEST: Belle qui tient mon vit captif entre tes doigts.
TEST: Quel serait l’homme capable d’une telle horreur ?
TEST: Une était plus courte que l’autre.


__conf_déterminant_plur_verbe__
    [des|ces|mes|tes|ses|aux]  @:V.*:(?:Y|[123][sp])¬:[NA]
        <<- /conf/ \2.islower()
        -2>> =suggSimil(\2, ":[NA]:.*:[pi]", True)                                                  && Incohérence avec « \1 » : « \2 » est un verbe.
        -2>> =suggSimil(\2, ":[NA]:.*:[pi]", True)                                                  && Incohérence avec « \1 » : « \2 » est un verbe.

    nos  @:V.*:(?:Y|[123][sp])¬:[NA]
        <<- /conf/ \2.islower() -2>> =suggSimil(\2, ":[NA]:.*:[pi]", True)                          && Incohérence avec « \1 » : « \2 » est un verbe.
        <<- /conf/ \2.islower() -2>> =suggSimil(\2, ":[NA]:.*:[pi]", True)                          && Incohérence avec « \1 » : « \2 » est un verbe.
        <<- /conf/ __also__ and morph(\2, ":1p") -1>> nous                                          && Vouliez-vous écrire « nous » ? Le terme « \2 » est un verbe conjugué à la 1ʳᵉ personne du pluriel.

    vos  @:V.*:(?:Y|[123][sp])¬:[NA]
        <<- /conf/ \2.islower() -2>> =suggSimil(\2, ":[NA]:.*:[pi]", True)                          && Incohérence avec « \1 » : « \2 » est un verbe.
        <<- /conf/ \2.islower() -2>> =suggSimil(\2, ":[NA]:.*:[pi]", True)                          && Incohérence avec « \1 » : « \2 » est un verbe.
        <<- /conf/ __also__ and morph(\2, ":2p") -1>> vous                                          && Vouliez-vous écrire « vous » ? Le terme « \2 » est un verbe conjugué à la 2ᵉ personne du pluriel.

    quels  @:V[123].*:(?:Y|[123][sp])¬:[NA]|>(?:pouvoir|vouloir|aller|devoir|être)/
        <<- /conf/ \2.islower() and not value(<1, "|le|la|les|")
        -2>> =suggSimil(\2, ":[NA].*:[me]:[pi]", True)                                              && Incohérence avec « \1 » : « \2 » est un verbe.
        -2>> =suggSimil(\2, ":[NA].*:[me]:[pi]", True)                                              && Incohérence avec « \1 » : « \2 » est un verbe.

    quelles  @:V[123].*:(?:Y|[123][sp])¬:[NA]|>(?:pouvoir|vouloir|aller|devoir|être)/
        <<- /conf/ \2.islower() and not value(<1, "|le|la|les|") and hasSimil(\2, ":[NA]:[fe]:[pi]")
        -2>> =suggSimil(\2, ":[NA].*:[fe]:[pi]", True)                                              && Incohérence avec « \1 » : « \2 » est un verbe.
        -2>> =suggSimil(\2, ":[NA].*:[fe]:[pi]", True)                                              && Incohérence avec « \1 » : « \2 » est un verbe.

    quelques  @:V.*:(?:Y|[123][sp])¬:[NA]
        <<- /conf/ \2.islower() and not value(\2, "|soient|soit|sois|puisse|puisses|puissent|")
        -2>> =suggSimil(\2, ":[NA]:.*:[pi]", True)                                                  && Incohérence avec « \1 » : « \2 » est un verbe.
        -2>> =suggSimil(\2, ":[NA]:.*:[pi]", True)                                                  && Incohérence avec « \1 » : « \2 » est un verbe.

    [auxdits|lesdits|desdits]  @:V.*:(?:Y|[123][sp])¬:[NA]
        <<- /conf/ \2.islower()
        -2>> =suggSimil(\2, ":[NA].*:[me]:[pi]", True)                                              && Incohérence avec « \1 » : « \2 » est un verbe.
        -2>> =suggSimil(\2, ":[NA].*:[me]:[pi]", True)                                              && Incohérence avec « \1 » : « \2 » est un verbe.

    [auxdites|lesdites|desdites]  @:V.*:(?:Y|[123][sp])¬:[NA]
        <<- /conf/ \2.islower()
        -2>> =suggSimil(\2, ":[NA].*:[fe]:[pi]", True)                                              && Incohérence avec « \1 » : « \2 » est un verbe.
        -2>> =suggSimil(\2, ":[NA].*:[fe]:[pi]", True)                                              && Incohérence avec « \1 » : « \2 » est un verbe.

TEST: la crainte des {{attentas}} fait feu de tout bois.
TEST: {{nos}} {{agissons}}
TEST: {{vos}} {{prenez}} vos délires pour la réalité.
TEST: Quelques {{axions}} de la sorte suffisent à nous discréditer.
TEST: elle se rendit auxdits {{jardinais}}
TEST: auxdites {{scelles}}, il ne prêta pas attention.
TEST: quels {{afflues}} attendre ?
TEST: {{quelles}} {{arrêtes}}
TEST: quels seraient nos avantages ?
TEST: quelles vont être nos chances ?


__conf_à_vconj__
    à  [le|la|l’|les|leur|leurs|ton|son]  @:V¬:[GNAWMBY]
        <<- /conf/ -3>> =suggSimil(\3, ":[NA]", True)                                               && Incohérence : après “\1 \2”, on devrait trouver un groupe nominal (ou un verbe à l’infinitif).
        <<- /conf/ -3>> =suggSimil(\3, ":[NA]", True)                                               && Incohérence : après “\1 \2”, on devrait trouver un groupe nominal (ou un verbe à l’infinitif).

    à  [un|une]  @:V¬:[GNAWMB]
        <<- /conf/ not value(<1, "|un|une|") -3>> =suggSimil(\3, ":[NA]", True)                     && Incohérence : après “\1 \2”, on devrait trouver un groupe nominal.
        <<- /conf/ not value(<1, "|un|une|") -3>> =suggSimil(\3, ":[NA]", True)                     && Incohérence : après “\1 \2”, on devrait trouver un groupe nominal.

TEST: à leur {{profile}}
TEST: à un {{employer}}
TEST: on les voit un par un devenir prendre un chemin de predition
TEST: une référence à l’astuce de base qui permet d’outrepasser ses droits.
TEST: Le mari répète à l’envi qu’il a découvert la France à travers les mots de sa femme.
TEST: Il reste de nombreux militants sincères à la FI.


__conf_de_vconj__
    [de|d’]  @:V.*:[123][sp]¬:[GNA]
        <<- /conf/ not \2.istitle() and not value(\2, "|jure|") -2>> =suggSimil(\2, ":[NA]", True)  && Incohérence avec “\1” : “\2” est une forme verbale conjuguée.
        <<- /conf/ not \2.istitle() and not value(\2, "|jure|") and not tag(\2, "eg1mot")
        -2>> =suggSimil(\2, ":[NA]", True)                                                          && Incohérence avec “\1” : “\2” est une forme verbale conjuguée.

TEST: il s’agit de {{mette}} en évidence.


    [de|d’]  [l’|leur]  @:[123][sp]¬:[NAQ]
        <<- /conf/ not \3.istitle() -3>> =suggSimil(\3, ":[NA]:.:[si]", True)                       && Incohérence avec “\1 \2” : “\3” est une forme verbale conjuguée.
        <<- /conf/ not \3.istitle() -3>> =suggSimil(\3, ":[NA]:.:[si]", True)                       && Incohérence avec “\1 \2” : “\3” est une forme verbale conjuguée.

TEST: de l’{{arrivait}}


    [de|d’]  le  *WORD
        <<- /conf/ space_after(\1, 0, 1) and morph(\3, ":[NAQ].*:[me]", ":[YG]") and not \3.istitle()
            and not (value(\3, "|mal|") and morph(>1, ":Y")) -1:2>> du                              && Incohérence avec “\1 \2” : “\3” est un nom ou un adjectif.
        <<- /conf/ morph(\3, ":[123][sp]") -3>> =suggVerbInfi(\3)                                   && Incohérence avec “\1 \2” : “\3” est une forme verbale conjuguée.
            and not (value(\3, "|mal|") and morph(>1, ":Y")) -1:2>> du                              && Incohérence avec “\1 \2” : “\3” est un nom ou un adjectif.
        <<- /conf/ morph(\3, ":[123][sp]") -3>> =suggVerbInfi(\3)                                   && Incohérence avec “\1 \2” : “\3” est une forme verbale conjuguée.

TEST: {{de le}} vin                                           ->> du
TEST: il n’est pas interdit de le {{pensait}}
TEST: que connais-tu de “Le Tambour” ?


    [de|d’]  la  *WORD
        <<- /conf/ morph(\3, ":[123][sp]", ":[NAQ]") and not \3.istitle() >>>
        <<- /conf/ morph(\3, ":V1.*:(?:Iq|Ip:2p)", ":1p") -3>> =suggVerbInfi(\3)                    && Incohérence avec “\1 \2”: mettez le verbe à l’infinitif (à moins qu’il y ait confusion avec un nom féminin).
        <<- /conf/ morph(\3, ":V1.*:(?:Iq|Ip:2p)", ":1p") -3>> =suggVerbInfi(\3)                    && Incohérence avec “\1 \2” : mettez le verbe à l’infinitif (à moins qu’il y ait confusion avec un nom féminin).
        <<- /conf/ __else__ >>>
        <<- /conf/ hasSimil(\3, ":(?:[NA]:[fe]:[si])") -3>> =suggSimil(\3, ":(?:[NA]:[fe]:[si])", True)    && Incohérence avec “\1 \2” : “\3” est un verbe.
        <<- /conf/ hasSimil(\3, ":(?:[NA]:[fe]:[si])") -3>> =suggSimil(\3, ":(?:[NA]:[fe]:[si])", True)    && Incohérence avec “\1 \2” : “\3” est un verbe.
        <<- /conf/ __else__ -2>> là                                                                 && Confusion probable. Si vous voulez dire “depuis ce point”, écrivez “de là”.

TEST: j’étais loin de la {{pensait}} ainsi                      ->> penser
TEST: ce n’était que de la {{bouillit}}                         ->> bouillie
TEST: de {{la}} venaient tous nos problèmes                     ->> là


    d’  [un|une]  @:[123][sp]¬:[GNA]
        <<- /conf/ not \3.istitle() and not value(<1, "|plus|moins|")
        -3>> =suggSimil(\3, ":[NA]", True)                                                          && Incohérence avec “\1\2” : “\3” est une forme verbale conjuguée.
        -3>> =suggSimil(\3, ":[NA]", True)                                                          && Incohérence avec “\1\2” : “\3” est une forme verbale conjuguée.

TEST: d’une {{habille}} de femme
TEST: plus d’un ont été traumatisés
TEST: Plus d’une sont parties aussi vite qu’elles étaient venues


__conf_par_vconj__
    par  ?[le|la|l’|les||leur|leurs]¿  @:[123][sp]¬:[GNA]
        <<- /conf/ not \-1.istitle() --1>> =suggSimil(\-1, ":[NA]", True)                           && Incohérence avec “\1” : “\-1” est une forme verbale conjuguée.
        <<- /conf/ not \-1.istitle() --1>> =suggSimil(\-1, ":[NA]", True)                           && Incohérence avec “\1” : “\-1” est une forme verbale conjuguée.

    par  [un|une]  @:V¬:[GNA]
        <<- /conf/ not \3.istitle() and not value(<1, "|un|une|")
        -3>> =suggSimil(\3, ":[NA]", True)                                                          && Incohérence avec “\1\2” : “\3” est une forme verbale conjuguée.
        -3>> =suggSimil(\3, ":[NA]", True)                                                          && Incohérence avec “\1\2” : “\3” est une forme verbale conjuguée.

TEST: par {{bloque}} de données
TEST: par une {{donnait}} sans importance
TEST: conçu par un {{employer}} très compétent
TEST: pour les insulter au sortir du seul troquet dispensateur d’oubli liquide du coin
TEST: ce peut être un matériau à part entière pour alimenter discussions et délibérations.


__conf_préposition_det_verbe__
    [malgré|dès] [un|une|le|la|l’|les|leur|leurs|son|ton]  @:V¬:[GNAWMB]
        <<- /conf/ not \-1.istitle() -3>> =suggSimil(\3, ":[NA]", True)         && Incohérence : après “\1 \2”, on devrait trouver un groupe nominal.
        <<- /conf/ not \-1.istitle() -3>> =suggSimil(\3, ":[NA]", True)         && Incohérence : après “\1 \2”, on devrait trouver un groupe nominal.

TEST: malgré l’{{arrête}} qui interdisait le port
TEST: dès le {{commencent}}, j’ai vu le problème.
TEST: malgré un {{employer}} peu dévoué
TEST: malgré les deux précédentes erreurs


7312
7313
7314
7315
7316
7317
7318
7319

7320
7321
7322
7323
7324
7325
7326
7327
7328
7329
7330
7331
7332

7333
7334
7335

7336
7337
7338
7339
7340
7341
7342
7343
7344
7345
7346
7347


7348
7349
7350
7351
7352
7353


7354
7355
7356
7357
7358
7359



7360
7361
7362
7363
7364
7365
7366
7318
7319
7320
7321
7322
7323
7324

7325
7326
7327
7328
7329
7330
7331
7332
7333
7334
7335
7336
7337

7338
7339
7340

7341
7342
7343
7344
7345
7346
7347
7348
7349
7350
7351


7352
7353
7354
7355
7356
7357


7358
7359
7360
7361
7362



7363
7364
7365
7366
7367
7368
7369
7370
7371
7372







-
+












-
+


-
+










-
-
+
+




-
-
+
+



-
-
-
+
+
+







TEST: Tout ce qu’on fera chez {{sera}} enregistré.


__conf_de_plus_en_plus_verbe__
    de plus en plus  @:(?:[123][sp]|Y)¬:(?:[GAQWN]|3p)
        <<- /conf/ not morph(<1, ":V[123].*:[123][sp]|>(?:pouvoir|vouloir|falloir)/")
        -5>> =suggVerbPpas(\5)
        && Incohérence probable avec « de plus en plus » : « \5 » n’est ni un adjectif, ni un participe passé, ni un adverbe.
        && Incohérence probable avec « de plus en plus » : « \5 » n’est ni un adjectif, ni un participe passé, ni un adverbe.

TEST: de plus en plus {{gagnait}} par la folie.
TEST: de plus en plus {{concerner}} par ce problème
TEST: avec quel zèle ils remplissent leurs devoirs de citoyens (de plus en plus deviennent enseignant·e·s, infirmier·e·s ou s’engagent dans l’armée, etc.).
TEST: il faut de plus en plus aider ces gens.
TEST: nous leur faisons de plus en plus confiance.
TEST: elles ont de plus en plus recours à des intermédiaires.


#### Participes présents
__conf_participes_présents__
    [ne|n’|me|m’|te|t’|se|s’]  ~\want$
        <<- /conf/ morph(\2, ":", ":P") -2>> _                                                      && Incohérence : « \2 » n’est pas un participe présent.
        <<- /conf/ morph(\2, ":", ":P") -2>> _                                                      && Incohérence : « \2 » n’est pas un participe présent.

    [nous|vous|lui]  ~\want$
        <<- /conf/ not morph(<1, ":R") and morph(\2, ":[NAQ]", ":[PG]") -2>> _                      && Incohérence : « \2 » n’est pas un participe présent.
        <<- /conf/ not morph(<1, ":R") and morph(\2, ":[NAQ]", ":[PG]") -2>> _                      && Incohérence : « \2 » n’est pas un participe présent.

TEST: ne {{convaincant}} que les convaincus.
TEST: une tension lui {{provocant}} un ulcère
TEST: comme des nuages ou des coteaux se reflétant dans l’eau (ligature fl)
TEST: ces hommes qui avaient abusé de lui enfant.


__conf_en_participes_présents__
    en   [ne|me|m’|te|t’|s’]  @:[123][sp]¬:[PY]
        <<- /conf/ not \1.isupper() >>>
        <<- /conf/ morph(\3, ":3p") -3>> =suggVerbTense(\3, ":PQ", ":P")                                 && Incohérence : « en \1 \2 »… Vouliez-vous écrire le verbe au participe présent ?
        <<- /conf/ value(\2, "|m’|t’|s’|") -1:2>> "\2en "                                           && Incohérence : vouliez-vous écrire « \2en » ?
        <<- /conf/ morph(\3, ":3p") -3>> =suggVerbTense(\3, ":PQ", ":P")                            && Incohérence : « en \1 \2 »… Vouliez-vous écrire le verbe au participe présent ?
        <<- /conf/ value(\2, "|m’|t’|s’|") -1:2>> "\2en "                                           && Incohérence : vouliez-vous écrire « \2en » ?
        <<- /conf/ __else__ -1:2>> =\2[0:1] + "’en"                                                 && Incohérence.

    en   se  @:[123][sp]¬:[PY]
        <<- /conf/ not \1.isupper() >>>
        <<- /conf/ morph(\3, ":3p") -3>> =suggVerbTense(\3, ":PQ", ":P")                            && Incohérence : « en \1 \2 »… Vouliez-vous écrire le verbe au participe présent ?
        <<- /conf/ not morph(\3, ":[NA]") -1:2>> "s’en "                                            && Incohérence : vouliez-vous écrire « s’en » ?
        <<- /conf/ morph(\3, ":3p") -3>> =suggVerbTense(\3, ":PQ", ":P")                            && Incohérence : « en \1 \2 »… Vouliez-vous écrire le verbe au participe présent ?
        <<- /conf/ not morph(\3, ":[NA]") -1:2>> "s’en "                                            && Incohérence : vouliez-vous écrire « s’en » ?

    en   n’  @:[123][sp]¬:[PY]
        <<- /conf/ not \1.isupper() and not value(\3, "|importe|") >>>
        <<- /conf/ morph(\3, ":3p") -3>> =suggVerbTense(\3, ":PQ", ":P")                            && Incohérence : « en \1 \2 »… Vouliez-vous écrire le verbe au participe présent ?
        <<- /conf/ not value(<1, "|n’|") -1:2>> "n’en "                                             && Incohérence : vouliez-vous écrire « n’en » ?
        <<- /conf/ __else__ -1:2>> "en "                                                            && Double négation :  “n’” est une graphie élidée de “ne”. Il est inutile de la mettre deux fois. L’accord euphonique se fait en prononçant le “n” de “en” avec la première voyelle de “\3”.
        <<- /conf/ morph(\3, ":3p") -3>> =suggVerbTense(\3, ":PQ", ":P")                            && Incohérence : « en \1 \2 »… Vouliez-vous écrire le verbe au participe présent ?
        <<- /conf/ not value(<1, "|n’|") -1:2>> "n’en "                                             && Incohérence : vouliez-vous écrire « n’en » ?
        <<- /conf/ __else__ -1:2>> "en "                                                            && Double négation : “n’” est une graphie élidée de “ne”. Il est inutile de la mettre deux fois. L’accord euphonique se fait en prononçant le “n” de “en” avec la première voyelle de “\3”.

TEST: {{en t’}}ait donné tant.                                              ->> "t’en "
TEST: il {{en me}} donne beaucoup.                                          ->> m’en
TEST: elle n’{{en n’}}avait plus pour longtemps.                            ->> "en "
TEST: {{en m’}}{{apportent}} des gâteaux
TEST: {{en se}} {{contentent}}
TEST: {{en n’}}{{abordent}} la côte, nous vîmes le désastre.
7399
7400
7401
7402
7403
7404
7405
7406

7407
7408
7409
7410
7411
7412
7413
7405
7406
7407
7408
7409
7410
7411

7412
7413
7414
7415
7416
7417
7418
7419







-
+








TEST: en tant qu’{{abaisse}}
TEST: en tant que tel


__conf_presque_vconj__
    presque  @:[123][sp]¬:[GNAQWM]
        <<- /conf/ not tag_before(\1, "_ceque_") and not value(<1, "|ou|") -2>> _                   && Incohérence probable avec “presque” : « \2 » n’est ni un adjectif, ni un participe passé, ni un adverbe.
        <<- /conf/ not tag_before(\1, "_ceque_") and not value(<1, "|ou|") -2>> _                   && Incohérence probable avec “presque” : « \2 » n’est ni un adjectif, ni un participe passé, ni un adverbe.

TEST: presque {{délaissait}} par tout le monde.
TEST: Tout le monde ou presque déteste ces gens-là.


__conf_sur_vconj__
    sur  @:(?:[123][sp]|P)¬:[GNAQM]
7468
7469
7470
7471
7472
7473
7474
7475

7476
7477
7478
7479
7480
7481
7482
7483

7484
7485
7486
7487
7488
7489
7490
7474
7475
7476
7477
7478
7479
7480

7481
7482
7483
7484
7485
7486
7487
7488

7489
7490
7491
7492
7493
7494
7495
7496







-
+







-
+








# pour justifiée qu’elle fût
# [aussi|si] habile qu’il soit


__conf_trop_vconj__
    trop  @:[123][sp]¬:(?:[GNAQWM]|3p)
        <<- /conf/ not tag_before(\1, "_ceque_") -2>> _                                              && Incohérence probable avec “trop” : “\2” n’est ni un adjectif, ni un participe passé, ni un adverbe.
        <<- /conf/ not tag_before(\1, "_ceque_") -2>> _                                              && Incohérence probable avec “trop” : “\2” n’est ni un adjectif, ni un participe passé, ni un adverbe.

TEST: J’ai trop {{mangeais}}.
TEST: Ce que nous réussissons presque sera considéré comme un échec.


__conf_très_verbe__
    très  @:(?:Y|[123][sp])¬:[AQW]
        <<- /conf/ not value(\2, "|envie|") -2>> =suggSimil(\2, ":[AW]", True)                      && Incohérence avec “très” : “\2” n’est ni un adjectif, ni un participe passé, ni un adverbe.
        <<- /conf/ not value(\2, "|envie|") -2>> =suggSimil(\2, ":[AW]", True)                      && Incohérence avec “très” : “\2” n’est ni un adjectif, ni un participe passé, ni un adverbe.

TEST: Il est très {{cite}}.
TEST: très {{suivit}} par ce détective
TEST: il était très {{habille}}


#### Aussi +adj que soit +sujet
7537
7538
7539
7540
7541
7542
7543
7544

7545
7546
7547

7548
7549
7550
7551
7552
7553
7554
7555
7556
7557
7558
7559
7560
7561

7562
7563
7564
7565
7566
7567
7568
7569
7570
7571
7572
7573
7574

7575
7576
7577
7578
7579
7580
7581
7582
7583
7584

7585
7586
7587
7588

7589
7590
7591
7592
7593
7594
7595
7596
7597
7598
7599
7600
7601

7602
7603
7604
7605
7606
7607
7608

7609
7610
7611
7612
7613
7614

7615
7616
7617
7618
7619
7620

7621
7622
7623
7624
7625
7626

7627
7628
7629
7630
7631
7632

7633
7634
7635
7636
7637
7638
7639

7640
7641
7642
7643
7644
7645
7646

7647
7648
7649
7650
7651
7652
7653

7654
7655
7656
7657
7658
7659
7660

7661
7662
7663
7664
7665
7666



7667
7668
7669
7670
7671
7672
7673
7543
7544
7545
7546
7547
7548
7549

7550
7551
7552

7553
7554
7555
7556
7557
7558
7559
7560
7561
7562
7563
7564
7565
7566

7567
7568
7569
7570
7571
7572
7573
7574
7575
7576
7577
7578
7579

7580
7581
7582
7583
7584
7585
7586
7587
7588
7589

7590
7591
7592
7593

7594
7595
7596
7597
7598
7599
7600
7601
7602
7603
7604
7605
7606

7607
7608
7609
7610
7611
7612
7613

7614
7615
7616
7617
7618
7619

7620
7621
7622
7623
7624
7625

7626
7627
7628
7629
7630
7631

7632
7633
7634
7635
7636
7637

7638
7639
7640
7641
7642
7643
7644

7645
7646
7647
7648
7649
7650
7651

7652
7653
7654
7655
7656
7657
7658

7659
7660
7661
7662
7663
7664
7665

7666
7667
7668
7669



7670
7671
7672
7673
7674
7675
7676
7677
7678
7679







-
+


-
+













-
+












-
+









-
+



-
+












-
+






-
+





-
+





-
+





-
+





-
+






-
+






-
+






-
+






-
+



-
-
-
+
+
+







!!
!!

# a / à

__conf_a_à_incohérences__
    à [afin|alors|après|auprès|avant|avec|au-dedans|au-dehors|au-delà|au-dessous|au-dessus|au-devant|chez|dans|devant|dès|déjà|donc|durant|envers|lorsque|lorsqu’|malgré|parce|parmi|pendant|pour|puisque|puisqu’|quoique|quoiqu’|que|qu’|sur|tandis|vis-à-vis]
        <<- /conf/ -1>> a                                           && Incohérence avec “\2”. Confusion probable : “à” est une préposition. Écrivez “a” pour la conjugaison de “avoir”.
        <<- /conf/ not tag(\1, "eg1mot") -1>> a                                           && Incohérence avec “\2”. Confusion probable : “à” est une préposition. Écrivez “a” pour la conjugaison de “avoir”.

    à [au|aux]
        <<- /conf/ not value(>1, "|moins|plus|mieux|") -1>> a       && Incohérence avec “\2”. Confusion probable : “à” est une préposition. Écrivez “a” pour la conjugaison de “avoir”.
        <<- /conf/ not tag(\1, "eg1mot") and not value(>1, "|moins|plus|mieux|") -1>> a   && Incohérence avec “\2”. Confusion probable : “à” est une préposition. Écrivez “a” pour la conjugaison de “avoir”.

TEST: ce que cet homme, dans son garage, {{à}} alors une importance.
TEST: ce que cette personne, dans son esprit trouble et vindicatif, {{à}} aux hommes à dire, nul ne le sait.


__conf_a_à_verbe!6__
    [n’|m’|t’|s’]   ?[en|y]¿        à
    [l’|les]        [en|y]          à
    [ne|me|te|se]   [les|l’]        à
    [nous|vous]     [en|y|les|l’]   à
    ne [le|la|les]  [leur|lui]      à
    ne [le|la|les]  [leur|lui]      à
    y en                            à
        <<- /conf/ --1>> a                                          && Confusion : “à” est une préposition. Pour le verbe avoir, écrivez “a”.
        <<- /conf/ --1>> a                                          && Confusion : “à” est une préposition. Pour le verbe avoir, écrivez “a”.

TEST: il me les {{à}} donnés
TEST: il me l’{{à}} donné
TEST: Il ne les leur {{à}} pas imposés.
TEST: l’homme, jamais, ne la lui {{à}} imposés.
TEST: l’homme, jamais, ne nous l’{{à}} prise.
TEST: Il m’en {{à}} donné.
TEST: Il ne m’{{à}} jamais vu.
TEST: elle n’{{à}} rien raté.


    y à
        <<- /conf/ -2>> a                                           && Confusion probable : “à” est une préposition. Pour le verbe avoir, écrivez “a”.
        <<- /conf/ -2>> a                                           && Confusion probable : “à” est une préposition. Pour le verbe avoir, écrivez “a”.

TEST: elle n’y {{à}} pas droit.
TEST: il y {{à}} des pertes.
TEST: Il les y {{à}}.
TEST: Y {{à}} du poulet


    [l’|les] à
        <<- /conf/ not \1.isupper() and not value(>1, "|côté|coup|pic|peine|peu|plat|propos|valoir|")
        -2>> a                                                      && Confusion : “à” est une préposition. Pour le verbe avoir, écrivez “a”.
        -2>> a                                                      && Confusion : “à” est une préposition. Pour le verbe avoir, écrivez “a”.

    en à
        <<- /conf/ not \1.isupper() and not value(>1, "|côté|coup|pic|peine|peu|plat|propos|valoir|") and not morph(<1, ">venir/")
        -2>> a                                                      && Confusion : “à” est une préposition. Pour le verbe avoir, écrivez “a”.
        -2>> a                                                      && Confusion : “à” est une préposition. Pour le verbe avoir, écrivez “a”.

TEST: Ce fâcheux, comme à son habitude, les {{à}} ennuyés à mourir.
TEST: Lui l’{{à}} pris par surprise.
TEST: Il y en {{à}}.
TEST: Elle en {{à}} pris.
TEST: Elle l’en {{à}} averti.
TEST: lui, avec ceux-là, nous en {{à}} donnés trois.
TEST: qui en {{à}} ?
TEST: il les a pris, les {{à}} frapper


    [il|on]  [nous|vous]  à
        <<- /conf/ -3>> a                                           && Confusion : “à” est une préposition. Pour le verbe avoir, écrivez “a”.
        <<- /conf/ -3>> a                                           && Confusion : “à” est une préposition. Pour le verbe avoir, écrivez “a”.

TEST: il nous {{à}} perdus dans ce dédale.


    elle  [nous|vous]  à
        <<- /conf/ not morph(<1, ":(?:3s|R)") and not morph(>1, ":Oo|>quo?i/")
        -3>> a                                                      && Confusion : “à” est une préposition. Pour le verbe avoir, écrivez “a”.
        -3>> a                                                      && Confusion : “à” est une préposition. Pour le verbe avoir, écrivez “a”.

TEST: elle nous {{à}} pris par suprise.


    à été
        <<- /conf/ -1>> a                                           && Confusion : “à” est une préposition. Pour le verbe avoir, écrivez “a”.
        <<- /conf/ -1>> a                                           && Confusion : “à” est une préposition. Pour le verbe avoir, écrivez “a”.

TEST: Cette femme {{à}} été confondue avec une autre.


    qui  à  $:Q¬:M
        <<- /conf/ \3.islower() -2>> a                              && Confusion : “à” est une préposition. Pour le verbe avoir, écrivez “a”.
        <<- /conf/ \3.islower() -2>> a                              && Confusion : “à” est une préposition. Pour le verbe avoir, écrivez “a”.

TEST: ce qui {{à}} pris tant de valeur, c’est…


    qui  [lui|nous|vous]  à
        <<- /conf/ -3>> a                                           && Confusion : “à” est une préposition. Pour le verbe avoir, écrivez “a”.
        <<- /conf/ -3>> a                                           && Confusion : “à” est une préposition. Pour le verbe avoir, écrivez “a”.

TEST: un élève qui nous {{à}} fait bien des misères.


    [leur|leurs] à
        <<- /conf/ not morph(<1, ":D") --1>> a                      && Confusion : “à” est une préposition. Pour le verbe avoir, écrivez “a”.
        <<- /conf/ not morph(<1, ":D") --1>> a                      && Confusion : “à” est une préposition. Pour le verbe avoir, écrivez “a”.

TEST: le peuple leur {{à}} donner tort


    à  le  @:[NAQ].*:[me]¬:(?:Y|Oo)
        <<- /conf/ -1:2>> a le|au
        && Confusion. Ou vous confondez “à” (préposition) avec “a” (avoir), ou vous devez employer “au”. Exemple : _à_ midi, il _a_ pris son déjeuner _au_ restaurant.
        && Confusion. Ou vous confondez “à” (préposition) avec “a” (avoir), ou vous devez employer “au”. Exemple : _à_ midi, il _a_ pris son déjeuner _au_ restaurant.

TEST: Ce chien, croyons-nous savoir, {{à le}} maître le plus violent qui soit.


    à  le  @:[NAQ].*:f¬:(?:Y|Oo)
        <<- /conf/ -1:2>> à la|a la
        && Confusion. Ou vous confondez “à” (préposition) avec “a” (avoir), ou vous devez employer “a la”. Exemple : elle _a_ la Palme d’Or du festival de Cannes.
        && Confusion. Ou vous confondez “à” (préposition) avec “a” (avoir), ou vous devez employer “a la”. Exemple : elle _a_ la Palme d’Or du festival de Cannes.

TEST: {{à le}} {{donnée}}


    à  les  @:[NAQ]¬:(?:Y|Oo)
        <<- /conf/ -1:2>> a les|aux
        && Confusion. Ou vous confondez “à” (préposition) avec “a” (avoir), ou vous devez employer “aux”. Exemple : Elle _a_ donné du travail _aux_ employés _à_ profusion.
        && Confusion. Ou vous confondez “à” (préposition) avec “a” (avoir), ou vous devez employer “aux”. Exemple : Elle _a_ donné du travail _aux_ employés _à_ profusion.

TEST: Celui qui y croit {{à les}} moyens d’y parvenir.


    à  ?$:W¿  *WORD
        <<- /conf/ \2.islower() and not value(\2, "|coté|sont|") >>>
        <<- /conf/ morph(\2, ":(?:V.......[_z][az].*:Q|V1.*:Ip:2p)", ":[MGWNY]") -1>> a             && Confusion probable : “à” est une préposition. Pour le verbe “avoir”, écrivez “a”.
        <<- /conf/ morph(\2, ":(?:V.......[_z][az].*:Q|V1.*:Ip:2p)", ":[MGWNY]") -1>> a             && Confusion probable : “à” est une préposition. Pour le verbe “avoir”, écrivez “a”.
        <<- /conf/ __also__ and morph(\2, "V1.*:(?:Ip:2p|Q)", "*") and not value(<1, "|il|elle|on|n’|les|l’|m’|t’|s’|d’|en|y|lui|nous|vous|leur|")
        -2>> =suggVerbInfi(\2)                                                                      && Le verbe devrait être à l’infinitif.
        <<- /conf/ __else__ and morph(\2, ":[123][sp]", "*") and not value(\2, "|tord|tords|") >>>
        <<- /conf/ morph(\2, ":V2.*:I[ps]:3s", "*") -2>> =suggVerbPpas(\2, ":m:s")                  && Incohérence : “\1” est une préposition. “\2” est un verbe conjugué.
        <<- /conf/ __also__ -1>> a                                                                  && Confusion probable : “à” est une préposition. Pour le verbe “avoir”, écrivez “a”.
        <<- /conf/ __else__ -2>> _                                                                  && Incohérence : “\1” est une préposition. “\2” est un verbe conjugué.
        <<- /conf/ morph(\2, ":V2.*:I[ps]:3s", "*") -2>> =suggVerbPpas(\2, ":m:s")                  && Incohérence : “\1” est une préposition. “\2” est un verbe conjugué.
        <<- /conf/ __also__ -1>> a                                                                  && Confusion probable : “à” est une préposition. Pour le verbe “avoir”, écrivez “a”.
        <<- /conf/ __else__ -2>> _                                                                  && Incohérence : “\1” est une préposition. “\2” est un verbe conjugué.

TEST: Que fait-il {{a}} cette conférence ?
TEST: L’homme {{à}} ouvert la boîte.
TEST: Il ne nous reste plus qu’{{à}} {{vérifié}} si votre maquette.
TEST: Je veux {{à}} {{mangé}}.
TEST: Ne pas hésiter {{à}} {{demandé}} des conseils.
TEST: cette femme, dans son délire, {{à}} {{jetez}} son argent à la poubelle.
7682
7683
7684
7685
7686
7687
7688
7689

7690
7691
7692
7693
7694
7695
7696
7697
7698
7699
7700

7701
7702
7703
7704
7705
7706
7707
7708

7709
7710
7711

7712
7713
7714
7715

7716
7717
7718

7719
7720
7721
7722
7723
7724
7725
7726

7727
7728
7729
7730
7731

7732
7733
7734
7735
7736
7737
7738
7739
7740
7741
7742
7743
7744
7745
7746
7747
7748
7749
7750
7751

7752
7753
7754
7755
7756
7757
7758
7688
7689
7690
7691
7692
7693
7694

7695
7696
7697
7698
7699
7700
7701
7702
7703
7704
7705

7706
7707
7708
7709
7710
7711
7712
7713

7714
7715
7716

7717
7718
7719
7720

7721
7722
7723

7724
7725
7726
7727
7728
7729
7730
7731

7732
7733
7734
7735
7736

7737
7738
7739
7740
7741
7742
7743
7744
7745
7746
7747
7748
7749
7750
7751
7752
7753
7754
7755
7756

7757
7758
7759
7760
7761
7762
7763
7764







-
+










-
+







-
+


-
+



-
+


-
+







-
+




-
+



















-
+








__conf_à_a_infinitif__
    a  $:Y¬:G
    a  [ne|n’|me|m’|te|t’|se|s’|en|y|lui|nous|vous]  $:Y
    a  [n’|m’|t’|s’|l’|les|lui|nous|vous|leur] [en|y] $:Y
    a  [le|la|l’|les|leur]  $:Y¬:N
        <<- /conf/ not value(<1, "|il|elle|iel|on|n’|m’|t’|l’|") and not before("(?i)\\bqu[e’] |n’(?:en|y) +$")
        -1>> à                                                      && Confusion probable : “a” est la conjugaison du verbe “avoir”. Utilisez la préposition “à”.|https://fr.wiktionary.org/wiki/%C3%A0
        -1>> à                                                      && Confusion probable : “a” est la conjugaison du verbe “avoir”. Utilisez la préposition “à”.|https://fr.wiktionary.org/wiki/%C3%A0

TEST: scrupuleux {{a}} n’en toucher qu’une part infime.
TEST: Ne pas hésiter {{a}} {{demander}} des conseils.
TEST: Sébastien {{a}} {{demander}} des conseils.
TEST: Mélanie l’a {{transformer}}
TEST: {{A}} vous lire, on ne sait plus que penser de toutes ces histoires


__conf_à_qui_infinitif__
    *WORD  a  qui  @:(?:Y|Os)
        <<- /conf/ morph(\1, ":N", ":Ov") -2>> à                    && Confusion probable : “a” est la conjugaison du verbe “avoir”. Utilisez la préposition “à”.|https://fr.wiktionary.org/wiki/%C3%A0
        <<- /conf/ morph(\1, ":N", ":Ov") -2>> à                    && Confusion probable : “a” est la conjugaison du verbe “avoir”. Utilisez la préposition “à”.|https://fr.wiktionary.org/wiki/%C3%A0

TEST: il n’y avait personne {{a}} qui parler de nos problèmes       ->> à
TEST: des gens {{a}} qui offrir ça                                  ->> à


__conf_à_a__
    [<start>|,|(] a moins [que|qu’]
        <<- /conf/ -2>> à                                           && Confusion probable : « à moins que » pour dire « sauf si ».
        <<- /conf/ -2>> à                                           && Confusion probable : « à moins que » pour dire « sauf si ».

    a part @:(?:M[12]|D|Oo)
        <<- /conf/ -1>> à                                           && Confusion probable : “a” est une forme conjuguée de “avoir”. Pour la préposition, écrivez “à”.
        <<- /conf/ -1>> à                                           && Confusion probable : “a” est une forme conjuguée de “avoir”. Pour la préposition, écrivez “à”.

    face a
        <<- /conf/ not morph(<1, ":(?:D.*:f:s|A.*:[fe]:[si])|>en/")
        -2>> à                                                      && Confusion probable : “a” est une forme conjuguée de “avoir”. Pour la préposition, écrivez “à”.
        -2>> à                                                      && Confusion probable : “a” est une forme conjuguée de “avoir”. Pour la préposition, écrivez “à”.

    par rapport  a  @:(?:D|Oo|M)
        <<- /conf/ -3>> à                                           && Confusion : “a” est une forme conjuguée de “avoir”. Pour la préposition, écrivez “à”.
        <<- /conf/ -3>> à                                           && Confusion : “a” est une forme conjuguée de “avoir”. Pour la préposition, écrivez “à”.

    grâce a
        <<- /conf/ morph(<1, ":[VN]|<start>", "*") -2>> à           && Confusion probable. Locution “grâce à”.|https://fr.wiktionary.org/wiki/gr%C3%A2ce_%C3%A0

    tout a fait
    jusqu’ a
    pas a pas
        <<- /conf/ -2>> à                                           && Confusion : “a” est une forme conjuguée de “avoir”. Pour la préposition, écrivez “à”.
        <<- /conf/ -2>> à                                           && Confusion : “a” est une forme conjuguée de “avoir”. Pour la préposition, écrivez “à”.

    a [moi|toi|eux|elles]
    a [lui|elle|nous|vous]  <end>
        <<- /conf/ not morph(<1, ":Ov|>(?:il|elle)/")
        -1>> à                                                      && Confusion probable : “a” est une forme conjuguée du verbe “avoir”. Pour la préposition, écrivez “à”.
        -1>> à                                                      && Confusion probable : “a” est une forme conjuguée du verbe “avoir”. Pour la préposition, écrivez “à”.

TEST: Je le donne {{a}} toi.
TEST: Personne {{a}} part Tom ne connaît son adresse
TEST: Face {{a}} ces gens, il ne pensait pas pouvoir réussir
TEST: c’est grâce {{a}} nous que vous y êtes parvenus
TEST: par rapport {{a}} eux, je me sens parfois dépassé
TEST: par rapport {{a}} ces hommes-là, nous manquons d’expérience
TEST: elles sont tout {{a}} fait compétentes
TEST: elles se défendront jusqu’{{a}} la mort.
TEST: elles progressent pas {{a}} pas
TEST: Elle a eux pour lui donner des conseils.
TEST: Elle a elle réussi… (Formulation douteuse.)
TEST: Elle n’a elle que ses études pour s’en sortir.
TEST: Il a toi pour l’aider.
TEST: Il t’a toi.


__conf_suite_à__
    [<start>|,|(] suite a [le|la|l’|les|ce|ces|de|d’|des|mon|ton|son|ma|ta|sa|notre|votre|leur|mes|tes|ses|nos|vos|leurs|quelques|certains|certaines|plusieurs|maints|maintes]
        <<- /conf/ -3>> à                                           && Confusion : “a” est une forme conjuguée du verbe “avoir”. Pour la préposition, écrivez “à”.
        <<- /conf/ -3>> à                                           && Confusion : “a” est une forme conjuguée du verbe “avoir”. Pour la préposition, écrivez “à”.

TEST: Suite {{a}} ces folies, nous rentrâmes chez nous.
TEST: il s’avère que, suite {{a}} d’horribles complications, nous renonçâmes.
TEST: cette petite suite a une vue magnifique


__conf_à_bâtons_rompus!7__
8188
8189
8190
8191
8192
8193
8194
8195

8196
8197
8198
8199
8200
8201
8202
8203
8204

8205
8206
8207
8208
8209
8210
8211
8212

8213
8214
8215
8216

8217
8218
8219
8220
8221
8222
8223
8194
8195
8196
8197
8198
8199
8200

8201
8202
8203
8204
8205
8206
8207
8208
8209

8210
8211
8212
8213
8214
8215
8216
8217

8218
8219
8220
8221

8222
8223
8224
8225
8226
8227
8228
8229







-
+








-
+







-
+



-
+







    a voix [haute|basse]
    a vol d’ oiseau
    a vrai dire
    a vue d’ œil
    a y [réfléchir|songer|penser]
    a y regarder [de|d’] plus près
        <<- /conf/ not value(<1, "|l’|n’|il|elle|on|y|") and not before("(?i)n’en +$")
        -1>> à              && Confusion probable : “a” est une forme conjuguée du verbe “avoir”. Pour la préposition, écrivez “à”.|https://fr.wiktionary.org/wiki/%C3%A0
        -1>> à              && Confusion probable : “a” est une forme conjuguée du verbe “avoir”. Pour la préposition, écrivez “à”.|https://fr.wiktionary.org/wiki/%C3%A0

    a [mon|ton|son|notre|votre|leur] [cœur|corps] défendant
    a [mon|ton|son|notre|votre|leur] grand désarroi
    a [mon|ton|son|notre|votre|leur] [avis|côté|détriment|encontre|égard|insu|sujet|tour]
    a [ma|ta|sa|notre|votre|leur] grande [surprise|tristesse]
    a [ma|ta|sa|notre|votre|leur] [connaissance|disposition|guise|portée]
    a [mes|tes|ses|nos|vos|leurs] [dépens|côtés]
        <<- /conf/ not value(<1, "|l’|n’|il|elle|on|y|") and not before("(?i)n’en +$")
        -1>> à              && Confusion probable : “a” est une forme conjuguée du verbe “avoir”. Utilisez la préposition “à”.|https://fr.wiktionary.org/wiki/%C3%A0
        -1>> à              && Confusion probable : “a” est une forme conjuguée du verbe “avoir”. Utilisez la préposition “à”.|https://fr.wiktionary.org/wiki/%C3%A0

    a bonne distance                                                                                [de|d’|des|du|<end>|,]
    a [base|bord|cause|contre-courant|côté|court|défaut|droite|gauche|partir|portée|propos|rebours] [de|d’|des|du|<end>|,]
    a l’ [arrière|écart|égard|extérieur|aune|avant|encontre|insu|instar|intérieur|opposé]           [de|d’|des|du|<end>|,]
    a l’ autre bout                                                                                 [de|d’|des|du|<end>|,]
    a la [portée|suite]                                                                             [de|d’|des|du|<end>|,]
        <<- /conf/ not value(<1, "|l’|n’|il|elle|on|y|") and not before("(?i)n’en +$")
        -1>> à              && Confusion probable : “a” est une forme conjuguée du verbe “avoir”. Pour la préposition, écrivez “à”.|https://fr.wiktionary.org/wiki/%C3%A0
        -1>> à              && Confusion probable : “a” est une forme conjuguée du verbe “avoir”. Pour la préposition, écrivez “à”.|https://fr.wiktionary.org/wiki/%C3%A0

    a caractère @:A.*:[me]:[si]¬:G
        <<- /conf/ not value(<1, "|l’|n’|il|elle|on|y|") and not before("(?i)n’en +$") and morph(<1, ":N")
        -1>> à              && Confusion probable : “a” est une forme conjuguée du verbe “avoir”. Pour la préposition, écrivez “à”.|https://fr.wiktionary.org/wiki/%C3%A0
        -1>> à              && Confusion probable : “a” est une forme conjuguée du verbe “avoir”. Pour la préposition, écrivez “à”.|https://fr.wiktionary.org/wiki/%C3%A0

TEST: Puisqu’on nous méprise, autant y aller {{a}} reculons.                            ->> à
TEST: Les parties {{a}} nouveau divisées ne se réuniront pas avant longtemps.           ->> à
TEST: ils viennent nous attaquer {{a}} tout bout de champ                               ->> à
TEST: On s’y fait, d’une manière ou d’une autre, {{a}} notre corps défendant.           ->> à
TEST: on fait ça {{a}} la va-vite.                                                      ->> à
TEST: elle risque de tout perdre, {{a}} moins qu’un miracle survienne.                  ->> à
8393
8394
8395
8396
8397
8398
8399
8400

8401
8402
8403
8404
8405

8406
8407
8408
8409
8410
8411
8412
8399
8400
8401
8402
8403
8404
8405

8406
8407
8408
8409
8410

8411
8412
8413
8414
8415
8416
8417
8418







-
+




-
+







TEST: Il a mis son talent {{a}} profit.
TEST: Remettre ses compétences {{a}} profit.


__conf_mener_a_bien__
    >mener a bien
        <<- /conf/ morph(<1, ">(?:falloir|aller|pouvoir)/", ">que/")
        -2>> à                              && Confusion probable. Dans cette locution, utilisez la préposition « à ».|https://fr.wiktionary.org/wiki/mener_%C3%A0_bien
        -2>> à                              && Confusion probable. Dans cette locution, utilisez la préposition « à ».|https://fr.wiktionary.org/wiki/mener_%C3%A0_bien

    >mener a bien cette [tâche|entreprise|action|étude|construction|recherche|guerre|conquête]
    >mener a bien ce [projet|travail]
    >mener a bien ces [travaux|projets|tâches|entreprises|actions|études|constructions|recherches|guerres|conquêtes]
        <<- /conf/ -2>> à                   && Confusion probable. Dans cette locution, utilisez la préposition « à ».|https://fr.wiktionary.org/wiki/mener_%C3%A0_bien
        <<- /conf/ -2>> à                   && Confusion probable. Dans cette locution, utilisez la préposition « à ».|https://fr.wiktionary.org/wiki/mener_%C3%A0_bien

TEST: Mener {{a}} bien cette guerre sera plus difficile qu’on le pense.
TEST: Je peux mener {{a}} bien cette opération.
TEST: Cette coalition que tu penses mener a bien l’intention de te trahir.


__conf_à_bout__
8489
8490
8491
8492
8493
8494
8495
8496

8497
8498
8499
8500
8501
8502
8503
8495
8496
8497
8498
8499
8500
8501

8502
8503
8504
8505
8506
8507
8508
8509







-
+







TEST: {{a pré a voire}} monté les marches
TEST: après avoir réussi son examen


# par acquit de conscience
__conf_acquit_acquis__
    par acquis [de|d’] >conscience
        <<- /conf/ -2>> acquit                          && Confusion. Locution « par acquit de conscience ».|https://fr.wiktionary.org/wiki/par_acquit_de_conscience
        <<- /conf/ -2>> acquit                          && Confusion. Locution « par acquit de conscience ».|https://fr.wiktionary.org/wiki/par_acquit_de_conscience
        <<- ~>> *

TEST: par {{acquis}} de conscience
TEST: tout ce qu’on fait par acquit de conscience


# aux alentours
8556
8557
8558
8559
8560
8561
8562
8563

8564
8565
8566
8567

8568
8569
8570
8571
8572
8573
8574
8562
8563
8564
8565
8566
8567
8568

8569
8570
8571
8572

8573
8574
8575
8576
8577
8578
8579
8580







-
+



-
+







TEST: j’en connais plusieurs axés sur leur boulot avant toute autre chose.


# acétique / ascétique
__conf_acétique_ascétique__
    [>acide|>aldéhyde|>anhydride|>bactérie|>éther|>ferment|>fermentation|>indole|>piqûre|>piqure|>silicone|voix] >ascétique
        <<- /conf/ -2>> =\2.replace("scé", "cé").replace("SCÉ", "CÉ")
        && Confusion probable : “ascétique” se rapporte à l’ascétisme. Pour l’acide, écrivez “acétique”.|https://fr.wiktionary.org/wiki/ac%C3%A9tique
        && Confusion probable : “ascétique” se rapporte à l’ascétisme. Pour l’acide, écrivez “acétique”.|https://fr.wiktionary.org/wiki/ac%C3%A9tique

    [>auteur|>démarche|>conduit|>hédonisme|>littérature|>philosophe|>pratique|>privation|>rigueur|>tradition|>théologie|>vie|>idéal] >acétique
        <<- /conf/ -2>> =\2.replace("cé", "scé").replace("CÉ", "SCÉ")
        && Confusion probable : “acétique” est le terme utilisé pour désigner un acide. Pour évoquer l’ascétisme, écrivez “ascétique”.|https://fr.wiktionary.org/wiki/asc%C3%A9tique
        && Confusion probable : “acétique” est le terme utilisé pour désigner un acide. Pour évoquer l’ascétisme, écrivez “ascétique”.|https://fr.wiktionary.org/wiki/asc%C3%A9tique

TEST: un acide {{ascétique}}.
TEST: Mener une vie {{acétique}}.


# âge / age
__conf_âge_age__
8725
8726
8727
8728
8729
8730
8731
8732

8733
8734
8735

8736
8737
8738
8739
8740
8741
8742
8743
8744
8745

8746
8747
8748
8749
8750
8751
8752
8731
8732
8733
8734
8735
8736
8737

8738
8739
8740

8741
8742
8743
8744
8745
8746
8747
8748
8749
8750

8751
8752
8753
8754
8755
8756
8757
8758







-
+


-
+









-
+







TEST: combien de nouveaux arrivés


# au temps / autant
__conf_au_temps_pour_moi__
    [<start>|,|(]  au  [tant|tan]  pour moi
    [<start>|,|(]  aux [tant|tans]  pour moi
        <<- /conf/ -2:3>> au temps                      && Pour reconnaître son erreur, « au temps pour moi » est l’expression recommandée par l’Académie française.
        <<- /conf/ -2:3>> au temps                      && Pour reconnaître son erreur, « au temps pour moi » est l’expression recommandée par l’Académie française.

    [<start>|,|(]  [autant|>autan]  pour moi
        <<- /conf/ -2>> au temps                        && Pour reconnaître son erreur, « au temps pour moi » est l’expression recommandée par l’Académie française.
        <<- /conf/ -2>> au temps                        && Pour reconnaître son erreur, « au temps pour moi » est l’expression recommandée par l’Académie française.

TEST: Je me suis trompé. {{Autant}} pour moi.
TEST: Je me suis trompé. {{Au tan}} pour moi.


__conf_autant_que_faire_se_peut!7__
    !! autant que faire se peut ¡¡
    [au|aux] [temps|tant|>tan]  [que|qu’] [faire|ferre|ferres|>fer] [se|ce] [peu|peut|peux]
    [>autan|autant]             [que|qu’] [faire|ferre|ferres|>fer] [se|ce] [peu|peut|peux]
        <<- /conf/ ->> autant que faire se peut         && Locution adverbiale : « autant que faire se peut ».|https://fr.wiktionary.org/wiki/autant_que_faire_se_peut
        <<- /conf/ ->> autant que faire se peut         && Locution adverbiale : « autant que faire se peut ».|https://fr.wiktionary.org/wiki/autant_que_faire_se_peut

TEST: on va y arriver, {{au temps que faire se peu}}…
TEST: autant que faire se peut, il faut éviter la confusion entre ces deux discours.


# avant / avent
__conf_avant_avent__
8787
8788
8789
8790
8791
8792
8793
8794

8795
8796
8797
8798

8799
8800
8801
8802
8803
8804
8805

8806
8807
8808

8809
8810
8811
8812
8813
8814
8815
8816

8817
8818
8819
8820
8821
8822
8823
8793
8794
8795
8796
8797
8798
8799

8800
8801
8802
8803

8804
8805
8806
8807
8808
8809
8810

8811
8812
8813

8814
8815
8816
8817
8818
8819
8820
8821

8822
8823
8824
8825
8826
8827
8828
8829







-
+



-
+






-
+


-
+







-
+







TEST: le branle-bas de combat commençait, mais trop tard
TEST: {{branle bat de con bat}}


# ça / çà / sa
__conf_ça_çà_sa!7__
    ça  @:[NAQ].*:f¬:(?:G|P|[123][sp])|>seul/
        <<- /conf/ not morph(<1, ">(?:appeler|considérer|trouver)/") -1>> sa                        && Confusion : “sa” (sa maison, sa passion) ≠ “ça” (ça vient, ça heurte).
        <<- /conf/ not morph(<1, ">(?:appeler|considérer|trouver)/") -1>> sa                        && Confusion : “sa” (sa maison, sa passion) ≠ “ça” (ça vient, ça heurte).

    sa  @:G¬>(?:tr(?:ès|op)|peu|bien|plus|moins|toute|presque|non)/|:[NAQ].*:f
        <<- /conf/ not (value(\2, "|ou|") and value(>1, "|son|ses|")) and morph(\1, ":D")
        -1>> ça                                                                                     && Confusion : “sa” (sa maison, sa passion) ≠ “ça” (ça vient, ça heurte).
        -1>> ça                                                                                     && Confusion : “sa” (sa maison, sa passion) ≠ “ça” (ça vient, ça heurte).

    sa  $:P¬:A
        <<- /conf/ \1 != "SA" -1>> ça|se                && Confusion probable : “\2” est un participe présent. Soit vous confondez “ça” (équivalent à cela ou ceci) et “sa” (déterminant féminin), soit il faut écrire “se” (exemples : untel se considérant légitime, se prenant en main, se trouvant assez capable…), soit “\2” devrait être un nom ou adjectif féminin.

    çà
        <<- /conf/ not value(<1, "|oh|ah|") and not after("^ +et là")
        ->> ça                                          && Confusion : « çà » ne s’emploie plus guère que dans l’expression « çà et là ».|https://fr.wiktionary.org/wiki/%C3%A7%C3%A0
        ->> ça                                          && Confusion : « çà » ne s’emploie plus guère que dans l’expression « çà et là ».|https://fr.wiktionary.org/wiki/%C3%A7%C3%A0

    sa  [<end>|,|)]
        <<- /conf/ \1 != "SA" -1>> ça                   && Confusion probable : “sa” est un déterminant féminin singulier. Pour l’équivalent de “cela” ou “ceci”, écrivez “ça”.
        <<- /conf/ \1 != "SA" -1>> ça                   && Confusion probable : “sa” est un déterminant féminin singulier. Pour l’équivalent de “cela” ou “ceci”, écrivez “ça”.

    [c’|ç’] [à|a]
        <<- /conf/ space_after(\1, 0, 0) and not (value(\2, "|a|") and value(>1, "|été|")) >>>
        <<- /conf/ value(>1, "|été|") -2>> a            && Confusion. Pour le verbe avoir à la 3ᵉ personne du singulier, écrivez “a”.
        <<- /conf/ __else__ ->> ça|sa                   && Confusion. Si vous voulez dire “cela”, écrivez “ça”. Pour le déterminant possessif, écrivez “sa”.

    ça et là
        <<- /conf/ not morph(<1, ":R") ->> çà et là     && Confusion : « ça » équivaut à « cela ». Dans l’expression « çà et là », « çà » équivaut à « ici ».
        <<- /conf/ not morph(<1, ":R") ->> çà et là     && Confusion : « ça » équivaut à « cela ». Dans l’expression « çà et là », « çà » équivaut à « ici ».

TEST: Je prends {{sa}}…
TEST: {{ça}} patrie, il la détestait
TEST: et {{sa}} par deux fois
TEST: Il trouva de la nourriture {{ça et là}}.                                  ->> çà et là
TEST: c’est {{çà}}                                                              ->> ça
TEST: Elle parle comme {{ça}} mère.                                             ->> sa
8896
8897
8898
8899
8900
8901
8902
8903

8904
8905
8906
8907
8908
8909
8910
8902
8903
8904
8905
8906
8907
8908

8909
8910
8911
8912
8913
8914
8915
8916







-
+







# ce / se / ceux
__conf_ce_ceux_se!6__
    pour se faire ,
    pour se faire @:G¬:[AYD]
        <<- /conf/ -2>> ce                              && Confusion probable. Dans cette locution, il faut employer “ce”.|https://fr.wiktionary.org/wiki/pour_ce_faire

    se [que|qu’|qui|dont|malgré|pourquoi|avec|pour|par]
        <<- /conf/ -1>> ce                              && Confusion. Exemples : ce bâtiment, se perdre.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=2440
        <<- /conf/ -1>> ce                              && Confusion. Exemples : ce bâtiment, se perdre.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=2440

    ceux  ?[ne|n’]¿  @:V0.*:[123][sp]¬:P|>a/
        <<- /conf/ -1>> ce                              && Confusion.|http://www.intellego.fr/soutien-scolaire-6eme/aide-scolaire-francais/ce-ceux-ou-se/3829

    se [ne|n’] [>être|>pouvoir|>devoir]
        <<- /conf/ not \1.isupper() -1>> ce             && Confusion probable.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=2440

8942
8943
8944
8945
8946
8947
8948
8949

8950
8951
8952
8953

8954
8955
8956

8957
8958
8959
8960
8961
8962
8963
8964
8965

8966
8967
8968

8969
8970
8971
8972
8973
8974
8975
8948
8949
8950
8951
8952
8953
8954

8955
8956
8957
8958

8959
8960
8961

8962
8963
8964
8965
8966
8967
8968
8969
8970

8971
8972
8973

8974
8975
8976
8977
8978
8979
8980
8981







-
+



-
+


-
+








-
+


-
+







TEST: la réduction de ma liberté intellectuelle et celle de ceux autour de moi
TEST: ceux autour de vous ne sont pas ce que vous croyez.


__conf_se_ceux_ce!6__
    ce  @:V[123].*:(?:Y|[123][sp])¬:[NAGM]|>(?:devoir|pouvoir|sembler|vouloir)/
        <<- /conf/ not \1.isupper() and \2.islower() and not (value(<1, "|pour|") and value(\2, "|faire|"))
        -1>> se                                         && Confusion : « \2 » est un verbe. Exemples : ce bâtiment, se perdre.
        -1>> se                                         && Confusion : « \2 » est un verbe. Exemples : ce bâtiment, se perdre.

    ce  [/-il|/-ils|/-elle|/-elles|/-iel|/-iels|/-on]
        <<- /conf/ not \1.isupper() and \2.islower()
        -1>> se                                         && Confusion : « \2 » est un verbe. Exemples : ce bâtiment, se perdre.
        -1>> se                                         && Confusion : « \2 » est un verbe. Exemples : ce bâtiment, se perdre.

    [ce|c’] qui ce passe
        <<- /conf/ -3>> se                              && Confusion : « \4 » est un verbe. Exemples : ce bâtiment, se perdre.
        <<- /conf/ -3>> se                              && Confusion : « \4 » est un verbe. Exemples : ce bâtiment, se perdre.

    [ne|n’] ce
        <<- /conf/ -2>> se                              && Confusion. Ce chien, ce chat… Se demander, se croire…

    [ne|n’] [c’|ç’]
        <<- /conf/ -2>> s’                              && Confusion. Ce chien, ce chat… Se demander, se croire…

    qui  ce  @:V¬:[NAQ].*:[me]
        <<- /conf/ -2>> se                              && Confusion probable. Exemples : ce bâtiment, se perdre.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=2440
        <<- /conf/ -2>> se                              && Confusion probable. Exemples : ce bâtiment, se perdre.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=2440

    [ça|cela|ceci] >finir <> par ce savoir
        <<- /conf/ --2>> se                             && Confusion probable. Ici, “savoir” est un verbe. Exemples : ce bâtiment, se perdre.
        <<- /conf/ --2>> se                             && Confusion probable. Ici, “savoir” est un verbe. Exemples : ce bâtiment, se perdre.

TEST: ça {{ce}} prend la tête pour un rien, c’est de la racaille.
TEST: {{Ce}} promener est relaxant.
TEST: {{ce}} prennent-ils pour des experts ?
TEST: {{Ce}} serait-elle compromise ?
TEST: ce qui {{ce}} passe, c’est que c’est une catastrophe.
TEST: il ne {{ce}} compte pas parmi eux
9005
9006
9007
9008
9009
9010
9011
9012

9013
9014
9015

9016
9017
9018
9019
9020
9021
9022
9011
9012
9013
9014
9015
9016
9017

9018
9019
9020

9021
9022
9023
9024
9025
9026
9027
9028







-
+


-
+







    [ses|ces] [à|au-dessus|avec|au|aux|comme|envers|contre|derrière|devant|par|pour|sans|sur]  [l’|d’]
    [ses|ces] [à|au-dessus|avec|au|aux|comme|envers|contre|derrière|devant|par|pour|sans|sur]  {pronom_obj}
    [ses|ces] @:D¬:[WA]
    [ses|ces] [que|qu’]
    [ses|ces] [l’|d’]
    [ses|ces] {pronom_obj}
    [ses|ces] @:[WX]¬:N:.*:[pi]  @:[RD]|>pire/
        <<- /conf/ not \1.isupper() and not value(\2, "|quelques|") -1>> c’est      && Confusion probable. Écrivez « c’est » pour dire « ceci est… ».
        <<- /conf/ not \1.isupper() and not value(\2, "|quelques|") -1>> c’est      && Confusion probable. Écrivez « c’est » pour dire « ceci est… ».

    c’ est  @:N.*:p¬:(?:G|W|M|A.*:[si])
        <<- /conf/ -1:2>> ces|ses                                                   && Confusion. Exemples : c’est facile ; ces chats (désignation) ; ses chats (possession)…
        <<- /conf/ -1:2>> ces|ses                                                   && Confusion. Exemples : c’est facile ; ces chats (désignation) ; ses chats (possession)…

    ses  /-là
        <<- /conf/ -1>> ces                 && Confusion : “ses” est un déterminant possessif ; si vous voulez désigner des éléments en particulier, vous devriez utiliser le déterminant démonstratif “ces”.

    c’ est n’ [est|était]
    c’ est ne [serait|sera]
        <<- /conf/ not value(<1, "|que|qu’|") -1:2>> ce                     && Confusion probable.
9117
9118
9119
9120
9121
9122
9123
9124

9125
9126
9127
9128
9129
9130
9131
9123
9124
9125
9126
9127
9128
9129

9130
9131
9132
9133
9134
9135
9136
9137







-
+









# collet monté
__conf_collet_monté__
    ~^[cC]oll(?:e[rt]s?|ée?s?)-mont(?:er|ée?s?)$
    [collé+ses|coller|collets] [>montée|monté|montés|monter]
    collet [>montée|montés|monter]
        <<- /conf/ ->> collet monté                             && « Être collet monté » : dans cette locution, « collet monté » est invariable.
        <<- /conf/ ->> collet monté                             && « Être collet monté » : dans cette locution, « collet monté » est invariable.

TEST: Elles sont tellement {{collets montées}} !


# compte / comte / conte
__conf_compte__
    à bon [>conte|comte+s]
9313
9314
9315
9316
9317
9318
9319
9320

9321
9322
9323

9324
9325
9326

9327
9328
9329
9330
9331
9332
9333
9319
9320
9321
9322
9323
9324
9325

9326
9327
9328

9329
9330
9331

9332
9333
9334
9335
9336
9337
9338
9339







-
+


-
+


-
+







TEST: Après {{coût}} on a compris notre erreur.                                     ->> coup
TEST: sous le {{cout}} de la colère                                                 ->> coup


# cour / cours / court
__conf_cour_cours_court_courre__
    à [cour+s|courre+s|courts] [de|d’]
        <<- /conf/ -2>> court                               && Confusion probable : écrivez “à court de” pour “en manque de”.|https://fr.wiktionary.org/wiki/%C3%A0_court_de
        <<- /conf/ -2>> court                               && Confusion probable : écrivez “à court de” pour “en manque de”.|https://fr.wiktionary.org/wiki/%C3%A0_court_de

    [à|a] [cour+s|courre+s|courts] >terme
        <<- /conf/ ->> à court terme                        && Confusion. Locution “à court terme”. Une cour… Un cours… Adjectif : court(e).|https://fr.wiktionary.org/wiki/%C3%A0_court_terme
        <<- /conf/ ->> à court terme                        && Confusion. Locution “à court terme”. Une cour… Un cours… Adjectif : court·e.|https://fr.wiktionary.org/wiki/%C3%A0_court_terme

    au [cour|court+s|courre+s] [de|d’|des|du]
        <<- /conf/ -2>> cours                               && Confusion. Locution “au cours de”. Une cour… Un cours… Adjectif : court(e).|https://fr.wiktionary.org/wiki/au_cours_de
        <<- /conf/ -2>> cours                               && Confusion. Locution “au cours de”. Une cour… Un cours… Adjectif : court·e.|https://fr.wiktionary.org/wiki/au_cours_de

    en cour [fédérale|martiale|suprême]
    en cour [de|d’] [cassation|justice]
    en cour d’ >assise
        <<- !1:2>>

    au long [court|cour|courre]
9446
9447
9448
9449
9450
9451
9452
9453

9454
9455
9456
9457

9458
9459
9460
9461

9462
9463
9464

9465
9466
9467
9468
9469
9470
9471
9452
9453
9454
9455
9456
9457
9458

9459
9460
9461
9462

9463
9464
9465
9466

9467
9468
9469

9470
9471
9472
9473
9474
9475
9476
9477







-
+



-
+



-
+


-
+








TEST: à la {{datte}} du 25 janvier


# davantage / d’avantage
__conf_davantage_d_avantages__
    [peu|plein|beaucoup|trop|plus|moins|assez|suffisamment|tellement|>obtention|>régime]  davantage
        <<- /conf/ --1>> d’avantages                                                && Confusion probable : “davantage” signifie “plus” ; un “avantage” signifie “faveur”, “bénéfice”, “profit”…
        <<- /conf/ --1>> d’avantages                                                && Confusion probable : “davantage” signifie “plus” ; un “avantage” signifie “faveur”, “bénéfice”, “profit”…

    $:V  d’ >avantage
        <<- /conf/ not morph(\1, ":Q|>(?:profiter|bénéficier|nombre|tant|sorte|type)/") and not morph(>1, ">(?:financi[eè]re?|pécuni(?:er|aire)|sociaux)s?/")
        -2:3>> davantage                                                            && Confusion probable : “davantage” signifie “plus” ; un “avantage” signifie “faveur”, “bénéfice”, “profit”…
        -2:3>> davantage                                                            && Confusion probable : “davantage” signifie “plus” ; un “avantage” signifie “faveur”, “bénéfice”, “profit”…

    [/-je|/-tu|/-il|/-on|/-elle|/-nous|/-vous|/-ils|/-elles|/-iel|/-iels]  d’  >avantage
        <<- /conf/ not morphVC(\1, ">(?:profiter|bénéficier)/") and not morph(>1, ">(?:financière|pécuni(?:er|aire)|sociale)/")
        -2:3>> davantage                                                            && Confusion probable : “davantage” signifie “plus” ; un “avantage” signifie “faveur”, “bénéfice”, “profit”…
        -2:3>> davantage                                                            && Confusion probable : “davantage” signifie “plus” ; un “avantage” signifie “faveur”, “bénéfice”, “profit”…

    d’ >avantage [de|d’]
        <<- /conf/ -1:2>> davantage                                                 && Confusion possible : “davantage” signifie “plus” ; un “avantage” signifie “faveur”, “bénéfice”, “profit”…
        <<- /conf/ -1:2>> davantage                                                 && Confusion possible : “davantage” signifie “plus” ; un “avantage” signifie “faveur”, “bénéfice”, “profit”…

TEST: ils ont peu {{davantage}} à vivre ici.
TEST: ils sont {{d’avantages}} perdus que les autres.
TEST: Ils s’exerceront {{d’avantages}}.
TEST: {{d’avantage}} de monde de jour en jour
TEST: Viendras-tu {{d’avantage}} à la maison
TEST: il en faut {{d’avantages}}.
9533
9534
9535
9536
9537
9538
9539
9540

9541
9542
9543
9544
9545
9546
9547
9539
9540
9541
9542
9543
9544
9545

9546
9547
9548
9549
9550
9551
9552
9553







-
+







    des [que|qu’|lors|après|maintenant|toujours|midi|minuit|aujourd’hui|hier|demain|janvier|février|mars|avril|mai|juin|juillet|août|aout|septembre|octobre|novembre|décembre|vendémiaire|brumaire|frimaire|nivôse|pluviôse|ventôse|germinal|floréal|prairial|messidor|thermidor|fructidor|lundi|mardi|mercredi|jeudi|vendredi|samedi|dimanche|Pâques|Noël]
    des [un|une|le|la|l’|les|mon|ton|son|ma|ta|sa|mes|tes|ses|notre|votre|nos|vos|leur|leurs|ce|cet|cette|ces] @:[NA]
    des [à|a] présent
        <<- /conf/ not value(<1, "|un|une|les|ces|mes|tes|ses|nos|vos|leurs|quelques|plusieurs|")
        -1>> dès                                                                                    && Confusion probable. Pour la préposition, écrivez “dès”.|https://fr.wiktionary.org/wiki/pr%C3%A8s

    des [ces|des|les|mes|ses|tes|nos|vos|ce|cet|cette|ma|ta|sa|mon|je|tu|il|ils|nous|vous|on|ceux|celles|celui|celle]
        <<- /conf/ not \1.isupper() and not \2.isupper() -1>> de|dès                                && Incohérence : les mots “\1” et “\2” ne devraient pas se succéder.
        <<- /conf/ not \1.isupper() and not \2.isupper() -1>> de|dès                                && Incohérence : les mots “\1” et “\2” ne devraient pas se succéder.
        <<- /conf/ __also__ and hasSimil(\2, ":[NA].*:[pi]") -2>> =suggSimil(\2, ":[NA].*:[pi]", True)      && Confusion probable. Pour la préposition, écrivez “dès” ou “de”.

    des ~^\d{2,5}$  [<end>|,|)]
    des ~^\d{2,5}$  @:¬:[NA].*:[ip]|>(?:à|et|ou)/
        <<- /conf/ not value(<1, "|%|") and not morph(<1, ":B|>(?:pourcent|barre|seuil|aucun|plusieurs|certaine?s|une?)/")
        -1>> dès && Confusion probable. Pour la préposition, écrivez “dès”.|https://fr.wiktionary.org/wiki/pr%C3%A8s

9650
9651
9652
9653
9654
9655
9656
9657

9658
9659
9660

9661
9662
9663
9664

9665
9666
9667
9668

9669
9670
9671

9672
9673
9674
9675

9676
9677
9678
9679

9680
9681
9682
9683

9684
9685
9686
9687
9688
9689
9690
9656
9657
9658
9659
9660
9661
9662

9663
9664
9665

9666
9667
9668
9669

9670
9671
9672
9673

9674
9675
9676

9677
9678
9679
9680

9681
9682
9683
9684

9685
9686
9687
9688

9689
9690
9691
9692
9693
9694
9695
9696







-
+


-
+



-
+



-
+


-
+



-
+



-
+



-
+







TEST: Le {{pronostique}} n’est pas bon.
TEST: ils font ça en {{publique}}.


# différend / différent
__conf_différent_différend__
    >différend
        <<- /conf/ morph(<1, ":W") ->> =\1.replace("nd", "nt").replace("ND", "NT")  && Confusion probable : “un différend” est un désaccord. Pour l’adjectif qualifiant une différence, écrivez “différent”.
        <<- /conf/ morph(<1, ":W") ->> =\1.replace("nd", "nt").replace("ND", "NT")  && Confusion probable : “un différend” est un désaccord. Pour l’adjectif qualifiant une différence, écrivez “différent”.

    >différend @:N¬*
        <<- /conf/ -1>> =\1.replace("nd", "nt").replace("ND", "NT")     && Confusion probable : “un différend” est un désaccord. Pour l’adjectif qualifiant une différence, écrivez “différent”.
        <<- /conf/ -1>> =\1.replace("nd", "nt").replace("ND", "NT")     && Confusion probable : “un différend” est un désaccord. Pour l’adjectif qualifiant une différence, écrivez “différent”.

    [mon|notre|votre|leur]  différent  @:[GVX]¬:[NAQ]
    [mon|notre|votre|leur]  différent  <end>
        <<- /conf/ -2>> différend                                       && Confusion probable : « différent » est un adjectif, « différend » est le nom qui signifie désaccord.
        <<- /conf/ -2>> différend                                       && Confusion probable : « différent » est un adjectif, « différend » est le nom qui signifie désaccord.

    [ton|son]  différent  @:[GVX]¬:[NAQ]
    [ton|son]  différent  <end>
        <<- /conf/ not morph(<1, ":D") -2>> différend                   && Confusion probable : « différent » est un adjectif, « différend » est le nom qui signifie désaccord.
        <<- /conf/ not morph(<1, ":D") -2>> différend                   && Confusion probable : « différent » est un adjectif, « différend » est le nom qui signifie désaccord.

    un  différent  @:[GV]¬:[NAQ]
        <<- /conf/ -2>> différend                                       && Confusion probable : « différent » est un adjectif, « différend » est le nom qui signifie désaccord.
        <<- /conf/ -2>> différend                                       && Confusion probable : « différent » est un adjectif, « différend » est le nom qui signifie désaccord.

    [mes|tes|ses|nos|vos|leurs]  différents  @:[GV]¬:[NAQ]
    [mes|tes|ses|nos|vos|leurs]  différents  <end>
        <<- /conf/ -2>> différends                                      && Confusion probable : « différent » est un adjectif, « différend » est le nom qui signifie désaccord.
        <<- /conf/ -2>> différends                                      && Confusion probable : « différent » est un adjectif, « différend » est le nom qui signifie désaccord.

    [les|des]  différents  @:G¬:[NAQ]
    les  différents  <end>
        <<- /conf/ -2>> différends                                      && Confusion : « différent » est un adjectif, « différend » est le nom qui signifie désaccord.
        <<- /conf/ -2>> différends                                      && Confusion : « différent » est un adjectif, « différend » est le nom qui signifie désaccord.

    >être  ?[pas|si]¿   >différend
    >être  pas  si      >différend
        <<- /conf/ --1>> =\-1.replace("nd", "nt").replace("ND", "NT")   && Confusion : « différent » est un adjectif, « différend » est le nom qui signifie désaccord.
        <<- /conf/ --1>> =\-1.replace("nd", "nt").replace("ND", "NT")   && Confusion : « différent » est un adjectif, « différend » est le nom qui signifie désaccord.

TEST: Très {{différends}} de nous, ces gens-là !
TEST: {{différends}} hommes                                             ->> différents
TEST: Régler votre {{différent}}.
TEST: Notre {{différent}} avec eux perdure.
TEST: son {{différent}} avec lui n’en finit pas.
TEST: Un {{différent}} peut toujours se résoudre.
9698
9699
9700
9701
9702
9703
9704
9705

9706
9707
9708
9709
9710
9711
9712
9704
9705
9706
9707
9708
9709
9710

9711
9712
9713
9714
9715
9716
9717
9718







-
+







TEST: dans ses différents ouvrages
TEST: dans ses différents postes gouvernementaux


# dites / dîtes
__conf_dites_dîtes__
    *WORD  dîtes  @:A¬:G
        <<- /conf/ morph(\1, ":[NA].*:[fe]:[pi]", ":G") -2>> dites      && Confusion probable : “dîtes” est une forme verbale de dire au subjonctif. Pour l’ajectif, écrivez “dites”.
        <<- /conf/ morph(\1, ":[NA].*:[fe]:[pi]", ":G") -2>> dites      && Confusion probable : “dîtes” est une forme verbale de dire au subjonctif. Pour l’ajectif, écrivez “dites”.

TEST: Des armes {{dîtes}} létales.                                          ->> dites
TEST: usage débridé des armes dites létales
TEST: Vous dîtes “idiotes”, je dis “originales”.


# données / donnés
9890
9891
9892
9893
9894
9895
9896
9897

9898
9899
9900

9901
9902
9903

9904
9905
9906
9907

9908
9909
9910
9911
9912
9913
9914
9915
9916
9917
9918
9919
9920

9921
9922
9923
9924
9925
9926
9927
9896
9897
9898
9899
9900
9901
9902

9903
9904
9905

9906
9907
9908

9909
9910
9911
9912

9913
9914
9915
9916
9917
9918
9919
9920
9921
9922
9923
9924
9925

9926
9927
9928
9929
9930
9931
9932
9933







-
+


-
+


-
+



-
+












-
+







TEST: étant {{donnait}} qu’il ne sait pas de quoi il parle, ignorons-le.        ->> donné


# évidement / évidemment
__conf_évidemment_évidement__
    [/_VCint_|/_VCimp_]  ?[pas|plus|jamais|guère]¿  évidement
    [pas|plus] évidement
        <<- /conf/ --1>> évidemment                         && Confusion probable : l’évidement est l’action de vider quelque chose. L’adverbe s’écrit “évidemment”.|https://fr.wiktionary.org/wiki/évidemment
        <<- /conf/ --1>> évidemment                         && Confusion probable : l’évidement est l’action de vider quelque chose. L’adverbe s’écrit “évidemment”.|https://fr.wiktionary.org/wiki/évidemment

    [par|pour|sans] évidement [$:Y|ne|n’|me|m’|te|t’|se|s’]
        <<- /conf/ -2>> évidemment                          && Confusion probable : l’évidement est l’action de vider quelque chose. L’adverbe s’écrit “évidemment”.|https://fr.wiktionary.org/wiki/évidemment
        <<- /conf/ -2>> évidemment                          && Confusion probable : l’évidement est l’action de vider quelque chose. L’adverbe s’écrit “évidemment”.|https://fr.wiktionary.org/wiki/évidemment

    évidement
        <<- /conf/ morph(<1, ":V", ":A") ->> évidemment     && Confusion probable : l’évidement est l’action de vider quelque chose. L’adverbe s’écrit “évidemment”.|https://fr.wiktionary.org/wiki/évidemment
        <<- /conf/ morph(<1, ":V", ":A") ->> évidemment     && Confusion probable : l’évidement est l’action de vider quelque chose. L’adverbe s’écrit “évidemment”.|https://fr.wiktionary.org/wiki/évidemment

    [un|l’|cet]  évidemment  [<end>|,|)]
    [un|l’|cet]  évidemment  $:¬:A
        <<- /conf/ -2>> évidement                           && Confusion probable : “évidemment” est un adverbe. L’action de “vider” s’écrit “évidement”.|https://fr.wiktionary.org/wiki/évidement
        <<- /conf/ -2>> évidement                           && Confusion probable : “évidemment” est un adverbe. L’action de “vider” s’écrit “évidement”.|https://fr.wiktionary.org/wiki/évidement

TEST: Donne-moi {{évidement}} ça.
TEST: Elle sera {{évidement}} déçue de cette minable prestation de sa part.
TEST: pour {{évidement}} réussir
TEST: Un homme pas {{évidement}} intelligible.
TEST: L’{{évidemment}} du sanglier ne sera pas si facile.


# en fait
__conf_en_fait__
    en [faite|>faîte]
        <<- /conf/ not value(<1, "|n’|") and not tag_before(\1, "_2p_")
        ->> en fait                                         && Confusion probable : « en fait » qui signifie « en réalité ». Le faîte est la partie la plus élevée d’un bâtiment.
        ->> en fait                                         && Confusion probable : « en fait » qui signifie « en réalité ». Le faîte est la partie la plus élevée d’un bâtiment.

TEST: {{en faite}}, on en voit partout, ça grouille.
TEST: ils sont {{en faîtes}} partis à la montagne.
TEST: Aujourd’hui, n’en faites pas trop.


# faim / fin
9960
9961
9962
9963
9964
9965
9966
9967

9968
9969
9970
9971
9972
9973
9974
9966
9967
9968
9969
9970
9971
9972

9973
9974
9975
9976
9977
9978
9979
9980







-
+









# faut / faux
__conf_faux_faut__
    faut  @:¬(?:Y|Oo|X|M|W)|>qu[e’]/
    faut  <end>
        <<- /conf/ not value(<1, "|il|ils|ne|n’|en|y|leur|lui|nous|vous|me|te|se|m’|t’|s’|la|le|les|qui|<start>|,|")
        -1>> faux                                               && Confusion probable : “faut” est une conjugaison de “falloir”. Pour indiquer la fausseté d’une chose, écrivez “faux”.
        -1>> faux                                               && Confusion probable : “faut” est une conjugaison de “falloir”. Pour indiquer la fausseté d’une chose, écrivez “faux”.

TEST: un homme {{faut}}
TEST: c’est {{faut}}
TEST: il m’en faut plus.
TEST: il faut réussir.
TEST: bien sûr, faut y arriver.
TEST: il ne faut pas se leurrer.
10065
10066
10067
10068
10069
10070
10071
10072

10073
10074
10075
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
10071
10072
10073
10074
10075
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







-
+

















-
+


-
+







TEST: le flan est une pâtisserie.
TEST: versez du caramel sur le flan.


# en son for intérieur / fort
__conf_for_intérieur__
    [en|dans] [mon|ton|son|leur|notre|votre] [fort|forts|fore|fores|fors] [>intérieur]
        <<- /conf/ -3:4>> for intérieur                                     && Confusion : “for” vient du latin “forum” et le “for intérieur” évoque la conscience individuelle.
        <<- /conf/ -3:4>> for intérieur                                     && Confusion : “for” vient du latin “forum” et le “for intérieur” évoque la conscience individuelle.

TEST: En mon {{fort intérieur}}, je le crois.
TEST: Dans son {{fort intérieur}}, je le crois.


# fausse / fosse
__conf_fosse_fausse__
    [fausse+s] [Calypso|Nansei-Shoto]
    [fausse+s] de [conservation|subduction|Bougainville|Cedros|Java|Puerto|Ryukyu|Tuscarora]
    [fausse+s] des [musiciens|Aléoutiennes|Kermadec|Kouriles|Mariannes|Tonga|Philippines]
    [fausse+s] des îles [aléoutiennes|caïmans|Kouriles|Tonga]
    [fausse+s] du [Chili|Japon|Pérou|Pérou-Chili]
    [fausse+s] d’ [aisance|orchestre|Amérique|Atacama|Izu-Bonin|Izu-Ogasawara]
    [fausse+s] de l’ orchestre
    [fausse+s] à [>compost|>déchet|>lisier|>fumier|>plongeon|>plongée|>purin|>merde|>ordure]
    [fausse+s] [au|aux|des] [>caïman|>crocodile|>charognard|>lion|>loup|>louve|ours|>serpent|>cobra|>diable]
    [fausse+s] [>abyssal|>canin|>béant|>commun|>océanique|sous-marine+s|>septique|>immense|>profond|>nasal|>iliaque|>temporal]
        <<- /conf/ -1>> =\1.replace("au", "o").replace("AU", "O")           && Confusion probable : “fausse” est l’adjectif féminin de “faux”. Pour évoquer une profondeur, écrivez “fosse”.
        <<- /conf/ -1>> =\1.replace("au", "o").replace("AU", "O")           && Confusion probable : “fausse” est l’adjectif féminin de “faux”. Pour évoquer une profondeur, écrivez “fosse”.

    au bord de la fausse
        <<- /conf/ -5>> fosse                                               && Confusion probable : “fausse” est l’adjectif féminin de “faux”. Pour évoquer une profondeur, écrivez “fosse”.
        <<- /conf/ -5>> fosse                                               && Confusion probable : “fausse” est l’adjectif féminin de “faux”. Pour évoquer une profondeur, écrivez “fosse”.

    >fosse [>alerte|>déclaration]
        <<- /conf/ -1>> =\1.replace("o", "au").replace("O", "AU")
        && Confusion probable : une fosse est une dépression ou une cavité dans le sol. Pour évoquer une falsification ou une erreur, écrivez “fausse”.|https://fr.wiktionary.org/wiki/fausse

TEST: la {{fausse}} Calypso.
TEST: La {{fausse}} des Mariannes.
10108
10109
10110
10111
10112
10113
10114
10115

10116
10117
10118

10119
10120
10121

10122
10123
10124
10125

10126
10127
10128
10129
10130
10131
10132
10133
10134
10135
10136
10137
10138
10139
10140
10141
10142
10143
10144
10145

10146
10147
10148
10149
10150
10151
10152
10114
10115
10116
10117
10118
10119
10120

10121
10122
10123

10124
10125
10126

10127
10128
10129
10130

10131
10132
10133
10134
10135
10136
10137
10138
10139
10140
10141
10142
10143
10144
10145
10146
10147
10148
10149
10150

10151
10152
10153
10154
10155
10156
10157
10158







-
+


-
+


-
+



-
+



















-
+







TEST: encore une {{fosse}} alerte


# forcement / forcément
__conf_forcément_forcement__
    [/_VCint_|/_VCimp_]  ?[pas|plus|jamais|guère]¿  forcement
    [pas|plus] forcement
        <<- /conf/ --1>> forcément                          && Confusion probable : le forcement est l’action de forcer quelque chose. L’adverbe s’écrit “forcément”.|https://fr.wiktionary.org/wiki/forc%C3%A9ment
        <<- /conf/ --1>> forcément                          && Confusion probable : le forcement est l’action de forcer quelque chose. L’adverbe s’écrit “forcément”.|https://fr.wiktionary.org/wiki/forc%C3%A9ment

    [par|pour|sans] forcement [$:Y|ne|n’|me|m’|te|t’|se|s’]
        <<- /conf/ -2>> forcément                           && Confusion probable : le forcement est l’action de forcer quelque chose. L’adverbe s’écrit “forcément”.|https://fr.wiktionary.org/wiki/forc%C3%A9ment
        <<- /conf/ -2>> forcément                           && Confusion probable : le forcement est l’action de forcer quelque chose. L’adverbe s’écrit “forcément”.|https://fr.wiktionary.org/wiki/forc%C3%A9ment

    forcement
        <<- /conf/ morph(<1, ":V", ":A") ->> forcément      && Confusion probable : le forcement est l’action de forcer quelque chose. L’adverbe s’écrit “forcément”.|https://fr.wiktionary.org/wiki/forc%C3%A9ment
        <<- /conf/ morph(<1, ":V", ":A") ->> forcément      && Confusion probable : le forcement est l’action de forcer quelque chose. L’adverbe s’écrit “forcément”.|https://fr.wiktionary.org/wiki/forc%C3%A9ment

    [un|le|ce|au]  forcément  [<end>|,|)]
    [un|le|ce|au]  forcément  $:¬:A
        <<- /conf/ -2>> forcement                           && Confusion probable : “forcément” est un adverbe. L’action de “forcer” s’écrit “forcement”.|https://fr.wiktionary.org/wiki/forc%C3%A9ment
        <<- /conf/ -2>> forcement                           && Confusion probable : “forcément” est un adverbe. L’action de “forcer” s’écrit “forcement”.|https://fr.wiktionary.org/wiki/forc%C3%A9ment

TEST: Viendra-t-il {{forcement}} demain.
TEST: sans {{forcement}} prendre la vie du bon côté
TEST: Elle sera {{forcement}} déçue de cette minable prestation de sa part.
TEST: Un homme pas {{forcement}} mauvais.
TEST: Le {{forcément}} du coffre ne sera pas si facile.


# fret / frais
__conf_fret_frais__
    [>frai] [>aérien|>ferroviaire|>maritime|>routier]
        <<- /conf/ -1>> fret                                && Confusion probable. Pour évoquer le transport aérien, ferroviaire, maritime ou routier, écrivez “fret”.|https://fr.wiktionary.org/wiki/fret

TEST: le {{frais}} ferroviaire est en chute libre.          ->> fret


# golf / golfe
__conf_golf_golfe__
    [>champion|>championnat|>club|>joueur|parcours|>sac|>balle|>terrain|>tournoi|>compétition|>passionné|>école|>professeur|>parti|>professionnel|>amateur|>stage|>journée|après-midi|>matinée|>heure|>fédération|>fan] de golfe
        <<- /conf/ -3>> golf                                                && Confusion. Le golfe est une zone de mer ou d’un lac avancée dans les terres. Ex : Le golfe Persique.
        <<- /conf/ -3>> golf                                                && Confusion. Le golfe est une zone de mer ou d’un lac avancée dans les terres. Ex : Le golfe Persique.

    >golf persique
    >golf [de|du|d’] [Bengale|Botnie|Gascogne|Gabès|Guinée|Lion|Morbihan|Mexique|Porto|Saint-Laurent|Thaïlande|Tonkin|Tunis|Winam|Aden|Ajaccio|Alaska|Hammamet]
        <<- /conf/ -1>> golfe                                               && Confusion. Le golf est un sport.

    [>guerre|>émir|>monarchie] du golf
        <<- /conf/ -3>> Golfe                                               && Confusion. Le golf est un sport.
10336
10337
10338
10339
10340
10341
10342
10343

10344
10345
10346

10347
10348
10349

10350
10351
10352

10353
10354
10355
10356
10357
10358
10359
10342
10343
10344
10345
10346
10347
10348

10349
10350
10351

10352
10353
10354

10355
10356
10357

10358
10359
10360
10361
10362
10363
10364
10365







-
+


-
+


-
+


-
+







TEST: il ne {{l’a}} {{connaît}} pas.
TEST: elle ne nous {{l’a}} {{donne}} pas.
TEST: elle ne {{l’a}} leur donne pas sans condition.


__conf_il_elle_on_l_a_la_vconj__
    [il|on]  ?[nous|vous]¿  la  @:Q¬:(?:[123][sp]|V[123]......e)|>lui/
        <<- /conf/ --2>> l’a                                                    && Confusion probable : “\-1” est un participe passé. Il faut donc employer l’auxiliaire “avoir”.
        <<- /conf/ --2>> l’a                                                    && Confusion probable : “\-1” est un participe passé. Il faut donc employer l’auxiliaire “avoir”.

    elle  ?[nous|vous]¿  la  @:Q¬:(?:[123][sp]|V[123]......e)|>lui/
        <<- /conf/ not morph(<1, ":R") --2>> l’a                                && Confusion probable : “\-1” est un participe passé. Il faut donc employer l’auxiliaire “avoir”.
        <<- /conf/ not morph(<1, ":R") --2>> l’a                                && Confusion probable : “\-1” est un participe passé. Il faut donc employer l’auxiliaire “avoir”.

    [ne|me|te]  la  @:Q¬:(?:[123][sp]|V[123]......e)|>lui/
        <<- /conf/ -2>> l’a                                                     && Confusion probable : “\3” est un participe passé. Il faut donc employer l’auxiliaire “avoir”.
        <<- /conf/ -2>> l’a                                                     && Confusion probable : “\3” est un participe passé. Il faut donc employer l’auxiliaire “avoir”.

    ne  [nous|vous]  la  @:Q¬:(?:[123][sp]|V[123]......e)|>lui/
        <<- /conf/ -3>> l’a                                                     && Confusion probable : “\4” est un participe passé. Il faut donc employer l’auxiliaire “avoir”.
        <<- /conf/ -3>> l’a                                                     && Confusion probable : “\4” est un participe passé. Il faut donc employer l’auxiliaire “avoir”.

TEST: il {{la}} {{donnée}}.
TEST: elle {{la}} vendue.
TEST: ne {{la}} {{donné}} que contraint et forcé…
TEST: celle-là, il me {{la}} {{commandée}} ?
TEST: ne nous {{la}} donnée pas
TEST: au fur et à mesure que les molécules du nuage se dirigent vers le centre, sa densité augmente et avec elle la gravité qu’il génère.
10410
10411
10412
10413
10414
10415
10416
10417

10418
10419
10420
10421
10422
10423
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
10450
10451
10416
10417
10418
10419
10420
10421
10422

10423
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

10450
10451
10452
10453
10454
10455
10456
10457







-
+



















-
+






-
+








    /-là
        <<- /conf/ morph(\1, ":V", ":[NA]", 0, -3) >>>
        <<- /conf/ morph(\1, ":V...t") -1>> =\1[:-3]+"-la|" + \1[:-3]+" là"                         && Confusion. Pour un COD, utilisez “la”. Ou, si ce “là” signifie “ici”, ne mettez pas de trait d’union.
        <<- /conf/ __else__ -1>> =\1[:-3]+" là"                                                     && Confusion. Si ce “là” signifie “ici”, ne mettez pas de trait d’union.

    [ne|me|te|se] là
        <<- /conf/ -2>> la                                                                          && Confusion : “là” signifie “ici”.|https://fr.wiktionary.org/wiki/la
        <<- /conf/ -2>> la                                                                          && Confusion : “là” signifie “ici”.|https://fr.wiktionary.org/wiki/la

TEST: {{jusque-la}}, tout va bien
TEST: {{ceux la}} sont des idiots, rien à en tirer.
TEST: {{celle la}} ne vaut pas mieux, laisse-la tomber.
TEST: {{Apporte-là}} près du feu
TEST: {{arrive-là}}
TEST: cette {{bête-la}}
TEST: il ne {{là}} croit pas.


    [la-bas|la-haut|la-dessous|la-dessus|la-dedans|la-devant|la-derrière]
        <<- /conf/ ->> =\1.replace("la-", "là-").replace("LA-", "LÀ-")                              && Confusion. “Là” signifie “ici”.

TEST: {{la-dedans}}                             ->> là-dedans


# la plupart
__conf_la_plupart__
    [la|là] [plus|plue|plues|plut|plût|plu] [part|parts|par|pare|pares]
        <<- /conf/ -2:3>> plupart                                               && Confusion. Écrivez « la plupart » pour évoquer la majeure partie de quelque chose.
        <<- /conf/ -2:3>> plupart                                               && Confusion. Écrivez « la plupart » pour évoquer la majeure partie de quelque chose.

    [la|là] [plus-part|plus-parts|plus-par|plus-pare|plus-pares]
    [la|là] [plues-part|plues-parts|plues-par|plues-pare|plues-pares]
    [la|là] [plut-part|plut-parts|plut-par|plut-pare|plut-pares]
    [la|là] [plût-part|plût-parts|plût-par|plût-pare|plût-pares]
    [la|là] [plu-part|plu-parts|plu-par|plu-pare|plu-pares]
        <<- /conf/ -2>> plupart                                                 && Confusion. Écrivez « la plupart » pour évoquer la majeure partie de quelque chose.
        <<- /conf/ -2>> plupart                                                 && Confusion. Écrivez « la plupart » pour évoquer la majeure partie de quelque chose.

TEST: la {{plus part}}
TEST: la {{plu-part}}


__conf_lancer_lancé__
    lancé [de|d’] [>balle|>ballon|>dé|>disque|>fléchette|>fusée|>javelot|>hache|>marteau|>nain|poids|rayon]
10518
10519
10520
10521
10522
10523
10524
10525

10526
10527
10528
10529
10530
10531
10532
10533
10534
10535
10536
10537
10538
10539
10540
10541
10542
10543
10544
10545
10546

10547
10548
10549
10550

10551
10552
10553
10554

10555
10556
10557

10558
10559
10560
10561

10562
10563
10564
10565

10566
10567
10568

10569
10570
10571
10572
10573
10574
10575
10576
10577
10578
10579
10580
10581
10582
10583
10584
10585

10586
10587
10588
10589

10590
10591
10592

10593
10594
10595
10596
10597
10598
10599
10600
10601
10602
10603

10604
10605
10606
10607
10608
10609

10610
10611
10612
10613
10614
10615
10616
10524
10525
10526
10527
10528
10529
10530

10531
10532
10533
10534
10535
10536
10537
10538
10539
10540
10541
10542
10543
10544
10545
10546
10547
10548
10549
10550
10551

10552
10553
10554
10555

10556
10557
10558
10559

10560
10561
10562

10563
10564
10565
10566

10567
10568
10569
10570

10571
10572
10573

10574
10575
10576
10577
10578
10579
10580
10581
10582
10583
10584
10585
10586
10587
10588
10589
10590

10591
10592
10593
10594

10595
10596
10597

10598
10599
10600
10601
10602
10603
10604
10605
10606
10607
10608

10609
10610
10611
10612
10613
10614

10615
10616
10617
10618
10619
10620
10621
10622







-
+




















-
+



-
+



-
+


-
+



-
+



-
+


-
+
















-
+



-
+


-
+










-
+





-
+







TEST: Elle habite Vandœuvre-lès-Nancy.


# leurs / leur
__conf_leurs_verbe__
    leurs  @:(?:[123][sp]|Y)¬:[GNAM]
        <<- /conf/ not morph(<1, ">[ld]es/")
        -1>> leur                                   && Incohérence : “leurs” est un déterminant pluriel censé précéder un substantif pluriel. Pour le pronom personnel devant un verbe, écrivez “leur”.
        -1>> leur                                   && Incohérence : “leurs” est un déterminant pluriel censé précéder un substantif pluriel. Pour le pronom personnel devant un verbe, écrivez “leur”.

TEST: je vais {{leurs}} reprendre
TEST: je {{leurs}} apprends la programmation
TEST: après qu’un des leurs ait été gravement blessé par un tir de grenade


# loin s’en faut
__conf_loin_s_en_faut__
    !! loin s’ en faut ¡¡
    [loin|loins] [sens|cens|sans|>sang|san] [faux|faut]
    [loin|loins] [c’|s’] [>an|en] [faux|faut]
        <<- /conf/ ->> loin s’en faut               && Confusion probable. Cette locution s’écrit “loin s’en faut”.|https://fr.wiktionary.org/wiki/loin_s%E2%80%99en_faut

TEST: Ils n’étaient guère prêts à ça, {{loins sans faux}}.
TEST: Et les intellectuels ? En France comme ailleurs, tous n’ont pas, loin s’en faut, une pleine lucidité sur cette précarité galopante.


# m’a / ma
__conf_m_a_ma!7__
    [<start>|,|(]  tu  [ma|mas]
        <<- /conf/ --1>> m’as                       && Confusion : “ma” est un déterminant possessif féminin. Pour le verbe “avoir” à la 2ᵉ personne précédé du pronom personnel me”, écrivez “m’as”.
        <<- /conf/ --1>> m’as                       && Confusion : “ma” est un déterminant possessif féminin. Pour le verbe “avoir” à la 2ᵉ personne précédé du pronom personnel me”, écrivez “m’as”.

    [il|ils]  [ma|mas]
        <<- /conf/ not morph(<1, ":3s")
        --1>> m’a                                   && Confusion : “ma” est un déterminant possessif féminin. Pour le verbe “avoir” à la 3ᵉ personne précédé du pronom personnel me”, écrivez “m’a”.
        --1>> m’a                                   && Confusion : “ma” est un déterminant possessif féminin. Pour le verbe “avoir” à la 3ᵉ personne précédé du pronom personnel me”, écrivez “m’a”.

    on  [ma|mas]
        <<- /conf/ morph(<1, "<start>|:C|>,/")
        --1>> m’a                                   && Confusion : “ma” est un déterminant possessif féminin. Pour le verbe “avoir” à la 3ᵉ personne précédé du pronom personnel me”, écrivez “m’a”.
        --1>> m’a                                   && Confusion : “ma” est un déterminant possessif féminin. Pour le verbe “avoir” à la 3ᵉ personne précédé du pronom personnel me”, écrivez “m’a”.

    [ne|n’]  [ma|mas]
        <<- /conf/ --1>> m’a                        && Confusion : “ma” est un déterminant possessif féminin. Pour le verbe “avoir” à la 3ᵉ personne précédé du pronom personnel me”, écrivez “m’a”.
        <<- /conf/ --1>> m’a                        && Confusion : “ma” est un déterminant possessif féminin. Pour le verbe “avoir” à la 3ᵉ personne précédé du pronom personnel me”, écrivez “m’a”.

    ça  [ma|mas]  *WORD
        <<- /conf/ morph(<1, "<start>|:C|>,/") and analyse(\-1, ":(?:Q|V1.*:Y)", ":N.*:[fe]")
        -2>> m’a                                    && Confusion : “ma” est un déterminant possessif féminin. Pour le verbe “avoir” à la 3ᵉ personne précédé du pronom personnel me”, écrivez “m’a”.
        -2>> m’a                                    && Confusion : “ma” est un déterminant possessif féminin. Pour le verbe “avoir” à la 3ᵉ personne précédé du pronom personnel me”, écrivez “m’a”.

    qui ma  *WORD
        <<- /conf/ analyse(\-1, ":(?:Q|V1.*:Y)", ":N.*:[fe]")
        -2>> m’a                                    && Confusion : “ma” est un déterminant possessif féminin. Pour le verbe “avoir” à la 3ᵉ personne précédé du pronom personnel me”, écrivez “m’a”.
        -2>> m’a                                    && Confusion : “ma” est un déterminant possessif féminin. Pour le verbe “avoir” à la 3ᵉ personne précédé du pronom personnel me”, écrivez “m’a”.

    ma  @:(?:Q.*:e:i|V1.*:Y)¬:f:s
        <<- /conf/ -1>> m’a                         && Confusion probable : “\-2 est un participe passé. Vous confondez probablement “ma” et “m’a” (contraction de “me” suivi du verbe avoir “a”).
        <<- /conf/ -1>> m’a                         && Confusion probable : “\-2 est un participe passé. Vous confondez probablement “ma” et “m’a” (contraction de “me” suivi du verbe avoir “a”).

TEST: tu {{ma}} prise par surprise                          ->> m’as
TEST: il {{ma}} tuée                                        ->> m’a
TEST: cette femme ne {{ma}} prise que deux fois             ->> m’a
TEST: {{on}} {{ma}} dézinguée                               ->> ont|||m’a
TEST: ça {{ma}} {{foutu}} en l’air
TEST: cet homme {{ma}} succédé à ce poste                   ->> m’a
TEST: {{ma}} {{donner}} la nausée, ce con
TEST: c’est ça qui {{ma}} forcée à poursuivre               ->> m’a
TEST: ça ma grande, c’est mon secret


# m’ont / mon
__conf_m_ont!6__
    il  mon
        <<- /conf/ morph(<1, "<start>|:C|>,/")
        --1>> m’ont                                 && Confusion probable : “mon” est un déterminant possessif. Pour le verbe “avoir” à la 3ᵉ personne du pluriel précédé du pronom personnel me”, écrivez “m’ont”.
        --1>> m’ont                                 && Confusion probable : “mon” est un déterminant possessif. Pour le verbe “avoir” à la 3ᵉ personne du pluriel précédé du pronom personnel me”, écrivez “m’ont”.

    ils  mon
        <<- /conf/ not morph(<1, ":(?:3p|D)")
        --1>> m’ont                                 && Confusion : “mon” est un déterminant possessif. Pour le verbe “avoir” à la 3ᵉ personne du pluriel précédé du pronom personnel me”, écrivez “m’ont”.
        --1>> m’ont                                 && Confusion : “mon” est un déterminant possessif. Pour le verbe “avoir” à la 3ᵉ personne du pluriel précédé du pronom personnel me”, écrivez “m’ont”.

    ne  mon
        <<- /conf/ --1>> m’ont                      && Confusion : “mon” est un déterminant possessif. Pour le verbe “avoir” à la 3ᵉ personne du pluriel précédé du pronom personnel me”, écrivez “m’ont”.
        <<- /conf/ --1>> m’ont                      && Confusion : “mon” est un déterminant possessif. Pour le verbe “avoir” à la 3ᵉ personne du pluriel précédé du pronom personnel me”, écrivez “m’ont”.

TEST: il {{mon}} détruit                                    ->> m’ont
TEST: ils {{mon}} donné du fil à retordre, ces cons.        ->> m’ont
TEST: ces écarts ne {{mon}} posé aucun problème             ->> m’ont


# mai / mais
__conf_mai_mais_mes__
    [<start>|,|(]  mai  @:(?:Os|M)¬:3s
        <<- /conf/ -2>> mais
        && Confusion probable : “mai” est le 5ᵉ mois de l’année. Pour la conjonction de coordination, écrivez “mais”.|https://fr.wiktionary.org/wiki/mais
        && Confusion probable : “mai” est le 5ᵉ mois de l’année. Pour la conjonction de coordination, écrivez “mais”.|https://fr.wiktionary.org/wiki/mais

    mes  [que|qu’|pourquoi|comment|quand|là|ici|combien|surtout|puisque|puisqu’|quoi|quoique|quoiqu’]
    mes  [le|la|l’|les|mon|ton|son|ma|ta|sa|mes|tes|ses|notre|votre|nos|vos|leur|leurs|quel|quels|quelle|quelles|plusieurs]
    mes  [je|j’|tu|il|elle|on|nous|vous|ils|elles|iel|iels]
        <<- /conf/ (\1.islower() or value(<1, "|<start>|,|")) and \2.islower() -1>> mais
        && Confusion possible : “mes” est un déterminant utilisé pour signaler la possession. Pour la conjonction de coordination, écrivez “mais”.|https://fr.wiktionary.org/wiki/mais
        && Confusion possible : “mes” est un déterminant utilisé pour signaler la possession. Pour la conjonction de coordination, écrivez “mais”.|https://fr.wiktionary.org/wiki/mais

TEST: {{mai}} il y a encore tant à faire.
TEST: {{mai}} Patrick vient demain.
TEST: Je viendrai, {{mai}} il faudra avoir tout prévu.
TEST: {{mes}} que voulez-vous
TEST: Mai pluvieux.

10706
10707
10708
10709
10710
10711
10712
10713

10714
10715
10716

10717
10718
10719

10720
10721
10722

10723
10724
10725
10726
10727
10728
10729
10730
10731
10732
10733
10734
10735
10736
10737
10738

10739
10740
10741
10742
10743
10744
10745
10712
10713
10714
10715
10716
10717
10718

10719
10720
10721

10722
10723
10724

10725
10726
10727

10728
10729
10730
10731
10732
10733
10734
10735
10736
10737
10738
10739
10740
10741
10742
10743

10744
10745
10746
10747
10748
10749
10750
10751







-
+


-
+


-
+


-
+















-
+







TEST: à vue de nez, ça pue bien fort


# notre / nôtre -- votre / vôtre
# Hunspell corrige déjà les formes au pluriel (les nôtres).
__conf_nôtre_notre__
    [le|la|les|du|des|au|aux] notre
        <<- /conf/ not value(>1, "|père|") -2>> nôtre                       && Confusion : « notre possession », « la nôtre ».
        <<- /conf/ not value(>1, "|père|") -2>> nôtre                       && Confusion : « notre possession », « la nôtre ».

    [le|la|les|du|des|au|aux] votre
        <<- /conf/ -2>> vôtre                                               && Confusion : « votre possession », « la vôtre ».
        <<- /conf/ -2>> vôtre                                               && Confusion : « votre possession », « la vôtre ».

    >nôtre  @:[NA]¬:D
        <<- /conf/ not value(<1, "|le|la|les|du|des|au|aux|") -1>> notre    && Confusion : « notre possession », « la nôtre ».
        <<- /conf/ not value(<1, "|le|la|les|du|des|au|aux|") -1>> notre    && Confusion : « notre possession », « la nôtre ».

    >vôtre  @:[NA]¬:D
        <<- /conf/ not value(<1, "|le|la|les|du|des|au|aux|") -1>> votre    && Confusion : « notre possession », « la nôtre ».
        <<- /conf/ not value(<1, "|le|la|les|du|des|au|aux|") -1>> votre    && Confusion : « notre possession », « la nôtre ».

TEST: le {{notre}} n’en vaut pas la peine
TEST: C’est la {{votre}} ?
TEST: {{nôtre}} père est si âgé.
TEST: {{vôtre}} chien a du mordant
TEST: nous vous proposons de faire vôtre une autre volonté
TEST: Elle récitait sans cesse des Notre Père.





# nulle part
__conf_nulle_part__
    nul part
        <<- /conf/ not morph(<1, ":D.*:m:[si]") ->> nulle part      && Confusion : pour dire “en aucun lieu”, écrivez “nulle part”.
        <<- /conf/ not morph(<1, ":D.*:m:[si]") ->> nulle part      && Confusion : pour dire “en aucun lieu”, écrivez “nulle part”.

TEST: car {{nul part}} ailleurs, on n’en trouve une telle concentration


# oc / hoc
__conf_oc_hoc__
    ad oc
10755
10756
10757
10758
10759
10760
10761
10762

10763
10764
10765

10766
10767
10768

10769
10770
10771
10772

10773
10774
10775
10776
10777
10778
10779
10780
10781
10782
10783
10784
10785
10786
10787
10788
10789

10790
10791
10792

10793
10794
10795

10796
10797
10798
10799

10800
10801
10802
10803
10804
10805
10806
10761
10762
10763
10764
10765
10766
10767

10768
10769
10770

10771
10772
10773

10774
10775
10776
10777

10778
10779
10780
10781
10782
10783
10784
10785
10786
10787
10788
10789
10790
10791
10792
10793
10794

10795
10796
10797

10798
10799
10800

10801
10802
10803
10804

10805
10806
10807
10808
10809
10810
10811
10812







-
+


-
+


-
+



-
+
















-
+


-
+


-
+



-
+









# on / ont
__conf_ont_on!6__
    on  @:W¬:(?:3s|Ov)
    on  [de|d’|du|des|un|une|ce|cet|cette|ces|mon|ton|son|ma|ta|sa|mes|tes|ses|notre|votre|nos|vos|quelques|plusieurs|certains|certaines|maints|maintes]
        <<- /conf/ not morph(<1, ":V.*:3s") and not before0("’$")
        -1>> ont                                                    && Confusion probable : “avoir” à la 3ᵉ personne du pluriel du présent s’écrit “ont”.
        -1>> ont                                                    && Confusion probable : “avoir” à la 3ᵉ personne du pluriel du présent s’écrit “ont”.

    [n’|m’|t’|l’] [y|en] on
        <<- /conf/ -3>> ont                                         && Confusion. Exemples : « on y va », « ils ont faim ».
        <<- /conf/ -3>> ont                                         && Confusion. Exemples : « on y va », « ils ont faim ».

    [ne|n’|me|m’|te|t’] l’ on
        <<- /conf/ -3>> ont                                         && Confusion. Exemples : « on y va », « ils ont faim ».
        <<- /conf/ -3>> ont                                         && Confusion. Exemples : « on y va », « ils ont faim ».

    qui on
        <<- /conf/ not morph(<1, ":[VR]|<start>") and not morph(>1, ":(?:3s|Ov)")
        -2>> ont                                                    && Confusion probable. Exemples : « on y va », « ils ont faim ».
        -2>> ont                                                    && Confusion probable. Exemples : « on y va », « ils ont faim ».

TEST: ces gens {{on}} {{souvent}} tort.
TEST: {{on}} {{des}} drôles de manières
TEST: n’y {{on}} {{jamais}} lieu de telles abominations !
TEST: ces chiens te l’{{on}} {{donné}}
TEST: Qui {{on}} {{tant}} de malheurs !
TEST: Je voulais qu’on soit ensemble.
TEST: qui on blâme, ce soir ?
TEST: La peur irraisonnée de l’autre est le plus grave danger qu’ont à affronter les civilisations.


__conf_on_ont__
    [<start>|,|/_start_] ?l’¿ (ont) [ne|n’|me|m’|te|se|s’]
    [<start>|,|/_start_] ?l’¿ (ont) [lui|nous|vous] @:[123][sp]¬:G
    [<start>|,|/_start_] ?l’¿ (ont) [leur|le|la|l’] @:[123][sp]¬:(?:G|[NA].*:[si])
    [<start>|,|/_start_] ?l’¿ (ont) @:[123][sp]¬:[GQ]|>(?:envie|charge|peine|affaire|hâte|force|recours|somme)/
        <<- /conf/ -1>> on                                          && Confusion probable : “ont” est une conjugaison du verbe avoir.
        <<- /conf/ -1>> on                                          && Confusion probable : “ont” est une conjugaison du verbe avoir.

    [<start>|,|/_start_] ?l’¿ ont t’
        <<- /conf/ not value(>1, "|il|ils|elle|elles|iel|iels|") --2>> on    && Confusion probable : “ont” est une conjugaison du verbe avoir.
        <<- /conf/ not value(>1, "|il|ils|elle|elles|iel|iels|") --2>> on    && Confusion probable : “ont” est une conjugaison du verbe avoir.

    ~-ont$
        <<- /conf/ ->> =\1[:-1]                                     && Incohérence : “ont” est une forme conjuguée du verbe “avoir” (par exemple: “ils ont”). Pour le pronom personnel, écrivez “on”.
        <<- /conf/ ->> =\1[:-1]                                     && Incohérence : “ont” est une forme conjuguée du verbe “avoir” (par exemple: “ils ont”). Pour le pronom personnel, écrivez “on”.

    [<start>|,|(]  *WORD  ont
        <<- /conf/ space_after(\2, 1, 1) and not value(\2, "|soit|") and morph(\2, ":3s") -2:3>> \2-on
        && Confusion probable : “ont” est une forme conjuguée du verbe “avoir”. Pour le pronom personnel, écrivez “on” et mettez un trait d’union puisqu’il s’agit d’une question.
        && Confusion probable : “ont” est une forme conjuguée du verbe “avoir”. Pour le pronom personnel, écrivez “on” et mettez un trait d’union puisqu’il s’agit d’une question.

TEST: il m’assure qu’{{ont}} ne sait pas s’y prendre
TEST: {{ont}} m’assure qu’il n’y en a pas.
TEST: {{Ont}} n’arrive pas à s’en sortir.
TEST: {{Ont}} ne sait jamais quoi faire
TEST: si {{ont}} donne à ces gens, ça n’en finit plus.
TEST: {{Ont}} viens !
11099
11100
11101
11102
11103
11104
11105
11106

11107
11108
11109
11110

11111
11112
11113
11114
11115
11116
11117
11105
11106
11107
11108
11109
11110
11111

11112
11113
11114
11115

11116
11117
11118
11119
11120
11121
11122
11123







-
+



-
+







TEST: Les {{pêchers}} capitaux
TEST: Des {{pêchés}} véniels
TEST: C’est mon péché mignon.


__conf_pécheur_pêcheur__
    [>auberge|>barque|>baraque|>botte|>cabane|>cabanon|>caissette|>chaloupe|>cordage|>cuissard|>habit|>hameçon|>maison|>métier|>nœud|>pantalon|>pirogue|>soupe|>veste|>village|>bateau] [de|d’|du|des] [pécheur+s]
        <<- /conf/ -3>> =\3.replace("pé", "pê").replace("Pé", "Pê").replace("PÉ", "PÊ")     && Confusion probable : pêcheurs (qui pêchent des animaux marins) ≠ pécheurs (qui commettent des péchés).
        <<- /conf/ -3>> =\3.replace("pé", "pê").replace("Pé", "Pê").replace("PÉ", "PÊ")     && Confusion probable : pêcheurs (qui pêchent des animaux marins) ≠ pécheurs (qui commettent des péchés).

    [pécheur+s] [du|d’|de|des|la|le|l’|les|à|au|aux] [>ablette|>oblade|>albacore|>anguille|>baleine|>bar|>barracuda|>blageon|>blennie|>bonite|bouvière+s|>brème|>brochet|>bulot|>cabillaud|>cabot|>calamar|>canard|>carassin|>carnassier|>carpe|>chabot|>chevaine|>chevenne|>chevesne|>colin|>congre|>coque|>coquillage|>coquille|>corb|>crabe|>crevette|>crustacé|>dorade|>dauphin|>écrevisse|>éponge|>espadon|>épinoche|>épinochette|>esturgeon|>étrille|>financement|>gardon|>girelle|>gobie|>goujon|>grémille|>grondin|>hareng|>homard|>hotu|>huitre|>huître|>langouste|>langoustine|>leurre|>liche|>loche|>lotte|>marbré|>marsouin|>merlan|>merlu|>mérou|>mollusque|>morue|>mostelle|>mustelle|>mulet|>murène|>omble|>ormeau|>oursin|>pageau|>pagel|>pageot|>palourde|>patelle|>perche|>pétoncle|>moule|>pieuvre|>piranha|>plie|>poisson|>poulpe|>praire|>raie|>rascasse|>requin|>rotengle|>rouget|>sandre|>sardine|>salmonidé|>sar|>saumon|>saupe|>seiche|>silure|>sole|>spirlin|>tanche|>thon|>truite|>turbot|>vairon|>vandoise|>vive|anchois|>barbeau|>bigorneau|black-bass|>couteau|ligne|>maquereau|saint-jacques]
    [pécheur+s] [de|à] [la|l’] [>ablette|>oblade|>albacore|>anguille|>baleine|>bar|>barracuda|>blageon|>blennie|>bonite|bouvière|>brème|>brochet|>bulot|>cabillaud|>cabot|>calamar|>canard|>carassin|>carnassier|>carpe|>chabot|>chevaine|>chevenne|>chevesne|>colin|>congre|>coque|>coquillage|>coquille|>corb|>crabe|>crevette|>crustacé|>dorade|>dauphin|>écrevisse|>éponge|>espadon|>épinoche|>épinochette|>esturgeon|>étrille|>financement|>gardon|>girelle|>gobie|>goujon|>grémille|>grondin|>hareng|>homard|>hotu|>huitre|>huître|>langouste|>langoustine|>leurre|>liche|>loche|>lotte|>marbré|>marsouin|>merlan|>merlu|>mérou|>mollusque|>morue|>mostelle|>mustelle|>mulet|>murène|>omble|>ormeau|>oursin|>pageau|>pagel|>pageot|>palourde|>patelle|>perche|>pétoncle|>moule|>pieuvre|>piranha|>plie|>poisson|>poulpe|>praire|>raie|>rascasse|>requin|>rotengle|>rouget|>sandre|>sardine|>salmonidé|>sar|>saumon|>saupe|>seiche|>silure|>sole|>spirlin|>tanche|>thon|>truite|>turbot|>vairon|>vandoise|>vive|anchois|>barbeau|>bigorneau|black-bass|>couteau|ligne|>maquereau|saint-jacques]
        <<- /conf/ -1>> =\1.replace("pé", "pê").replace("Pé", "Pê").replace("PÉ", "PÊ")     && Confusion probable : pêcheurs (qui pêchent des animaux marins) ≠ pécheurs (qui commettent des péchés).
        <<- /conf/ -1>> =\1.replace("pé", "pê").replace("Pé", "Pê").replace("PÉ", "PÊ")     && Confusion probable : pêcheurs (qui pêchent des animaux marins) ≠ pécheurs (qui commettent des péchés).

TEST: une cabane de {{pécheur}}
TEST: le bateau des {{pécheurs}}
TEST: {{pécheur}} de maquereau


# pêle-mêle
11126
11127
11128
11129
11130
11131
11132
11133

11134
11135
11136
11137
11138
11139
11140
11141
11142
11143
11144
11145
11146
11147
11148
11149
11150
11151

11152
11153
11154
11155
11156
11157
11158

11159
11160
11161

11162
11163
11164

11165
11166
11167

11168
11169
11170

11171
11172
11173

11174
11175
11176
11177

11178
11179
11180
11181
11182
11183
11184
11132
11133
11134
11135
11136
11137
11138

11139
11140
11141
11142
11143
11144
11145
11146
11147
11148
11149
11150
11151
11152
11153
11154
11155
11156

11157
11158
11159
11160
11161
11162
11163

11164
11165
11166

11167
11168
11169

11170
11171
11172

11173
11174
11175

11176
11177
11178

11179
11180
11181
11182

11183
11184
11185
11186
11187
11188
11189
11190







-
+

















-
+






-
+


-
+


-
+


-
+


-
+


-
+



-
+







TEST: Ça consiste {{pelle mêle}} en diverses choses.
TEST: habitées par un peuple de prostituées […], vivant là, entassées pêle-mêle avec toutes sortes d’individus plus ou moins suspects, souteneurs et repris de justice pour la plupart.


# peu / peux / peut
__conf_peu_peut_peux!6__
    peu [pas|donc|jamais|rien|parfois|alors|enfin|rarement|éventuellement]
        <<- /conf/ not morph(<1, ">(?:très|en|un|de|du)/") -1>> peut        && Confusion probable : « peu » signifie « pas beaucoup », pour le verbe pouvoir, écrivez “peut”.
        <<- /conf/ not morph(<1, ">(?:très|en|un|de|du)/") -1>> peut        && Confusion probable : « peu » signifie « pas beaucoup », pour le verbe pouvoir, écrivez “peut”.

    !! peu à peu ¡¡
    [peux|peut|peu] [a|à|ah|ha|as] [peux|peut|peu]
    peu-a-peu
    peu-à-peu
    peut-a-peu
    peu-à-peut
    peux-a-peu
    peu-à-peux
    peux-à-peux
    peut-à-peut
    peut-à-peux
    peux-à-peut
    peux-a-peux
    peut-a-peut
    peut-a-peux
    peux-a-peut
        <<- /conf/ ->> peu à peu                                            && Confusion : « peu à peu » ou « petit à petit ».
        <<- /conf/ ->> peu à peu                                            && Confusion : « peu à peu » ou « petit à petit ».

    !! peu ou prou ¡¡
    [peux|peut|peu] [ou|où] [>proue|prou]
        <<- /conf/ ->> peu ou prou                                          && Confusion. Locution adverbiale “peu ou prou”.|https://fr.wiktionary.org/wiki/peu_ou_prou

    [peux|peut] [importent|importe+s]
        <<- /conf/ morph(<1, ":C|<start>") -1>> peu                         && Confusion : « \1 » est une conjugaison de “pouvoir”, utilisez “peu” pour dire “pas beaucoup”.
        <<- /conf/ morph(<1, ":C|<start>") -1>> peu                         && Confusion : « \1 » est une conjugaison de “pouvoir”, utilisez “peu” pour dire “pas beaucoup”.

    [très|trop|de|quelque|pour|à] [peux|peut]
        <<- /conf/ -2>> peu                                                 && Confusion : « \2 » est une conjugaison de “pouvoir”, utilisez “peu” pour dire “pas beaucoup”.
        <<- /conf/ -2>> peu                                                 && Confusion : « \2 » est une conjugaison de “pouvoir”, utilisez “peu” pour dire “pas beaucoup”.

    un  [peux|peut]
        <<- /conf/ not value(<1, "|quelqu’|l’|d’|sauf|") -2>> peu           && Confusion : « \2 » est une conjugaison de “pouvoir”, utilisez “peu” pour dire “pas beaucoup”.
        <<- /conf/ not value(<1, "|quelqu’|l’|d’|sauf|") -2>> peu           && Confusion : « \2 » est une conjugaison de “pouvoir”, utilisez “peu” pour dire “pas beaucoup”.

    [il|on] ?[ne|n’]¿ peu
        <<- /conf/ --1>> peut                                               && Confusion : « peu » signifie « pas beaucoup ».
        <<- /conf/ --1>> peut                                               && Confusion : « peu » signifie « pas beaucoup ».

    [je|tu] ?[ne|n’]¿ peu
        <<- /conf/ --1>> peux                                               && Confusion : « peu » signifie « pas beaucoup ».
        <<- /conf/ --1>> peux                                               && Confusion : « peu » signifie « pas beaucoup ».

    [ne|se|n’|s’] peu
        <<- /conf/ -2>> peut                                                && Confusion. Exemples : Il est peu habile, mais il peut y arriver.
        <<- /conf/ -2>> peut                                                && Confusion. Exemples : Il est peu habile, mais il peut y arriver.

    [peut|peux]  @:A¬:(?:[MGWYX]|3[sp])
        <<- /conf/ not morph(\2, ">(?:seul|beau)/") and not morph(<1, ">(?:je|tu|il|on|ne)/")
        -1>> peu                                                            && Confusion probable : « \1 » est une conjugaison de « pouvoir », utilisez « peu ».
        -1>> peu                                                            && Confusion probable : « \1 » est une conjugaison de « pouvoir », utilisez « peu ».

TEST: {{peu}} rarement y arriver.
TEST: Il est un {{peut}} comme une forêt
TEST: cela ne se {{peu}}.
TEST: des bâtisses {{peu a peu}} abandonnées.
TEST: voilà {{peut ou proue}} ce qu’on entend
TEST: aucun pays – ou très peu alors – n’a réussi à faire ça de façon durable
11194
11195
11196
11197
11198
11199
11200
11201

11202
11203
11204

11205
11206
11207

11208
11209
11210
11211
11212
11213
11214
11200
11201
11202
11203
11204
11205
11206

11207
11208
11209

11210
11211
11212

11213
11214
11215
11216
11217
11218
11219
11220







-
+


-
+


-
+







TEST: pour peu qu’ils soient entendus.
TEST: Il est guéri et peut de nouveau travailler.
TEST: l’homme peut bel et bien devenir immortel


__conf_peut_être__
    [peu-être|peux-être]
        <<- /conf/ ->> peut-être                                            && Confusion. Écrivez « peut-être », qui signifie « possiblement ».
        <<- /conf/ ->> peut-être                                            && Confusion. Écrivez « peut-être », qui signifie « possiblement ».

    <start>  [il|ce|ne|on]  peut-être
        <<- /conf/ -3>> peut être                                           && Confusion probable : « peut-être » signifie « possiblement ».
        <<- /conf/ -3>> peut être                                           && Confusion probable : « peut-être » signifie « possiblement ».

    <start>  [cela|ceci|ça]  peut-être  @:[AQ]
        <<- /conf/ -3>> peut être                                           && Confusion probable : « peut-être » signifie « possiblement ».
        <<- /conf/ -3>> peut être                                           && Confusion probable : « peut-être » signifie « possiblement ».

TEST: Il {{peut-être}} mortel.
TEST: Cela {{peut-être}} mortel.
TEST: cela arrivera {{peux-être}}.


# de plain pied
11379
11380
11381
11382
11383
11384
11385
11386

11387
11388
11389
11390
11391
11392
11393
11385
11386
11387
11388
11389
11390
11391

11392
11393
11394
11395
11396
11397
11398
11399







-
+







TEST: transpirer par tous les {{porcs}}                                     ->> pores
TEST: je transporte des porcs de Calais à Londres.


# pot aux roses / poteau rose
__conf_pot_aux_roses__
    poteau rose
        <<- /conf/ ->> pot aux roses                                        && Confusion probable. On dit : « découvrir le pot aux roses ».|https://fr.wiktionary.org/wiki/d%C3%A9couvrir_le_pot_aux_roses
        <<- /conf/ ->> pot aux roses                                        && Confusion probable. On dit : « découvrir le pot aux roses ».|https://fr.wiktionary.org/wiki/d%C3%A9couvrir_le_pot_aux_roses

TEST: Ils ont découvert le {{poteau rose}}.


# prêt / près / pré
__conf_prêt_près_pré__
    près à [ne|n’|me|m’|te|t’|se|s’]
11402
11403
11404
11405
11406
11407
11408
11409

11410
11411
11412

11413
11414
11415
11416
11417
11418
11419
11408
11409
11410
11411
11412
11413
11414

11415
11416
11417

11418
11419
11420
11421
11422
11423
11424
11425







-
+


-
+







TEST: Il a obtenu un prêt de Patrick
TEST: Il a obtenu un prêt de Le Drian
TEST: les prêts de BMW ou de Mercedes pour visiter la ville


__conf_près_prêt_pré__
    de plus [>prêt|>pré]
        <<- /conf/ --1>> près                                               && Confusion probable. Être prêt(e) à faire quelque chose. Être près de quelque chose. Le pré est un champ d’herbes.
        <<- /conf/ --1>> près                                               && Confusion probable. Être prêt à faire quelque chose. Être près de quelque chose. Le pré est un champ d’herbes.

    [très|trop] [>prêt|>pré]
        <<- /conf/ -2>> près                                                && Confusion probable. Être prêt(e) à faire quelque chose. Être près de quelque chose. Le pré est un champ d’herbes.
        <<- /conf/ -2>> près                                                && Confusion probable. Être prêt à faire quelque chose. Être près de quelque chose. Le pré est un champ d’herbes.

    >prêt [de|d’] [ne|n’|me|m’|te|t’|se|s’]
    >prêt [de|d’] ?[le|la|l’|les|en|nous|vous|lui|leur|y|tout]¿ $:Y
    >prêt [de|d’] [nous|vous]     [le|la|l’|les|en|y]           $:Y
    >prêt [de|d’] [le|la|l’|les]  [lui|leur|en|y]               $:Y
    >prêt [de|d’] [lui|leur|y]    en                            $:Y
        <<- /conf/ -1>> près                                                && Confusion probable. Être près de (faire) quelque chose. Prêt à faire quelque chose.
11437
11438
11439
11440
11441
11442
11443
11444

11445
11446
11447
11448
11449
11450
11451

11452
11453
11454
11455
11456
11457
11458
11443
11444
11445
11446
11447
11448
11449

11450
11451
11452
11453
11454
11455
11456

11457
11458
11459
11460
11461
11462
11463
11464







-
+






-
+







        <<- /conf/ --1>> près                                               && Confusion probable. Locution “à \2 \3 près”.

    au [nanomètre|millimètre|centimètre|décimètre|mètre|kilomètre] [>prêt|>pré]
        <<- /conf/ --1>> près                                               && Confusion probable. Locution “au \2 près”.

    à [ceci|cela] [prêt|prêts] [que|qu’]
    [<start>|,|(] à [ceci|cela] [prêt|prêts] [,|<end>|)]
        <<- /conf/ --2>> près                                               && Confusion probable. Locution “à \1 près”.|https://fr.wiktionary.org/wiki/%C3%A0_cela_pr%C3%A8s
        <<- /conf/ --2>> près                                               && Confusion probable. Locution “à \-3 près”.|https://fr.wiktionary.org/wiki/%C3%A0_cela_pr%C3%A8s

    ni de [>prêt|>pré] ?,¿ ni de loin
        <<- /conf/ -3>> près                                                && Confusion. Locution “ni de près, ni de loin”.|https://fr.wiktionary.org/wiki/de_pr%C3%A8s

    depuis [>prêt|>pré] [de|d’] *NUM *WORD
    depuis [>prêt|>pré] [de|d’] $:B:e:p  *WORD
        <<- /conf/ -2>> près                                && Confusion. Être prêt(e) à faire quelque chose. Être près de quelque chose. Le pré est un champ d’herbes. Depuis presque “\4 \5”, donc “près \3 \4 \5”.
        <<- /conf/ -2>> près                                && Confusion. Être prêt·e à faire quelque chose. Être près de quelque chose. Le pré est un champ d’herbes. Depuis presque “\4 \5”, donc “près \3 \4 \5”.

TEST: depuis {{prêt}} de 15 ans
TEST: approche très {{prêt}}
TEST: ils se sont approchés très {{prêts}}.
TEST: Je suis si {{prêt}} d’y arriver.
TEST: Elle est {{prêt}} de la trouver.
TEST: Elle va regarder ça de plus {{prêt}}.
11518
11519
11520
11521
11522
11523
11524
11525

11526
11527
11528
11529
11530
11531
11532
11524
11525
11526
11527
11528
11529
11530

11531
11532
11533
11534
11535
11536
11537
11538







-
+







    puis >quantique
        <<- /conf/ morph(<1, ":D.*:[mp]|<start>") -1>> puits
        && Confusion. Puits quantique : zone de l’espace dans laquelle le potentiel ressenti par une particule quantique atteint un minimum.|https://fr.wikipedia.org/wiki/Puits_quantique

    puis de >potentiel [fini+ses|>carré|>harmonique]
    puis de >potentiel @:¬:[NA]
        <<- /conf/ morph(<1, ":D.*:[mp]|<start>") -1:3>> puits de potentiel
        && Confusion probable. Un puits de potentiel désigne, en physique, le voisinage d'un minimum local d'énergie potentielle.|https://fr.wikipedia.org/wiki/Puits_de_potentiel
        && Confusion probable. Un puits de potentiel désigne, en physique, le voisinage dun minimum local dénergie potentielle.|https://fr.wikipedia.org/wiki/Puits_de_potentiel

TEST: Tombée au fond du {{puis}}, le désespoir la gagnait.
TEST: Des {{puis}}, tu en as combien ?
TEST: J’ai plusieurs {{puis}} de pétrole.
TEST: quel {{puis}} artésien ?
TEST: de quel {{puis}} quantique parles-tu ?
TEST: {{Puis de potentiel}} harmonique
11583
11584
11585
11586
11587
11588
11589
11590

11591
11592
11593
11594
11595
11596
11597
11589
11590
11591
11592
11593
11594
11595

11596
11597
11598
11599
11600
11601
11602
11603







-
+








__conf_qu_en_quand_quant__
    [quand|quant]   $:P
        <<- /conf/ -1>> qu’en                                               && Confusion probable.

    [quand|quant] [est|était|fut|serait] il [de|des|du]
    [quand|quant] [est-il|était-il|fut-il|sera-t-il|serait-il] [de|des|du]
        <<- /conf/ -1>> qu’en                                               && Confusion probable. Ce qu’il en est de… → Qu’en est-il de… ?
        <<- /conf/ -1>> qu’en                                               && Confusion probable. Ce qu’il en est de… → Qu’en est-il de… ?

    [quand|quant]  /_VCint_  [<end>|,|)]
        <<- /conf/ morphVC(\2, ">(?:déduire|penser)/") -1>> qu’en           && Confusion probable. Exemple : Ce qu’il en pense → Qu’en pense-t-il ?

    ce [quand|quant] [>déduire|>penser]
        <<- /conf/ -2>> qu’en                                               && Confusion probable. Exemple : Ce qu’il en pense → Qu’en pense-t-il ?

11623
11624
11625
11626
11627
11628
11629
11630

11631
11632
11633
11634
11635
11636
11637
11638

11639
11640
11641

11642
11643
11644
11645
11646
11647
11648
11649
11650
11651

11652
11653
11654

11655
11656
11657

11658
11659
11660
11661
11662
11663
11664
11629
11630
11631
11632
11633
11634
11635

11636
11637
11638
11639
11640
11641
11642
11643

11644
11645
11646

11647
11648
11649
11650
11651
11652
11653
11654
11655
11656

11657
11658
11659

11660
11661
11662

11663
11664
11665
11666
11667
11668
11669
11670







-
+







-
+


-
+









-
+


-
+


-
+







TEST: Elle veut savoir combien même si ça ne lui est d’aucune utilité immédiate.


# quel que soit
__conf_quel_que_soit__
    >quelque [soi|sois|soit|soient]
    >quelque >soie $:D
        <<- /conf/ -1:2>> quel que soit|quelle que soit|quels que soient|quelles que soient         && Confusion : “quelque” est un déterminant.|https://fr.wiktionary.org/wiki/quel_que_soit
        <<- /conf/ -1:2>> quel que soit|quelle que soit|quels que soient|quelles que soient         && Confusion : “quelque” est un déterminant.|https://fr.wiktionary.org/wiki/quel_que_soit

TEST: {{quelques soient}} les avantages d’un correcteur…


# quel que puisse
__quel_que_puisse__
    >quelque [puisse|puisses|put|pût]
        <<- /conf/ -1>> quel que|quelle que                                 && Confusion : “quelque” est un déterminant.
        <<- /conf/ -1>> quel que|quelle que                                 && Confusion : “quelque” est un déterminant.

    >quelque [puissent|pussent]
        <<- /conf/ -1>> quels que|quelles que                               && Confusion : “quelque” est un déterminant.
        <<- /conf/ -1>> quels que|quelles que                               && Confusion : “quelque” est un déterminant.

TEST: {{quelque}} puisse être la vérité, nous finirons par la découvrir.
TEST: {{quelques}} puissent être les raisons de son acte, il faut pardonner.


# quel qu’en soit
__conf_quel_qu_en_soit__
    qu’ [elle|elles]             [quand|quant]  [soi|>soie|sois|soit|soient]
    [quel|quels|quelle|quelles]  [quand|quant]  [soi|>soie|sois|soit|soient]
        <<- /conf/ --2>> qu’en                                              && Confusion. Locution “quel qu’en soit le …, quelle qu’en soit la …”.|https://fr.wiktionary.org/wiki/quel_que_soit#fr
        <<- /conf/ --2>> qu’en                                              && Confusion. Locution “quel qu’en soit le…, quelle qu’en soit la…”.|https://fr.wiktionary.org/wiki/quel_que_soit#fr

    qu’ [elle|elles] qu’ en [soi|>soie|sois|soit]
        <<- /conf/ ->> quel qu’en soit|quelle qu’en soit                    && Confusion. Locution “quel qu’en soit le …, quelle qu’en soit la …”.|https://fr.wiktionary.org/wiki/quel_que_soit#fr
        <<- /conf/ ->> quel qu’en soit|quelle qu’en soit                    && Confusion. Locution “quel qu’en soit le…, quelle qu’en soit la…”.|https://fr.wiktionary.org/wiki/quel_que_soit#fr

    qu’ [elle|elles] qu’ en soient
        <<- /conf/ ->> quels qu’en soient|quelles qu’en soient              && Confusion. Locution “quels qu’en soient les …, quelles qu’en soient les …”.|https://fr.wiktionary.org/wiki/quel_que_soit#fr
        <<- /conf/ ->> quels qu’en soient|quelles qu’en soient              && Confusion. Locution “quels qu’en soient les…, quelles qu’en soient les…”.|https://fr.wiktionary.org/wiki/quel_que_soit#fr

TEST: qu’elle {{quand}} soit le résultat                                ->> qu’en
TEST: {{qu’elle qu’en soi}} la raison, ça ne suffit pas.                ->> quel qu’en soit|quelle qu’en soit
TEST: {{qu’elles qu’en soient}} les raisons                             ->> quels qu’en soient|quelles qu’en soient


# quelque part
11678
11679
11680
11681
11682
11683
11684
11685

11686
11687
11688
11689
11690
11691
11692
11684
11685
11686
11687
11688
11689
11690

11691
11692
11693
11694
11695
11696
11697
11698







-
+







    qu’ [elle|elles] que [>foi|>foie]
    [quel|quels|quelle|quelles] que [>foi|>foie]
    quelque fois
        <<- /conf/ ->> 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

    les quelquefois [ou|où|que|qu’]
        <<- /conf/ -2>> quelques fois                                       && Confusion : “quelquefois” signifie “parfois”.|https://fr.wiktionary.org/wiki/quelquefois
        <<- /conf/ -2>> quelques fois                                       && Confusion : “quelquefois” signifie “parfois”.|https://fr.wiktionary.org/wiki/quelquefois

    >être  quelques fois  ?$:W¿  @:A  [de|d’]
        <<- /conf/ -2:3>> quelquefois                                       && Confusion possible. Si vous voulez dire “parfois”, écrivez “quelquefois”.

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.
11709
11710
11711
11712
11713
11714
11715
11716

11717
11718
11719

11720
11721
11722
11723
11724
11725
11726
11715
11716
11717
11718
11719
11720
11721

11722
11723
11724

11725
11726
11727
11728
11729
11730
11731
11732







-
+


-
+








TEST: Elle y parviendra, {{quoiqu’il}} en coûte.


# quelle / qu’elle
__conf_qu_elle_quelle__
    [que|qu’]  elle   @:[NAQ]¬:(?:G|[123][sp]|W|Oo|X)|>seul/
        <<- /conf/ -1:2>> quelle                                                                    && Confusion probable. Ex : Quelle femme ! Je crois qu’elle réussira.
        <<- /conf/ -1:2>> quelle                                                                    && Confusion probable. Ex : Quelle femme ! Je crois qu’elle réussira.

    [que|qu’]  elles  @:[NAQ]¬:(?:G|[123][sp]|W|Oo|X)|>seul/
        <<- /conf/ -1:2>> quelles                                                                   && Confusion probable. Ex : Quelle femme ! Je crois qu’elle réussira.
        <<- /conf/ -1:2>> quelles                                                                   && Confusion probable. Ex : Quelle femme ! Je crois qu’elle réussira.

TEST: {{qu’elle}} emmerdeuse.
TEST: {{qu’elles}} belles terrasses
TEST: je crois qu’elle seule peut y parvenir
TEST: Elle cache qu’elle a été en prison.
TEST: Qu’elle avait été accueillie avec joie.

11884
11885
11886
11887
11888
11889
11890
11891

11892
11893
11894
11895

11896
11897
11898
11899

11900
11901
11902
11903
11904
11905
11906
11890
11891
11892
11893
11894
11895
11896

11897
11898
11899
11900

11901
11902
11903
11904

11905
11906
11907
11908
11909
11910
11911
11912







-
+



-
+



-
+







TEST: elle est en roue libre depuis le début.


# saint / sain / sein / seing
__conf_saint_sain_sein_seing__
    [sain|sains|>sein]  $:M1
        <<- /conf/ morph(<1, ":(?:R|[123][sp])|<start>") -1>> saint
        && Confusion : “sain” signifie “en bonne santé”, le sein est un organe thoracique féminin. Pour évoquer ce qui est “sanctifié”, écrivez “saint”.|https://fr.wiktionary.org/wiki/saint
        && Confusion : “sain” signifie “en bonne santé”, le sein est un organe thoracique féminin. Pour évoquer ce qui est “sanctifié”, écrivez “saint”.|https://fr.wiktionary.org/wiki/saint

    [en|dans|sur] [mon|ton|son] [sain|saint]
        <<- /conf/ -3>> sein
        && Confusion : “sain” signifie “en bonne santé”, “saint” évoque ce qui “sanctifié”. Pour évoquer, au sens figuré, ce qui est une partie intime de quelque chose ou quelqu’un, écrivez “sein”.|https://fr.wiktionary.org/wiki/sein
        && Confusion : “sain” signifie “en bonne santé”, “saint” évoque ce qui “sanctifié”. Pour évoquer, au sens figuré, ce qui est une partie intime de quelque chose ou quelqu’un, écrivez “sein”.|https://fr.wiktionary.org/wiki/sein

    au [sain|saint|seing] [de|des|du|d’]
        <<- /conf/ -2>> sein
        && Confusion probable : “sain” signifie “en bonne santé”, “saint” évoque ce qui “sanctifié”. Pour évoquer, au sens figuré, ce qui est une partie intime de quelque chose ou quelqu’un, écrivez “sein”.|https://fr.wiktionary.org/wiki/sein
        && Confusion probable : “sain” signifie “en bonne santé”, “saint” évoque ce qui “sanctifié”. Pour évoquer, au sens figuré, ce qui est une partie intime de quelque chose ou quelqu’un, écrivez “sein”.|https://fr.wiktionary.org/wiki/sein

    [>sein|saint+s] d’ esprit
    [>sein|saint+s] de corps et d’ esprit
        <<- /conf/ -1>> sain|sains                              && Confusion probable. Pour dire “en bonne santé”, écrivez “sain”.|https://fr.wiktionary.org/wiki/sain

    [blanc-sein+s|blancs-sein+s]
    [blanc-sain+s|blancs-sain+s]
11915
11916
11917
11918
11919
11920
11921
11922

11923
11924
11925
11926
11927
11928
11929
11921
11922
11923
11924
11925
11926
11927

11928
11929
11930
11931
11932
11933
11934
11935







-
+







TEST: {{blanc-sein}}


# ne pas être sans savoir
__conf_ne_pas_être_sans_savoir__
    >être [pas|plus|jamais|guère] sans >ignorer
    ne [pas|plus|jamais|guère] être sans >ignorer
        <<- /conf/ --1>> savoir         && Confusion probable : vous écrivez l’inverse de ce que vous voulez dire.|https://fr.wiktionary.org/wiki/vous_n%E2%80%99%C3%AAtes_pas_sans_savoir
        <<- /conf/ --1>> savoir         && Confusion probable : vous écrivez l’inverse de ce que vous voulez dire.|https://fr.wiktionary.org/wiki/vous_n%E2%80%99%C3%AAtes_pas_sans_savoir

TEST: Vous n’êtes pas sans {{ignorer}} que…
TEST: ne pas être sans {{ignorer}} la cause de ces phénomènes.


# sens / cens / cent / sans / sang
__conf_sens_sans_cent_cens__
11987
11988
11989
11990
11991
11992
11993
11994

11995
11996
11997
11998

11999
12000
12001
12002
12003
12004
12005
11993
11994
11995
11996
11997
11998
11999

12000
12001
12002
12003

12004
12005
12006
12007
12008
12009
12010
12011







-
+



-
+







TEST: {{S’en suivrons}} une guerre de tous les instants et…
TEST: {{S’en suivre}}.


__conf_si_vconj__
    si  @:(?:[123][sp]|Y)¬:[GAQWMT]  <end>
        <<- /conf/ not \1.isupper() and not value(<1, "|ne|il|ils|on|")
        -2>> =suggSimil(\2, ":[AWGT]", True)                                                        && Incohérence probable avec “si” : “\2” ne devrait pas être une forme verbale conjuguée.
        -2>> =suggSimil(\2, ":[AWGT]", True)                                                        && Incohérence probable avec “si” : “\2” ne devrait pas être une forme verbale conjuguée.

    si  @:[123][sp]¬:[GNAQWMT]  @:¬:D
        <<- /conf/ not \1.isupper() and not value(<1, "|ne|il|ils|on|") and not (morph(\2, ":V0") and morph(\3, ":[QY]"))
        -2>> =suggSimil(\2, ":[AWGT]", True)                                                        && Incohérence probable avec “si” : “\2” ne devrait pas être une forme verbale conjuguée.
        -2>> =suggSimil(\2, ":[AWGT]", True)                                                        && Incohérence probable avec “si” : “\2” ne devrait pas être une forme verbale conjuguée.

TEST: des personnes si {{désespérer}}
TEST: Ces gens sont si {{prit}} par leur travail qu’ils en oublient de vivre.
TEST: Ça ira mieux demain, surtout si émerge une demande forte de la part des consommateurs.
TEST: Toutes les bifurcations qui auraient été possibles si avaient été pris en compte des critères autre que la captation de valeur ajoutée, l’augmentation des taux de profit, et l’accumulation du capital.
TEST: si venir à la conférence coûte autant, il est préférable de s’abstenir.

12025
12026
12027
12028
12029
12030
12031
12032

12033
12034
12035
12036

12037
12038
12039
12040

12041
12042
12043
12044

12045
12046
12047
12048

12049
12050
12051
12052

12053
12054
12055
12056

12057
12058
12059
12060
12061
12062
12063
12031
12032
12033
12034
12035
12036
12037

12038
12039
12040
12041

12042
12043
12044
12045

12046
12047
12048
12049

12050
12051
12052
12053

12054
12055
12056
12057

12058
12059
12060
12061

12062
12063
12064
12065
12066
12067
12068
12069







-
+



-
+



-
+



-
+



-
+



-
+



-
+







TEST: {{si tôt dit, sitôt fait}}
TEST: sitôt dit, sitôt fait.


# s’y / si
__conf_s_y_si__
    ne  si  @:V
        <<- /conf/ -2>> s’y && Confusion probable entre la conjonction “si” et la contraction du pronom personnel “se” avec “y” (“s’y”) précédant un verbe. Exemple : La montagne, elle s’y plaît, si le temps est clément.
        <<- /conf/ -2>> s’y && Confusion probable entre la conjonction “si” et la contraction du pronom personnel “se” avec “y” (“s’y”) précédant un verbe. Exemple : La montagne, elle s’y plaît, si le temps est clément.

    [<start>|,|(]  *WORD  si  @:[123][sp]¬:[MGA]
        <<- /conf/ \-2.islower() and morph(\2, ":M")
        --2>> s’y           && Confusion probable entre la conjonction “si” et la contraction du pronom personnel “se” avec “y” (“s’y”) précédant un verbe. Exemple : La montagne, elle s’y plaît, si le temps est clément.
        --2>> s’y           && Confusion probable entre la conjonction “si” et la contraction du pronom personnel “se” avec “y” (“s’y”) précédant un verbe. Exemple : La montagne, elle s’y plaît, si le temps est clément.

    [il|ils|on]  si  @:[123][sp]¬:[MG]
        <<- /conf/
        --2>> s’y           && Confusion probable entre la conjonction “si” et la contraction du pronom personnel “se” avec “y” (“s’y”) précédant un verbe. Exemple : La montagne, elle s’y plaît, si le temps est clément.
        --2>> s’y           && Confusion probable entre la conjonction “si” et la contraction du pronom personnel “se” avec “y” (“s’y”) précédant un verbe. Exemple : La montagne, elle s’y plaît, si le temps est clément.

    [<start>|,|(]  [elle|elles|iel|iels]  si  @:[123][sp]¬:[MGA]
        <<- /conf/
        --2>> s’y           && Confusion probable entre la conjonction “si” et la contraction du pronom personnel “se” avec “y” (“s’y”) précédant un verbe. Exemple : La montagne, elle s’y plaît, si le temps est clément.
        --2>> s’y           && Confusion probable entre la conjonction “si” et la contraction du pronom personnel “se” avec “y” (“s’y”) précédant un verbe. Exemple : La montagne, elle s’y plaît, si le temps est clément.

    [<start>|,|(]  [un|une|le|la|l’|ce|cet|cette|mon|ton|son|ma|ta|sa|notre|votre|leur]  *WORD  si  @:[123]s¬:A
        <<- /conf/ morph(\3, ":[NA].*:[si]")
        --2>> s’y           && Confusion probable entre la conjonction “si” et la contraction du pronom personnel “se” avec “y” (“s’y”) précédant un verbe. Exemple : La montagne, elle s’y plaît, si le temps est clément.
        --2>> s’y           && Confusion probable entre la conjonction “si” et la contraction du pronom personnel “se” avec “y” (“s’y”) précédant un verbe. Exemple : La montagne, elle s’y plaît, si le temps est clément.

    [<start>|,|(]  [des|les|ces|mes|tes|ses|nos|vos|leurs|quelques|plusieurs]  *WORD  si  @:[23]p¬:A
        <<- /conf/ morph(\3, ":[NA].*:[pi]")
        --2>> s’y           && Confusion probable entre la conjonction “si” et la contraction du pronom personnel “se” avec “y” (“s’y”) précédant un verbe. Exemple : La montagne, elle s’y plaît, si le temps est clément.
        --2>> s’y           && Confusion probable entre la conjonction “si” et la contraction du pronom personnel “se” avec “y” (“s’y”) précédant un verbe. Exemple : La montagne, elle s’y plaît, si le temps est clément.

    [<start>|,|(]  [certains|certaines|moult|maints|maintes]  *WORD  si  @:[23]p
        <<- /conf/ morph(\3, ":[NA].*:[pi]", ":3p")
        --2>> s’y           && Confusion probable entre la conjonction “si” et la contraction du pronom personnel “se” avec “y” (“s’y”) précédant un verbe. Exemple : La montagne, elle s’y plaît, si le temps est clément.
        --2>> s’y           && Confusion probable entre la conjonction “si” et la contraction du pronom personnel “se” avec “y” (“s’y”) précédant un verbe. Exemple : La montagne, elle s’y plaît, si le temps est clément.

TEST: la politique, ne {{si}} épanouissent que les hypocrites
TEST: Jérôme {{si}} {{rend}} souvent
TEST: Mélanie {{si}} {{adonne}} avec passion.
TEST: il {{si}} croit
TEST: elle {{si}} {{complait}}
TEST: une femme {{si}} rend tous les jours
12077
12078
12079
12080
12081
12082
12083
12084

12085
12086
12087
12088
12089
12090
12091
12083
12084
12085
12086
12087
12088
12089

12090
12091
12092
12093
12094
12095
12096
12097







-
+







    soi [disants|disante|disantes]
    [>soie|soit|sois] [disant+ses]
    [soi-disants|soi-disante+s]
    [sois-disant+ses]
    [soie-disant+ses]
    [soies-disant+ses]
    [soit-disant+ses]
        <<- /conf/ ->> soi-disant                                                                   && Confusion : “soi-disant” est un adjectif invariable.|https://fr.wiktionary.org/wiki/soi-disant
        <<- /conf/ ->> soi-disant                                                                   && Confusion : “soi-disant” est un adjectif invariable.|https://fr.wiktionary.org/wiki/soi-disant

TEST: Méfiez-vous de cette {{soi-disante}} sorcière.
TEST: Méfiez-vous de cette {{soit-disant}} sorcière.
TEST: Méfiez-vous de cette {{soi disant}} sorcière.


__conf_soi_soit_soie__
12100
12101
12102
12103
12104
12105
12106
12107

12108
12109
12110

12111
12112
12113
12114

12115
12116
12117
12118
12119
12120
12121
12106
12107
12108
12109
12110
12111
12112

12113
12114
12115

12116
12117
12118
12119

12120
12121
12122
12123
12124
12125
12126
12127







-
+


-
+



-
+







        <<- /conf/ morph(>1, ":[GY]|<end>", ">à/") and not value(<1, "|il|on|elle|n’|m’|t’|s’|") and not before("(?i)quel(?:s|les?|) qu[’ ]$") and not after(" soit ")
        -2>> soi                                                                                    && Confusion probable.|https://fr.wiktionary.org/wiki/soi

    >aller ?$:W¿ de soit
        <<- /conf/ not after(" soit ") --1>> soi                                                    && Confusion probable.|https://fr.wiktionary.org/wiki/aller_de_soi

    [soi|sois|soit|>soie]  >même
        <<- /conf/ morph(<1, ":[YQ]|>(?:avec|contre|par|pour|sur)/|<start>|>,") ->> 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.
        <<- /conf/ morph(<1, ":[YQ]|>(?:avec|contre|par|pour|sur)/|<start>|>,") ->> 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.

    [sois-même|soit-même|soie-même|soies-même|soi-mêmes|sois-mêmes|soit-mêmes|soie-mêmes|soies-mêmes]
        <<- /conf/ ->> 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.
        <<- /conf/ ->> 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.

    [entre-soit|entre-sois|entre-soie+s]
        <<- /conf/ ->> entre-soi
        && Confusion : pour évoquer la situation où l’on ne rencontre que des gens proche de soi, écrivez “entre-soi”.|https://fr.wiktionary.org/wiki/entre-soi
        && Confusion : pour évoquer la situation où l’on ne rencontre que des gens proches de soi, écrivez “entre-soi”.|https://fr.wiktionary.org/wiki/entre-soi

TEST: chez {{soit}}, c’est presque toujours mieux.
TEST: ce n’est pas la philosophie en {{soit}} qui est problématique
TEST: quel que {{soie}} sa pensée, je refuse d’y accorder de l’attention.
TEST: Penser par {{soit même}}…
TEST: S’aimer {{soit-même}}, c’est le début d’une grande histoire d’amour. (Oscar Wilde)
TEST: pas sûr que {{sa}} {{soi}} terminé avant demain
12139
12140
12141
12142
12143
12144
12145
12146

12147
12148
12149
12150
12151
12152
12153
12145
12146
12147
12148
12149
12150
12151

12152
12153
12154
12155
12156
12157
12158
12159







-
+







TEST: je n’aime que les draps de {{soi}}.


__conf_soit_soi_soie__
    [<start>|,|(]  sois  @:(?:Os|C)¬:R
    [<start>|,|(]  [soi|>soie]  @:[OC]¬:R
    [<start>|,|(]  [soi|sois|>soie]  [j’|t’|c’|ç’]
        <<- /conf/ -2>> soit                                    && Confusion probable : pour évoquer une option, écrivez “soit”.|https://fr.wiktionary.org/wiki/soit#Conjonction
        <<- /conf/ -2>> soit                                    && Confusion probable : pour évoquer une option, écrivez “soit”.|https://fr.wiktionary.org/wiki/soit#Conjonction

    [quel|quels|quelle|quelles] que [soi|>soie|sois]
        <<- /conf/ -3>> soit|soient                             && Confusion probable.

    que  sa  soi  @:[WXAQ]
        <<- /conf/ -3>> soit|soie                                               && Confusion. Pour le verbe être au subjonctif, écrivez “soit”. Pour la fibre servant à la confection de textile, écrivez “soie”.

12169
12170
12171
12172
12173
12174
12175
12176

12177
12178
12179

12180
12181
12182

12183
12184
12185
12186

12187
12188
12189
12190

12191
12192
12193
12194

12195
12196
12197

12198
12199
12200
12201
12202
12203
12204
12175
12176
12177
12178
12179
12180
12181

12182
12183
12184

12185
12186
12187

12188
12189
12190
12191

12192
12193
12194
12195

12196
12197
12198
12199

12200
12201
12202

12203
12204
12205
12206
12207
12208
12209
12210







-
+


-
+


-
+



-
+



-
+



-
+


-
+







TEST: Sois le plus efficace possible.


# son / sont
__conf_son_sont__
    [ne|n’|me|m’|te|t’|se|s’] son
    [ne|n’] [le|l’|leur|leurs|lui|nous|vous] son
        <<- /conf/ --1>> sont                                   && Confusion : “son” est un déterminant ou un nom masculin. Le verbe “être” à la 3ᵉ personne du pluriel s’écrit “sont”.
        <<- /conf/ --1>> sont                                   && Confusion : “son” est un déterminant ou un nom masculin. Le verbe “être” à la 3ᵉ personne du pluriel s’écrit “sont”.

    [qui|que|comment|pourquoi|lorsque|quand] son [,|@:[DR]]
        <<- /conf/ -2>> sont                                    && Confusion probable : “son” est un déterminant ou un nom masculin. Le verbe “être” à la 3ᵉ personne du pluriel s’écrit “sont”.
        <<- /conf/ -2>> sont                                    && Confusion probable : “son” est un déterminant ou un nom masculin. Le verbe “être” à la 3ᵉ personne du pluriel s’écrit “sont”.

    [<start>|,|(] sont @:[NA].*:[me]:s|>[aeéiîou].*/:[NA].*:f:s¬:[GW]
        <<- /conf/ -2>> son                                     && Confusion probable : “sont” est le verbe “être” à la 3ᵉ personne du pluriel. Pour le déterminant, écrivez “son”.
        <<- /conf/ -2>> son                                     && Confusion probable : “sont” est le verbe “être” à la 3ᵉ personne du pluriel. Pour le déterminant, écrivez “son”.

    sont @:[NA].*:[me]:s|>[aeéiîou].*/:[NA].*:f:s¬:[GW]
        <<- /conf/ morph(<1, ":(?:V|Cs|R)", ":(?:[NA].*:[pi]|Ov)") and not tag_before(\1, "_ceque_")
        -1>> son                                                && Confusion probable : “sont” est le verbe “être” à la 3ᵉ personne du pluriel. Pour le déterminant, écrivez “son”.
        -1>> son                                                && Confusion probable : “sont” est le verbe “être” à la 3ᵉ personne du pluriel. Pour le déterminant, écrivez “son”.

    [à|chez|dès|par] sont
    [avec|contre|devant|derrière|pour|sans|sur] sont @:[NA].*:[me]:s|>[aeéiîou].*/:[NA].*:f:s¬:[GW]
        <<- /conf/ -2>> son                                     && Confusion probable : “sont” est le verbe “être” à la 3ᵉ personne du pluriel. Pour le déterminant, écrivez “son”.
        <<- /conf/ -2>> son                                     && Confusion probable : “sont” est le verbe “être” à la 3ᵉ personne du pluriel. Pour le déterminant, écrivez “son”.

    en sont @:[NA].*:[me]:s|>[aeéiîou].*/:[NA].*:f:s¬:[GW]
        <<- /conf/ not value(<1, "|ils|elles|iels|leur|lui|nous|vous|m’|t’|s’|l’|") and not tag(<1, "_ceque_")
        -2>> son                                                && Confusion probable : “sont” est le verbe “être” à la 3ᵉ personne du pluriel. Pour le déterminant, écrivez “son”.
        -2>> son                                                && Confusion probable : “sont” est le verbe “être” à la 3ᵉ personne du pluriel. Pour le déterminant, écrivez “son”.

    son [ceux|celles]
        <<- /conf/ not morph(<1, ":D.*:m:s") -1>> sont          && Confusion probable : “son” est un déterminant ou un nom masculin. Le verbe “être” à la 3ᵉ personne du pluriel s’écrit “sont”.
        <<- /conf/ not morph(<1, ":D.*:m:s") -1>> sont          && Confusion probable : “son” est un déterminant ou un nom masculin. Le verbe “être” à la 3ᵉ personne du pluriel s’écrit “sont”.

    [<start>|,|(]  [elles|certaines|quelques-uns|quelques-unes]  son  @:[AQW]
        <<- /conf/ -2>> \2,                                     && Confusion possible : ou vous confondez “son” et “sont”, ou vous devriez mettre une virgule après “\2”.
        <<- /conf/ -3>> sont                                    && Confusion possible : pour la conjugaison de “être” à la 3ᵉ personne du pluriel, écrivez “sont”.

TEST: ne leur {{son}} pas odieux.
TEST: Ces chiens me {{son}} odieux.
12245
12246
12247
12248
12249
12250
12251
12252

12253
12254
12255
12256
12257
12258
12259
12251
12252
12253
12254
12255
12256
12257

12258
12259
12260
12261
12262
12263
12264
12265







-
+







# statue / statut / statu
__conf_statu_statue_statut__
    [statut|statue|status] quo
        <<- /conf/ ->> statu quo                && Confusion. Écrivez “statu quo”.|https://fr.wiktionary.org/wiki/statu_quo

    statu ~¬^[qQ][uU][oO]$
    statu [<end>|,|)]
        <<- /conf/ -1>> status|statut|statue    && Confusion : “statu” ne s’emploie que dans l’expression “statu quo”.
        <<- /conf/ -1>> status|statut|statue    && Confusion : “statu” ne s’emploie que dans l’expression “statu quo”.

TEST: Ça n’en finit pas, c’est le {{statut quo}}.
TEST: mettre à jour son {{statu}}.


# subornation / subordination
__conf_subornation_subordination__
12270
12271
12272
12273
12274
12275
12276
12277

12278
12279
12280
12281

12282
12283
12284
12285

12286
12287
12288
12289

12290
12291
12292
12293
12294
12295
12296
12276
12277
12278
12279
12280
12281
12282

12283
12284
12285
12286

12287
12288
12289
12290

12291
12292
12293
12294

12295
12296
12297
12298
12299
12300
12301
12302







-
+



-
+



-
+



-
+







    sur [de|d’] {pronom_obj}
    sur [de|d’] $:M
    sur [de|d’] [ne|n’|me|m’|te|t’|se|s’]
    sur [de|d’] [le|les|mon|ton|son|ma|ta|sa|mes|tes|ses|ce|cet|cette|ces|cela|ceci|ça]
    sur [de|d’] [la|l’] $:Y
    sur [de|d’] $:Y
        <<- /conf/ -1>> sûr
        && Confusion probable : “sur” est une préposition ou un adjectif signifiant acide ou aigre ; utilisez “sûr” pour certain, vrai ou sans danger.|https://fr.wiktionary.org/wiki/sur
        && Confusion probable : “sur” est une préposition ou un adjectif signifiant acide ou aigre ; utilisez “sûr” pour certain, vrai ou sans danger.|https://fr.wiktionary.org/wiki/sur

    [sure|surs|sures] [de|d’|que|qu’]
        <<- /conf/ -1>> =\1.replace("u", "û").replace("U", "Û")
        && Confusion probable : “sur” un adjectif signifiant acide ou aigre ; utilisez “sûr” pour certain, vrai ou sans danger.|https://fr.wiktionary.org/wiki/sur
        && Confusion probable : “sur” un adjectif signifiant acide ou aigre ; utilisez “sûr” pour certain, vrai ou sans danger.|https://fr.wiktionary.org/wiki/sur

    en >lieu sur
        <<- /conf/ -3>> sûr
        && Confusion probable : “sur” est une préposition ou un adjectif signifiant acide ou aigre ; utilisez “sûr” pour certain, vrai ou sans danger.|https://fr.wiktionary.org/wiki/sur
        && Confusion probable : “sur” est une préposition ou un adjectif signifiant acide ou aigre ; utilisez “sûr” pour certain, vrai ou sans danger.|https://fr.wiktionary.org/wiki/sur

    en >être >sur
        <<- /conf/ -3>> =\3.replace("u", "û").replace("U", "Û")
        && Confusion probable : “sur” un adjectif signifiant acide ou aigre ; utilisez “sûr” pour certain, vrai ou sans danger.|https://fr.wiktionary.org/wiki/sur
        && Confusion probable : “sur” un adjectif signifiant acide ou aigre ; utilisez “sûr” pour certain, vrai ou sans danger.|https://fr.wiktionary.org/wiki/sur

TEST: Je suis {{sur}} de Patrick.
TEST: Je suis {{sure}} qu’il ne va pas tarder à venir
TEST: {{sures}} d’elles-mêmes, elles ne s’en laissent pas conter.
TEST: {{sur}} de toi et de moi, que peut-il nous arriver, sinon le meilleur.
TEST: Il est tellement {{sur}} de la trouver.
TEST: ils sont en lieu {{sur}} et introuvables.
12336
12337
12338
12339
12340
12341
12342
12343

12344
12345
12346
12347
12348
12349
12350
12342
12343
12344
12345
12346
12347
12348

12349
12350
12351
12352
12353
12354
12355
12356







-
+







    chaque chose en son [>tant|tan]
        <<- /conf/ --1>> temps                              && Confusion. Pour ce qui est temporel, écrivez “temps”.|https://fr.wiktionary.org/wiki/temps

    un [>tan|tant] [de|d’]
        <<- /conf/ -2>> temps                               && Confusion. Pour ce qui est temporel, écrivez “temps”.|https://fr.wiktionary.org/wiki/temps

    en [tant|>tan] [de|d’] [guerre|paix|crise|doute|pluie]
        <<- /conf/ -2>> temps                               && Confusion. Écrivez « en temps de » si vous évoquez une période de temps.|https://fr.wiktionary.org/wiki/temps
        <<- /conf/ -2>> temps                               && Confusion. Écrivez « en temps de » si vous évoquez une période de temps.|https://fr.wiktionary.org/wiki/temps

    de [tant|>tan] en [tant|>tan]
        <<- /conf/ ->> de temps en temps                    && Confusion. Écrivez “de temps en temps”.|https://fr.wiktionary.org/wiki/de_temps_en_temps

    depuis la [nui|nuit] des [>tan|tant]
        <<- /conf/ --1>> temps                              && Confusion. Locution “depuis la nuit des temps”.|https://fr.wiktionary.org/wiki/temps

12359
12360
12361
12362
12363
12364
12365
12366

12367
12368
12369
12370
12371
12372
12373
12365
12366
12367
12368
12369
12370
12371

12372
12373
12374
12375
12376
12377
12378
12379







-
+








    [après|avec] [temps|>tan] [de|d’]
        <<- /conf/ -2>> tant                                && Confusion. Écrivez “tant” pour évoquer une quantité de quelque chose.|https://fr.wiktionary.org/wiki/tant

    en [temps|>tan] [que|qu’]
        <<- not (value(\2, "|temps|") and value(<1, "|temps|")) >>>
        <<- /conf/ value(>1, "|tel|tels|telle|telles|") -2>> tant       && Confusion. Locution « en tant que tel ».|https://fr.wiktionary.org/wiki/en_tant_que_tel
        <<- /conf/ __else__ -2>> tant                                   && Confusion. Écrivez « en tant que ».|https://fr.wiktionary.org/wiki/en_tant_que
        <<- /conf/ __else__ -2>> tant                                   && Confusion. Écrivez « en tant que ».|https://fr.wiktionary.org/wiki/en_tant_que

    !! tant pis ¡¡
    [>tan|tant|temps] [pis|pi]
        <<- /conf/ ->> tant pis                             && Confusion. Locution “tant pis”.|https://fr.wiktionary.org/wiki/tant_pis

    !! tant s’ en faut ¡¡
    [tant|>tan|temps] [sens|cens|sans|>sang|san] [faux|faut]
12493
12494
12495
12496
12497
12498
12499
12500

12501
12502
12503
12504
12505
12506
12507
12499
12500
12501
12502
12503
12504
12505

12506
12507
12508
12509
12510
12511
12512
12513







-
+







    [chez|pour|contre|avec] toit
    >parler ?@:[WX]¿ de toit
    c’ >être toit
        <<- /conf/ --1>> toi                        && Confusion. Le toit est constitué d’une toiture. Pour le pronom personnel à la 2ᵉ personne, écrivez “toi”.|https://fr.wiktionary.org/wiki/toi

    [sous|sur] [mon|ton|son|notre|votre|leur] toi
    [sous|sur] [le|ce|un] ?même¿ toi
        <<- /conf/ --1>> toit                       && Confusion : “toi” est le pronom personnel à la 2ᵉ personne. Pour évoquer le sommet d’un bâtiment, écrivez “toit”.|https://fr.wiktionary.org/wiki/toit
        <<- /conf/ --1>> toit                       && Confusion : “toi” est le pronom personnel à la 2ᵉ personne. Pour évoquer le sommet d’un bâtiment, écrivez “toit”.|https://fr.wiktionary.org/wiki/toit

TEST: ce n’est pas contre {{toit}}
TEST: sous son {{toi}}, c’est sa loi qui prime.


# tour à tour
__conf_tour_à_tour__
12602
12603
12604
12605
12606
12607
12608
12609

12610
12611
12612
12613

12614
12615
12616
12617
12618

12619
12620
12621
12622
12623

12624
12625
12626
12627
12628
12629
12630
12608
12609
12610
12611
12612
12613
12614

12615
12616
12617
12618

12619
12620
12621
12622
12623

12624
12625
12626
12627
12628

12629
12630
12631
12632
12633
12634
12635
12636







-
+



-
+




-
+




-
+







    >plat [>fond] [de|d’] [vert+s|>ver]
    >plafond [de|d’] [vert+s|>ver]
        <<- /conf/ --1>> verre                                      && Confusion. Locution “plafond de verre”.|https://fr.wiktionary.org/wiki/plafond_de_verre

    [le|ce|du|un] [>verre|vert+s|vers] ?qui¿ [ai|ait|es|est|>étai|était|étais|serais|serai|serait|fut|fût|fus] dans le fruit
    [le|ce|du|un] [>verre|vert+s|vers] dans le fruit
        <<- /conf/ -2>> ver
        && Confusion. Verre = matière. Vert = couleur. Vers = suite de mots rythmés. Vers = préposition (« en direction de »). L’animal s’écrit “ver”.
        && Confusion. Verre = matière. Vert = couleur. Vers = suite de mots rythmés. Vers = préposition (« en direction de »). L’animal s’écrit “ver”.

    [>verre|vert+s] de terre
        <<- /conf/ -1>> ver|vers
        && Confusion. Verre = matière. Vert = couleur. Vers = suite de mots rythmés. Vers = préposition (« en direction de »). L’animal s’écrit “ver”.
        && Confusion. Verre = matière. Vert = couleur. Vers = suite de mots rythmés. Vers = préposition (« en direction de »). L’animal s’écrit “ver”.

    [>ver|vert+s] [de|d’] [>bière|>cidre|>contact|>champagne|>chianti|>dégustation|jus|>lait|>limonade|>rosé|>rhum|>sécurité|>thé|>vin|>whisky|>alcool|>absinthe|>eau|>urine]
    >ver [dépoli+ses|>incassable]
        <<- /conf/ -1>> verre|verres
        && Confusion probable. Verre = matière. Vert = couleur. Ver = animal invertébré rampant. Vers = suite de mots rythmés. Vers = préposition (« en direction de »).
        && Confusion probable. Verre = matière. Vert = couleur. Ver = animal invertébré rampant. Vers = suite de mots rythmés. Vers = préposition (« en direction de »).

    en route [vert+s|ver|>verre]
    >faire ?@:[WX]¿ route [>vert|ver|>verre]
        <<- /conf/ --1>> vers
        && Confusion. Pour dire “en direction de” écrivez “vers”.|https://fr.wiktionary.org/wiki/vers
        && Confusion. Pour dire “en direction de”, écrivez “vers”.|https://fr.wiktionary.org/wiki/vers

TEST: ce {{vert}} quoi nous allons, c’est une catastrophe à l’échelle planétaire.
TEST: en finir avec le {{vert}} qui était dans le fruit.
TEST: un immonde {{vert}} de terre
TEST: Un {{ver}} de bière fraîche.
TEST: On va lui tirer les {{verts du nez}}
TEST: tirer les {{vers du né}}
12700
12701
12702
12703
12704
12705
12706
12707

12708
12709
12710
12711
12712
12713
12714
12715
12716

12717
12718
12719
12720

12721
12722
12723
12724
12725
12726
12727
12706
12707
12708
12709
12710
12711
12712

12713
12714
12715
12716
12717
12718
12719
12720
12721

12722
12723
12724
12725

12726
12727
12728
12729
12730
12731
12732
12733







-
+








-
+



-
+







# voir / voire
__conf_voir_voire__
    voir [grand|petit|rouge]
        <<- !2>>

    voir  @:A¬:[NGM]
        <<- /conf/ not \2.istitle() and not morph(<1, ":(?:O[vs]|X)|>(?:aller|falloir|pouvoir|savoir|vouloir|préférer|faire|penser|imaginer|souhaiter|désirer|espérer|de|à)/")
        -1>> voire                      && Confusion probable : “voir” est un verbe concernant la perception visuelle. Pour signifier “et même possiblement”, écrivez “voire”.|https://fr.wiktionary.org/wiki/voire
        -1>> voire                      && Confusion probable : “voir” est un verbe concernant la perception visuelle. Pour signifier “et même possiblement”, écrivez “voire”.|https://fr.wiktionary.org/wiki/voire

    [ne|n’|le|la|les|l’|me|m’|te|t’|se|s’|y]                                             voire
    [de|d’]                                     ?[en|y]¿                                 voire
    [me|m’|te|t’|se|s’|nous|vous]               [en|y]                                   voire
    [le|la|l’|les]                              [en|y]                                   voire
    [comme|lorque|puisque|quand|que|quoique|si] ?[en|y]¿                                 voire
    [ni|par|pour|sans]                          ?[en|y]¿                                 voire
    [>aller|>falloir|>pouvoir|>vouloir]         ?[guère|jamais|pas|plus|point|rien]¿   ?[nous|vous]¿   voire
        <<- /conf/ --1>> voir           && Confusion probable : “voire” signifie “et même possiblement”. Pour le verbe, écrivez “voir”.|https://fr.wiktionary.org/wiki/voire
        <<- /conf/ --1>> voir           && Confusion probable : “voire” signifie “et même possiblement”. Pour le verbe, écrivez “voir”.|https://fr.wiktionary.org/wiki/voire

    [à|par] voire
    [et|ou] voire  $:D
        <<- /conf/ -2>> voir            && Confusion probable : “voire” signifie “et même possiblement”. Pour le verbe, écrivez “voir”.|https://fr.wiktionary.org/wiki/voire
        <<- /conf/ -2>> voir            && Confusion probable : “voire” signifie “et même possiblement”. Pour le verbe, écrivez “voir”.|https://fr.wiktionary.org/wiki/voire

TEST: Elles sont fatiguées, {{voir}} épuisées.
TEST: Ce serait pour aider, ainsi que {{voire}} l’avancement du projet.
TEST: Je ne vais jamais {{voire}} ces gens-là.
TEST: penser juste et {{voire}} la vérité.
TEST: Elles vont voir rouge en apprenant cet échec.
TEST: Voir les enfants jouer ne me rend pas nostalgique.
12808
12809
12810
12811
12812
12813
12814
12815

12816
12817
12818

12819
12820
12821
12822
12823
12824
12825
12814
12815
12816
12817
12818
12819
12820

12821
12822
12823

12824
12825
12826
12827
12828
12829
12830
12831







-
+


-
+







TEST: l’{{assemblé national}}
TEST: l’Assemblée nationale


# ayants droit
__gn_ayants_droit__
    [les|des|ces|ses|nos|vos|leurs] ayant [droit|droits]
        <<- /gn/ -2:3>> ayants droit                                && Au singulier : “un ayant droit”. Au pluriel : “des ayants droit”.
        <<- /gn/ -2:3>> ayants droit                                && Au singulier : “un ayant droit”. Au pluriel : “des ayants droit”.

TEST: Comment lutter contre la cupidité des {{ayant droits}}
# Note: À supprimer? Graphie qui tend vers la soudure et le pluriel régulier (ayant-droit(s))
# Note: À supprimer? Graphie qui tend vers la soudure et le pluriel régulier (ayant-droit·s)


# bien d’autres
__gn_bien_d_autres__
    [<start>|,|(|et]  bien  d’  autre
        <<- /gn/ not value(>1, "|part|") --1>> autres
        && Au pluriel : “bien d’autres”, c’est-à-dire d’autres personnes, d’autres choses, d’autres considérations…|https://fr.wiktionary.org/wiki/bien_d%E2%80%99autres
12867
12868
12869
12870
12871
12872
12873
12874

12875
12876
12877
12878
12879
12880
12881
12882
12883
12884
12885

12886
12887
12888
12889
12890
12891
12892
12873
12874
12875
12876
12877
12878
12879

12880
12881
12882
12883
12884
12885
12886
12887
12888
12889
12890
12891
12892
12893
12894
12895
12896
12897
12898
12899







-
+











+







TEST: elles arrivent en rangs serrés.


# entre autres
__loc_entre_autres!6__
    entre autre [<end>|,|)]
    entre autre @:(?:[GW]|[NA].*:[pi])
        <<- /loc/ -2>> autres                                       && La locution “entre autres”, toujours au pluriel.|https://fr.wiktionary.org/wiki/entre_autres
        <<- /loc/ not tag(\2, "eg1mot") -2>> autres                 && La locution “entre autres”, toujours au pluriel.|https://fr.wiktionary.org/wiki/entre_autres

    !! entre autres choses ¡¡
    entre [autre+s] [chose+s]
        <<- /loc/ not value(<1, "|j’|n’|il|elle|on|")
        ->> entre autres choses                                     && La locution “entre autres choses”, toujours au pluriel.

TEST: Des raisons ? Entre {{autre}} je n’en savais pas plus que lui.
TEST: il y eut, entre {{autre}}, des erreurs commises.
TEST: il y aura {{entre autre chose}} des répercussions terribles.
TEST: il y aura {{entre autre choses}} des répercussions terribles.
TEST: on entre autre chose dans la base pour voir ce que ça donne.
TEST: entre “autre” et “différent”, une simple question de nuance


# nul et non avenu
__gn_nul_et_non_avenu__
    nul et non >avenu
        <<- /gn/ not value(\-1, "|avenu|") --1>> avenu              && Accord avec “\1”.

12912
12913
12914
12915
12916
12917
12918
12919

12920
12921
12922
12923
12924

12925
12926
12927
12928
12929
12930
12931
12919
12920
12921
12922
12923
12924
12925

12926
12927
12928
12929
12930

12931
12932
12933
12934
12935
12936
12937
12938







-
+




-
+








TEST: {{en terme de}} communication, c’est une véritable catastrophe


# tous / tout / toutes
__loc_tous_azimuts__
    tout [azimut|azimuts]
        <<- /loc/ ->> tous azimuts                                  && « Tous azimuts » signifie « dans toutes les directions ».
        <<- /loc/ ->> tous azimuts                                  && « Tous azimuts » signifie « dans toutes les directions ».

__loc_une_bonne_fois_pour_toutes__
    une fois pour toute
    une bonne fois pour toute
        <<- /loc/ --1>> toutes                                      && Mettez “toute” au pluriel. Sous-entendu : une fois pour toutes les autres fois.
        <<- /loc/ --1>> toutes                                      && Mettez “toute” au pluriel. Sous-entendu : une fois pour toutes les autres fois.

TEST: ils lancent des attaques {{tout azimut}}.
TEST: une bonne fois pour {{toute}}
TEST: ce sera réglé une fois pour {{toute}} quand il sera capturé.


# vu de ses yeux vu
12944
12945
12946
12947
12948
12949
12950
12951

12952
12953
12954
12955
12956
12957
12958
12959
12960

12961
12962
12963
12964
12965
12966
12967
12951
12952
12953
12954
12955
12956
12957

12958
12959
12960
12961
12962
12963
12964
12965
12966

12967
12968
12969
12970
12971
12972
12973
12974







-
+








-
+







TEST: Je suis sûr de les avoir vus de mes yeux vus.


# ni vu ni connu
__loc_ni_vu_ni_connu__
    ni [vus|vue|vues] ni [connu|connus|connue|connues]
    ni vu ni [connus|connue|connues]
        <<- /loc/ ->> ni vu ni connu                                                                && Ni vu ni connu : locution invariable.|https://fr.wiktionary.org/wiki/ni_vu_ni_connu
        <<- /loc/ ->> ni vu ni connu                                                                && Ni vu ni connu : locution invariable.|https://fr.wiktionary.org/wiki/ni_vu_ni_connu

TEST: {{ni vus ni connus}}, on va s’en occuper.
TEST: ni vu ni connu, j’t’embrouille.


#### X fois par jour/an/semaine/etc.
__gn_x_fois_par_période__
    fois par [nanosecondes|millisecondes|secondes|minutes|heures|jours|semaines|semestres|trimestres|ans|années|décennies|siècles|millénaires]
        <<- /gn/ -3>> =suggSing(\3)                                     && Mettez au singulier : x fois par période de temps, donc pour chaque période de temps.
        <<- /gn/ -3>> =suggSing(\3)                                     && Mettez au singulier : x fois par période de temps, donc pour chaque période de temps.

TEST: vingt fois par {{ans}}, à peu près.
TEST: 12 fois par {{jours}}, ça suffit.
TEST: Deux fois par mois…


#### lundi, mardi, mercredi, jeudi, vendredi, samedi, dimanche / matin, soir
13066
13067
13068
13069
13070
13071
13072
13073

13074
13075
13076
13077

13078
13079
13080

13081
13082
13083

13084
13085
13086
13087
13088
13089
13090
13091

13092
13093
13094
13095
13096
13097
13098
13073
13074
13075
13076
13077
13078
13079

13080
13081
13082
13083

13084
13085
13086

13087
13088
13089

13090
13091
13092
13093
13094
13095
13096
13097

13098
13099
13100
13101
13102
13103
13104
13105







-
+



-
+


-
+


-
+







-
+







# Les États
__maj_État__
    en fonction de l’ état
        <<- !5>>

    état [français|belge|suisse|canadien|palestinien|souverain|américain|russe|anglais|allemand|espagnol|italien|mexicain|japonais|chinois|australien|polonais|membre|africain|européen|asiatique|voyou|démocratique|totalitaire|fédéral|fédéré|capitaliste|communiste|providence|nation]
    état de droit
        <<- /maj/ \1 == "état" -1>> État                            && Majuscule manquante : si vous parlez de l’institution dirigeante d’une nation, écrivez “État”.
        <<- /maj/ \1 == "état" -1>> État                            && Majuscule manquante : si vous parlez de l’institution dirigeante d’une nation, écrivez “État”.

    états [français|>belge|>suisse|canadien+s|palestinien+s|souverain+s|>membre|américain+s|africain+s|européen+s|>asiatique|>voyou|>démocratique|>totalitaire|>fédéral|fédérés|>capitaliste|>communiste|>providence|>nation]
    états de droit
        <<- /maj/ \1 == "états" -1>> États                          && Majuscule manquante : si vous parlez de l’institution dirigeante d’une nation, écrivez “État”.
        <<- /maj/ \1 == "états" -1>> États                          && Majuscule manquante : si vous parlez de l’institution dirigeante d’une nation, écrivez “État”.

    [>affaire|>agent|>administration|>chancellerie|>chef|>conseil|>coup|>diplôme|>doctorat|>emprunt|>lycée|>propriété|>secret|>homme|>femme|>police|>religion|>ministre|>ministère|>subvention|>secrétaire|secret|secrets|>secrétariat|>raison|>ressortissant|>université] d’ état
        <<- /maj/ \3 == "état" -3>> État                            && Majuscule manquante : si vous parlez de l’institution dirigeante d’une nation, écrivez “État”.
        <<- /maj/ \3 == "état" -3>> État                            && Majuscule manquante : si vous parlez de l’institution dirigeante d’une nation, écrivez “État”.

    [>défense|>sûreté|>sureté|>agent|>budget|>caisse|>capital|>constitution|>charge|>chef|>dirigeant|>denier|>finance|>fonction|>fonctionnement|>frontière|>institution|>propriété|>monopole|>pouvoir|>rouage|>ressource|>service|>subvention|>suprême] de l’ état
        <<- /maj/ \4 == "état" -4>> État                            && Majuscule manquante : si vous parlez de l’institution dirigeante d’une nation, écrivez “État”.
        <<- /maj/ \4 == "état" -4>> État                            && Majuscule manquante : si vous parlez de l’institution dirigeante d’une nation, écrivez “État”.

    état-nation
    état-providence
    états-nation
    états-nations
    états-providence
    états-providences
        <<- /maj/ \1[0:1] == "é" -1>> =\1.replace("é", "É")         && Majuscule manquante : si vous parlez de l’institution dirigeante d’une nation, écrivez “État”.
        <<- /maj/ \1[0:1] == "é" -1>> =\1.replace("é", "É")         && Majuscule manquante : si vous parlez de l’institution dirigeante d’une nation, écrivez “État”.

TEST: Nous n’avons reçu aucune décision de l’{{état}} fédéral.
TEST: Les {{états}} démocratiques ne sont gouvernés que par des hypocrites et des opportunistes.
TEST: C’est une affaire d’{{état}}.
TEST: la défense de l’{{état}}.                                         ->> État
TEST: C’est une prérogative de l’{{état-nation}}                        ->> État-nation

13308
13309
13310
13311
13312
13313
13314
13315

13316
13317
13318

13319
13320
13321

13322
13323
13324
13325
13326
13327
13328
13315
13316
13317
13318
13319
13320
13321

13322
13323
13324

13325
13326
13327

13328
13329
13330
13331
13332
13333
13334
13335







-
+


-
+


-
+








    ne pas [tous|toutes|tout]
        <<- ~-1>> *


__gn_tout_det__
    [<start>|,|(]  tout [deux|trois]
        <<- /gn/ -2>> tous                                                                          && Locution pronominale : « tous deux ».|https://fr.wiktionary.org/wiki/tous_deux
        <<- /gn/ -2>> tous                                                                          && Locution pronominale : « tous deux ».|https://fr.wiktionary.org/wiki/tous_deux

    tout [mes|tes|ses|ces|nos|vos|leurs|ceux|celles]
        <<- /gn/ not morph(<1, ">(?:d[eu]|avant|après|malgré)/") -1>> tous                          && Erreur d’accord probable avec « \2 ».
        <<- /gn/ not morph(<1, ">(?:d[eu]|avant|après|malgré)/") -1>> tous                          && Erreur d’accord probable avec « \2 ».

    tout les @:¬:(?:3s|Oo)
        <<- /gn/ not morph(<1, ">(?:d[eu]|avant|après|malgré)/") -1>> tous                          && Erreur d’accord probable avec « les \3 ».
        <<- /gn/ not morph(<1, ">(?:d[eu]|avant|après|malgré)/") -1>> tous                          && Erreur d’accord probable avec « les \3 ».

    de tout les temps
        <<- /gn/ -2>> tous                                                                          && Erreur d’accord avec « \3 \4 ».

TEST: {{Tout}} deux sont partis les premiers.
TEST: {{Tout}} mes hommes sont venus.
TEST: {{Tout}} les hommes sont dingues.
13370
13371
13372
13373
13374
13375
13376
13377
13378


13379
13380
13381
13382
13383


13384
13385
13386
13387
13388
13389
13390

13391
13392
13393
13394
13395
13396
13397
13398
13399
13400
13401
13402
13403
13404
13405
13406
13407
13408
13409


13410
13411
13412
13413
13414


13415
13416
13417
13418

13419
13420
13421
13422
13423
13424
13425
13377
13378
13379
13380
13381
13382
13383


13384
13385
13386
13387
13388


13389
13390
13391
13392
13393
13394
13395
13396

13397
13398
13399
13400
13401
13402
13403
13404
13405
13406
13407
13408
13409
13410
13411
13412
13413
13414


13415
13416
13417
13418
13419


13420
13421
13422
13423
13424

13425
13426
13427
13428
13429
13430
13431
13432







-
-
+
+



-
-
+
+






-
+

















-
-
+
+



-
-
+
+



-
+







TEST: toute mon ignorance
TEST: j’eus toutes les peines du monde à l’en convaincre


__gn_tous_det_nom__
    [<start>|,|(]     tous    [des|mes|tes|ses|ces]   @:[NA].*:f¬:[me]
    [<start>|,|(]     tous    [les]                   @:[NA].*:f¬:(?:3p|[me]|Y)
        <<- /gn/ -2>> toutes                                                                        && Erreur d’accord probable : « \4 » est féminin.
        <<- /gn/ __also__ and hasFemForm(\4) -4>> =suggMasPlur(\4, True)                            && Erreur d’accord probable : « \2 » est masculin.
        <<- /gn/ -2>> toutes                                                                        && Erreur d’accord probable : « \4 » est féminin.
        <<- /gn/ __also__ and hasFemForm(\4) -4>> =suggMasPlur(\4, True)                            && Erreur d’accord probable : « \2 » est masculin.

    tous    [des|mes|tes|ses|ces]   @:[NA].*:f¬:[me]
    tous    [les]                   @:[NA].*:f¬:(?:3p|[me]|Y)
        <<- /gn/ morph(<1, ":", ":(?:R|[123][sp]|Q)|>(?:[nv]ous|eux)/") -1>> toutes                 && Erreur d’accord probable : « \3 » est féminin.
        <<- /gn/ __also__ and hasFemForm(\3) -3>> =suggMasPlur(\3, True)                            && Erreur d’accord probable : « \1 » est masculin.
        <<- /gn/ morph(<1, ":", ":(?:R|[123][sp]|Q)|>(?:[nv]ous|eux)/") -1>> toutes                 && Erreur d’accord probable : « \3 » est féminin.
        <<- /gn/ __also__ and hasFemForm(\3) -3>> =suggMasPlur(\3, True)                            && Erreur d’accord probable : « \1 » est masculin.

    tous un chacun
        <<- /loc/ ->> tout un chacun                                                                && Pronom indéfini “tout un chacun”.|https://fr.wiktionary.org/wiki/tout_un_chacun

    [<start>|(] tous [le|l’|ce|cet|mon|ton|son|notre|votre|leur] @:N.*:[me]:[si]
    [<start>|(] tous [le|l’|ce|cet|mon|ton|son|notre|votre|leur] @:N.*:[me]:[si]
        <<- /gn/ -2>> tout                                                                          && Erreur d’accord probable avec « \3 \4 ».
        <<- /gn/ -2>> tout                                                                          && Erreur d’accord probable avec « \3 \4 ».

TEST: {{tous}} ces {{idiotes}}
TEST: indubitablement {{tous}} des {{privilégiées}}
TEST: {{tous un chacun}} avait son opinion
TEST: {{tous}} mon amour pour elle n’y fit rien
TEST: {{tous}} mon plan consistait à les prendre par surprise et de vitesse
TEST: ça consiste à ne pas tous les lire
TEST: Ils ont tous mon plan de sauvetage de Beyrouth.
TEST: il y avait pour tous une carte de bienvenue, pour toutes un bouquet de rose.
TEST: ils avaient tous le même bagage, tous le dessein de vaincre
TEST: Mes amis sont tous arrivés, je les attendais tous.
TEST: Tous sont venus avec un peu de méfiance.


__gn_toutes_det_nom__
    [<start>|,|(]     toutes  [des|mes|tes|ses|ces]   @:[NA].*:m¬:[fe]
    [<start>|,|(]     toutes  [les]                   @:[NA].*:m¬:(?:3p|[fe]|Y)
        <<- /gn/ -2>> tous                                                                          && Erreur d’accord probable : « \4 » est masculin.
        <<- /gn/ __also__ and hasFemForm(\4) -4>> =suggFemPlur(\4, True)                            && Erreur d’accord probable : « \2 » est féminin.
        <<- /gn/ -2>> tous                                                                          && Erreur d’accord probable : « \4 » est masculin.
        <<- /gn/ __also__ and hasFemForm(\4) -4>> =suggFemPlur(\4, True)                            && Erreur d’accord probable : « \2 » est féminin.

    toutes  [des|mes|tes|ses|ces]   @:[NA].*:m¬:[fe]
    toutes  [les]                   @:[NA].*:m¬:(?:3p|[fe]|Y)
        <<- /gn/ morph(<1, ":", ":(?:R|[123][sp]|Q)|>(?:[nv]ous|eux)/") -1>> tous                   && Erreur d’accord probable : « \3 » est masculin.
        <<- /gn/ __also__ and hasFemForm(\3) -3>> =suggFemPlur(\3, True)                            && Erreur d’accord probable : « \1 » est féminin.
        <<- /gn/ morph(<1, ":", ":(?:R|[123][sp]|Q)|>(?:[nv]ous|eux)/") -1>> tous                   && Erreur d’accord probable : « \3 » est masculin.
        <<- /gn/ __also__ and hasFemForm(\3) -3>> =suggFemPlur(\3, True)                            && Erreur d’accord probable : « \1 » est féminin.

    [<start>|(] toutes [la|l’|cette|mon|ton|son|ma|ta|sa|notre|votre|leur] @:N.*:[fe]:[si]
    [<start>|(] toutes [la|l’|cette|mon|ton|son|ma|ta|sa|notre|votre|leur] @:N.*:[fe]:[si]
        <<- /gn/ -2>> toute                                                                         && Erreur d’accord probable avec « \3 \4 ».
        <<- /gn/ -2>> toute                                                                         && Erreur d’accord probable avec « \3 \4 ».

TEST: {{toutes}} mes {{bars}}
TEST: vraiment {{toutes}} des {{costauds}}
TEST: {{toutes}} sa dévotion n’y suffisait pas                                          ->> toute
TEST: {{toutes}} la pensée philosophique a buté sur la question de la liberté           ->> toute
TEST: Elles connaissent toutes le monde féerique des princes et princesses.
TEST: Les filles, plus studieuses que les garçons, ont toutes le document transmis par courriel.
13506
13507
13508
13509
13510
13511
13512
13513

13514
13515
13516
13517
13518
13519
13520
13521
13522
13523

13524
13525
13526
13527
13528
13529
13530
13513
13514
13515
13516
13517
13518
13519

13520
13521
13522
13523
13524
13525
13526
13527
13528
13529

13530
13531
13532
13533
13534
13535
13536
13537







-
+









-
+







    [<start>|,|(|/_start_]  tu                   [le|la|l’|les|me|m’|te|t’|se|s’|nous|vous|lui|leur]     @:2s¬:Ov  [pas|rien|jamais|guère|point]
    [<start>|,|(|/_start_]  [il|elle|on|iel]     [le|la|l’|les|me|m’|te|t’|se|s’|nous|vous|lui|leur]     @:3s¬:Ov  [pas|rien|jamais|guère|point]
    [<start>|,|(|/_start_]  [ce|ça|ceci|cela]    [le|la|l’|les|me|m’|te|t’|se|s’|nous|vous|lui|leur]     @:3s¬:Ov  [pas|rien|jamais|guère|point]
    [<start>|,|(|/_start_]  nous                 [le|la|l’|les|me|m’|te|t’|se|s’|nous|vous|lui|leur]     @:1p¬:Ov  [pas|rien|jamais|guère|point]
    [<start>|,|(|/_start_]  vous                 [le|la|l’|les|me|m’|te|t’|se|s’|nous|vous|lui|leur]     @:2p¬:Ov  [pas|rien|jamais|guère|point]
    [<start>|,|(|/_start_]  [ils|elles|iels]     [le|la|l’|les|me|m’|te|t’|se|s’|nous|vous|lui|leur]     @:3p¬:Ov  [pas|rien|jamais|guère|point]
        <<- /neg/ not (value(\1, "|que|qu’|") and value(\-1, "|jamais|")) and not (value(\-1, "|pas|") and value(>1, "|mal|"))
        -3>> ne \3                                                                                  && Ne  \5 : il manque l’adverbe de négation.
        -3>> ne \3                                                                                  && Ne ‹verbe› \5 : il manque l’adverbe de négation “ne”.

    [<start>|,|(|/_start_]  [je|j’]              [en|y]                                                  @:1s¬:Ov  [pas|rien|jamais|guère|point]
    [<start>|,|(|/_start_]  tu                   [en|y]                                                  @:2s¬:Ov  [pas|rien|jamais|guère|point]
    [<start>|,|(|/_start_]  [il|elle|on|iel]     [en|y]                                                  @:3s¬:Ov  [pas|rien|jamais|guère|point]
    [<start>|,|(|/_start_]  [ce|ça|ceci|cela|c’] [en|y]                                                  @:3s¬:Ov  [pas|rien|jamais|guère|point]
    [<start>|,|(|/_start_]  nous                 [en|y]                                                  @:1p¬:Ov  [pas|rien|jamais|guère|point]
    [<start>|,|(|/_start_]  vous                 [en|y]                                                  @:2p¬:Ov  [pas|rien|jamais|guère|point]
    [<start>|,|(|/_start_]  [ils|elles|iels]     [en|y]                                                  @:3p¬:Ov  [pas|rien|jamais|guère|point]
        <<- /neg/ not (value(\1, "|que|qu’|") and value(\-1, "|jamais|")) and not (value(\-1, "|pas|") and value(>1, "|mal|"))
        -3>> n’\3                                                                                   && Ne  \5 : il manque l’adverbe de négation.
        -3>> n’\3                                                                                   && Ne ‹verbe› \5 : il manque l’adverbe de négation “ne”.

    [<start>|,|(|/_start_]  je                   [me|m’|te|t’|se|s’|nous|vous]   [le|la|l’|les|en|y]     @:1s¬:Ov  [pas|rien|jamais|guère|point]
    [<start>|,|(|/_start_]  tu                   [me|m’|te|t’|se|s’|nous|vous]   [le|la|l’|les|en|y]     @:2s¬:Ov  [pas|rien|jamais|guère|point]
    [<start>|,|(|/_start_]  [il|elle|on|iel]     [me|m’|te|t’|se|s’|nous|vous]   [le|la|l’|les|en|y]     @:3s¬:Ov  [pas|rien|jamais|guère|point]
    [<start>|,|(|/_start_]  [ce|ça|ceci|cela]    [me|m’|te|t’|se|s’|nous|vous]   [le|la|l’|les|en|y]     @:3s¬:Ov  [pas|rien|jamais|guère|point]
    [<start>|,|(|/_start_]  nous                 [me|m’|te|t’|se|s’|nous|vous]   [le|la|l’|les|en|y]     @:1p¬:Ov  [pas|rien|jamais|guère|point]
    [<start>|,|(|/_start_]  vous                 [me|m’|te|t’|se|s’|nous|vous]   [le|la|l’|les|en|y]     @:2p¬:Ov  [pas|rien|jamais|guère|point]
13540
13541
13542
13543
13544
13545
13546
13547

13548
13549
13550
13551
13552
13553
13554
13555
13556
13557
13558


13559
13560
13561
13562

13563
13564
13565
13566
13567
13568
13569
13547
13548
13549
13550
13551
13552
13553

13554
13555
13556
13557
13558
13559
13560
13561
13562
13563


13564
13565
13566
13567
13568

13569
13570
13571
13572
13573
13574
13575
13576







-
+









-
-
+
+



-
+







    [<start>|,|(|/_start_]  tu                   [lui|leur]                      en                      @:2s¬:Ov  [pas|rien|jamais|guère|point]
    [<start>|,|(|/_start_]  [il|elle|on|iel]     [lui|leur]                      en                      @:3s¬:Ov  [pas|rien|jamais|guère|point]
    [<start>|,|(|/_start_]  [ce|ça|ceci|cela]    [lui|leur]                      en                      @:3s¬:Ov  [pas|rien|jamais|guère|point]
    [<start>|,|(|/_start_]  nous                 [lui|leur]                      en                      @:1p¬:Ov  [pas|rien|jamais|guère|point]
    [<start>|,|(|/_start_]  vous                 [lui|leur]                      en                      @:2p¬:Ov  [pas|rien|jamais|guère|point]
    [<start>|,|(|/_start_]  [ils|elles|iels]     [lui|leur]                      en                      @:3p¬:Ov  [pas|rien|jamais|guère|point]
        <<- /neg/ not (value(\1, "|que|qu’|") and value(\-1, "|jamais|")) and not (value(\-1, "|pas|") and value(>1, "|mal|"))
        -3>> ne \3                                                                                  && Ne  \6 : il manque l’adverbe de négation.
        -3>> ne \3                                                                                  && Ne ‹verbe› \6 : il manque l’adverbe de négation “ne”.

    [<start>|,|(|/_start_]  [je|j’]              @:1s¬:Ov    [pas|rien|jamais|guère|point]
    [<start>|,|(|/_start_]  tu                   @:2s¬:Ov    [pas|rien|jamais|guère|point]
    [<start>|,|(|/_start_]  [il|elle|on|iel]     @:3s¬:Ov    [pas|rien|jamais|guère|point]
    [<start>|,|(|/_start_]  [ce|ça|ceci|cela]    @:3s¬:Ov    [pas|rien|jamais|guère|point]
    [<start>|,|(|/_start_]  nous                 @:1p¬:Ov    [pas|rien|jamais|guère|point]
    [<start>|,|(|/_start_]  vous                 @:2p¬:Ov    [pas|rien|jamais|guère|point]
    [<start>|,|(|/_start_]  [ils|elles|iels]     @:3p¬:Ov    [pas|rien|jamais|guère|point]
        <<- /neg/ not (value(\1, "|que|qu’|") and value(\-1, "|jamais|")) and not (value(\-1, "|pas|") and value(>1, "|mal|")) >>>
        <<- /neg/ morph(\3, ">[aâeéêiîoôuœæ]") -3>> n’\3                                            && Ne  \4 : il manque l’adverbe de négation.
        <<- /neg/ __else__ -3>> ne \3                                                               && Ne  \4 : il manque l’adverbe de négation.
        <<- /neg/ morph(\3, ">[aâeéêiîoôuœæ]") -3>> n’\3                                            && Ne ‹verbe› \4 : il manque l’adverbe de négation “ne”.
        <<- /neg/ __else__ -3>> ne \3                                                               && Ne ‹verbe› \4 : il manque l’adverbe de négation “ne”.

    [<start>|,|(|/_start_]  c’                   @:3s¬:Ov    [pas|rien|jamais|guère|point]
        <<- /neg/ not (value(\1, "|que|qu’|") and value(\-1, "|jamais|")) and not (value(\-1, "|pas|") and value(>1, "|mal|")) and morph(\3, ">[aâeéêiîoôuœæ]")
        -2>> ce n’                                                                                  && Ne  \4 : il manque l’adverbe de négation.
        -2>> ce n’                                                                                  && Ne ‹verbe› \4 : il manque l’adverbe de négation “ne”.

    [<start>|,|(|/_start_]  [je|tu|il|elle|on|iel|nous|vous|ils|elles|iels]  >avoir  qu’  à
        <<- /neg/ -3>> n’\3                                                                         && Locution “n’avoir qu’à” : il manque l’adverbe de négation.

TEST: __neg__ On {{a}} pas compris.                     ->> n’a
TEST: __neg__ Il {{part}} pas encore.                   ->> ne part
TEST: __neg__ On {{vous}} a pas compris.                ->> ne vous
13685
13686
13687
13688
13689
13690
13691
13692

13693
13694
13695
13696
13697
13698
13699
13692
13693
13694
13695
13696
13697
13698

13699
13700
13701
13702
13703
13704
13705
13706







-
+







        <<- /infi/ analyse(\-1, ":V") --1>> =suggVerbInfi(\-1)                                      && Incohérence. Après “de bon ton de [faire quelque chose]”, le verbe doit être à l’infinitif.

TEST: il est souvent de bon ton de {{pensée}} calmement à ces choses avant de s’engager tête baissée.


__imp_ne_infinitif_negadv!3__
    [<start>|,|(]  [ne|n’]  @:V1.*:Y  [pas|plus|jamais]
        <<- /imp/ -3>> =suggVerbTense(\3, ":E", ":2p")                                              && Confusion probable : “\3” est un verbe à l’infinitif. Si vous vouliez utiliser l’impératif, écrivez :
        <<- /imp/ -3>> =suggVerbTense(\3, ":E", ":2p")                                              && Confusion probable : “\3” est un verbe à l’infinitif. Si vous vouliez utiliser l’impératif, écrivez :

    qui  [ne|n’]  @:V1.*:Y  [pas|plus|jamais|aucun|aucune]
        <<- /imp/ not morph(<1, ":R") -3>> =suggVerb(\3, ":2s")                                     && Confusion probable : “\3” est un verbe à l’infinitif.

TEST: Non, ne {{manger}} pas ça.                                    ->> mangez
TEST: Ne {{donner}} jamais à manger ces saloperies au chat.         ->> donnez
TEST: Qui ne {{créer}} aucune valeur ajoutée
18963
18964
18965
18966
18967
18968
18969
18970

18971
18972
18973

18974
18975
18976

18977
18978
18979
18980
18981
18982
18983
18970
18971
18972
18973
18974
18975
18976

18977
18978
18979

18980
18981
18982

18983
18984
18985
18986
18987
18988
18989
18990







-
+


-
+


-
+







    >rendre hommage a
    >rendre service a
        <<- /conf/ not tag_before(\1, "_propsub_") and not morph(\1, ":[YNA]") and not value(>1, "|été|")
        --1>> à                                                             && Confusion probable : “a” est une conjugaison du verbe “avoir”. Pour la préposition, écrivez “à”.|https://fr.wiktionary.org/wiki/%C3%A0

    @:V¬:[YGNAWM]  a
        <<- /conf/ \-1 != "A" and not tag_before(\1, "_propsub_") and not morph(>1, ":Q")
        --1>> à                                                             && Confusion probable : “a” est la conjugaison du verbe “avoir”. Pour la préposition, écrivez “à”.|https://fr.wiktionary.org/wiki/%C3%A0
        --1>> à                                                             && Confusion probable : “a” est la conjugaison du verbe “avoir”. Pour la préposition, écrivez “à”.|https://fr.wiktionary.org/wiki/%C3%A0

    [/_VCint_|/_VCimp_]  a
        <<- /conf/ not value(\1, "|rendez-vous|") --1>> à                   && Confusion : “a” est la conjugaison du verbe “avoir”. Pour la préposition, écrivez “à”.|https://fr.wiktionary.org/wiki/%C3%A0
        <<- /conf/ not value(\1, "|rendez-vous|") --1>> à                   && Confusion : “a” est la conjugaison du verbe “avoir”. Pour la préposition, écrivez “à”.|https://fr.wiktionary.org/wiki/%C3%A0

    >passer du coq a l’ âne
        <<- /conf/ -4>> à                                                   && Confusion : “a” est la conjugaison du verbe “avoir”. Pour la préposition, écrivez “à”.|https://fr.wiktionary.org/wiki/%C3%A0
        <<- /conf/ -4>> à                                                   && Confusion : “a” est la conjugaison du verbe “avoir”. Pour la préposition, écrivez “à”.|https://fr.wiktionary.org/wiki/%C3%A0

TEST: en proie {{a}} toutes sortes d’illusions
TEST: ce contrat arrive {{a}} échéance.
TEST: il faut tenir {{contes}} des faits au lieu de nos impressions.
TEST: prendre {{a}} la légère ce test serait une erreur.
TEST: il faut se tenir {{a}} distance de ces gens-là.
TEST: J’avais du mal {{a}} l’écouté (double erreur utile pour tester le faux positif)
19007
19008
19009
19010
19011
19012
19013
19014

19015
19016
19017
19018
19019
19020
19021
19022
19023
19024
19025

19026
19027
19028

19029
19030
19031
19032
19033
19034
19035
19014
19015
19016
19017
19018
19019
19020

19021
19022
19023
19024
19025
19026
19027
19028
19029
19030
19031

19032
19033
19034

19035
19036
19037
19038
19039
19040
19041
19042







-
+










-
+


-
+







TEST: le bonheur de plaire a des conséquences bénéfiques sur le moral.
TEST: le projet auquel ils ont mis fin a toutes les chances d’être repris par nos concurrents.
TEST: Le rêve a d’autres propriétés méconnues.


__conf_pronom_à_l_air__
    [tout|ça|ceci|cela|elle|tu]  à  l’  air  @:[AR]|>libre/
        <<- /conf/ morph(<1, ":Cs|<start>|>,") -2>> a               && Confusion probable: “à” est une préposition. Pour le verbe “avoir”, écrivez “a”.
        <<- /conf/ morph(<1, ":Cs|<start>|>,") -2>> a               && Confusion probable : “à” est une préposition. Pour le verbe “avoir”, écrivez “a”.

TEST: lorsque tout {{à}} l’air fini, c’est trompeur.
TEST: Tout {{à}} l’air complètement foutu…
TEST: Ça {{à}} l’air génial.
TEST: elle {{à}} l’air heureuse.
TEST: Tout à la benne.


__conf_a_à_faim_peur_honte_soif_chaud_froid__
    à [faim|peur|honte|soif|sommeil]
        <<- /conf/ -1>> a                       && Avoir “\2”. Confusion : “à” est une préposition. Pour le verbe avoir, écrivez “a”.
        <<- /conf/ -1>> a                       && Avoir “\2”. Confusion : “à” est une préposition. Pour le verbe avoir, écrivez “a”.

    <start> elle à [chaud|froid]
        <<- /conf/ -3>> a                       && Avoir “\4”. Confusion : “à” est une préposition. Pour le verbe avoir, écrivez “a”.
        <<- /conf/ -3>> a                       && Avoir “\4”. Confusion : “à” est une préposition. Pour le verbe avoir, écrivez “a”.

TEST: Elle {{à}} chaud.
TEST: Elle {{à}} froid.
TEST: cet homme {{à}} faim
TEST: Votre réaction à froid ?


19052
19053
19054
19055
19056
19057
19058
19059

19060
19061
19062
19063

19064
19065
19066
19067
19068
19069
19070
19071
19072

19073
19074
19075

19076
19077
19078
19079
19080
19081
19082
19083
19084
19085
19086

19087
19088
19089
19090
19091
19092

19093
19094
19095
19096
19097
19098
19099
19100
19101
19102
19103
19104
19105
19106
19107
19108

19109
19110
19111
19112
19113
19114
19115
19059
19060
19061
19062
19063
19064
19065

19066
19067
19068
19069

19070
19071
19072
19073
19074
19075
19076
19077
19078

19079
19080
19081

19082
19083
19084
19085
19086
19087
19088
19089
19090
19091
19092

19093
19094
19095
19096
19097
19098

19099
19100
19101
19102
19103
19104
19105
19106
19107
19108
19109
19110
19111
19112
19113
19114

19115
19116
19117
19118
19119
19120
19121
19122







-
+



-
+








-
+


-
+










-
+





-
+















-
+







TEST: Vendre ça aussi cher, c’est abuser de la crédulité des touristes.


# acre / âcre
__conf_acre_âcre__
    *NUM  >âcre
        <<- /conf/ -2>> =\2.replace("â", "a").replace("Â", "A")
        && Confusion probable : “âcre” est un adjectif signifiant “irritant”. Pour l’unité de surface agraire, écrivez “acre”.|https://fr.wiktionary.org/wiki/%C3%A2cre
        && Confusion probable : “âcre” est un adjectif signifiant “irritant”. Pour l’unité de surface agraire, écrivez “acre”.|https://fr.wiktionary.org/wiki/%C3%A2cre

    [>alcool|>être|>goût|>gout|>humeur|>odeur|>parole|>parfum|>remarque|>reproche|>réponse|>saveur|>senteur|>sensation|>vin]  >acre
        <<- /conf/ -2>> =\2.replace("a", "â").replace("A", "Â")
        && Confusion probable : “acre” est une unité de surface agraire. Pour l’adjectif signifiant “irritant”, écrivez “âcre”.|https://fr.wiktionary.org/wiki/%C3%A2cre
        && Confusion probable : “acre” est une unité de surface agraire. Pour l’adjectif signifiant “irritant”, écrivez “âcre”.|https://fr.wiktionary.org/wiki/%C3%A2cre

TEST: un terrain de 3 {{âcres}}.
TEST: Il avait ce goût {{acre}} dans la bouche qui ne passait pas.


# accro / accroc
__conf_être_accro__
    [>être|>devenir|>redevenir|>paraître|>paraitre|>rendre|>sembler]  >accroc
        <<- /conf/ -2>> =\2.replace("oc", "o")      && Confusion : “accroc” signifie “déchirure”, “incident”, etc. tandis que “accro” est un terme familier qui signifie “dépendant”.
        <<- /conf/ -2>> =\2.replace("oc", "o")      && Confusion : “accroc” signifie “déchirure”, “incident”, etc. tandis que “accro” est un terme familier qui signifie “dépendant”.

    [>être|>devenir|>redevenir|>paraître|>paraitre|>rendre|>sembler]  [à|a] >croc
        <<- /conf/ -2:3>> accro|accros              && Confusion : “accroc” signifie “déchirure”, “incident”, etc. tandis que “accro” est un terme familier qui signifie “dépendant”.
        <<- /conf/ -2:3>> accro|accros              && Confusion : “accroc” signifie “déchirure”, “incident”, etc. tandis que “accro” est un terme familier qui signifie “dépendant”.

    >accroc [à|a] la [bouffe|cocaïne|codéine|codeine|course|drogue|coke|meth|méthamphétamine|morphine|nicotine|nourriture|télé|télévision|clope|cigarette|came|poudre|baise|musique|viande]
    >accroc [à|a] cette [came|émission|merde|poudre|femme|meuf|gonzesse|conne|salope|garce|pute]
    >accroc [à|a] ce [mec|keum|type|con|connard]
    >accroc [à|a] ce fils de pute
    >accroc [à|a] cet [homme|enculé|imbécile|enfoiré]
    >accroc [à|a] l’ [alcool|amour|argent|ecstasy|herbe|héro|héroïne|opium|ordi|ordinateur]
    >accroc [à|a] [Facebook|Internet|Twitter|lui|elle|eux|elles]
    >accroc [au|du] [chocolat|cul|jeu|PC|poker|sexe|shopping|smartphone|sport|sucre|tabac|téléphone|travail|LSD|crack]
    >accroc aux [antidépresseurs|anti-dépresseurs|bonbons|hommes|mecs|femmes|gonzesses|médicaments|médocs|jeux|séries|sucreries]
        <<- /conf/ -1>> =\1.replace("oc", "o")      && Confusion : “accroc” signifie “déchirure”, “incident”, etc. tandis que “accro” est un terme familier qui signifie “dépendant”.
        <<- /conf/ -1>> =\1.replace("oc", "o")      && Confusion : “accroc” signifie “déchirure”, “incident”, etc. tandis que “accro” est un terme familier qui signifie “dépendant”.

    >faire [un|des] >accro  à [des|ces|mes|tes|ses|nos|vos|leurs] [principes|collants]
    >faire [un|des] >accro  à [mon|ton|son|notre|votre|leur] [caleçon|pantalon]
    >faire [un|des] >accro  à [la|ma|ta|sa|notre|votre|leur] [chemise|chemisier|culotte|jupe|veste]
    >faire [un|des] >accro  aux [principes|collants|caleçons|pantalons|chemises|chemisiers|culottet|jupes|vestes]
        <<- /conf/ -3>> =\3.replace("ro", "roc")    && Confusion : “accro” est un terme familier qui signifie “dépendant”, tandis que “accroc” signifie “déchirure”, “incident”, etc.
        <<- /conf/ -3>> =\3.replace("ro", "roc")    && Confusion : “accro” est un terme familier qui signifie “dépendant”, tandis que “accroc” signifie “déchirure”, “incident”, etc.

TEST: ils y sont {{accrocs}} depuis toujours
TEST: elles y sont {{à crocs}} depuis toujours
TEST: au poker, il semble {{accroc}}
TEST: vraiment {{accroc}} à la cocaïne
TEST: pire, {{accroc}} au jeu
TEST: Patricia est {{accroc}} à ce mec
TEST: Tous {{accrocs}} à Internet.
TEST: {{Accroc}} à cette merde depuis toujours.
TEST: Elle a fait un {{accro}} à ses principes.


# acquis / acquit
__conf_tenir_pour_acquit__
    >tenir pour >acquit
        <<- /conf/ -3>> acquis                          && Confusion. On écrit « tenir pour acquis ».
        <<- /conf/ -3>> acquis                          && Confusion. On écrit « tenir pour acquis ».

TEST: Je le tenais pour {{acquit}}.
TEST: Par {{acquis}} de conscience.


# affilée / affilé
__conf_d_affilée__
19147
19148
19149
19150
19151
19152
19153
19154

19155
19156
19157

19158
19159
19160
19161
19162
19163
19164
19154
19155
19156
19157
19158
19159
19160

19161
19162
19163

19164
19165
19166
19167
19168
19169
19170
19171







-
+


-
+








# annales / anal-e-s
__conf_annales_anales__
    >anal [>littéraire|>politique|>ecclésiastique]
    >anal du [baccalauréat|bac|brevet]
    >anal de [>physique|>chimie|>mathématique|>biologie|>géographie|>philosophie]
    >anal d’ [>histoire|>économie]
        <<- /conf/ -1>> annales                         && Confusion : “\1” est l’adjectif relatif à l’anus.|https://fr.wiktionary.org/wiki/annales
        <<- /conf/ -1>> annales                         && Confusion : “\1” est l’adjectif relatif à l’anus.|https://fr.wiktionary.org/wiki/annales

    [les|ces|des|mes|tes|ses|nos|vos|leurs|plusieurs] >anal
        <<- /conf/ -2>> annales                         && Confusion : “\2” est l’adjectif relatif à l’anus.|https://fr.wiktionary.org/wiki/annales
        <<- /conf/ -2>> annales                         && Confusion : “\2” est l’adjectif relatif à l’anus.|https://fr.wiktionary.org/wiki/annales

TEST: {{anales}} du bac
TEST: des {{anales}} littéraires
TEST: il a bachoté les {{anales}}.


# air / aire / ère
19239
19240
19241
19242
19243
19244
19245
19246

19247
19248
19249
19250
19251
19252
19253
19246
19247
19248
19249
19250
19251
19252

19253
19254
19255
19256
19257
19258
19259
19260







-
+








TEST: ils sont sacrifiés sur l’{{hôtel}} de la rentabilité


# avion / avions
__conf_avions_avion__
    nous avion
        <<- /conf/ -2>> avions                              && Confusion probable : l’avion est un appareil volant.
        <<- /conf/ -2>> avions                              && Confusion probable : l’avion est un appareil volant.

TEST: Je pense que nous {{avion}} tort.


# bailler / bâiller / bayer
__conf_bailler_bâiller_bayer__
    [>bailler|>bâiller] aux corneilles
19344
19345
19346
19347
19348
19349
19350
19351

19352
19353
19354
19355
19356
19357
19358
19351
19352
19353
19354
19355
19356
19357

19358
19359
19360
19361
19362
19363
19364
19365







-
+







TEST: le quark {{botter}}


# bel et bien
__conf_bel_belle__
    belle et bien
        <<- /conf/ (morph(>1, ":[AQR]") or morph(<1, ":V", ">être")) and not value(>1, "|que|qu’|sûr|")
        -1>> bel                                                        && Confusion probable. « Bel et bien » est équivalent à « vraiment ».
        -1>> bel                                                        && Confusion probable. « Bel et bien » est équivalent à « vraiment ».

TEST: ils vont {{belle}} et bien par monts et par vaux.

    l’ >échapper [bel+s|belles]
    l’ >avoir >échapper [bel+s|belles]
        <<- /conf/ --1>> belle                                          && Confusion. Locution “l’échapper belle”.|https://fr.wiktionary.org/wiki/l%E2%80%99avoir_%C3%A9chapp%C3%A9_belle

19404
19405
19406
19407
19408
19409
19410
19411

19412
19413
19414
19415
19416
19417
19418
19411
19412
19413
19414
19415
19416
19417

19418
19419
19420
19421
19422
19423
19424
19425







-
+







TEST: une raclée {{en bonnes et dues formes}}
TEST: remplir son formulaire en bonne et due forme, c’est le minimum pour espérer un retour positif.


# en butte à / but / bute
__conf_en_butte_à_au__
    en [>but|>bute]  [à|au|aux]
        <<- /conf/ -2>> butte                                           && Confusion. Écrivez « en butte \3 ».
        <<- /conf/ -2>> butte                                           && Confusion. Écrivez « en butte \3 ».

TEST: Et moi toujours en {{but}} à de nouveaux dangers


# cane / canne (from LanguageTool)
__conf_canne_cane__
    >cane [à|a] [sucre|pêche|selfie]
19476
19477
19478
19479
19480
19481
19482
19483

19484
19485
19486

19487
19488
19489
19490
19491
19492
19493
19483
19484
19485
19486
19487
19488
19489

19490
19491
19492

19493
19494
19495
19496
19497
19498
19499
19500







-
+


-
+







    [c’|s’|c|s] [en|>an]  [fus|fut|fût|fue+s]                                                              [fini+ses|finit|finît|fait+s|fais|>fée|fé|>terminer]
    [c’|s’|c|s] [en|>an]  [sera+s|serra+s|serai+s|serait|serez|seraient|serrais|serrait|serrez|serraient]  [fini+ses|finit|finît|fait+s|fais|>fée|fé|>terminer]
        <<- /conf/ morph(<1, "<start>|>[,(]") and not (value(\1, "|c’|") and value(\2, "|en|"))
        -1:2>> c’en                                                                                 && Locution “c’en est fini/fait/assez/trop…”.

    s’ en [es|est|sera|seras|étais|était|serai|serais|serait|fut|fût] @:A¬:[GVW]
        <<- /conf/ morph(<1, ":C|<start>|>[,(]")
        -1:2>> c’en                                         && Confusion probable : “\2” est un adjectif. « C’en est… » équivaut à « ça, c’est… ».|https://fr.wiktionary.org/wiki/c%E2%80%99en_est_fait_de
        -1:2>> c’en                                         && Confusion probable : “\2” est un adjectif. « C’en est… » équivaut à « ça, c’est… ».|https://fr.wiktionary.org/wiki/c%E2%80%99en_est_fait_de

    s’ en [es|est|sera|seras|étais|était|serai|serais|serait|fut|fût] [assez|trop] [<end>|,|de|d’|du|des]
        <<- /conf/ -1:2>> c’en                              && Confusion probable. « C’en est… » équivaut à « ça, c’est… ».|https://fr.wiktionary.org/wiki/c%E2%80%99en_est_fait_de
        <<- /conf/ -1:2>> c’en                              && Confusion probable. « C’en est… » équivaut à « ça, c’est… ».|https://fr.wiktionary.org/wiki/c%E2%80%99en_est_fait_de

TEST: tout ça, {{s’en}} est fini.
TEST: {{s’en}} est assez de ces foutaises.
TEST: c’est tellement idiot, {{s’en}} est dérisoire…
TEST: {{s’en}} est terminé d’elles
TEST: {{s’en}} était fini d’eux
TEST: {{sang}} fut fini de nous
19504
19505
19506
19507
19508
19509
19510
19511

19512
19513
19514
19515
19516
19517
19518
19511
19512
19513
19514
19515
19516
19517

19518
19519
19520
19521
19522
19523
19524
19525







-
+








# ce / se
__conf_ce_se_verbe__
    [<start>|,|(] se [ne|n’] [>être|>devoir|>pouvoir]
    [<start>|,|(] se [sera|serait|seraient|sont|seront|fut|fût|furent|fussent] $:D
    [<start>|,|(] se >devoir être
    [<start>|,|(] se >pouvoir être
        <<- /conf/ -2>> ce                              && Confusion probable. Si vous voulez dire, “ceci”, “cela” ou “ça”, écrivez “c”.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=2440
        <<- /conf/ -2>> ce                              && Confusion probable. Si vous voulez dire “ceci”, “cela” ou “ça”, écrivez “ce”.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=2440

TEST: {{se}} n’est pas pour cette raison que j’ai abandonné mes études.
TEST: grâce à quoi, {{se}} put être fait dans les règles.
TEST: {{se}} serait les pires vacances de sa vie
TEST: des pans entiers de l’univers — pour reprendre l’expression d’Orwell — se sont d’ores et déjà volatilisés
TEST: À la pause, ils se sont tous les deux assis à l’arrière, et j’ai vu progressivement leurs corps se rapprocher.

19595
19596
19597
19598
19599
19600
19601
19602

19603
19604
19605
19606
19607
19608
19609
19610
19611
19612
19613
19614
19615
19616
19617
19618
19619
19620

19621
19622
19623
19624
19625
19626
19627
19602
19603
19604
19605
19606
19607
19608

19609
19610
19611
19612
19613
19614
19615
19616
19617
19618
19619
19620
19621
19622
19623
19624
19625
19626

19627
19628
19629
19630
19631
19632
19633
19634







-
+

















-
+







    [>coûter|>couter|>louer|>payer|>prendre|>valoir|>vendre] [chers|chère|chères]
        <<- /conf/ -2>> cher                                        && Ici, “cher” est un adverbe, invariable.|https://fr.wiktionary.org/wiki/cher

    [>coûter|>couter|>louer|>payer|>prendre|>valoir|>vendre] [>chair|>chaire]
        <<- /conf/ -2>> cher                                        && Confusion. Pour parler de la cherté, écrivez “cher”.|https://fr.wiktionary.org/wiki/cher

    >faire  >bon  [cher+s|chères|>chair|>chaire]
        <<- /conf/ -2:3>> bonne chère                               && Confusion. « Faire bonne chère » signifie bien manger, ripailler.|https://fr.wiktionary.org/wiki/faire_bonne_ch%C3%A8re
        <<- /conf/ -2:3>> bonne chère                               && Confusion. « Faire bonne chère » signifie bien manger, ripailler.|https://fr.wiktionary.org/wiki/faire_bonne_ch%C3%A8re

    [>couper|>déchiqueter|>taillader|>trancher] [la|cette|ma|ta|sa|notre|votre|leur] [chère|chaire]
        <<- /conf/ --1>> chair                                      && Confusion. La matière vivante et molle s’écrit “chair”.|https://fr.wiktionary.org/wiki/chair

    [>couper|>déchiqueter|>taillader|>trancher] [les|ces|mes|tes|ses|nos|vos|leurs] [chers|chères|chaires]
        <<- /conf/ --1>> chairs                                     && Confusion. La matière vivante et molle s’écrit “chair”.|https://fr.wiktionary.org/wiki/chair

TEST: ils ont fait {{bonne chaire}}.                        ->> bonne chère
TEST: ces saloperies coûtent vraiment {{chères}} !          ->> cher
TEST: elles payent {{chairs}} !                             ->> cher
TEST: taillader les {{chaires}}                             ->> chairs
TEST: couper cette {{chère}}                                ->> chair


# chant / champ
__conf_Chandeleur__
    la [>chant|chan|>champ] de l’ [heur|heure|eurent]
        <<- /conf/ -2:0>> Chandeleur                    && Confusion : la Chandeleur est une fête.|http://fr.wikipedia.org/wiki/Chandeleur
        <<- /conf/ -2:0>> Chandeleur                    && Confusion : la Chandeleur est une fête.|http://fr.wikipedia.org/wiki/Chandeleur

TEST: C’est {{la}} {{champ de l’heur}}.


__conf_champ_chant__
    [chan|>chant] de [>blé|>betterave|>fleur|>force|>lavande|maïs|mais|>tournesol|>tulipe|>vision]
        <<- /conf/ -1>> =\1.replace("nt", "mp").replace("NT", "MP")     && Confusion probable. Un chant est ce qui se chante.|https://fr.wiktionary.org/wiki/champ
19647
19648
19649
19650
19651
19652
19653
19654

19655
19656
19657
19658
19659
19660
19661
19662
19663
19664
19665
19666
19667
19668
19669

19670
19671
19672
19673
19674
19675
19676
19654
19655
19656
19657
19658
19659
19660

19661
19662
19663
19664
19665
19666
19667
19668
19669
19670
19671
19672
19673
19674
19675

19676
19677
19678
19679
19680
19681
19682
19683







-
+














-
+







TEST: je leur laisse le {{chant}} libre
TEST: donnons-leur le {{chant}} libre et cessons de nous inquieter


# colon / côlon
__conf_côlon_colon__
    cancer du colon
        <<- /conf/ -3>> côlon                           && Confusion : le côlon est un segment du gros intestin, le colon colonise.
        <<- /conf/ -3>> côlon                           && Confusion : le côlon est un segment du gros intestin, le colon colonise.

TEST: Il a le cancer du {{colon}}.


# censé / sensé
__conf_censé_sensé__
    >être >sensé [ne|n’|le|la|l’|les|en|me|m’|te|t’|se|s’|nous|vous|lui|leur|y]        $:Y
    >être >sensé ?[ne|n’]¿ [le|la|l’|les|en|me|m’|te|t’|se|s’|nous|vous|lui|leur|y]    $:Y
    >être >sensé ?[ne|n’]¿ [me|m’|te|t’|se|s’|nous|vous] [le|la|l’|les|en|y]           $:Y
    >être >sensé ?[ne|n’]¿ [le|la|l’|les]                [lui|leur|en|y]               $:Y
    >être >sensé ?[ne|n’]¿ [lui|leur]                    en                            $:Y
    >être >sensé $:Y
    >être >sensé ne [pas|plus|jamais|rien|guère|point]
        <<- /conf/ not value(<1, "|l’|un|les|des|ces|")
        -2>> =\2.replace("sens", "cens").replace("Sens", "Cens").replace("SENS", "CENS")            && Confusion : “sensé” se dit de quelqu’un de “bon sens”. Pour ce qui est attendu, écrivez “censé”.
        -2>> =\2.replace("sens", "cens").replace("Sens", "Cens").replace("SENS", "CENS")            && Confusion : “sensé” se dit de quelqu’un de “bon sens”. Pour ce qui est attendu, écrivez “censé”.

TEST: Ils sont {{sensés}} y parvenir.
TEST: Elles étaient {{sensés}} m’y conduire
TEST: il est {{sensé}} prendre l’avion demain
TEST: Un être sensé ne ferait jamais ça.

    >censé  <end>
19724
19725
19726
19727
19728
19729
19730
19731

19732
19733
19734

19735
19736
19737

19738
19739
19740
19741
19742
19743
19744
19745
19746
19747
19748

19749
19750
19751

19752
19753
19754

19755
19756
19757
19758

19759
19760
19761

19762
19763
19764
19765

19766
19767
19768
19769
19770
19771
19772
19731
19732
19733
19734
19735
19736
19737

19738
19739
19740

19741
19742
19743

19744
19745
19746
19747
19748
19749
19750
19751
19752
19753
19754

19755
19756
19757

19758
19759
19760

19761
19762
19763
19764

19765
19766
19767

19768
19769
19770
19771

19772
19773
19774
19775
19776
19777
19778
19779







-
+


-
+


-
+










-
+


-
+


-
+



-
+


-
+



-
+







TEST: elle tremblait de tout son {{cor}}
TEST: donnons {{cor}} à notre ambition


# côté / coté
__conf_côté_coté__
    [au|autre|bon|le|ce|du|mon|ton|son|notre|votre|chaque|un|leur|quel|quelle] [coté|cotés|cotée|cotées]
        <<- /conf/ --1>> côté                               && Confusion : “coté” est le participe passé du verbe “coter”.|https://fr.wiktionary.org/wiki/c%C3%B4t%C3%A9
        <<- /conf/ --1>> côté                               && Confusion : “coté” est le participe passé du verbe “coter”.|https://fr.wiktionary.org/wiki/c%C3%B4t%C3%A9

    [aux|autres|bons|les|ces|son|mes|tes|ses|nos|vos|leurs|quels|quelles|quelques|plusieurs] [coté|cotés|cotée|cotées]
        <<- /conf/ --1>> côtés                              && Confusion : “coté” est le participe passé du verbe “coter”.|https://fr.wiktionary.org/wiki/c%C3%B4t%C3%A9
        <<- /conf/ --1>> côtés                              && Confusion : “coté” est le participe passé du verbe “coter”.|https://fr.wiktionary.org/wiki/c%C3%B4t%C3%A9

    [à|mauvais|de] [coté|cotés|cotée|cotées]
        <<- /conf/ --1>> côté|côtés                         && Confusion : “coté” est le participe passé du verbe “coter”.|https://fr.wiktionary.org/wiki/c%C3%B4t%C3%A9
        <<- /conf/ --1>> côté|côtés                         && Confusion : “coté” est le participe passé du verbe “coter”.|https://fr.wiktionary.org/wiki/c%C3%B4t%C3%A9

TEST: à son {{coté}}                        ->> côté
TEST: Je reste à ses {{cotés}}.             ->> côtés
TEST: de mauvais {{cotés}}                  ->> côté|côtés


# cote / côte / cotte
__conf_côte_cote_cotte__
    [>cote|>cotte] [de|d’] [>bœuf|>porc|>veau|Bretagne|>agneau|>albâtre|>Armor|>azur|>ivoire|>or|>opale|>émeraude]
    [>cote|>cotte] [>surnuméraire|>rocheux|>adriatique|>américain|>californien|>atlantique|>basque|>breton|>landais|>normand|>français|>belge|>espagnol|>italien|>portugais|>africain|>méditerranéen|>pacifique|>raide|>occidental|>fractal|nord|sud|ouest]
        <<- /conf/ -1>> =\1.replace("o", "ô").replace("tt", "t")                    && Confusion : écrivez “côtes” pour les os du thorax et les rivages.|https://fr.wiktionary.org/wiki/c%C3%B4te
        <<- /conf/ -1>> =\1.replace("o", "ô").replace("tt", "t")                    && Confusion : écrivez “côtes” pour les os du thorax et les rivages.|https://fr.wiktionary.org/wiki/c%C3%B4te

    [>cote|>cotte] [>briser|>casser|>fêler|>fracturer]
        <<- /conf/ morph(\2, ":Q") -1>> =\1.replace("o", "ô").replace("tt", "t")    && Confusion : écrivez “côtes” pour les os du thorax et les rivages.|https://fr.wiktionary.org/wiki/c%C3%B4te
        <<- /conf/ morph(\2, ":Q") -1>> =\1.replace("o", "ô").replace("tt", "t")    && Confusion : écrivez “côtes” pour les os du thorax et les rivages.|https://fr.wiktionary.org/wiki/c%C3%B4te

    [>fracture|>radiographie] des [>cote|>cotte]
        <<- /conf/ -3>> côtes                                       && Confusion : écrivez “côtes” pour les os du thorax.|https://fr.wiktionary.org/wiki/c%C3%B4te
        <<- /conf/ -3>> côtes                                       && Confusion : écrivez “côtes” pour les os du thorax.|https://fr.wiktionary.org/wiki/c%C3%B4te

    [>côte|>cotte] [>mobilier|>foncier]
    [>côte|>cotte] [de|d’] [niveau|popularité|confiance|alerte|altitude|amour]
        <<- /conf/ -1>> =\1.replace("ô", "o").replace("tt", "t")    && Confusion : utilisez « cote » pour chiffrer (cotation).|https://fr.wiktionary.org/wiki/cote
        <<- /conf/ -1>> =\1.replace("ô", "o").replace("tt", "t")    && Confusion : utilisez « cote » pour chiffrer (cotation).|https://fr.wiktionary.org/wiki/cote

    [>cote|>côte] de >maille
        <<- /conf/ -1>> =\1.replace("ô", "o").replace("t", "tt")    && Confusion : écrivez « cotte » pour la cotte de mailles.|https://fr.wiktionary.org/wiki/cotte_de_mailles
        <<- /conf/ -1>> =\1.replace("ô", "o").replace("t", "tt")    && Confusion : écrivez « cotte » pour la cotte de mailles.|https://fr.wiktionary.org/wiki/cotte_de_mailles

    >avoir la côte
    >avoir la cotte [@:[RCO]|,|<end>]
        <<- /conf/ -3>> cote                                        && Confusion probable : utilisez “cote” (cotation).|https://fr.wiktionary.org/wiki/cote
        <<- /conf/ -3>> cote                                        && Confusion probable : utilisez “cote” (cotation).|https://fr.wiktionary.org/wiki/cote

    [>escalader|>monter|>gravir] [la|cette|une] [cote|cotte]
        <<- /conf/ --1>> côte
        && Confusion probable : pour parler de la pente d’une montagne, d’une colline ou, allégoriquement, d’une difficulté à passer, écrivez “côte”.|https://fr.wiktionary.org/wiki/c%C3%B4te

    >longer [la|cette|une] [cote|cotte]
        <<- /conf/ --1>> côte
19955
19956
19957
19958
19959
19960
19961
19962

19963
19964
19965
19966

19967
19968
19969
19970

19971
19972
19973
19974
19975
19976
19977
19962
19963
19964
19965
19966
19967
19968

19969
19970
19971
19972

19973
19974
19975
19976

19977
19978
19979
19980
19981
19982
19983
19984







-
+



-
+



-
+







TEST: L’échec est {{du}} en partie à un manque de préparation.


# éminent / imminent
__conf_éminent_imminent__
    >imminent [>acteur|>confrère|>collègue|>dirigeant|>dissident|>entrepreneur|>expert|>défenseur|>intellectuel|>mathématicien|>musicien|>pédiatre|>personnalité|>personnage|>professeur|>physicien|>rabbin|>représentant|>savant|>chirurgien|>neurochirurgien|>scientifique|>service|>spécialiste|~logues?$|~istes?$]
        <<- /conf/ -1>> =\1.replace("imm", "ém").replace("Imm", "Ém")
        && Confusion probable. Si “\1” se rapporte à “\2”, alors vous voulez probablement dire “éminent” ; “imminent” signifie “qui va survenir prochainement”.|https://fr.wiktionary.org/wiki/%C3%A9minent
        && Confusion probable. Si “\1” se rapporte à “\2”, alors vous voulez probablement dire “éminent” ; “imminent” signifie “qui va survenir prochainement”.|https://fr.wiktionary.org/wiki/%C3%A9minent

    [>acteur|>confrère|>collègue|>dirigeant|>dissident|>entrepreneur|>expert|>défenseur|>intellectuel|>mathématicien|>musicien|>pédiatre|>personnalité|>personnage|>professeur|>physicien|>rabbin|>représentant|>savant|>chirurgien|>neurochirurgien|>scientifique|>service|>spécialiste|~logues?$|~istes?$] >imminent
        <<- /conf/ morph(<1, ":D") -2>> =\2.replace("imm", "ém").replace("Imm", "Ém")
        && Confusion probable. Si “\2” se rapporte à “\1”, alors vous voulez probablement dire “éminent” ; “imminent” signifie “qui va survenir prochainement”.|https://fr.wiktionary.org/wiki/%C3%A9minent
        && Confusion probable. Si “\2” se rapporte à “\1”, alors vous voulez probablement dire “éminent” ; “imminent” signifie “qui va survenir prochainement”.|https://fr.wiktionary.org/wiki/%C3%A9minent

    [>accouchement|>accord|>arrivée|>assaut|>attaque|>atterrissage|>cataclysme|>catastrophe|>changement|>conflit|>crash|>danger|>décollage|>départ|>désarmement|>déclenchement|>effondrement|>éruption|>fin|>guerre|>lancement|>orage|>ouragan|>péril|>remaniement|>réponse|>résultat|>retour|>séisme|>tempête|>tsunami|>verdict] ?>être¿ >éminent
        <<- /conf/ --1>> =\-1.replace("émi", "immi").replace("Émi", "Immi")
        && Confusion probable. Si “\-1” se rapporte à “\1”, alors vous voulez probablement dire “imminent” ; “éminent” signifie “notable”.|https://fr.wiktionary.org/wiki/%C3%A9minent
        && Confusion probable. Si “\-1” se rapporte à “\1”, alors vous voulez probablement dire “imminent” ; “éminent” signifie “notable”.|https://fr.wiktionary.org/wiki/%C3%A9minent

TEST: mon {{imminent}} collègue.
TEST: Les scientifiques les plus {{imminents}}.
TEST: l’accouchement est {{éminent}}.
TEST: Mon {{imminent}} collègue.
TEST: Un paléontologue {{imminent}}.
TEST: L’arrivée est imminente.
20063
20064
20065
20066
20067
20068
20069
20070

20071
20072
20073
20074
20075
20076
20077
20078
20079
20080
20081
20082
20083
20084
20085

20086
20087
20088
20089

20090
20091
20092
20093

20094
20095
20096
20097
20098
20099
20100
20101
20102
20103
20104
20105
20106
20107
20108
20109

20110
20111
20112
20113
20114
20115
20116
20070
20071
20072
20073
20074
20075
20076

20077
20078
20079
20080
20081
20082
20083
20084
20085
20086
20087
20088
20089
20090
20091

20092
20093
20094
20095

20096
20097
20098
20099

20100
20101
20102
20103
20104
20105
20106
20107
20108
20109
20110
20111
20112
20113
20114
20115

20116
20117
20118
20119
20120
20121
20122
20123







-
+














-
+



-
+



-
+















-
+







TEST: le petit entretien le paralysait


# envi / envie
__conf_envie_envi__
    à l’ envie
        <<- /conf/ not morph(<1, ">(?:abandonner|céder|résister)/") and not value(>1, "|de|d’|")
        -3>> envi                                           && Locution adverbiale « à l’envi », signifiant « autant que possible ».
        -3>> envi                                           && Locution adverbiale « à l’envi », signifiant « autant que possible ».

    [>avoir|>donner] [envi+s|envies]
        <<- /conf/ -2>> envie                               && Confusion : Avoir envie, donner envie.

TEST: Ils s’amusèrent à l’{{envie}} et oublièrent tous leurs soucis.
TEST: ça donne {{envi}}
TEST: Je résiste à l’envie de manger du chocolat.
TEST: On ne s’intéresse pas à l’école ni à l’âge, mais aux compétences et à l’envie de partager.


# et / est
__conf_est_et__
    <start>  [le|la|l’|ce|cet|cette|mon|ma|ta|sa|notre|votre|leur|quel|quelle]  *WORD  ?[lui|leur|nous|vous]¿  et  *WORD  <end>
        <<- /conf/ morph(\3, ":[NA].*:[is]", ":G") and morph(\-2, ":[QA]", ":M") and \-2.islower()
        --3>> est                               && Confusion probable : “et” est une conjonction de coordination. Pour le verbe être à la 3ᵉ personne du singulier, écrivez “est”.
        --3>> est                               && Confusion probable : “et” est une conjonction de coordination. Pour le verbe être à la 3ᵉ personne du singulier, écrivez “est”.

    <start>  [son|ton]  *WORD  ?[lui|leur|nous|vous]¿  et  *WORD  <end>
        <<- /conf/ morph(\3, ":N.*:[is]", ":[GA]") and morph(\-2, ":[QA]", ":M") and \-2.islower()
        --3>> est                               && Confusion probable : “et” est une conjonction de coordination. Pour le verbe être à la 3ᵉ personne du singulier, écrivez “est”.
        --3>> est                               && Confusion probable : “et” est une conjonction de coordination. Pour le verbe être à la 3ᵉ personne du singulier, écrivez “est”.

    <start>  *WORD  ?[lui|leur|nous|vous]¿  et  *WORD  <end>
        <<- /conf/ morph(\2, ":M", ":[GA]") and morph(\-2, ":[QA]", ":M") and \-2.islower()
        --3>> est                               && Confusion probable : “et” est une conjonction de coordination. Pour le verbe être à la 3ᵉ personne du singulier, écrivez “est”.
        --3>> est                               && Confusion probable : “et” est une conjonction de coordination. Pour le verbe être à la 3ᵉ personne du singulier, écrivez “est”.

TEST: ce chien {{et}} malade.
TEST: ton chat {{et}} cinglé.
TEST: Pauline {{et}} fatiguée.
TEST: ton implacable et amère !
TEST: son cristallin et aigu
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.
TEST: Martial et inflexible.
TEST: il attend dans la pièce où entre Patrick et Paul l’agrippe aussitôt pour l’avertir du danger.


__conf_où_est__
    où  et  @:D¬:R|>(?:quell?e?s?|de)/
        <<- /conf/-2>> est                      && Confusion probable : “et” est une conjonction de coordination. Pour le verbe être à la 3ᵉ personne du singulier, écrivez “est”.
        <<- /conf/-2>> est                      && Confusion probable : “et” est une conjonction de coordination. Pour le verbe être à la 3ᵉ personne du singulier, écrivez “est”.

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 ?
TEST: je veux savoir où et lequel je dois flinguer

20312
20313
20314
20315
20316
20317
20318
20319

20320
20321
20322

20323
20324
20325
20326
20327

20328
20329
20330

20331
20332
20333
20334

20335
20336
20337
20338
20339
20340
20341
20342
20343
20344
20345
20346
20347
20348

20349
20350
20351

20352
20353
20354
20355
20356
20357
20358
20359
20360
20361
20362
20363
20364
20365
20366
20367
20368
20369
20370
20371
20372

20373
20374
20375

20376
20377
20378
20379
20380
20381
20382
20383
20384
20385
20386
20387
20388
20389
20390
20391
20392
20393
20394

20395
20396
20397
20398
20399
20400
20401
20402
20403
20404
20405
20406
20407
20408
20409
20410
20411
20412

20413
20414
20415
20416

20417
20418
20419
20420
20421
20422

20423
20424
20425
20426

20427
20428
20429
20430

20431
20432
20433
20434
20435
20436
20437
20319
20320
20321
20322
20323
20324
20325

20326
20327
20328

20329
20330
20331
20332
20333

20334
20335
20336

20337
20338
20339
20340

20341
20342
20343
20344
20345
20346
20347
20348
20349
20350
20351
20352
20353
20354

20355
20356
20357

20358
20359
20360
20361
20362
20363
20364
20365
20366
20367
20368
20369
20370
20371
20372
20373
20374
20375
20376
20377
20378

20379
20380
20381

20382
20383
20384
20385
20386
20387
20388
20389
20390
20391
20392
20393
20394
20395
20396
20397
20398
20399
20400

20401
20402
20403
20404
20405
20406
20407
20408
20409
20410
20411
20412
20413
20414
20415
20416
20417
20418

20419
20420
20421
20422

20423
20424
20425
20426
20427
20428

20429
20430
20431
20432

20433
20434
20435
20436

20437
20438
20439
20440
20441
20442
20443
20444







-
+


-
+




-
+


-
+



-
+













-
+


-
+




















-
+


-
+


















-
+

















-
+



-
+





-
+



-
+



-
+







TEST: elle a perdu {{foie}} en Dieu.


# fond / fonds / fonts
__conf_fond_fonds_fonts__
    [>collecte|>bailleur|>levé|>extorsion|>détournement] de [fond|fonts]
    >collecter des fonts
        <<- /conf/ -3>> fonds                   && Confusion : fonds (ce qui constitue une richesse) ≠ fond (partie la plus basse/profonde).
        <<- /conf/ -3>> fonds                   && Confusion : fonds (ce qui constitue une richesse) ≠ fond (partie la plus basse/profonde).

    à [fond|fonts] [perdu+ses]
        <<- /conf/ ->> à fonds perdus           && Confusion : fonds (ce qui constitue une richesse) ≠ fond (partie la plus basse/profonde).
        <<- /conf/ ->> à fonds perdus           && Confusion : fonds (ce qui constitue une richesse) ≠ fond (partie la plus basse/profonde).

    [fond|fonts] [>monétaire|spéculatif+s|>international|souverain+s]
    [fond|fonts] [de|d’] [commerce|garantie|roulement|pension|placement|retraite|roulement|solidarité]
    [fond|fonts] d’ [aide|investissement|indemnisation]
        <<- /conf/ -1>> fonds                   && Confusion : fonds (ce qui constitue une richesse) ≠ fond (partie la plus basse/profonde).
        <<- /conf/ -1>> fonds                   && Confusion : fonds (ce qui constitue une richesse) ≠ fond (partie la plus basse/profonde).

    fonds baptismaux
        <<- /conf/ -1>> fonts                   && Confusion. Écrivez “fonts”, qui vient du latin “fons” et signifie « fontaine, source ».
        <<- /conf/ -1>> fonts                   && Confusion. Écrivez “fonts”, qui vient du latin “fons” et signifie « fontaine, source ».

    [un|le|du|ce] [fonds|fonts] [de|d’] ?[la|l’]¿ [assiette|bouteille|cuve|casserolle|marmite|poêle]
    [un|le|du|ce] [fonds|fonts] du [seau|tupperware|wok]
        <<- /conf/ -2>> fond                    && Confusion : fonds (ce qui constitue une richesse) ≠ fond (partie la plus basse/profonde).
        <<- /conf/ -2>> fond                    && Confusion : fonds (ce qui constitue une richesse) ≠ fond (partie la plus basse/profonde).

TEST: faire une levée de {{fond}}.
TEST: jouer {{à fond perdu}}
TEST: elle a vendu son {{fond}} de commerce
TEST: il a reçu de l’argent d’un {{fond}} d’investissement
TEST: les {{fonds}} baptismaux.
TEST: le {{fonds}} de la cuve


# glaciaire / glacière
__conf_glacière_glaciaire__
    >glaciaire
        <<- /conf/ morph(<1, ":D.*:(?:f|e:p)")
        ->> =\1.replace("iai", "iè")                && Confusion : “glaciaire” est un adjectif. Le contenant préservant le froid s’écrit “glacière”.
        ->> =\1.replace("iai", "iè")                && Confusion : “glaciaire” est un adjectif. Le contenant préservant le froid s’écrit “glacière”.

    [>accumulation|>âge|>age|>aire|>alluvion|amas|>amphithéâtre|>auge|>calotte|>cirque|>cycle|>dépôt|>dynamique|>écoulement|>ère|>érosion|>faune|>formation|>géologie|>grotte|>lac|>moraine|>obturation|>origine|>période|>rando|>randonnée|>relief|>retrait|>régression|>sédimentation|>séisme|>spéléo|>spéléologie|>strie|temps|>vallée|>verrou] >glacière
        <<- /conf/ -2>> =\1.replace("iè", "iai")    && Confusion : une glacière est un contenant préservant le froid. L’adjectif s’écrit “glaciaire”.
        <<- /conf/ -2>> =\1.replace("iè", "iai")    && Confusion : une glacière est un contenant préservant le froid. L’adjectif s’écrit “glaciaire”.

TEST: Autrefois, il y eut plusieurs ères {{glacières}}.
TEST: dans la {{glaciaire}}
TEST: Passe-moi la glacière, s’il te plaît.


# gène / gêne
__conf_gène_gêne__
    sans >gène
    sans-gènes
    sans-gène
        <<- /conf/ ->> sans-gêne                    && Confusion. Les gènes sont des éléments des chromosomes. Pour le synonyme d’embarras, écrivez “gêne”.

    [ces|des|mes|tes|ses|nos|vos|leurs] gênes
        <<- /conf/ -2>> gènes                       && Confusion probable. La gêne est un embarras. Pour parles des éléments des chromosomes, écrivez “gènes”.

TEST: Quel {{sans gène}}, celui-là !
TEST: Il croit que ses {{gênes}} décident de sa santé…


# gent [nf] / gent(e)(s) [adj]
# gent [nf] / gent·e·s [adj]
__conf_gent__
    la gente [féminine|masculine]
        <<- /conf/ -2>> gent                        && Confusion. « Gente » est un adjectif vieilli. Utiliser « gent » pour désigner un groupe de personnes.
        <<- /conf/ -2>> gent                        && Confusion. « Gente » est un adjectif vieilli. Utiliser « gent » pour désigner un groupe de personnes.

TEST: la {{gente}} masculine est grossière et l’a toujours été.


# golf / golfe
__conf_golf_golfe2__
    >jouer      au golfe
    >pratiquer  le golfe
        <<- /conf/ -3>> golf                        && Confusion. Un golfe est une zone maritime qui avance dans les terres. Pour le sport, écrivez “golf”.

TEST: il joue au {{golfe}} tous les jours.
TEST: Jouer au golf.


# goutte / goûte
__conf_goûte_goutte__
    [goûte|goûtes|goute|goutes] [de|d’] [alcool|acide|amour|bière|eau|folie|huile|javel|lait|liquide|mercure|miel|peinture|pluie|rhum|rosée|salive|sang|semence|sperme|sueur|urine|vin|vinaigre|whisky]
        <<- /conf/ -1>> =\1.replace("û", "u").replace("t", "tt").replace("Û", "U").replace("T", "TT")
        && Confusion : “goûter” signifie utiliser le sens du goût. Pour une petite quantité de liquide, écrivez “goutte”.|https://fr.wiktionary.org/wiki/goutte
        && Confusion : “goûter” signifie utiliser le sens du goût. Pour une petite quantité de liquide, écrivez “goutte”.|https://fr.wiktionary.org/wiki/goutte

    >passer entre les [goûte+s|goute+s]
        <<- /conf/ --1>> gouttes                    && Confusion. Une particule de fluide s’écrit “goutte”.|https://fr.wiktionary.org/wiki/goutte

    [à|a] [grosse+s] [goute+s|goûte+s]
        <<- /conf/ ->> à grosses gouttes            && Confusion. Locution adverbiale “à grosses gouttes”.

TEST: Une {{goûte}} de pluie
TEST: tu sais, les {{goutes}} de pluie, ça mouille.
TEST: ouf, on est passé entre les {{goûtes}}…
TEST: il suait {{à grosse goute}}                               ->> à grosses gouttes
TEST: Des gouttes de pluie.


__conf_goûter_goutter_dégoûter_dégoutter__
    >goutter ?à¿ $:D [>biscuit|>bière|>bon|>bonbon|>breuvage|>burger|>café|>cidre|>cocktail|>chocolat|>crêpe|>cru|>délice|>délicieux|>dessert|>fameux|>féculent|>fromage|>fruit|>gâteau|>hamburger|>légume|>nourriture|paradis|>pâte|>pain|>plat|>pâtisserie|>poisson|>poulet|>recette|repas|>sandwich|>soupe|>tarte|>tartelette|>sauce|>succulent|>thé|>viande|>vin|>yaourt|>yoghourt]
        <<- /conf/ not value(\-2, "|de|") -1>> =\1.replace("outt", "oût").replace("OUTT", "OÛT")
        && Confusion : “goutter” signifie “couler goutte à goutte”. Pour l’usage du goût, écrivez “goûter”.|https://fr.wiktionary.org/wiki/go%C3%BBter
        && Confusion : “goutter” signifie “couler goutte à goutte”. Pour l’usage du goût, écrivez “goûter”.|https://fr.wiktionary.org/wiki/go%C3%BBter

    [>chiotte|>clim|>climatisation|>chauffe-eau|>douche|>eau|>évier|>lavabo|nez|>moteur|>parapluie|>plafond|>pluie|>robinet|>sang|>sueur|>toilette|>toit|>tuyau|>tuyauterie] ?[ne|n’]¿ [>goûter|>gouter|>dégoûter|>dégouter]
        <<- /conf/ --1>> =\-1.replace("oût", "outt").replace("OÛT", "OUTT").replace("out", "outt").replace("OUT", "OUTT")
        && Confusion : “goûter” signifie utiliser le sens du goût. Pour ce qui s’écoule goutte à goutte, écrivez “goutter”.|https://fr.wiktionary.org/wiki/goutter
        && Confusion : “goûter” signifie utiliser le sens du goût. Pour ce qui s’écoule goutte à goutte, écrivez “goutter”.|https://fr.wiktionary.org/wiki/goutter

    [me|te|se]                                      >dégoutter
    [m’|t’|l’|nous|vous|les]                        >avoir  >dégoutter
    [je|tu|il|elle|on|nous|vous|ils|elles|iel|iels] >être   >dégoutter
        <<- /conf/ --1>> =\-1.replace("outt", "oût").replace("OUTT", "OÛT")
        && Confusion probable : “dégoutter” signifie “couler goutte à goutte”. Pour évoquer le dégoût, écrivez “dégoûter”.|https://fr.wiktionary.org/wiki/dégo%C3%BBter
        && Confusion probable : “dégoutter” signifie “couler goutte à goutte”. Pour évoquer le dégoût, écrivez “dégoûter”.|https://fr.wiktionary.org/wiki/dégo%C3%BBter

    nous                                            >dégoutter
        <<- /conf/ not morph(\-1, ":1p") --1>> =\-1.replace("outt", "oût").replace("OUTT", "OÛT")
        && Confusion probable : “dégoutter” signifie “couler goutte à goutte”. Pour évoquer le dégoût, écrivez “dégoûter”.|https://fr.wiktionary.org/wiki/dégo%C3%BBter
        && Confusion probable : “dégoutter” signifie “couler goutte à goutte”. Pour évoquer le dégoût, écrivez “dégoûter”.|https://fr.wiktionary.org/wiki/dégo%C3%BBter

    vous                                            >dégoutter
        <<- /conf/ not morph(\-1, ":2p") --1>> =\-1.replace("outt", "oût").replace("OUTT", "OÛT")
        && Confusion probable : “dégoutter” signifie “couler goutte à goutte”. Pour évoquer le dégoût, écrivez “dégoûter”.|https://fr.wiktionary.org/wiki/dégo%C3%BBter
        && Confusion probable : “dégoutter” signifie “couler goutte à goutte”. Pour évoquer le dégoût, écrivez “dégoûter”.|https://fr.wiktionary.org/wiki/dégo%C3%BBter

TEST: {{Goutte}} ces sandwichs.
TEST: le robinet {{goûte}}
TEST: Le toit ne {{goûte}} plus.
TEST: Ça me {{dégoutte}}.
TEST: Il m’a {{dégoutté}} des maths.
TEST: nous {{dégoutte}}, cette mauvaise foi.
20535
20536
20537
20538
20539
20540
20541
20542

20543
20544
20545

20546
20547
20548
20549
20550
20551
20552
20553
20554

20555
20556
20557
20558
20559
20560
20561
20542
20543
20544
20545
20546
20547
20548

20549
20550
20551

20552
20553
20554
20555
20556
20557
20558
20559
20560

20561
20562
20563
20564
20565
20566
20567
20568







-
+


-
+








-
+







TEST: une jeune fille {{lest}}                              ->> leste|lestes
TEST: il faut lâcher du {{leste}}                           ->> lest


# levée / lever
__conf_lever_levée__
    [lever|levers|levé|levés] de >fond
        <<- /conf/ ->> levée de fonds|levées de fonds           && Confusion. Exemple : une levée de fonds, un lever de soleil.
        <<- /conf/ ->> levée de fonds|levées de fonds           && Confusion. Exemple : une levée de fonds, un lever de soleil.

    >levé [de|du] [rideau|soleil]
        <<- /conf/ -1>> lever|levers                            && Confusion. Exemple : une levée de fonds, un lever de soleil.
        <<- /conf/ -1>> lever|levers                            && Confusion. Exemple : une levée de fonds, un lever de soleil.

TEST: {{levée}} de soleil
TEST: Faisons des {{levers de fond}}


# lever un lièvre / soulever
__conf_lever_un_lièvre__
    >soulever [un|le|des|les|quelques|plusieurs] >lièvre
        <<- /conf/ -1>> =\1[3:]                                 && Expression impropre. On écrit « lever un lièvre ».|https://fr.wiktionary.org/wiki/lever_le_li%C3%A8vre
        <<- /conf/ -1>> =\1[3:]                                 && Expression impropre. On écrit « lever un lièvre ».|https://fr.wiktionary.org/wiki/lever_le_li%C3%A8vre

TEST: j’ai {{soulevé}} un lièvre, là !


# lâcher la proie pour l’ombre
__conf_lâcher_la_proie_pour_l_ombre__
    >chasser la proie pour l’ ombre
20585
20586
20587
20588
20589
20590
20591
20592

20593
20594
20595

20596
20597
20598
20599

20600
20601
20602
20603
20604
20605
20606
20592
20593
20594
20595
20596
20597
20598

20599
20600
20601

20602
20603
20604
20605

20606
20607
20608
20609
20610
20611
20612
20613







-
+


-
+



-
+







        <<- /conf/ --1>> lieues                                 && Confusion probable. Pour désigner une distance, écrivez “lieues”.|https://fr.wiktionary.org/wiki/lieue

    [>être|>demeurer|>déménager|>habiter|>trouver|>situer|>rester|>demeurer|>demeure|>vivre]  à  des  [lieux|lieus]
        <<- /conf/ space_after(\2, 1, 4) --1>> lieues           && Confusion probable. Pour désigner une distance, écrivez “lieues”.|https://fr.wiktionary.org/wiki/lieue

    *NUM >lieu sous [la|les] >mer
    $:B:e:p  >lieu sous [la|les] >mer
        <<- /conf/ -2>> lieues                                  && Confusion. Pour désigner une distance, écrivez “lieue(s)”.|https://fr.wiktionary.org/wiki/lieue
        <<- /conf/ -2>> lieues                                  && Confusion. Pour désigner une distance, écrivez “lieue”.|https://fr.wiktionary.org/wiki/lieue

    [lieux|>lieue] [>jaune|>noir|>mordre]
        <<- /conf/ -1>> lieu|lieus                              && Confusion probable. Si vous parlez du poisson, écrivez “lieu(s)”.|https://fr.wiktionary.org/wiki/lieu
        <<- /conf/ -1>> lieu|lieus                              && Confusion probable. Si vous parlez du poisson, écrivez “lieu” ou, au pluriel, “lieus”.|https://fr.wiktionary.org/wiki/lieu

    >pêche [aux|des] [lieux|lieues]
    >chair des [lieux|lieues]
        <<- /conf/ -3>> lieu|lieus                              && Confusion. Si vous parlez du poisson, écrivez “lieu(s)”.|https://fr.wiktionary.org/wiki/lieu
        <<- /conf/ -3>> lieu|lieus                              && Confusion. Si vous parlez du poisson, écrivez “lieu” ou, au pluriel, “lieus”.|https://fr.wiktionary.org/wiki/lieu


TEST: {{À des lieux à la ronde}}                                                            ->> À des lieues à la ronde
TEST: qui est le responsable des {{lieues}} ?
TEST: ce sont des {{lieus}} mythiques.
TEST: Des {{lieus}} historiques.
TEST: {{lieus}} abandonnés
20630
20631
20632
20633
20634
20635
20636
20637

20638
20639
20640
20641
20642
20643
20644
20637
20638
20639
20640
20641
20642
20643

20644
20645
20646
20647
20648
20649
20650
20651







-
+







TEST: pas âme qui vive à des lieues à la ronde


# avoir/donner lieu
__conf_avoir_donner_lieu__
    [>avoir|>donner]  lieux
    >avoir ?[eu|eus|eue|eues]¿ lieux
        <<- /conf/ --1>> lieu                                           && Donner lieu, avoir lieu : “lieu” est invariable dans ces locutions verbales.
        <<- /conf/ --1>> lieu                                           && Donner lieu, avoir lieu : “lieu” est invariable dans ces locutions verbales.

    [>avoir|>donner]  [>lieue|lieus]
    >avoir ?[eu|eus|eue|eues]¿ [>lieue|lieus]
        <<- /conf/ --1>> lieu                                           && Confusion. La lieue est une unité de distance. Les lieus sont des poissons.

TEST: ces conneries donneront {{lieux}} à une enquête approfondie.
TEST: Tout ce qui a {{lieue}} hors de ce pays est ignoré.
20738
20739
20740
20741
20742
20743
20744
20745

20746
20747
20748
20749

20750
20751
20752
20753
20754
20755
20756
20745
20746
20747
20748
20749
20750
20751

20752
20753
20754
20755

20756
20757
20758
20759
20760
20761
20762
20763







-
+



-
+







TEST: Elle en est tombée des {{nus}}.


# numérique / digital
__conf_numérique_digital__
    [>agence|>appareil|>banque|>caméra|>communication|>compagnie|>connexion|>économie|>entreprise|>ère|>expérience|>identité|>industrie|>présence|>prise|>service|>solution|>stratégie|>télévision|>transformation|>transition] >digital
        <<- /conf/ -2>> numérique|numériques
        && Confusion : “digital” est un adjectif se rapportant aux doigts (empreinte digitale, arthrose digitale, etc.). Écrivez “numérique”.
        && Confusion : “digital” est un adjectif se rapportant aux doigts (empreinte digitale, arthrose digitale, etc.). Écrivez “numérique”.

    [le|du|au] digital
        <<- /conf/ -2>> numérique
        && Confusion : “digital” est un adjectif se rapportant aux doigts (empreinte digitale, arthrose digitale, etc.). Écrivez “numérique”.
        && Confusion : “digital” est un adjectif se rapportant aux doigts (empreinte digitale, arthrose digitale, etc.). Écrivez “numérique”.

TEST: une économie {{digitale}} ou rien
TEST: Dans l’ère du {{digital}}, tout va plus vite.


# panser / penser
__conf_panser_penser__
20799
20800
20801
20802
20803
20804
20805
20806

20807
20808
20809
20810
20811
20812
20813
20806
20807
20808
20809
20810
20811
20812

20813
20814
20815
20816
20817
20818
20819
20820







-
+







TEST: Là, ce sont des pommes de {{pain}}.                           ->> pin
TEST: nous avons du {{pin}} sur la planche                          ->> pain


# pair / paire
__conf_aller_de_pair__
    >aller de [pairs|paire|paires|pers|perd|perds|>père]
        <<- /conf/ -3>> pair                                     && Confusion. On écrit « aller de pair ».
        <<- /conf/ -3>> pair                                     && Confusion. On écrit « aller de pair ».

    hors [paire|pairs|paires]
        <<- /conf/ --1>> pair                                    && Confusion. La locution “hors pair” est invariable.|https://fr.wiktionary.org/wiki/hors_pair

    hors de [paire|pairs|paires]
        <<- /conf/ --1>> pair                                    && Confusion. La locution “hors de pair” est invariable.|https://fr.wiktionary.org/wiki/hors_de_pair

20854
20855
20856
20857
20858
20859
20860
20861

20862
20863
20864

20865
20866
20867

20868
20869
20870

20871
20872
20873
20874

20875
20876
20877
20878

20879
20880
20881
20882
20883
20884
20885
20861
20862
20863
20864
20865
20866
20867

20868
20869
20870

20871
20872
20873

20874
20875
20876

20877
20878
20879
20880

20881
20882
20883
20884

20885
20886
20887
20888
20889
20890
20891
20892







-
+


-
+


-
+


-
+



-
+



-
+








TEST: C’est parti en {{couille}}


# parti / partie
__conf_prendre_parti_partie__
    >prendre [>partie|partis]
        <<- /conf/ -2>> parti                                   && Confusion. On écrit « prendre parti ».
        <<- /conf/ -2>> parti                                   && Confusion. On écrit « prendre parti ».

    >tirer [>partie|partis]
        <<- /conf/ -2>> parti                                   && Confusion. On écrit « tirer parti ».
        <<- /conf/ -2>> parti                                   && Confusion. On écrit « tirer parti ».

    >faire [parties|>parti]
        <<- /conf/ -2>> partie                                  && Confusion. On écrit « faire partie ».
        <<- /conf/ -2>> partie                                  && Confusion. On écrit « faire partie ».

    >juge et >parti
        <<- /conf/ ->> juge et partie|juges et parties          && Confusion. On écrit « juge et partie ».
        <<- /conf/ ->> juge et partie|juges et parties          && Confusion. On écrit « juge et partie ».

    >prendre a [>partie|>parti]
    >prendre à [parties|>parti]
        <<- /conf/ -2:3>> à partie                              && Confusion. On écrit « prendre à partie ».
        <<- /conf/ -2:3>> à partie                              && Confusion. On écrit « prendre à partie ».

    >prendre *WORD a [>partie|>parti]
    >prendre *WORD à [parties|>parti]
        <<- /conf/ -3:4>> à partie                              && Confusion. On écrit « prendre à partie ».
        <<- /conf/ -3:4>> à partie                              && Confusion. On écrit « prendre à partie ».

TEST: Elle prend toujours {{partie}} aux réunions.
TEST: Il faut savoir tirer {{partis}} de ces atouts-là.
TEST: Tu fais {{parti}} de l’élite, enfin, façon de parler.
TEST: Nous sommes tous d’une manière ou d’une autre {{juge et parti}}.
TEST: prendre {{a parti}}
TEST: Prendre Damien {{à parti}}.
20924
20925
20926
20927
20928
20929
20930
20931

20932
20933
20934
20935
20936

20937
20938
20939
20940
20941

20942
20943
20944
20945
20946
20947
20948
20949
20950
20951
20952

20953
20954
20955
20956
20957
20958
20959
20931
20932
20933
20934
20935
20936
20937

20938
20939
20940
20941
20942

20943
20944
20945
20946
20947

20948
20949
20950
20951
20952
20953
20954
20955
20956
20957
20958

20959
20960
20961
20962
20963
20964
20965
20966







-
+




-
+




-
+










-
+







TEST: elle va montrer {{pâte blanche}} et tout ira bien.


# péché / pêcher
__conf_péché_pêcher2__
    >pêcher par excès [de|d’]
    >pêcher par [insuffisance|omission|orgueil]
        <<- /conf/ -1>> pécher                                  && Confusion : pêcher (capturer des poissons) ≠ pécher (faire un écart de conduite).|https://fr.wiktionary.org/wiki/p%C3%A9cher
        <<- /conf/ -1>> pécher                                  && Confusion : pêcher (capturer des poissons) ≠ pécher (faire un écart de conduite).|https://fr.wiktionary.org/wiki/p%C3%A9cher

    [>commettre|>pardonner|>confesser|>absoudre|>avouer|>reconnaître|>reconnaitre|>expier|>effacer] $:D [pécher|pêcher+s|pêché+ses]
    >repentir de [mon|ton|son|ma|ta|sa|mes|tes|ses|notre|votre|nos|vos|leur|leurs] [pécher|pêcher+s|pêché+ses]
        <<- /conf/ --1>> =\-1.replace("êch", "éch").replace("er", "é").replace("ÊCH", "ÉCH").replace("ER", "É")
        && Confusion : un pêcher est un arbre. Pour désigner un écart de conduite, écrivez “péché”.|https://fr.wiktionary.org/wiki/p%C1%A9ch%C1%A9
        && Confusion : un pêcher est un arbre. Pour désigner un écart de conduite, écrivez “péché”.|https://fr.wiktionary.org/wiki/p%C1%A9ch%C1%A9

    >pécher [du|d’|de|des|la|le|l’|les|à|au|aux] [>ablette|>oblade|>albacore|>anguille|>baleine|>bar|>barracuda|>blageon|>blennie|>bonite|bouvière+s|>brème|>brochet|>bulot|>cabillaud|>cabot|>calamar|>canard|>carassin|>carnassier|>carpe|>chabot|>chevaine|>chevenne|>chevesne|>colin|>congre|>coque|>coquillage|>coquille|>corb|>crabe|>crevette|>crustacé|>dorade|>dauphin|>écrevisse|>éponge|>espadon|>épinoche|>épinochette|>esturgeon|>étrille|>financement|>gardon|>girelle|>gobie|>goujon|>grémille|>grondin|>hareng|>homard|>hotu|>huitre|>huître|>langouste|>langoustine|>leurre|>liche|>loche|>lotte|>marbré|>marsouin|>merlan|>merlu|>mérou|>mollusque|>morue|>mostelle||>moule|>mustelle|>mulet|>murène|>omble|>ormeau|>oursin|>pageau|>pagel|>pageot|>palourde|>patelle|>perche|>pétoncle|>moule|>pieuvre|>piranha|>plie|>poisson|>poulpe|>praire|>raie|>rascasse|>requin|>rotengle|>rouget|>sandre|>sardine|>salmonidé|>sar|>saumon|>saupe|>seiche|>silure|>sole|>spirlin|>tanche|>thon|>truite|>turbot|>vairon|>vandoise|>vive|anchois|>barbeau|>bigorneau|black-bass|>couteau|ligne|>maquereau|saint-jacques]
    >pécher [de|à] [la|l’] [>ablette|>oblade|>albacore|>anguille|>baleine|>bar|>barracuda|>blageon|>blennie|>bonite|bouvière+s|>brème|>brochet|>bulot|>cabillaud|>cabot|>calamar|>canard|>carassin|>carnassier|>carpe|>chabot|>chevaine|>chevenne|>chevesne|>colin|>congre|>coque|>coquillage|>coquille|>corb|>crabe|>crevette|>crustacé|>dorade|>dauphin|>écrevisse|>éponge|>espadon|>épinoche|>épinochette|>esturgeon|>étrille|>financement|>gardon|>girelle|>gobie|>goujon|>grémille|>grondin|>hareng|>homard|>hotu|>huitre|>huître|>langouste|>langoustine|>leurre|>liche|>loche|>lotte|>marbré|>marsouin|>merlan|>merlu|>mérou|>mollusque|>morue|>mostelle|>mustelle|>mulet|>murène|>omble|>ormeau|>oursin|>pageau|>pagel|>pageot|>palourde|>patelle|>perche|>pétoncle|>moule|>pieuvre|>piranha|>plie|>poisson|>poulpe|>praire|>raie|>rascasse|>requin|>rotengle|>rouget|>sandre|>sardine|>salmonidé|>sar|>saumon|>saupe|>seiche|>silure|>sole|>spirlin|>tanche|>thon|>truite|>turbot|>vairon|>vandoise|>vive|anchois|>barbeau|>bigorneau|black-bass|>couteau|ligne|>maquereau|saint-jacques]
        <<- /conf/ -1>> =\1.replace("éch", "êch").replace("èch", "êch").replace("ÉCH", "ÊCH").replace("ÈCH", "ÊCH")
        && Confusion : pêcher (capturer des poissons) ≠ pécher (faire un écart de conduite).|https://fr.wiktionary.org/wiki/p%C3%A9cher
        && Confusion : pêcher (capturer des poissons) ≠ pécher (faire un écart de conduite).|https://fr.wiktionary.org/wiki/p%C3%A9cher

TEST: Il {{pêche}} par excès de confiance.
TEST: commettre un {{pêcher}}.                                              ->> péché
TEST: Elle voulut expier ses {{pêchés}}.                                    ->> péchés
TEST: il {{péchait}} à la ligne                                             ->> pêchait


# peu / peux / peut
__conf_peut_peux_peu2__
    [peux|peut]  [de|d’]  @:[NA]¬*
        <<- /conf/ not value(<1, "|je|tu|il|elle|on|ne|n’|") and space_after(\1, 1, 3) -1>> peu     && Confusion probable : “\1” est une forme conjuguée de “pouvoir”, écrivez “peu” pour dire “pas beaucoup”.
        <<- /conf/ not value(<1, "|je|tu|il|elle|on|ne|n’|") and space_after(\1, 1, 3) -1>> peu     && Confusion probable : “\1” est une forme conjuguée de “pouvoir”, écrivez “peu” pour dire “pas beaucoup”.

TEST: {{peut}} d’hommes savent comment s’y prendre
TEST: peu d’argent
TEST: il peut de façon crédible avancer qu’il veut tout faire sauter


__conf_det_1subst_peu_peut_vinfi__
21207
21208
21209
21210
21211
21212
21213
21214

21215
21216
21217
21218
21219
21220
21221
21222
21223
21224
21225
21226
21227
21228
21229

21230
21231
21232
21233
21234
21235
21236
21214
21215
21216
21217
21218
21219
21220

21221
21222
21223
21224
21225
21226
21227
21228
21229
21230
21231
21232
21233
21234
21235

21236
21237
21238
21239
21240
21241
21242
21243







-
+














-
+









# sale / salle
__conf_salle_sale__
    >sale d’ [>accouchement|>arcade|>attente|>audience|>eau|>escalade|>échographie|>embarquement|>exposition|>hospitalisation|>observation|>opération|>urgence]
    >sale [de|des|du] [>bain|>bal|>banquet|>billard|>bloc|>cinéma|>classe|>colle|>commandement|>concert|>conférence|>conseil|>consultation|cours|>culture|>danse|>départ|>fête|>formation|>garde|>gym|>gymnastique|>infirmier|>lecture|>machine|>malade|>mammographie|>marché|>mariage|>musculation|>musique|>ordinateur|>presse|>prière|>prof|>professeur|>projection|>radio|>radiographie|>réanimation|>réception|>rédaction|>rééducation|>restaurant|>réunion|>réveil|>séjour|>shoot|>soin|>spectacle|>sport|>stockage|>théâtre|>tir|>toilette|>torture|>trading|>travail|>vente|fitness|>jeu|>repos|>urgence]
    >sale à manger
        <<- /conf/ -1>> =\1.replace("ale", "alle")                  && Confusion : “sale” signifie “malpropre”. Pour désigner une pièce, écrivez “salle”.|https://fr.wiktionary.org/wiki/salle
        <<- /conf/ -1>> =\1.replace("ale", "alle")                  && Confusion : “sale” signifie “malpropre”. Pour désigner une pièce, écrivez “salle”.|https://fr.wiktionary.org/wiki/salle

    >être  >salle
        <<- /conf/ -2>> =\2.replace("alle", "ale")                  && Confusion. Une salle est une pièce. Pour la malpropreté, écrivez “sale”.|https://fr.wiktionary.org/wiki/sale

TEST: dans la {{sale}} des professeurs
TEST: une {{sale}} d’arcade
TEST: ils sont tellement {{salles}}
TEST: pour le service en salle


# sans / sens
__conf_sang_sans_sens__
    [sans|san] dessus dessous
    sans-dessus-dessous
        <<- /conf/ ->> sens dessus dessous                          && Confusion. Locution adverbiale : « sens dessus dessous ».|https://fr.wiktionary.org/wiki/tache
        <<- /conf/ ->> sens dessus dessous                          && Confusion. Locution adverbiale : « sens dessus dessous ».|https://fr.wiktionary.org/wiki/tache

    [le|du|quel|un] ?[certain|faible|grand]¿ [sans|san] [de|d’] la mesure
        <<- /conf/ --4>> sens                                       && Confusion. Le sens de la mesure.

    [sans|san|sens] [bleu|royal|mêlé]
    [sans|san] humain
    [sans|san] de la victime
21504
21505
21506
21507
21508
21509
21510
21511

21512
21513
21514

21515
21516
21517
21518
21519
21520
21521

21522
21523
21524
21525

21526
21527
21528
21529
21530
21531
21532
21511
21512
21513
21514
21515
21516
21517

21518
21519
21520

21521
21522
21523
21524
21525
21526
21527

21528
21529
21530
21531

21532
21533
21534
21535
21536
21537
21538
21539







-
+


-
+






-
+



-
+







TEST: elle a tant de jouets


# tort / tord / tore / torr / tors
__conf_tort_tord_tore__
    en [tord|tords] [<end>|,|)]
    à [tord|tords]
        <<- /conf/ -2>> tort                                            && Confusion : “tord” est une conjugaison du verbe tordre.
        <<- /conf/ -2>> tort                                            && Confusion : “tord” est une conjugaison du verbe tordre.

    [à|en] >tore
        <<- /conf/ -2>> tort                                            && Confusion : un tore est une forme géométrique annulaire.
        <<- /conf/ -2>> tort                                            && Confusion : un tore est une forme géométrique annulaire.

    [à|en] [tors|torr]
        <<- /conf/ -2>> tort                                            && Confusion.

    [>avoir|>donner|>redonner|>faire] [tord|tords]
    >être ?[pas|jamais|guère]¿ en [tord|tords]
        <<- /conf/ --1>> tort                                           && Confusion : “tord” est une conjugaison du verbe tordre.
        <<- /conf/ --1>> tort                                           && Confusion : “tord” est une conjugaison du verbe tordre.

    [>avoir|>donner|>redonner|>faire] >tore
    >être ?[pas|jamais|guère]¿ en >tore
        <<- /conf/ --1>> tort                                           && Confusion : un tore est une forme géométrique annulaire.
        <<- /conf/ --1>> tort                                           && Confusion : un tore est une forme géométrique annulaire.

    [>avoir|>donner|>redonner|>faire] [tors|torr]
    >être ?[pas|jamais|guère]¿ en [tors|torr]
        <<- /conf/ --1>> tort                                           && Confusion.

TEST: elles seront à {{tord}} accusées.
TEST: en {{tore}}
21580
21581
21582
21583
21584
21585
21586
21587

21588
21589
21590

21591
21592
21593
21594
21595
21596
21597
21598
21599
21600

21601
21602
21603
21604

21605
21606
21607
21608
21609
21610
21611
21587
21588
21589
21590
21591
21592
21593

21594
21595
21596

21597
21598
21599
21600
21601
21602
21603
21604
21605
21606

21607
21608
21609
21610

21611
21612
21613
21614
21615
21616
21617
21618







-
+


-
+









-
+



-
+







TEST: avoir le vent en poupe
TEST: aller dans le sens du vent


# venimeux / vénéneux
__conf_venimeux_vénéreux__
    [>serpent|>araignée|>scorpion|>vipère|>cobra|>crapaud|>grenouille|>dendrobate|>poulpe|>guêpe|>abeille|>frelon|>méduse|>morsure|>piqûre|>dard|>dent|>croc|>crochet]  >vénéneux
        <<- /conf/ -2>> =\1.replace("énén", "enim").replace("ÉNÉN", "ENIM")                         && Confusion : “vénéneux” se dit des plantes. Employez “venimeux”.|https://fr.wiktionary.org/wiki/venimeux
        <<- /conf/ -2>> =\1.replace("énén", "enim").replace("ÉNÉN", "ENIM")                         && Confusion : “vénéneux” se dit des plantes. Employez “venimeux”.|https://fr.wiktionary.org/wiki/venimeux

    [>plant|>champignon|>lépiote|baie+s|>fruit|>herbe|>fleur|>chair|>moule|humus|>substance|>végétal]  >venimeux
        <<- /conf/ -2>> =\1.replace("enim", "énén").replace("ENIM", "ÉNÉN")                         && Confusion : pas de venin ici, écrivez “vénéneux”.|https://fr.wiktionary.org/wiki/v%C3%A9n%C3%A9neux
        <<- /conf/ -2>> =\1.replace("enim", "énén").replace("ENIM", "ÉNÉN")                         && Confusion : pas de venin ici, écrivez “vénéneux”.|https://fr.wiktionary.org/wiki/v%C3%A9n%C3%A9neux

TEST: ces araignées {{vénéneuses}}.
TEST: ce champignon {{venimeux}}.


# ver / vers / verre
__conf_ver_vers_verre_vert2__
    [ver|>verre] [moi|toi|lui|elle|nous|vous|eux|elles|iel|iels]
        <<- /conf/ morph(<1, ">,|<start>|:V", ":D") -1>> vers
        && Confusion probable. Pour dire “en direction de” écrivez “vers”.|https://fr.wiktionary.org/wiki/vers
        && Confusion probable. Pour dire “en direction de”, écrivez “vers”.|https://fr.wiktionary.org/wiki/vers

    [>aller|>arriver|>courir|>foncer|>marcher|>partir|>repartir|>venir|>revenir] ver
        <<- /conf/ --1>> vers
        && Confusion probable. Pour dire “en direction de” écrivez “vers”.|https://fr.wiktionary.org/wiki/vers
        && Confusion probable. Pour dire “en direction de”, écrivez “vers”.|https://fr.wiktionary.org/wiki/vers

    !! >tirer les vers du nez ¡¡
    >tirer les [>verre|verts|vers] du [nez|né]
        <<- /conf/ --3:0>> vers du nez
        && Confusion. Locution “tirer les vers du nez”.|https://fr.wiktionary.org/wiki/tirer_les_vers_du_nez

TEST: On va lui tirer les {{verts du nez}}
21665
21666
21667
21668
21669
21670
21671
21672

21673
21674
21675
21676
21677

21678
21679
21680

21681
21682
21683
21684
21685
21686
21687
21688
21689
21690
21691
21692
21693
21694
21695

21696
21697
21698
21699
21700
21701
21702
21703

21704
21705
21706
21707
21708
21709
21710
21711
21712
21713
21714
21715
21716
21717

21718
21719

21720
21721

21722
21723
21724
21725
21726
21727
21728
21729
21730
21731
21732
21733




21734
21735
21736
21737
21738
21739
21740


21741
21742
21743
21744


21745
21746
21747
21748
21749
21750




21751
21752
21753
21754
21755
21756
21757
21758
21759
21760
21761
21762
21763
21764
21765
21766
21767
21768
21769
21770

21771
21772

21773
21774
21775
21776
21777

21778
21779

21780
21781
21782
21783
21784
21785
21786
21787
21788
21789
21790
21791
21792
21793
21794

21795
21796
21797
21798
21799
21800
21801
21802
21803
21804
21805
21806
21807



21808
21809
21810
21811
21812
21813
21814


21815
21816
21817

21818
21819
21820
21821
21822



21823
21824
21825
21826
21827
21828
21829
21672
21673
21674
21675
21676
21677
21678

21679
21680
21681
21682
21683

21684
21685
21686

21687
21688
21689
21690
21691
21692
21693
21694
21695
21696
21697
21698
21699
21700
21701

21702
21703
21704
21705
21706
21707
21708
21709

21710
21711
21712
21713
21714
21715
21716
21717
21718
21719
21720
21721
21722
21723

21724
21725

21726
21727

21728
21729
21730
21731
21732
21733
21734
21735
21736




21737
21738
21739
21740
21741
21742
21743
21744
21745


21746
21747
21748
21749


21750
21751
21752
21753




21754
21755
21756
21757
21758
21759
21760
21761
21762
21763
21764
21765
21766
21767
21768
21769
21770
21771
21772
21773
21774
21775
21776

21777
21778

21779
21780
21781
21782
21783

21784
21785

21786
21787
21788
21789
21790
21791
21792
21793
21794
21795
21796
21797
21798
21799
21800

21801
21802
21803
21804
21805
21806
21807
21808
21809
21810
21811



21812
21813
21814
21815
21816
21817
21818
21819


21820
21821
21822
21823

21824
21825
21826



21827
21828
21829
21830
21831
21832
21833
21834
21835
21836







-
+




-
+


-
+














-
+







-
+













-
+

-
+

-
+








-
-
-
-
+
+
+
+





-
-
+
+


-
-
+
+


-
-
-
-
+
+
+
+



















-
+

-
+




-
+

-
+














-
+










-
-
-
+
+
+





-
-
+
+


-
+


-
-
-
+
+
+







TEST: de l’insécurité et de l’instabilité provoquées


## l’

__gn_l_1m__
    ,  l’  *WORD
        <<- /gn/ morph(\3, ":[NA].*:p", "*") -3>> =suggSing(\3)                             && Accord de nombre erroné : après « l’ », « \3 » devrait être au singulier.
        <<- /gn/ morph(\3, ":[NA].*:p", "*") -3>> =suggSing(\3)                             && Accord de nombre erroné : après « l’ », « \3 » devrait être au singulier.

    *WORD  l’  *WORD
        <<- /gn/ morph(\3, ":[NA].*:p", "*")
            or ( morph(\3, ":[NA].*:p", ":[si]") and morph(\1, ":[RCY]", ">(?:e[tn]|ou)/") and not (morph(\1, ":Rv") and morph(\3, ":Y")) )
        -3>> =suggSing(\3)                                                                  && Accord de nombre erroné : après « l’ », « \3 » devrait être au singulier.
        -3>> =suggSing(\3)                                                                  && Accord de nombre erroné : après « l’ », « \3 » devrait être au singulier.

    <start>  l’  *WORD
        <<- /gn/ morph(\3, ":[NA].*:p", ":[siGW]") -3>> =suggSing(\3)                       && Accord de nombre erroné : après « l’ », « \3 » devrait être au singulier.
        <<- /gn/ morph(\3, ":[NA].*:p", ":[siGW]") -3>> =suggSing(\3)                       && Accord de nombre erroné : après « l’ », « \3 » devrait être au singulier.

TEST: le gouvernement, l’{{états}} tout entier
TEST: toute l’importance de l’{{accords}} musical.
TEST: L’{{arrivées}} était prévue demain.
TEST: ce que laisse penser l’{{entretiens}} que j’avais fait.


__gn_l_2m__
    l’  @:[NA]¬*  @:[NA]¬*
        <<- /gn/ not value(<1, "|et|ou|de|") and not value(\2, "|air|") and not morph(\3, ">seul/") >>>
        <<- /gn/ ( (morph(\2, ":m", "*") and morph(\3, ":f", "*")) or (morph(\2, ":f", "*") and morph(\3, ":m", "*")) ) and not apposition(\2, \3)
        -3>> =switchGender(\3, False)                                                               && Accord de genre erroné entre “\2” et “\3”.
        <<- /gn/ __also__ and hasFemForm(\2) -2>> =switchGender(\2)                                 && Accord de genre erroné avec “\3”.
        <<- /gn/ morph(\2, ":[si]", "*") and morph(\3, ":p", "*") and not apposition(\2, \3)
        -3>> =suggSing(\3)                                                                          && Accord de nombre erroné avec “\2” : “\3” devrait être au singulier.
        -3>> =suggSing(\3)                                                                          && Accord de nombre erroné avec “\2” : “\3” devrait être au singulier.

    [et|ou|de]  l’  @:[NA]¬*  @:[NA]¬*
        <<- /gn/ not value(\3, "|air|") and not morph(\4, ">seul/") >>>
        <<- /gn/ ( (morph(\3, ":m", "*") and morph(\4, ":f", "*")) or (morph(\3, ":f", "*") and morph(\4, ":m", "*")) ) and not apposition(\3, \4) and not morph(<1, ":[NA]")
        -4>> =switchGender(\4, False)                                                               && Accord de genre erroné entre “\3” et “\4”.
        <<- /gn/ __also__ and hasFemForm(\3) -3>> =switchGender(\3)                                 && Accord de genre erroné avec “\4”.
        <<- /gn/ morph(\3, ":[si]", "*") and morph(\4, ":p", "*") and not apposition(\3, \4) and not morph(<1, ":[NA]")
        -4>> =suggSing(\4)                                                                          && Accord de nombre erroné avec “\3” : “\4” devrait être au singulier.
        -4>> =suggSing(\4)                                                                          && Accord de nombre erroné avec “\3” : “\4” devrait être au singulier.

TEST: L’{{amande}} {{amer}}
TEST: l’{{amicale}} {{animal}}
TEST: l’amour {{immortels}}
TEST: du chien et de l’{{excellente}} {{collier}} qu’il avait autour du cou.
TEST: du chien et de l’étonnant {{colliers}} qu’il avait autour du cou.
TEST: elle prendra l’{{avions}} dès que possible


__gn_l_3m__
    l’  *WORD  *WORD  *WORD
        <<- /gn/ morph(\1, ":D") and morph(<1, "<start>|:V", "*") and \4.islower() >>>
        <<- /gn/ morph(\2, ":[NA].*:m:[si]", "*") and morph(\3, ":[NA].*:[me]:[si]", ":(?:[123][sp]|G|P|B)|;C") and morph(\4, ":[NA].*:f", "*")
        -4>> =suggMasSing(\4)                                                               && Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au masculin singulier.
        -4>> =suggMasSing(\4)                                                               && Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au masculin singulier.
        <<- /gn/ __else__ and morph(\2, ":[NA].*:f:[si]", "*") and morph(\3, ":[NA].*:[fe]:[si]", ":(?:[123][sp]|G|P|B)|;C") and morph(\4, ":[NA].*:m", "*")
        -4>> =suggFemSing(\4)                                                               && Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au féminin singulier.
        -4>> =suggFemSing(\4)                                                               && Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au féminin singulier.
        <<- /gn/ __else__ and morph(\2, ":[NA].*:[si]", "*") and morph(\3, ":[NA].*:[si]", ":(?:[123][sp]|G|P|B)|;C") and morph(\4, ":[NA].*:p", "*")
        -4>> =suggSing(\4)                                                                  && Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au singulier.
        -4>> =suggSing(\4)                                                                  && Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au singulier.

TEST: l’horreur obscure {{répandu}} dans les ténèbres                               ->> répandue
TEST: l’honneur français {{bafouée}}                                                ->> bafoué
TEST: l’ignoble ignorance si {{répandues}}                                          ->> répandue


__gn_le_1m__
    ,  le  *WORD
        <<- /gn/ morph(\3, ":[NA].*:f", ":(?:e|m|P|G|W|[123][sp]|Y)") -2>> =suggLesLa(\3)           && Accord de genre erroné : « \3 » est féminin.
        <<- /gn/ __also__ and hasMasForm(\3) -3>> =suggMasSing(\3, True)                            && Accord de genre erroné : « \2 » est un déterminant masculin.
        <<- /gn/ __else__ and morph(\3, ":[NA].*:p", ":[siGW]") -3>> =suggMasSing(\3)               && Accord de nombre erroné : « \3 » devrait être au singulier.
        <<- /gn/ __also__ -2>> les                                                                  && Accord de nombre erroné : « \3 » est au pluriel.
        <<- /gn/ morph(\3, ":[NA].*:f", ":(?:e|m|P|G|W|[123][sp]|Y)") -2>> =suggLesLa(\3)           && Accord de genre erroné : « \3 » est féminin.
        <<- /gn/ __also__ and hasMasForm(\3) -3>> =suggMasSing(\3, True)                            && Accord de genre erroné : « \2 » est un déterminant masculin.
        <<- /gn/ __else__ and morph(\3, ":[NA].*:p", ":[siGW]") -3>> =suggMasSing(\3)               && Accord de nombre erroné : « \3 » devrait être au singulier.
        <<- /gn/ __also__ -2>> les                                                                  && Accord de nombre erroné : « \3 » est au pluriel.

    *WORD  le  *WORD
        <<- /gn/ morph(\2, ":D") >>>
        <<- /gn/ morph(\3, ":[NA].*:f", ":(?:e|m|P|G|W|[123][sp]|Y)")
            or ( morph(\3, ":[NA].*:f", ":[me]") and morph(\1, ":[RCY]", ">(?:e[tn]|ou)/") and not (morph(\1, ":Rv") and morph(\3, ":Y")) )
        -2>> =suggLesLa(\3)                                                                         && Accord de genre erroné : « \3 » est féminin.
        <<- /gn/ __also__ and hasMasForm(\3) -3>> =suggMasSing(\3, True)                            && Accord de genre erroné : « \2 » est un déterminant masculin.
        -2>> =suggLesLa(\3)                                                                         && Accord de genre erroné : « \3 » est féminin.
        <<- /gn/ __also__ and hasMasForm(\3) -3>> =suggMasSing(\3, True)                            && Accord de genre erroné : « \2 » est un déterminant masculin.
        <<- /gn/ __else__ and morph(\3, ":[NA].*:p", "*")
            or ( morph(\3, ":[NA].*:p", ":[si]") and morph(\1, ":[RCY]", ">(?:e[tn]|ou)/") and not (morph(\1, ":Rv") and morph(\3, ":Y")) )
        -3>> =suggMasSing(\3)                                                                       && Accord de nombre erroné : « \3 » devrait être au singulier.
        <<- /gn/ __also__ -2>> les                                                                  && Accord de nombre erroné : « \3 » est au pluriel.
        -3>> =suggMasSing(\3)                                                                       && Accord de nombre erroné : « \3 » devrait être au singulier.
        <<- /gn/ __also__ -2>> les                                                                  && Accord de nombre erroné : « \3 » est au pluriel.

    <start>  le  *WORD
        <<- /gn/ morph(\3, ":[NA].*:f", ":(?:e|m|P|G|W|Y)") -2>> =suggLesLa(\3)                     && Accord de genre erroné : « \3 » est féminin.
        <<- /gn/ __also__ and hasMasForm(\3) -3>> =suggMasSing(\3, True)                            && Accord de genre erroné : « \2 » est un déterminant masculin.
        <<- /gn/ __else__ and morph(\3, ":[NA].*:p", ":[siGW]") -3>> =suggMasSing(\3)               && Accord de nombre erroné : « \3 » devrait être au singulier.
        <<- /gn/ __also__ -2>> les                                                                  && Accord de nombre erroné : « \3 » est au pluriel.
        <<- /gn/ morph(\3, ":[NA].*:f", ":(?:e|m|P|G|W|Y)") -2>> =suggLesLa(\3)                     && Accord de genre erroné : « \3 » est féminin.
        <<- /gn/ __also__ and hasMasForm(\3) -3>> =suggMasSing(\3, True)                            && Accord de genre erroné : « \2 » est un déterminant masculin.
        <<- /gn/ __else__ and morph(\3, ":[NA].*:p", ":[siGW]") -3>> =suggMasSing(\3)               && Accord de nombre erroné : « \3 » devrait être au singulier.
        <<- /gn/ __also__ -2>> les                                                                  && Accord de nombre erroné : « \3 » est au pluriel.

TEST: c’est une catastrophe, {{le}} {{profits}} a baissé ces deux derniers trimestres
TEST: j’en ai marre, {{le}} {{passée}} est trop dans les esprits
TEST: {{Le}} démoralisation.                                  ->> La
TEST: {{Le}} Guyane française.                                ->> La
TEST: sur {{le}} {{tables}}                                   ->> les|la|||
TEST: avec {{le}} {{pile}}
TEST: contre {{le}} {{rois}}
TEST: {{le}} {{publique}}
TEST: {{Le}} {{pendue}}
TEST: {{Le}} personne répond.
TEST: {{le}} {{quotients}}
TEST: Comme avec l’Hyperloop, le bus chinois conçu pour passer au-dessus des voitures


__gn_le_2m__
    le  *WORD  *WORD
        <<- /gn/ morph(\1, ":D") and not value(<1, "|et|ou|de|") and not morph(\3, ">seul/") >>>
        <<- /gn/ morph(\2, ":[NA].*:[me]", ":(?:B|G|V0)") and morph(\3, ":[NA].*:f", "*") and not apposition(\2, \3)
        -3>> =suggMasSing(\3, True)                                                                 && Accord de genre erroné : « \1 \2 » est masculin, « \3 » est féminin.
        -3>> =suggMasSing(\3, True)                                                                 && Accord de genre erroné : « \1 \2 » est masculin, « \3 » est féminin.
        <<- /gn/ morph(\2, ":[NA].*:[si]", ":G") and morph(\3, ":[NA].*:p", ":[GWsi]") and not apposition(\2, \3)
        -3>> =suggMasSing(\3)                                                                       && Accord de nombre erroné avec « \1 \2 » : « \3 » devrait être au singulier.
        -3>> =suggMasSing(\3)                                                                       && Accord de nombre erroné avec « \1 \2 » : « \3 » devrait être au singulier.

    [et|ou]  le  *WORD  *WORD
        <<- /gn/ morph(\2, ":D") and not morph(<1, ":[NA]") and not morph(\4, ">seul/") >>>
        <<- /gn/ morph(\3, ":[NA].*:[me]", ":(?:B|G|V0|f)") and morph(\4, ":[NA].*:f", "*") and not apposition(\3, \4)
        -4>> =suggMasSing(\4, True)                                                                 && Accord de genre erroné : « \2 \3 » est masculin, « \4 » est féminin.
        -4>> =suggMasSing(\4, True)                                                                 && Accord de genre erroné : « \2 \3 » est masculin, « \4 » est féminin.
        <<- /gn/ morph(\3, ":[NA].*:[si]", ":G") and morph(\4, ":[NA].*:p", ":[GWsi]") and not apposition(\4, \4)
        -4>> =suggMasSing(\4)                                                                       && Accord de nombre erroné avec « \2 \3 » : « \4 » devrait être au singulier.
        -4>> =suggMasSing(\4)                                                                       && Accord de nombre erroné avec « \2 \3 » : « \4 » 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…
TEST: connaître et le grand {{perdante}}
TEST: Le bruit {{perçus}} par les voisins.
TEST: si le premier film est un triomphe, le deuxième est un demi-succès, et le troisième une déception.
TEST: Cela aboutira sur une contractualisation coûteuse pour organiser cette divergence d’intérêts, et le gestionnaire aura le dernier mot.


__gn_le_3m__
    le  *WORD  *WORD  *WORD
        <<- /gn/ not value(<1, "|et|ou|") and morph(\1, ":D")
            and morph(\2, ":[NA].*:[me]:[si]", ":(?:[123][sp]|G)") and morph(\3, ":[NA].*:[me]:[si]", ":(?:[123][sp]|G|P)") and morph(\4, ":[NA].*:[fp]", "*") and \4.islower()
        -4>> =suggMasSing(\4)                                                               && Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au masculin singulier.
        -4>> =suggMasSing(\4)                                                               && Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au masculin singulier.

TEST: le roi chrétien {{tyranniques}} tout pétri de son prétendu droit divin                    ->> tyrannique
TEST: le petit chien {{bruns}}                                                                  ->> brun
TEST: elles furent le jour venu prises par surprise, et elles durent s’enfuir.
TEST: qu’ils fassent tourner le système économique, assez concrètement, mais sans faire chier avec leurs petits problèmes de gens de rien.
TEST: avec le peuple, contre le capitalisme mortifère sous tous ses visages.


__gn_la_1m__
    ,  la  *WORD
        <<- /gn/ morph(\3, ":[NA].*:m", ":(?:e|f|P|G|W|M|[1-3][sp]|Y)") -2>> le             && Accord de genre erroné : « \3 » est masculin.
        <<- /gn/ __also__ and hasFemForm(\3) -3>> =suggFemSing(\3, True)                    && Accord de genre erroné : « \2 » est un déterminant féminin.
        <<- /gn/ __else__ and morph(\3, ":[NA].*:p") -3>> =suggFemSing(\3)                  && Accord de nombre erroné : « \3 » devrait être au singulier.
        <<- /gn/ morph(\3, ":[NA].*:m", ":(?:e|f|P|G|W|M|[1-3][sp]|Y)") -2>> le             && Accord de genre erroné : « \3 » est masculin.
        <<- /gn/ __also__ and hasFemForm(\3) -3>> =suggFemSing(\3, True)                    && Accord de genre erroné : « \2 » est un déterminant féminin.
        <<- /gn/ __else__ and morph(\3, ":[NA].*:p") -3>> =suggFemSing(\3)                  && Accord de nombre erroné : « \3 » devrait être au singulier.

    *WORD  la  *WORD
        <<- /gn/ morph(\2, ":D") >>>
        <<- /gn/ morph(\3, ":[NA].*:m", ":(?:e|f|P|G|W|M|[1-3][sp]|Y)")
            or ( morph(\3, ":[NA].*:m", ":[Mfe]") and morph(\1, ":[RCY]", ">(?:e[tn]|ou)/") and not (morph(\1, ":(?:Rv|C)") and morph(\3, ":Y")) )
        -2>> le                                                                             && Accord de genre erroné : « \3 » est masculin.
        <<- /gn/ __also__ and hasFemForm(\3) -3>> =suggFemSing(\3, True)                    && Accord de genre erroné : « \2 » est un déterminant féminin.
        -2>> le                                                                             && Accord de genre erroné : « \3 » est masculin.
        <<- /gn/ __also__ and hasFemForm(\3) -3>> =suggFemSing(\3, True)                    && Accord de genre erroné : « \2 » est un déterminant féminin.
        <<- /gn/ __else__ and morph(\3, ":[NA].*:p", "*")
            or ( morph(\3, ":[NA].*:p", ":[Msi]") and morph(\1, ":[RCY]", ">(?:e[tn]|ou)/") and not (morph(\1, ":Rv") and morph(\3, ":Y")) )
        -3>> =suggFemSing(\3)                                                               && Accord de nombre erroné : « \3 » devrait être au singulier.
        -3>> =suggFemSing(\3)                                                               && Accord de nombre erroné : « \3 » devrait être au singulier.

    <start>  la  *WORD
        <<- /gn/ morph(\3, ":[NA].*:m", ":[efPGWMY]") -2>> le                               && Accord de genre erroné : « \3 » est masculin.
        <<- /gn/ __also__ and hasFemForm(\3) -3>> =suggFemSing(\3, True)                    && Accord de genre erroné : « \2 » est un déterminant féminin.
        <<- /gn/ __else__ and morph(\3, ":[NA].*:p", ":[siGW]") -3>> =suggFemSing(\3)       && Accord de nombre erroné : « \3 » devrait être au singulier.
        <<- /gn/ morph(\3, ":[NA].*:m", ":[efPGWMY]") -2>> le                               && Accord de genre erroné : « \3 » est masculin.
        <<- /gn/ __also__ and hasFemForm(\3) -3>> =suggFemSing(\3, True)                    && Accord de genre erroné : « \2 » est un déterminant féminin.
        <<- /gn/ __else__ and morph(\3, ":[NA].*:p", ":[siGW]") -3>> =suggFemSing(\3)       && Accord de nombre erroné : « \3 » devrait être au singulier.

TEST: c’est ennuyeux, la {{parties}} deux est ratée.
TEST: j’en sais rien, {{la}} {{parti}} est foutu
TEST: {{La}} Cameroun                                         ->> Le
TEST: {{La}} mustang est un cheval sauvage.                   ->> Le
TEST: {{La}} tableau.                                         ->> Le
TEST: dans la {{parties}}                                     ->> partie
21841
21842
21843
21844
21845
21846
21847
21848

21849
21850

21851
21852
21853
21854
21855

21856
21857

21858
21859
21860
21861
21862
21863
21864
21865
21866
21867
21868
21869
21870
21871
21872

21873
21874
21875
21876
21877
21878
21879
21880
21881
21882
21883


21884
21885
21886
21887
21888
21889


21890
21891
21892
21893


21894
21895
21896
21897
21898
21899
21900
21901
21902
21903
21904
21905
21906
21907


21908
21909
21910


21911
21912
21913
21914
21915
21916
21917


21918
21919
21920


21921
21922
21923
21924
21925
21926
21927
21928
21929
21930
21931
21932
21933
21934
21935
21936
21937

21938
21939

21940
21941

21942
21943
21944
21945
21946
21947
21948
21949
21950
21951
21952



21953
21954
21955
21956
21957
21958
21959
21960
21961
21962
21963



21964
21965
21966
21967
21968
21969
21970
21971
21972
21973
21974



21975
21976
21977
21978
21979
21980
21981
21982
21983
21984
21985



21986
21987
21988
21989
21990
21991
21992
21993
21994
21995
21996



21997
21998
21999
22000
22001
22002
22003
22004
22005
22006
22007



22008
22009
22010
22011
22012
22013
22014
22015
22016
22017
22018



22019
22020
22021
22022
22023


22024
22025
22026
22027
22028
22029
22030



22031
22032
22033
22034
22035


22036
22037
22038
22039
22040
22041
22042
21848
21849
21850
21851
21852
21853
21854

21855
21856

21857
21858
21859
21860
21861

21862
21863

21864
21865
21866
21867
21868
21869
21870
21871
21872
21873
21874
21875
21876
21877
21878

21879
21880
21881
21882
21883
21884
21885
21886
21887
21888


21889
21890
21891
21892
21893
21894


21895
21896
21897
21898


21899
21900
21901
21902
21903
21904
21905
21906
21907
21908
21909
21910
21911
21912


21913
21914
21915


21916
21917
21918
21919
21920
21921
21922


21923
21924
21925


21926
21927
21928
21929
21930
21931
21932
21933
21934
21935
21936
21937
21938
21939
21940
21941
21942
21943

21944
21945

21946
21947

21948
21949
21950
21951
21952
21953
21954
21955
21956



21957
21958
21959
21960
21961
21962
21963
21964
21965
21966
21967



21968
21969
21970
21971
21972
21973
21974
21975
21976
21977
21978



21979
21980
21981
21982
21983
21984
21985
21986
21987
21988
21989



21990
21991
21992
21993
21994
21995
21996
21997
21998
21999
22000



22001
22002
22003
22004
22005
22006
22007
22008
22009
22010
22011



22012
22013
22014
22015
22016
22017
22018
22019
22020
22021
22022



22023
22024
22025
22026
22027
22028


22029
22030
22031
22032
22033
22034



22035
22036
22037
22038
22039
22040


22041
22042
22043
22044
22045
22046
22047
22048
22049







-
+

-
+




-
+

-
+














-
+









-
-
+
+




-
-
+
+


-
-
+
+












-
-
+
+

-
-
+
+





-
-
+
+

-
-
+
+
















-
+

-
+

-
+








-
-
-
+
+
+








-
-
-
+
+
+








-
-
-
+
+
+








-
-
-
+
+
+








-
-
-
+
+
+








-
-
-
+
+
+








-
-
-
+
+
+



-
-
+
+




-
-
-
+
+
+



-
-
+
+







TEST: il pense à la fois où nous avons eu cet accident idiot.


__gn_la_2m__
    la  *WORD  *WORD
        <<- /gn/ morph(\1, ":D") and not value(<1, "|et|ou|de|d’|") and not morph(\3, ">seul/") >>>
        <<- /gn/ morph(\2, ":[NA].*:[fe]", ":(?:B|G|V0)") and morph(\3, ":[NA].*:m", "*") and not apposition(\2, \3)
        -3>> =suggFemSing(\3, True)                                                         && Accord de genre erroné : « \1 \2 » est féminin, « \3 » est masculin.
        -3>> =suggFemSing(\3, True)                                                         && Accord de genre erroné : « \1 \2 » est féminin, « \3 » est masculin.
        <<- /gn/ morph(\2, ":[NA].*:[si]", ":G") and morph(\3, ":[NA].*:p", ":[GWsi]") and not apposition(\2, \3)
        -3>> =suggFemSing(\3)                                                               && Accord de nombre erroné avec « \1 \2 » : « \3 » devrait être au singulier.
        -3>> =suggFemSing(\3)                                                               && Accord de nombre erroné avec « \1 \2 » : « \3 » devrait être au singulier.

    [et|ou|de|d’]  la  *WORD  *WORD
        <<- /gn/ morph(\2, ":D") and not morph(<1, ":[NA]|>(?:et|ou)/") and not morph(\4, ">seul/") >>>
        <<- /gn/ morph(\3, ":[NA].*:[fe]", ":(?:B|G|V0|m)") and morph(\4, ":[NA].*:m", "*") and not apposition(\3, \4)
        -4>> =suggFemSing(\4, True)                                                         && Accord de genre erroné : « \2 \3 » est féminin, « \4 » est masculin.
        -4>> =suggFemSing(\4, True)                                                         && Accord de genre erroné : « \2 \3 » est féminin, « \4 » est masculin.
        <<- /gn/ morph(\3, ":[NA].*:[si]", ":G") and morph(\4, ":[NA].*:p", ":[GWsi]") and not apposition(\3, \4)
        -4>> =suggFemSing(\4)                                                               && Accord de nombre erroné avec « \2 \3 » : « \4 » devrait être au singulier.
        -4>> =suggFemSing(\4)                                                               && Accord de nombre erroné avec « \2 \3 » : « \4 » devrait être au singulier.

TEST: La plus grande {{cinglé}}.
TEST: il imaginait de la pluie {{noir}} tombant sur une terre dévastée.
TEST: je voyais de la pluie {{noires}}
TEST: Il faut donc examiner ensemble le panneau et la paroi latérale.
TEST: Il faut donc examiner ensemble le panneau et la paroi latéraux.
TEST: Il faut donc examiner ensemble les panneaux et la paroi latéraux.
TEST: Il faut donc examiner ensemble les panneaux et la paroi latérale.


__gn_la_3m__
    la  *WORD  *WORD  *WORD
        <<- /gn/ not value(<1, "|et|ou|") and morph(\1, ":D")
            and morph(\2, ":[NA].*:[fe]:[si]", ":(?:[123][sp]|G)") and morph(\3, ":[NA].*:[fe]:[si]", ":(?:[123][sp]|G|P)|;C") and morph(\4, ":[NA].*:[mp]", "*") and \4.islower()
        -4>> =suggFemSing(\4)                                                               && Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au féminin singulier.
        -4>> =suggFemSing(\4)                                                               && Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au féminin singulier.

TEST: la seule solution {{trouvé}} consistait à déléguer                                        ->> trouvée
TEST: La petite fille {{devenues}} infirmière.                                                  ->> devenue
TEST: sous la forme d’un baromètre comparant différents moyens pour alléger ses émissions
TEST: non seulement met en péril la logique industrielle mais contribue à détruire peu à peu le substrat sur lequel repose le marché lui-même, à savoir la société des hommes.


__gn_leur_1m__
    ,  leur  *WORD
        <<- /gn/ morph(\3, ":[NA].*:p", "*") -2>> leurs                                     && Accord de nombre erroné avec « \3 ».
        <<- /gn/ __also__ -3>> =suggSing(\3)                                                && Accord de nombre erroné : « \3 » devrait être au singulier.
        <<- /gn/ morph(\3, ":[NA].*:p", "*") -2>> leurs                                     && Accord de nombre erroné avec « \3 ».
        <<- /gn/ __also__ -3>> =suggSing(\3)                                                && Accord de nombre erroné : « \3 » devrait être au singulier.

    *WORD  leur  *WORD
        <<- /gn/ morph(\3, ":[NA].*:p", "*")
            or ( morph(\3, ":[NA].*:p", ":[si]") and morph(\1, ":[RCY]", ">(?:e[tn]|ou)/") and not (morph(\1, ":Rv") and morph(\3, ":Y")) )
        -2>> leurs                                                                          && Accord de nombre erroné avec « \3 ».
        <<- /gn/ __also__ -3>> =suggSing(\3)                                                && Accord de nombre erroné : « \3 » devrait être au singulier.
        -2>> leurs                                                                          && Accord de nombre erroné avec « \3 ».
        <<- /gn/ __also__ -3>> =suggSing(\3)                                                && Accord de nombre erroné : « \3 » devrait être au singulier.

    <start>  leur  *WORD
        <<- /gn/ morph(\3, ":[NA].*:p", ":[siGW]") -2>> leurs                               && Accord de nombre erroné avec « \3 ».
        <<- /gn/ __also__ -3>> =suggSing(\3)                                                && Accord de nombre erroné : « \3 » devrait être au singulier.
        <<- /gn/ morph(\3, ":[NA].*:p", ":[siGW]") -2>> leurs                               && Accord de nombre erroné avec « \3 ».
        <<- /gn/ __also__ -3>> =suggSing(\3)                                                && Accord de nombre erroné : « \3 » devrait être au singulier.

TEST: Tu sais, {{leur}} {{impatiences}} est notoire.
TEST: J’en ai assez de {{leur}} {{délires}}
TEST: {{Leur}} {{perceptions}} des choses m’exaspère.
TEST: dans {{leur}} {{usines}}


__gn_leur_2m__
    leur  *WORD  *WORD
        <<- /gn/ morph(\1, ":D") and not value(<1, "|et|ou|de|d’|") and not morph(\3, ">seul/") >>>
        <<- /gn/ ((morph(\2, ":[NA].*:m", ":(?:B|e|G|V0|f)") and morph(\3, ":[NA].*:f", "*")) or (morph(\2, ":[NA].*:f", ":(?:B|e|G|V0|m)") and morph(\3, ":[NA].*:m", "*")))
            and not apposition(\2, \3)
        -3>> =switchGender(\3, False)                                                       && Accord de genre erroné entre « \2 » et « \3 ».
        <<- /gn/ __also__ and hasFemForm(\2) -2>> =switchGender(\2, False)                  && Accord de genre erroné avec « \3 ».
        -3>> =switchGender(\3, False)                                                       && Accord de genre erroné entre « \2 » et « \3 ».
        <<- /gn/ __also__ and hasFemForm(\2) -2>> =switchGender(\2, False)                  && Accord de genre erroné avec « \3 ».
        <<- /gn/ morph(\2, ":[NA].*:[si]", ":(?:G|V0)") and morph(\3, ":[NA].*:p", ":[GWsi]") and not apposition(\2, \3)
        -3>> =suggSing(\3)                                                                  && Accord de nombre erroné avec « \1 \2 » : « \3 » devrait être au singulier.
        <<- /gn/ __also__ and morph(\2, ":[NA].*:i") -1>> leurs                             && Accord de nombre erroné avec « \2 \3 ».
        -3>> =suggSing(\3)                                                                  && Accord de nombre erroné avec « \1 \2 » : « \3 » devrait être au singulier.
        <<- /gn/ __also__ and morph(\2, ":[NA].*:i") -1>> leurs                             && Accord de nombre erroné avec « \2 \3 ».

    [et|ou|de|d’]  leur  *WORD  *WORD
        <<- /gn/ morph(\2, ":D") and not morph(<1, ":[NA]|>(?:et|ou)/") and not morph(\4, ">seul/") >>>
        <<- /gn/ ((morph(\3, ":[NA].*:m", ":(?:B|e|G|V0|f)") and morph(\4, ":[NA].*:f", "*")) or (morph(\3, ":[NA].*:f", ":(?:B|e|G|V0|m)") and morph(\4, ":[NA].*:m", "*")))
            and not apposition(\3, \4)
        -4>> =switchGender(\4, False)                                                       && Accord de genre erroné entre « \3 » et « \4 ».
        <<- /gn/ __also__ and hasFemForm(\3) -3>> =switchGender(\3, False)                  && Accord de genre erroné avec « \4 ».
        -4>> =switchGender(\4, False)                                                       && Accord de genre erroné entre « \3 » et « \4 ».
        <<- /gn/ __also__ and hasFemForm(\3) -3>> =switchGender(\3, False)                  && Accord de genre erroné avec « \4 ».
        <<- /gn/ morph(\3, ":[NA].*:[si]", ":(?:G|V0)") and morph(\4, ":[NA].*:p", ":[GWsi]") and not apposition(\3, \4)
        -4>> =suggSing(\4)                                                                  && Accord de nombre erroné avec « \2 \3 » : « \4 » devrait être au singulier.
        <<- /gn/ __also__ and morph(\3, ":[NA].*:i") -2>> leurs                             && Accord de nombre erroné avec « \3 \4 ».
        -4>> =suggSing(\4)                                                                  && Accord de nombre erroné avec « \2 \3 » : « \4 » devrait être au singulier.
        <<- /gn/ __also__ and morph(\3, ":[NA].*:i") -2>> leurs                             && Accord de nombre erroné avec « \3 \4 ».

TEST: leur puissance {{perdues}}
TEST: leur arbre {{élaguée}}
TEST: leur {{petit}} {{grosse}}
TEST: elle se souvenait de leur {{grande}} {{sot}}
TEST: je me souviens de leur verve {{décalé}}
TEST: ils arrivent et leur arrogance {{insupportables}} nous fatigue tous.
TEST: {{leur}} gros {{grains}}
TEST: Que ferons-nous de {{leur}} gros {{grains}}
TEST: 3 milliards d’euros que depuis 2012 l’État leur a volés


__gn_leur_3m__
    leur  *WORD  *WORD  *WORD
        <<- /gn/ morph(\1, ":D") and morph(<1, "<start>|:V", "*") and \4.islower() >>>
        <<- /gn/ morph(\2, ":[NA].*:m:[si]", "*") and morph(\3, ":[NA].*:[me]:[si]", ":(?:[123][sp]|G|P|B)|;C") and morph(\4, ":[NA].*:f", "*")
        -4>> =suggMasSing(\4)                                                               && Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au masculin singulier.
        -4>> =suggMasSing(\4)                                                               && Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au masculin singulier.
        <<- /gn/ __else__ and morph(\2, ":[NA].*:f:[si]", "*") and morph(\3, ":[NA].*:[fe]:[si]", ":(?:[123][sp]|G|P|B)|;C") and morph(\4, ":[NA].*:m", "*")
        -4>> =suggFemSing(\4)                                                               && Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au féminin singulier.
        -4>> =suggFemSing(\4)                                                               && Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au féminin singulier.
        <<- /gn/ __else__ and morph(\2, ":[NA].*:[si]", "*") and morph(\3, ":[NA].*:[si]", ":(?:[123][sp]|G|P|B)|;C") and morph(\4, ":[NA].*:p", "*")
        -4>> =suggSing(\4)                                                                  && Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au singulier.
        -4>> =suggSing(\4)                                                                  && Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au singulier.

TEST: leur grande passion {{délirants}} pour le cosplay.                            ->> délirante
TEST: leur noir projet {{ignorées}} du peuple                                       ->> ignoré
TEST: leur psychologue altruiste {{détestés}} par ses voisins                       ->> détesté


__gn_ledit_1m__
    ledit  *WORD
        <<- /gn/ morph(\2, ":[NA].*:f", ":[GWme]") -1>> ladite                              && Accord de genre erroné : « \2 » est féminin.
        <<- /gn/ __also__ and hasMasForm(\2) -2>> =suggMasSing(\2, True)                    && Accord de genre erroné : « \1 » est un déterminant masculin.
        <<- /gn/ morph(\2, ":[NA].*:p", ":[siGW]") -2>> =suggMasSing(\2)                    && Accord de nombre erroné : « \2 » devrait être au singulier.
        <<- /gn/ morph(\2, ":[NA].*:f", ":[GWme]") -1>> ladite                              && Accord de genre erroné : « \2 » est féminin.
        <<- /gn/ __also__ and hasMasForm(\2) -2>> =suggMasSing(\2, True)                    && Accord de genre erroné : « \1 » est un déterminant masculin.
        <<- /gn/ morph(\2, ":[NA].*:p", ":[siGW]") -2>> =suggMasSing(\2)                    && Accord de nombre erroné : « \2 » devrait être au singulier.

TEST: {{ledit}} femme ne sut comment nous éclairer
TEST: {{ledit}} {{boulangère}} nous enseigna sa méthode
TEST: ledit {{accords}} ne vaut rien.


__gn_ladite_1m__
    ladite  *WORD
        <<- /gn/ morph(\2, ":[NA].*:m", ":[efGW]") -1>> ledit                               && Accord de genre erroné : « \2 » est masculin.
        <<- /gn/ __also__ and hasFemForm(\2) -2>> =suggFemSing(\2, True)                    && Accord de genre erroné : « \1 » est un déterminant féminin.
        <<- /gn/ morph(\2, ":[NA].*:p", ":[siGW]") -2>> =suggFemSing(\2)                    && Accord de nombre erroné : « \2 » devrait être au singulier.
        <<- /gn/ morph(\2, ":[NA].*:m", ":[efGW]") -1>> ledit                               && Accord de genre erroné : « \2 » est masculin.
        <<- /gn/ __also__ and hasFemForm(\2) -2>> =suggFemSing(\2, True)                    && Accord de genre erroné : « \1 » est un déterminant féminin.
        <<- /gn/ morph(\2, ":[NA].*:p", ":[siGW]") -2>> =suggFemSing(\2)                    && Accord de nombre erroné : « \2 » devrait être au singulier.

TEST: {{ladite}} vélo était en panne
TEST: {{ladite}} {{professeur}} était intarissable
TEST: ladite {{passions}} l’avait conduit à sa perte.


__gn_aucun_1m__
    aucun  *WORD
        <<- /gn/ morph(\2, ":[NA].*:f", ":[GWme]") -1>> aucune                              && Accord de genre erroné : « \2 » est féminin.
        <<- /gn/ __also__ and hasMasForm(\2) -2>> =suggMasSing(\2, True)                    && Accord de genre erroné : « \1 » est un déterminant masculin.
        <<- /gn/ morph(\2, ":[NA].*:p", ":[siGW]") -2>> =suggMasSing(\2)                    && Accord de nombre erroné : « \2 » devrait être au singulier.
        <<- /gn/ morph(\2, ":[NA].*:f", ":[GWme]") -1>> aucune                              && Accord de genre erroné : « \2 » est féminin.
        <<- /gn/ __also__ and hasMasForm(\2) -2>> =suggMasSing(\2, True)                    && Accord de genre erroné : « \1 » est un déterminant masculin.
        <<- /gn/ morph(\2, ":[NA].*:p", ":[siGW]") -2>> =suggMasSing(\2)                    && Accord de nombre erroné : « \2 » devrait être au singulier.

TEST: {{aucun}} femme ne réagirait si bêtement
TEST: {{aucun}} {{animale}}
TEST: aucun {{accords}} n’y changera rien.


__gn_aucune_1m__
    aucune  *WORD
        <<- /gn/ morph(\2, ":[NA].*:m", ":[efGW]") -1>> aucun                               && Accord de genre erroné : « \2 » est masculin.
        <<- /gn/ __also__ and hasFemForm(\2) -2>> =suggFemSing(\2, True)                    && Accord de genre erroné : « \1 » est un déterminant féminin.
        <<- /gn/ morph(\2, ":[NA].*:p", ":[siGW]") -2>> =suggFemSing(\2)                    && Accord de nombre erroné : « \2 » devrait être au singulier.
        <<- /gn/ morph(\2, ":[NA].*:m", ":[efGW]") -1>> aucun                               && Accord de genre erroné : « \2 » est masculin.
        <<- /gn/ __also__ and hasFemForm(\2) -2>> =suggFemSing(\2, True)                    && Accord de genre erroné : « \1 » est un déterminant féminin.
        <<- /gn/ morph(\2, ":[NA].*:p", ":[siGW]") -2>> =suggFemSing(\2)                    && Accord de nombre erroné : « \2 » devrait être au singulier.

TEST: {{aucune}} homme ne comprendrait ça
TEST: {{aucune}} {{conseiller}} ne vint nous aider
TEST: aucune {{passions}} n’est digne qu’on meurt pour elle.


__gn_nul_1m__
    nul  *WORD
        <<- /gn/ morph(\2, ":[NA].*:f", ":[GWme]") -1>> nulle                               && Accord de genre erroné : « \2 » est féminin.
        <<- /gn/ __also__ and hasMasForm(\2) -2>> =suggMasSing(\2, True)                    && Accord de genre erroné : « \1 » est un déterminant masculin.
        <<- /gn/ morph(\2, ":[NA].*:p", ":[siGW]") -2>> =suggMasSing(\2)                    && Accord de nombre erroné : « \2 » devrait être au singulier.
        <<- /gn/ morph(\2, ":[NA].*:f", ":[GWme]") -1>> nulle                               && Accord de genre erroné : « \2 » est féminin.
        <<- /gn/ __also__ and hasMasForm(\2) -2>> =suggMasSing(\2, True)                    && Accord de genre erroné : « \1 » est un déterminant masculin.
        <<- /gn/ morph(\2, ":[NA].*:p", ":[siGW]") -2>> =suggMasSing(\2)                    && Accord de nombre erroné : « \2 » devrait être au singulier.

TEST: nul {{accords}} n’y changera rien.
TEST: {{nul}} femme ne réagirait si bêtement
TEST: {{nul}} {{ratée}} ne survint


__gn_nulle_1m__
    nulle  *WORD
        <<- /gn/ morph(\2, ":[NA].*:m", ":[efGW]") -1>> nul                                 && Accord de genre erroné : « \2 » est masculin.
        <<- /gn/ __also__ and hasFemForm(\2) -2>> =suggFemSing(\2, True)                    && Accord de genre erroné : « \1 » est un déterminant féminin.
        <<- /gn/ morph(\2, ":[NA].*:p", ":[siGW]") -2>> =suggFemSing(\2)                    && Accord de nombre erroné : « \2 » devrait être au singulier.
        <<- /gn/ morph(\2, ":[NA].*:m", ":[efGW]") -1>> nul                                 && Accord de genre erroné : « \2 » est masculin.
        <<- /gn/ __also__ and hasFemForm(\2) -2>> =suggFemSing(\2, True)                    && Accord de genre erroné : « \1 » est un déterminant féminin.
        <<- /gn/ morph(\2, ":[NA].*:p", ":[siGW]") -2>> =suggFemSing(\2)                    && Accord de nombre erroné : « \2 » devrait être au singulier.

TEST: nulle {{passions}} n’est digne qu’on meurt pour elle.
TEST: {{nulle}} homme ne comprendrait ça
TEST: {{nulle}} {{damné}} à sauver


__gn_un_1m__
    un  *WORD
        <<- /gn/ morph(\2, ":[NA].*:f", ":(?:e|m|G|W|V0|3s|Y)") -1>> une                    && Accord de genre erroné : « \2 » est féminin.
        <<- /gn/ __also__ and hasMasForm(\2) -2>> =suggMasSing(\2, True)                    && Accord de genre erroné : « \1 » est un déterminant masculin.
        <<- /gn/ morph(\2, ":[NA].*:p", ":[siGW]") -2>> =suggMasSing(\2)                    && Accord de nombre erroné : « \2 » devrait être au singulier.
        <<- /gn/ morph(\2, ":[NA].*:f", ":(?:e|m|G|W|V0|3s|Y)") -1>> une                    && Accord de genre erroné : « \2 » est féminin.
        <<- /gn/ __also__ and hasMasForm(\2) -2>> =suggMasSing(\2, True)                    && Accord de genre erroné : « \1 » est un déterminant masculin.
        <<- /gn/ morph(\2, ":[NA].*:p", ":[siGW]") -2>> =suggMasSing(\2)                    && Accord de nombre erroné : « \2 » devrait être au singulier.

__gn_un_des_1m__
    un  des  *WORD
        <<- /gn/ morph(\3, ":[NA].*:f", ":(?:e|m|G|W|V0|3s)") -1>> une                      && Accord de genre erroné : « \2 » est féminin.
        <<- /gn/ __also__ and hasMasForm(\3) -3>> =suggMasPlur(\3, True)                    && Accord de genre erroné : « \1 » est un déterminant masculin.
        <<- /gn/ morph(\3, ":[NA].*:f", ":(?:e|m|G|W|V0|3s)") -1>> une                      && Accord de genre erroné : « \2 » est féminin.
        <<- /gn/ __also__ and hasMasForm(\3) -3>> =suggMasPlur(\3, True)                    && Accord de genre erroné : « \1 » est un déterminant masculin.

__gn_une_1m__
    une  *WORD
        <<- /gn/ morph(\2, ":[NA].*:m", ":(?:e|f|G|W|V0|3s|P)") and not ( \2 == "demi" and morph(>1, ":N.*:f", "*") )
        -1>> un                                                                             && Accord de genre erroné : « \2 » est masculin.
        <<- /gn/ __also__ and hasFemForm(\2) -2>> =suggFemSing(\2, True)                    && Accord de genre erroné : « \1 » est un déterminant féminin.
        <<- /gn/ morph(\2, ":[NA].*:p", ":[siGW]") -2>> =suggFemSing(\2)                    && Accord de nombre erroné : « \2 » devrait être au singulier.
        -1>> un                                                                             && Accord de genre erroné : « \2 » est masculin.
        <<- /gn/ __also__ and hasFemForm(\2) -2>> =suggFemSing(\2, True)                    && Accord de genre erroné : « \1 » est un déterminant féminin.
        <<- /gn/ morph(\2, ":[NA].*:p", ":[siGW]") -2>> =suggFemSing(\2)                    && Accord de nombre erroné : « \2 » devrait être au singulier.

__gn_une_des_1m__
    une  des  *WORD
        <<- /gn/ morph(\3, ":[NA].*:m", ":(?:e|f|G|W|V0|3s)") -1>> un                       && Accord de genre erroné : « \3 » est masculin.
        <<- /gn/ __also__ and hasFemForm(\3) -3>> =suggFemPlur(\3, True)                    && Accord de genre erroné : « \1 » est un déterminant féminin.
        <<- /gn/ morph(\3, ":[NA].*:m", ":(?:e|f|G|W|V0|3s)") -1>> un                       && Accord de genre erroné : « \3 » est masculin.
        <<- /gn/ __also__ and hasFemForm(\3) -3>> =suggFemPlur(\3, True)                    && Accord de genre erroné : « \1 » est un déterminant féminin.

TEST: {{Un}} {{amie}}
TEST: {{un}} des {{chattes}}
TEST: {{une}} des {{chats}}
TEST: Trente et un hommes sur le pont.
TEST: Ces enfants n’ont jamais vu quelqu’un lire.
TEST: un {{slashs}}                                           ->> slash
22056
22057
22058
22059
22060
22061
22062
22063

22064
22065

22066
22067
22068
22069
22070

22071
22072

22073
22074
22075
22076
22077
22078
22079
22080
22081
22082
22083
22084
22085
22086

22087
22088

22089
22090
22091
22092
22093

22094
22095

22096
22097
22098
22099
22100
22101
22102
22103
22104
22105
22106
22107
22108
22109
22110



22111
22112
22113
22114
22115
22116



22117
22118
22119
22120
22121
22122
22123
22124
22125
22126
22127
22128
22129




22130
22131
22132
22133
22134
22135
22136
22137
22138
22139
22140


22141
22142

22143
22144
22145
22146
22147
22148
22149
22150
22151
22152
22153



22154
22155
22156
22157
22158
22159
22160
22161
22162
22163
22164




22165
22166
22167
22168
22169
22170
22171
22172
22173
22174
22175
22176
22177

22178
22179

22180
22181
22182
22183
22184

22185
22186

22187
22188
22189
22190
22191
22192
22193
22194
22195
22196
22197

22198
22199
22200
22201
22202
22203
22204
22205
22206
22207
22208
22209
22210



22211
22212
22213
22214
22215
22216
22217
22218
22219
22220
22221

22222
22223

22224
22225

22226
22227
22228
22229
22230

22231
22232

22233
22234

22235
22236
22237
22238
22239
22240
22241
22242
22243
22244
22245
22246
22247
22248

22249
22250
22251

22252
22253

22254
22255

22256
22257
22258
22259
22260
22261
22262
22263
22264
22265
22266

22267
22268
22269


22270
22271
22272
22273
22274
22275
22276
22277
22278
22279
22280
22281

22282
22283

22284
22285
22286
22287
22288

22289
22290

22291
22292
22293
22294
22295
22296
22297
22298
22299
22300
22301
22302

22303
22304
22305
22306
22307
22308
22309

22310
22311
22312
22313
22314
22315
22316
22317

22318
22319
22320
22321
22322
22323
22324
22325
22326
22327
22328


22329
22330

22331
22332
22333
22334
22335
22336
22337


22338
22339

22340
22341
22342
22343
22344
22345
22346
22347
22348
22349
22350
22351
22352
22353
22354

22355
22356

22357
22358

22359
22360
22361
22362
22363
22364
22365
22366
22367
22368
22369
22370

22371
22372
22373
22374
22375
22376
22377

22378
22379
22380
22381

22382
22383
22384
22385
22386
22387
22388
22389
22390
22391
22392
22393
22394
22395
22396
22397
22398
22399
22400


22401
22402

22403
22404
22405
22406
22407
22408
22409


22410
22411

22412
22413
22414
22415
22416
22417
22418
22419
22420
22421
22422
22423
22424
22425
22426
22427
22428
22429
22430
22431
22432
22433


22434
22435
22436
22437
22438
22439
22440
22441
22442
22443

22444
22445
22446
22447
22448
22449
22450
22451
22452
22453
22454
22455
22456

22457
22458
22459


22460
22461
22462
22463
22464
22465
22466
22467
22468
22469
22470
22471
22472
22473
22474
22475
22476


22477
22478

22479
22480
22481
22482
22483
22484
22485


22486
22487
22488

22489
22490
22491
22492
22493
22494
22495
22496
22497
22498
22499
22500
22501
22502
22503
22504
22505

22506
22507

22508
22509
22510
22511
22512

22513
22514
22515

22516
22517
22518
22519
22520
22521
22522
22523
22524
22525
22526
22527
22528
22529
22530

22531
22532

22533
22534
22535
22536
22537

22538
22539
22540

22541
22542
22543
22544
22545
22546
22547
22548
22549
22550
22551
22552
22553
22554
22555


22556
22557

22558
22559
22560
22561
22562
22563
22564
22565
22566
22567
22568
22569
22570
22571
22572
22573


22574
22575

22576
22577
22578
22579
22580
22581
22582
22583
22584
22585
22586
22587
22588
22589
22590
22591
22592
22593
22594

22595
22596
22597
22598
22599
22600
22601
22602
22603
22604
22605


22606
22607

22608
22609
22610
22611
22612


22613
22614
22615
22616
22617


22618
22619

22620
22621
22622
22623
22624


22625
22626
22627
22628
22629
22630
22631
22632
22633
22634
22635
22636
22637
22638
22639
22640
22641


22642
22643

22644
22645
22646
22647
22648


22649
22650

22651
22652
22653
22654
22655
22656
22657
22658
22659
22660
22661
22662
22663
22664

22665
22666

22667
22668

22669
22670
22671
22672
22673
22674
22675
22676
22677
22678
22679

22680
22681

22682
22683

22684
22685
22686
22687
22688
22689
22690
22691
22692
22693
22694

22695
22696
22697
22698
22699
22700
22701
22702
22703
22704

22705
22706
22707
22708
22709
22710
22711
22712
22713

22714
22715

22716
22717

22718
22719
22720
22721
22722
22723
22724
22725
22726
22727
22728
22729
22730
22731
22732
22733






22734
22735
22736
22737
22738
22739
22740
22741
22742
22743
22744
22745
22746
22747
22748






22749
22750
22751
22752
22753
22754
22755
22756
22757
22758
22759
22760
22761
22762
22763






22764
22765
22766
22767
22768
22769
22770
22771
22772
22773
22774
22775
22776
22777
22778
22779






22780
22781
22782
22783
22784
22785
22786
22063
22064
22065
22066
22067
22068
22069

22070
22071

22072
22073
22074
22075
22076

22077
22078

22079
22080
22081
22082
22083
22084
22085
22086
22087
22088
22089
22090
22091
22092

22093
22094

22095
22096
22097
22098
22099

22100
22101

22102
22103
22104
22105
22106
22107
22108
22109
22110
22111
22112
22113
22114



22115
22116
22117
22118
22119
22120



22121
22122
22123
22124
22125
22126
22127
22128
22129
22130
22131
22132




22133
22134
22135
22136
22137
22138
22139
22140
22141
22142
22143
22144
22145


22146
22147
22148

22149
22150
22151
22152
22153
22154
22155
22156
22157



22158
22159
22160
22161
22162
22163
22164
22165
22166
22167




22168
22169
22170
22171
22172
22173
22174
22175
22176
22177
22178
22179
22180
22181
22182
22183

22184
22185

22186
22187
22188
22189
22190

22191
22192

22193
22194
22195
22196
22197
22198
22199
22200
22201
22202
22203

22204
22205
22206
22207
22208
22209
22210
22211
22212
22213
22214



22215
22216
22217
22218
22219
22220
22221
22222
22223
22224
22225
22226
22227

22228
22229

22230
22231

22232
22233
22234
22235
22236

22237
22238

22239
22240

22241
22242
22243
22244
22245
22246
22247
22248
22249
22250
22251
22252
22253
22254

22255
22256
22257

22258
22259

22260
22261

22262
22263
22264
22265
22266
22267
22268
22269
22270
22271
22272

22273
22274


22275
22276
22277
22278
22279
22280
22281
22282
22283
22284
22285
22286
22287

22288
22289

22290
22291
22292
22293
22294

22295
22296

22297
22298
22299
22300
22301
22302
22303
22304
22305
22306
22307
22308

22309
22310
22311
22312
22313
22314
22315

22316
22317
22318
22319
22320
22321
22322
22323

22324
22325
22326
22327
22328
22329
22330
22331
22332
22333


22334
22335
22336

22337
22338
22339
22340
22341
22342


22343
22344
22345

22346
22347
22348
22349
22350
22351
22352
22353
22354
22355
22356
22357
22358
22359
22360

22361
22362

22363
22364

22365
22366
22367
22368
22369
22370
22371
22372
22373
22374
22375
22376

22377
22378
22379
22380
22381
22382
22383

22384
22385
22386
22387

22388
22389
22390
22391
22392
22393
22394
22395
22396
22397
22398
22399
22400
22401
22402
22403
22404
22405


22406
22407
22408

22409
22410
22411
22412
22413
22414


22415
22416
22417

22418
22419
22420
22421
22422
22423
22424
22425
22426
22427
22428
22429
22430
22431
22432
22433
22434
22435
22436
22437
22438


22439
22440
22441
22442
22443
22444
22445
22446
22447
22448
22449

22450
22451
22452
22453
22454
22455
22456
22457
22458
22459
22460
22461
22462

22463
22464


22465
22466
22467
22468
22469
22470
22471
22472
22473
22474
22475
22476
22477
22478
22479
22480
22481


22482
22483
22484

22485
22486
22487
22488
22489
22490


22491
22492
22493
22494

22495
22496
22497
22498
22499
22500
22501
22502
22503
22504
22505
22506
22507
22508
22509
22510
22511

22512
22513

22514
22515
22516
22517
22518

22519
22520
22521

22522
22523
22524
22525
22526
22527
22528
22529
22530
22531
22532
22533
22534
22535
22536

22537
22538

22539
22540
22541
22542
22543

22544
22545
22546

22547
22548
22549
22550
22551
22552
22553
22554
22555
22556
22557
22558
22559
22560


22561
22562
22563

22564
22565
22566
22567
22568
22569
22570
22571
22572
22573
22574
22575
22576
22577
22578


22579
22580
22581

22582
22583
22584
22585
22586
22587
22588
22589
22590
22591
22592
22593
22594
22595
22596
22597
22598
22599
22600

22601
22602
22603
22604
22605
22606
22607
22608
22609
22610


22611
22612
22613

22614
22615
22616
22617


22618
22619
22620
22621
22622


22623
22624
22625

22626
22627
22628
22629


22630
22631
22632
22633
22634
22635
22636
22637
22638
22639
22640
22641
22642
22643
22644
22645
22646


22647
22648
22649

22650
22651
22652
22653


22654
22655
22656

22657
22658
22659
22660
22661
22662
22663
22664
22665
22666
22667
22668
22669
22670

22671
22672

22673
22674

22675
22676
22677
22678
22679
22680
22681
22682
22683
22684
22685

22686
22687

22688
22689

22690
22691
22692
22693
22694
22695
22696
22697
22698
22699
22700

22701
22702
22703
22704
22705
22706
22707
22708
22709
22710

22711
22712
22713
22714
22715
22716
22717
22718
22719

22720
22721

22722
22723

22724
22725
22726
22727
22728
22729
22730
22731
22732
22733
22734






22735
22736
22737
22738
22739
22740
22741
22742
22743
22744
22745
22746
22747
22748
22749






22750
22751
22752
22753
22754
22755
22756
22757
22758
22759
22760
22761
22762
22763
22764






22765
22766
22767
22768
22769
22770
22771
22772
22773
22774
22775
22776
22777
22778
22779
22780






22781
22782
22783
22784
22785
22786
22787
22788
22789
22790
22791
22792
22793







-
+

-
+




-
+

-
+













-
+

-
+




-
+

-
+












-
-
-
+
+
+



-
-
-
+
+
+









-
-
-
-
+
+
+
+









-
-
+
+

-
+








-
-
-
+
+
+







-
-
-
-
+
+
+
+












-
+

-
+




-
+

-
+










-
+










-
-
-
+
+
+










-
+

-
+

-
+




-
+

-
+

-
+













-
+


-
+

-
+

-
+










-
+

-
-
+
+











-
+

-
+




-
+

-
+











-
+






-
+







-
+









-
-
+
+

-
+





-
-
+
+

-
+














-
+

-
+

-
+











-
+






-
+



-
+

















-
-
+
+

-
+





-
-
+
+

-
+




















-
-
+
+









-
+












-
+

-
-
+
+















-
-
+
+

-
+





-
-
+
+


-
+
















-
+

-
+




-
+


-
+














-
+

-
+




-
+


-
+













-
-
+
+

-
+














-
-
+
+

-
+


















-
+









-
-
+
+

-
+



-
-
+
+



-
-
+
+

-
+



-
-
+
+















-
-
+
+

-
+



-
-
+
+

-
+













-
+

-
+

-
+










-
+

-
+

-
+










-
+









-
+








-
+

-
+

-
+










-
-
-
-
-
-
+
+
+
+
+
+









-
-
-
-
-
-
+
+
+
+
+
+









-
-
-
-
-
-
+
+
+
+
+
+










-
-
-
-
-
-
+
+
+
+
+
+









## un / une
__gn_un_2m__
    un  *WORD  *WORD
        <<- /gn/ not value(<1, "|et|ou|d’|") and not morph(\3, ">seul/") >>>
        <<- /gn/ morph(\2, ":[NA].*:[me]", ":(?:B|G|V0)") and morph(\3, ":[NA].*:f", "*") and not apposition(\2, \3)
        -3>> =suggMasSing(\3, True)                                                                 && Accord de genre erroné : « \1 \2 » est masculin, « \3 » est féminin.
        -3>> =suggMasSing(\3, True)                                                                 && Accord de genre erroné : « \1 \2 » est masculin, « \3 » est féminin.
        <<- /gn/ morph(\2, ":[NA].*:[si]", ":G") and morph(\3, ":[NA].*:p", "*") and not apposition(\2, \3)
        -3>> =suggMasSing(\3)                                                                       && Accord de nombre erroné avec « \2 » : « \3 » devrait être au singulier.
        -3>> =suggMasSing(\3)                                                                       && Accord de nombre erroné avec « \2 » : « \3 » devrait être au singulier.

    [et|ou|d’]  un  *WORD  *WORD
        <<- /gn/ not morph(<1, ":[NA]|>(?:et|ou)/") and not morph(\4, ">seul/") >>>
        <<- /gn/ morph(\3, ":[NA].*:[me]", ":(?:B|G|V0|f)") and morph(\4, ":[NA].*:f", "*") and not apposition(\3, \4)
        -4>> =suggMasSing(\4, True)                                                                 && Accord de genre erroné : « \2 \3 » est masculin, « \4 » est féminin.
        -4>> =suggMasSing(\4, True)                                                                 && Accord de genre erroné : « \2 \3 » est masculin, « \4 » est féminin.
        <<- /gn/ morph(\3, ":[NA].*:[si]", ":G") and morph(\4, ":[NA].*:p", "*") and not apposition(\3, \4)
        -4>> =suggMasSing(\4)                                                                       && Accord de nombre erroné avec « \2 \3 » : « \4 » devrait être au singulier.
        -4>> =suggMasSing(\4)                                                                       && Accord de nombre erroné avec « \2 \3 » : « \4 » devrait être au singulier.

TEST: un exercice pas très {{utiles}}.                        ->> utile
TEST: un homme {{grands}}                                     ->> grand
TEST: un homme {{futiles}}                                    ->> futile
TEST: que sais-tu d’un homme {{grande}} comme un arbre
TEST: je me souviens d’un homme {{arrogants}}
TEST: C’est pas les quelques vues sur Linux qui vont rattraper un scénario {{bancale}}.


__gn_une_2m__
    une  *WORD  *WORD
        <<- /gn/ not value(<1, "|et|ou|d’|") and not morph(\3, ">seul/") >>>
        <<- /gn/ morph(\2, ":[NA].*:[fe]", ":(?:B|G|V0)") and morph(\3, ":[NA].*:m", "*") and not apposition(\2, \3)
        -3>> =suggFemSing(\3, True)                                                                 && Accord de genre erroné : « \1 \2 » est féminin, « \3 » est masculin.
        -3>> =suggFemSing(\3, True)                                                                 && Accord de genre erroné : « \1 \2 » est féminin, « \3 » est masculin.
        <<- /gn/ \2 != "fois" and morph(\2, ":[NA].*:[si]", ":G") and morph(\3, ":[NA].*:p", "*") and not apposition(\2, \3)
        -3>> =suggFemSing(\3)                                                                       && Accord de nombre erroné avec « \1 \2 » : « \3 » devrait être au singulier.
        -3>> =suggFemSing(\3)                                                                       && Accord de nombre erroné avec « \1 \2 » : « \3 » devrait être au singulier.

    [et|ou|d’]  une  *WORD  *WORD
        <<- /gn/ not morph(<1, ":[NA]|>(?:et|ou)/") and not morph(\4, ">seul/") >>>
        <<- /gn/ morph(\3, ":[NA].*:[fe]", ":(?:B|G|V0|m)") and morph(\4, ":[NA].*:m", "*") and not apposition(\3, \4)
        -4>> =suggFemSing(\4, True)                                                                 && Accord de genre erroné : « \2 \3 » est féminin, « \4 » est masculin.
        -4>> =suggFemSing(\4, True)                                                                 && Accord de genre erroné : « \2 \3 » est féminin, « \4 » est masculin.
        <<- /gn/ \3 != "fois" and morph(\3, ":[NA].*:[si]", ":G") and morph(\4, ":[NA].*:p", "*") and not apposition(\3, \4)
        -4>> =suggFemSing(\4)                                                                       && Accord de nombre erroné avec « \2 \3 » : « \4 » devrait être au singulier.
        -4>> =suggFemSing(\4)                                                                       && Accord de nombre erroné avec « \2 \3 » : « \4 » devrait être au singulier.

TEST: Une femme {{laconiques}}.                               ->> laconique
TEST: Une grande {{homme}}.
TEST: une géologue {{intelligents}}
TEST: Et une femme {{déterminées}}
TEST: on parle là d’une femme {{inconnu}}
TEST: on parle d’une Église {{brûlées}}
TEST: L’or allume le feu d’une cupidité d’une couleur et d’une sorte différentes.


__gn_du_1m__
    du  *WORD
        <<- /gn/ morph(\2, ":[NA].*:f", ":[GWme]") -1>> de la                               && Accord de genre erroné : « \2 » est féminin.
        <<- /gn/ __also__ and hasMasForm(\2) -2>> =suggMasSing(\2, True)                    && Accord de genre erroné : « \1 » est un déterminant masculin.
        <<- /gn/ morph(\2, ":[NA].*:p", ":[siGW]") -2>> =suggMasSing(\2)                    && Accord de nombre erroné : « \2 » devrait être au singulier.
        <<- /gn/ morph(\2, ":[NA].*:f", ":[GWme]") -1>> de la                               && Accord de genre erroné : « \2 » est féminin.
        <<- /gn/ __also__ and hasMasForm(\2) -2>> =suggMasSing(\2, True)                    && Accord de genre erroné : « \1 » est un déterminant masculin.
        <<- /gn/ morph(\2, ":[NA].*:p", ":[siGW]") -2>> =suggMasSing(\2)                    && Accord de nombre erroné : « \2 » devrait être au singulier.

__gn_dudit_1m__
    dudit  *WORD
        <<- /gn/ morph(\2, ":[NA].*:f", ":[GWme]") -1>> de ladite                           && Accord de genre erroné : « \2 » est féminin.
        <<- /gn/ __also__ and hasMasForm(\2) -2>> =suggMasSing(\2, True)                    && Accord de genre erroné : « \1 » est un déterminant masculin.
        <<- /gn/ morph(\2, ":[NA].*:p", ":[siGW]") -2>> =suggMasSing(\2)                    && Accord de nombre erroné : « \2 » devrait être au singulier.
        <<- /gn/ morph(\2, ":[NA].*:f", ":[GWme]") -1>> de ladite                           && Accord de genre erroné : « \2 » est féminin.
        <<- /gn/ __also__ and hasMasForm(\2) -2>> =suggMasSing(\2, True)                    && Accord de genre erroné : « \1 » est un déterminant masculin.
        <<- /gn/ morph(\2, ":[NA].*:p", ":[siGW]") -2>> =suggMasSing(\2)                    && Accord de nombre erroné : « \2 » devrait être au singulier.

TEST: cette bouffe, c’est du {{chiens}}
TEST: cette bouffe, c’est {{du}} {{chienne}}
TEST: les consignes dudit {{présidents}} étaient contratritoires.
TEST: les consignes {{dudit}} {{présidente}} étaient contratritoires.


__gn_ce_1m__
    ce  *WORD
        <<- /gn/ morph(\2, ":[NA].*:f", ":(?:3s|[GWme])") -1>> cette                        && Accord de genre erroné : « \2 » est féminin.
        <<- /gn/ __also__ and hasMasForm(\2) -2>> =suggMasSing(\2, True)                    && Accord de genre erroné : « \1 » est un déterminant masculin.
        <<- /gn/ morph(\2, ":[NA].*:f", ":[GWme]") and morph(\2, ":3s") -1>> cette|se       && Accord de genre erroné : « \2 » est féminin. Ou bien vous confondez le déterminant “ce” avec le pronom “se”.
        <<- /gn/ morph(\2, ":[NA].*:p", ":[siGW]") -2>> =suggMasSing(\2)                    && Accord de nombre erroné : « \2 » devrait être au singulier.
        <<- /gn/ morph(\2, ":[NA].*:f", ":(?:3s|[GWme])") -1>> cette                        && Accord de genre erroné : « \2 » est féminin.
        <<- /gn/ __also__ and hasMasForm(\2) -2>> =suggMasSing(\2, True)                    && Accord de genre erroné : « \1 » est un déterminant masculin.
        <<- /gn/ morph(\2, ":[NA].*:f", ":[GWme]") and morph(\2, ":3s") -1>> cette|se       && Accord de genre erroné : « \2 » est féminin. Ou bien vous confondez le déterminant “ce” avec le pronom “se”.
        <<- /gn/ morph(\2, ":[NA].*:p", ":[siGW]") -2>> =suggMasSing(\2)                    && Accord de nombre erroné : « \2 » devrait être au singulier.

TEST: {{Ce}} animal.                                          ->> Cet
TEST: {{ce}} {{folle}} espoir qui ne la quitte pas
TEST: ce {{claviers}}
TEST: {{ce}} donne


__gn_cet_1m__
    cet  *WORD
        <<- /gn/ morph(\2, ":[NA].*:f", ":[GWme]") -1>> cette                               && Accord de genre erroné : « \2 » est féminin.
        <<- /gn/ __also__ and hasMasForm(\2) -2>> =suggMasSing(\2, True)                    && Accord de genre erroné : « \1 » est un déterminant masculin.
        <<- /gn/ morph(\2, ":[NA].*:f", ":[GWme]") -1>> cette                               && Accord de genre erroné : « \2 » est féminin.
        <<- /gn/ __also__ and hasMasForm(\2) -2>> =suggMasSing(\2, True)                    && Accord de genre erroné : « \1 » est un déterminant masculin.
        <<- /gn/ morph(\2, ">[bcçdfgjklmnpqrstvwxz].+:[NA].*:m", ":[efGW]") -1>> ce         && Accord de genre correct, mais euphonie non respectée.|http://fr.wikipedia.org/wiki/Euphonie
        <<- /gn/ morph(\2, ":[NA].*:p", ":[siGW]") -2>> =suggMasSing(\2)                    && Accord de nombre erroné : « \2 » devrait être au singulier.
        <<- /gn/ morph(\2, ":[NA].*:p", ":[siGW]") -2>> =suggMasSing(\2)                    && Accord de nombre erroné : « \2 » devrait être au singulier.

TEST: {{Cet}} {{idiote}}.
TEST: {{cet}} ballon.                                         ->> ce
TEST: cet {{oliviers}}


__gn_cette_1m__
    cette  *WORD
        <<- /gn/ morph(\2, ":[NA].*:m", ":[efGW]") -1>> =suggCeOrCet(\2)                    && Accord de genre erroné : « \2 » est masculin.
        <<- /gn/ __also__ and hasFemForm(\2) -2>> =suggFemSing(\2, True)                    && Accord de genre erroné : « \1 » est un déterminant féminin.
        <<- /gn/ morph(\2, ":[NA].*:p", ":[siGW]") -2>> =suggFemSing(\2)                    && Accord de nombre erroné : « \2 » devrait être au singulier.
        <<- /gn/ morph(\2, ":[NA].*:m", ":[efGW]") -1>> =suggCeOrCet(\2)                    && Accord de genre erroné : « \2 » est masculin.
        <<- /gn/ __also__ and hasFemForm(\2) -2>> =suggFemSing(\2, True)                    && Accord de genre erroné : « \1 » est un déterminant féminin.
        <<- /gn/ morph(\2, ":[NA].*:p", ":[siGW]") -2>> =suggFemSing(\2)                    && Accord de nombre erroné : « \2 » devrait être au singulier.

TEST: {{Cette}} {{animal}} mort.
TEST: cette {{illusions}} que nous voyons plus clair que quiconque


__gn_au_1m__
    au  *WORD
        <<- /gn/ morph(\2, ":[NA].*:f:s", ":[GWme]") -1>> à la                              && Accord de genre erroné : « \2 » est féminin.
        <<- /gn/ __also__ and hasMasForm(\2) -2>> =suggMasSing(\2, True)                    && Accord de genre erroné : « \1 » est un déterminant masculin.
        <<- /gn/ morph(\2, ":[NA].*:p", ":[siGW]") -2>> =suggMasSing(\2)                    && Accord de nombre erroné : « \2 » devrait être au singulier.
        <<- /gn/ __also__ -1>> aux                                                          && Accord de nombre erroné : « \2 » est au pluriel.
        <<- /gn/ morph(\2, ":[NA].*:f:s", ":[GWme]") -1>> à la                              && Accord de genre erroné : « \2 » est féminin.
        <<- /gn/ __also__ and hasMasForm(\2) -2>> =suggMasSing(\2, True)                    && Accord de genre erroné : « \1 » est un déterminant masculin.
        <<- /gn/ morph(\2, ":[NA].*:p", ":[siGW]") -2>> =suggMasSing(\2)                    && Accord de nombre erroné : « \2 » devrait être au singulier.
        <<- /gn/ __also__ -1>> aux                                                          && Accord de nombre erroné : « \2 » est au pluriel.

TEST: {{au}} {{États-Unis}}
TEST: Téléphone {{au}} personne qui ont donné leur accord.
TEST: téléphone {{au}} {{boulangère}}
TEST: au chien, au chat, au poulet
TEST: à partir de pièces détachées, au départ entièrement venues de l’étranger puis en partie fabriquées sur place


__gn_det_mas_sing_2m__
    [ce|cet|quel|au|ledit|dudit|audit|aucun|nul]  *WORD  *WORD
        <<- /gn/ not value(<1, "|et|ou|de|d’|") and not morph(\3, ">seul/") >>>
        <<- /gn/ morph(\2, ":[NA].*:[me]", ":(?:B|G|V0)") and morph(\3, ":[NA].*:f", "*") and not apposition(\2, \3)
        -3>> =suggMasSing(\3, True)                                                         && Accord de genre erroné : « \2 » est masculin, « \3 » est féminin.
        -3>> =suggMasSing(\3, True)                                                         && Accord de genre erroné : « \2 » est masculin, « \3 » est féminin.
        <<- /gn/ morph(\2, ":[NA].*:[si]", ":G") and morph(\3, ":[NA].*:p", ":[GWsi]") and not apposition(\2, \3)
        -3>> =suggMasSing(\3)                                                               && Accord de nombre erroné avec « \1 \2 » : « \3 » devrait être au singulier.
        -3>> =suggMasSing(\3)                                                               && Accord de nombre erroné avec « \1 \2 » : « \3 » devrait être au singulier.

    [et|ou|de|d’]  [ce|cet|quel|au|ledit|dudit|audit|aucun|nul]  *WORD  *WORD
        <<- /gn/ not morph(<1, ":[NA]|>(?:et|ou)/") and not morph(\4, ">seul/") >>>
        <<- /gn/ morph(\3, ":[NA].*:[me]", ":(?:B|G|V0|f)") and morph(\4, ":[NA].*:f", "*") and not apposition(\3, \4)
        -4>> =suggMasSing(\4, True)                                                         && Accord de genre erroné : « \3 » est masculin, « \4 » est féminin.
        -4>> =suggMasSing(\4, True)                                                         && Accord de genre erroné : « \3 » est masculin, « \4 » est féminin.
        <<- /gn/ morph(\3, ":[NA].*:[si]", ":G") and morph(\4, ":[NA].*:p", ":[GWsi]") and not apposition(\3, \4)
        -4>> =suggMasSing(\4)                                                               && Accord de nombre erroné avec « \2 \3 » : « \4 » devrait être au singulier.
        -4>> =suggMasSing(\4)                                                               && Accord de nombre erroné avec « \2 \3 » : « \4 » 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.
TEST: au petit {{publique}}
TEST: Ils jugeront en toute impartialité de ce cas {{délirante}}.


__gn_det_mas_sing_3m__
    [ledit|un|ce|cet|au|quel|audit|dudit|aucun|nul]  *WORD  *WORD  *WORD
        <<- /gn/ morph(<1, "<start>|:V", "*") and morph(\2, ":[NA].*:[me]:[si]") and morph(\3, ":[NA].*:[me]:[si]", ":(?:[123][sp]|G|P|B)|;C") and morph(\4, ":[NA].*:[pf]", "*") and \4.islower()
        -4>> =suggMasSing(\4)                                                               && Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au masculin singulier.
        -4>> =suggMasSing(\4)                                                               && Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au masculin singulier.

TEST: ledit martyr oublié {{réhabilitée}}                       ->> réhabilité
TEST: un gros connard {{pathétiques}}                                           ->> pathétique
TEST: servi pas un style et une exigence historique remarquables
TEST: ils eurent besoins d’au minimum cent ans pour s’en remettre


__gn_mon_ton_son_1m__
    [mon|ton|son]  *WORD
        <<- /gn/ morph(\1, ":D") >>>
        <<- /gn/ morph(\2, ">[bcçdfgjklmnpqrstvwxz].*:[NA].*:f", ":[GWme]") -1>> =\1.replace("on", "a").replace("ON", "A")     && Accord de genre erroné : « \2 » est féminin.
        <<- /gn/ __also__ and hasMasForm(\2) -2>> =suggMasSing(\2, True)                    && Accord de genre erroné : « \1 » est un déterminant masculin.
        <<- /gn/ morph(\2, ":[NA].*:p", ":[siGW]") -2>> =suggMasSing(\2)                    && Accord de nombre erroné : « \2 » devrait être au singulier.
        <<- /gn/ morph(\2, ">[bcçdfgjklmnpqrstvwxz].*:[NA].*:f", ":[GWme]") -1>> =\1.replace("on", "a").replace("ON", "A")     && Accord de genre erroné : « \2 » est féminin.
        <<- /gn/ __also__ and hasMasForm(\2) -2>> =suggMasSing(\2, True)                    && Accord de genre erroné : « \1 » est un déterminant masculin.
        <<- /gn/ morph(\2, ":[NA].*:p", ":[siGW]") -2>> =suggMasSing(\2)                    && Accord de nombre erroné : « \2 » devrait être au singulier.

TEST: mon {{excellentes}} mémoire
TEST: {{ton}} {{belle}} mémoire
TEST: {{mon}} {{chienne}}


__gn_mon_ton_son_2m__
    [mon|ton|son]  *WORD  *WORD
        <<- /gn/ not value(<1, "|et|ou|de|d’|") and not morph(\3, ">seul/") >>>
        <<- /gn/ morph(\2, ":[NA].*:m", ":(?:B|G|e|V0|f)") and morph(\3, ":[NAQ].*:f", "*") and not apposition(\2, \3)
        -3>> =suggMasSing(\3, True)                                                         && Accord de genre erroné : « \2 » est masculin, « \3 » est féminin.
        -3>> =suggMasSing(\3, True)                                                         && Accord de genre erroné : « \2 » est masculin, « \3 » est féminin.
        <<- /gn/ morph(\2, ">[aâeéèêiîoôuûyœæ].*:[NAQ].*:f", ":(?:B|G|e|V0|m)") and morph(\3, ":[NAQ].*:m", "*") and not apposition(\2, \3)
        -3>> =suggFemSing(\3, True)                                                         && Accord de genre erroné : « \2 » est féminin, « \3 » est masculin.
        -3>> =suggFemSing(\3, True)                                                         && Accord de genre erroné : « \2 » est féminin, « \3 » est masculin.
        <<- /gn/ morph(\2, ":[NA].*:[si]", ":G") and morph(\3, ":[NAQ].*:p", ":[GWsi]") and not apposition(\2, \3)
        -3>> =suggMasSing(\3)                                                               && Accord de nombre erroné avec « \1 \2 » : « \3 » devrait être au singulier.
        -3>> =suggMasSing(\3)                                                               && Accord de nombre erroné avec « \1 \2 » : « \3 » devrait être au singulier.

    [et|ou|de|d’]  [mon|ton|son]  *WORD  *WORD
        <<- /gn/ not morph(<1, ":[NA]|>(?:et|ou)/") and not morph(\4, ">seul/") >>>
        <<- /gn/ morph(\3, ":[NA].*:m", ":(?:B|G|e|V0|f)") and morph(\4, ":[NAQ].*:f", "*") and not apposition(\3, \4)
        -4>> =suggMasSing(\4, True)                                                         && Accord de genre erroné : « \3 » est masculin, « \4 » est féminin.
        -4>> =suggMasSing(\4, True)                                                         && Accord de genre erroné : « \3 » est masculin, « \4 » est féminin.
        <<- /gn/ morph(\3, ">[aâeéèêiîoôuûyœæ].*:[NA].*:f", ":(?:B|G|e|V0|m)") and morph(\4, ":[NAQ].*:m", "*") and not apposition(\3, \4)
        -4>> =suggFemSing(\4, True)                                                         && Accord de genre erroné : « \3 » est féminin, « \4 » est masculin.
        -4>> =suggFemSing(\4, True)                                                         && Accord de genre erroné : « \3 » est féminin, « \4 » est masculin.
        <<- /gn/ morph(\3, ":[NA].*:[si]", ":G") and morph(\4, ":[NAQ].*:p", ":[GWsi]") and not apposition(\3, \4)
        -4>> =suggMasSing(\4)                                                               && Accord de nombre erroné avec « \2 \3 » : « \4 » devrait être au singulier.
        -4>> =suggMasSing(\4)                                                               && Accord de nombre erroné avec « \2 \3 » : « \4 » 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}}
TEST: on parlait de son escapade {{éperdu}} au milieu de la nuit.
TEST: ton étonnante {{secret}} ne sera pas au programme.
TEST: elle s’étonnait de ton opposition {{grandissantes}}
TEST: le ton monte.


__gn_det_mon_ton_son_3m__
    [mon|ton|son]  *WORD  *WORD  *WORD
        <<- /gn/ morph(<1, "<start>|:V", "*") and \4.islower() >>>
        <<- /gn/ morph(\2, ">[bcçdfgjklmnpqrstvwxz].*:[NA].*:[me]:[si]") and morph(\3, ":[NA].*:[me]:[si]", ":(?:[123][sp]|G|P|B)|;C") and morph(\4, ":[NAQ].*:[pf]", "*")
        -4>> =suggMasSing(\4)                                                               && Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au masculin singulier.
        -4>> =suggMasSing(\4)                                                               && Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au masculin singulier.
        <<- /gn/ re.search("^[aâeéèêiîoôuûyœæ]", \2) >>>
        <<- /gn/ morph(\2, ":[NA].*:m:[si]", ":[fe]") and morph(\3, ":[NA].*:[me]:[si]", ":(?:[123][sp]|G|P|B)|;C") and morph(\4, ":[NAQ].*:[pf]", "*")
        -4>> =suggMasSing(\4)                                                               && Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au masculin singulier.
        -4>> =suggMasSing(\4)                                                               && Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au masculin singulier.
        <<- /gn/ __else__ and morph(\2, ":[NA].*:f:[si]", ":[me]") and morph(\3, ":[NA].*:[fe]:[si]", ":(?:[123][sp]|G|P|B)") and morph(\4, ":[NAQ].*:[pm]", "*")
        -4>> =suggFemSing(\4)                                                               && Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au féminin singulier.
        -4>> =suggFemSing(\4)                                                               && Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au féminin singulier.
        <<- /gn/ __else__ and morph(\2, ":[NA].*:[si]") and morph(\3, ":[NA].*:[si]", ":(?:[123][sp]|G|P|B)|;C") and morph(\4, ":[NAQ].*:p", "*")
        -4>> =suggSing(\4)                                                                  && Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au singulier.
        -4>> =suggSing(\4)                                                                  && Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au singulier.

TEST: mon petit ami {{décédée}}                                                 ->> décédé
TEST: mon ami proche {{décédée}}                                                ->> décédé
TEST: mon amie proche {{décédé}}                                                ->> décédée
TEST: son addictologue ridicule {{financés}} par l’État                         ->> financé


__gn_ma_ta_sa_1m__
    [ma|ta|sa]  *WORD
        <<- not (tag(\1, "_CAP_") and morph(\1, ":N")) >>>
        <<- /gn/ morph(\2, ":[NA].*:m", ":[efGW]") -1>> =\1[:-1]+"on"                       && Accord de genre erroné : « \2 » est masculin.
        <<- /gn/ morph(\2, ":[NA].*:m", ":[efGW]") -1>> =\1[:-1]+"on"                       && Accord de genre erroné : « \2 » est masculin.
        <<- /gn/ __also__ and not re.search("(?i)^[aâeéèêiîoôuûyœæ]", \2) and hasFemForm(\2)
        -2>> =suggFemSing(\2, True)                                                         && Accord de genre erroné : « \1 » est un déterminant féminin.
        <<- /gn/ morph(\2, ":[NA].*:p", ":[siGW]") -2>> =suggFemSing(\2)                    && Accord de nombre erroné : « \2 » devrait être au singulier.
        -2>> =suggFemSing(\2, True)                                                         && Accord de genre erroné : « \1 » est un déterminant féminin.
        <<- /gn/ morph(\2, ":[NA].*:p", ":[siGW]") -2>> =suggFemSing(\2)                    && Accord de nombre erroné : « \2 » devrait être au singulier.

TEST: {{ma}} {{parti}}
TEST: {{ma}} amour                                            ->> mon
TEST: ma {{carlingues}}
TEST: Après cet épisode, la SA a joué un rôle marginal dans l’histoire du Troisième Reich


__gn_det_fem_sing_2m__
    [ma|ta|sa|cette|quelle|ladite|aucune|nulle]  *WORD  *WORD
        <<- /gn/ not value(<1, "|et|ou|de|d’|") and not morph(\3, ">seul/") >>>
        <<- /gn/ morph(\2, ":[NAQ].*:[fe]", ":(?:B|G|V0)") and morph(\3, ":[NAQ].*:m", "*") and not apposition(\2, \3)
        -3>> =suggFemSing(\3, True)                                                         && Accord de genre erroné : « \1 \2 » est féminin, « \3 » est masculin.
        -3>> =suggFemSing(\3, True)                                                         && Accord de genre erroné : « \1 \2 » est féminin, « \3 » est masculin.
        <<- /gn/ morph(\2, ":[NAQ].*:[si]", ":G") and morph(\3, ":[NAQ].*:p", ":[GWsi]") and not apposition(\2, \3)
        -3>> =suggFemSing(\3)                                                               && Accord de nombre erroné avec « \1 \2 » : « \3 » devrait être au singulier.
        -3>> =suggFemSing(\3)                                                               && Accord de nombre erroné avec « \1 \2 » : « \3 » devrait être au singulier.

    [et|ou|de|d’]  [ma|ta|sa|cette|quelle|ladite|aucune|nulle]  *WORD  *WORD
        <<- /gn/ not morph(<1, ":[NAQ]|>(?:et|ou)/") and not morph(\4, ">seul/") >>>
        <<- /gn/ morph(\3, ":[NAQ].*:[fe]", ":(?:B|G|V0|m)") and morph(\4, ":[NAQ].*:m", "*") and not apposition(\3, \4)
        -4>> =suggFemSing(\4, True)                                                         && Accord de genre erroné : « \3 » est féminin, « \4 » est masculin.
        -4>> =suggFemSing(\4, True)                                                         && Accord de genre erroné : « \3 » est féminin, « \4 » est masculin.
        <<- /gn/ morph(\3, ":[NAQ].*:[si]", ":G") and morph(\4, ":[NAQ].*:p", ":[GWsi]") and not apposition(\3, \4)
        -4>> =suggFemSing(\4)                                                               && Accord de nombre erroné avec « \2 \3 » : « \4 » devrait être au singulier.
        -4>> =suggFemSing(\4)                                                               && Accord de nombre erroné avec « \2 \3 » : « \4 » devrait être au singulier.

TEST: quelle belle {{étourdi}}, cette gamine
TEST: j’en ai assez de cette ville {{stressées}} en permanence.
TEST: Peut-on imaginer de plus {{beaux}} {{enfant}} ?
TEST: de ma grande {{ami}}
TEST: il fut cette fois ulcéré de voir son entreprise une fois de plus ruinée par la malchance.


__gn_det_fem_sing_3m__
    [ladite|une|cette|ma|ta|sa|quelle|aucune|nulle]  *WORD  *WORD  *WORD
        <<- /gn/ morph(<1, "<start>|:V", "*") and morph(\2, ":[NA].*:[fe]:[si]") and morph(\3, ":[NA].*:[fe]:[si]", ":(?:[123][sp]|G|P|B)|;C") and morph(\4, ":[NA].*:[pm]", "*") and \4.islower()
        -4>> =suggFemSing(\4)                                                               && Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au féminin singulier.
        -4>> =suggFemSing(\4)                                                               && Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au féminin singulier.

TEST: une amie prodigieuse {{récompensé}}                          ->> récompensée


__gn_notre_votre_chaque_1m__
    [notre|votre|chaque]  *WORD
        <<- /gn/ morph(\2, ":[NA].*:p", ":[siGW]") -2>> =suggSing(\2)                       && Accord de nombre erroné : « \2 » devrait être au singulier.
        <<- /gn/ morph(\2, ":[NA].*:p", ":[siGW]") -2>> =suggSing(\2)                       && Accord de nombre erroné : « \2 » devrait être au singulier.

TEST: Chaque {{chiens}}.                                      ->> chien


__gn_quelque_1m__
    quelque  *WORD
        <<- /gn/ morph(\2, ":[NA].*:p", ":[siG]") and not value(>1, "|que|qu’|")
        -1>> quelques                                                                       && Il manque un “s” à « quelque » ou « \2 » doit être au singulier.
        -1>> quelques                                                                       && Il manque un “s” à « quelque » ou « \2 » doit être au singulier.

TEST: {{Quelque}} amis


__gn_det_epi_sing_2m__
    [chaque|quelque|notre|votre]  *WORD  *WORD
        <<- /gn/ not value(<1, "|et|ou|de|d’|") and not morph(\3, ">seul/") >>>
        <<- /gn/ ((morph(\2, ":[NA].*:m", ":(?:B|e|G|V0|f)") and morph(\3, ":[NA].*:f", "*")) or (morph(\2, ":[NA].*:f", ":(?:B|e|G|V0|m)") and morph(\3, ":[NA].*:m", "*")))
            and not apposition(\2, \3)
        -3>> =switchGender(\3, False)                                                       && Accord de genre erroné entre « \2 » et « \3 ».
        <<- /gn/ __also__ and hasFemForm(\2) -2>> =switchGender(\2, False)                  && Accord de genre erroné avec « \3 ».
        -3>> =switchGender(\3, False)                                                       && Accord de genre erroné entre « \2 » et « \3 ».
        <<- /gn/ __also__ and hasFemForm(\2) -2>> =switchGender(\2, False)                  && Accord de genre erroné avec « \3 ».
        <<- /gn/ morph(\2, ":[NA].*:[si]", ":G") and morph(\3, ":[NA].*:p", ":[GWsi]") and not apposition(\2, \3)
        -3>> =suggSing(\3)                                                                  && Accord de nombre erroné avec « \1 \2 » : « \3 » devrait être au singulier.
        -3>> =suggSing(\3)                                                                  && Accord de nombre erroné avec « \1 \2 » : « \3 » devrait être au singulier.

    [et|ou|de|d’]  [chaque|quelque|notre|votre]  *WORD  *WORD
        <<- /gn/ not morph(<1, ":[NA]|>(?:et|ou)/") and not morph(\4, ">seul/") >>>
        <<- /gn/ ((morph(\3, ":[NA].*:m", ":(?:B|e|G|V0|f)") and morph(\4, ":[NA].*:f", "*")) or (morph(\3, ":[NA].*:f", ":(?:B|e|G|V0|m)") and morph(\4, ":[NA].*:m", "*")))
            and not apposition(\3, \4)
        -4>> =switchGender(\4, False)                                                       && Accord de genre erroné entre « \3 » et « \4 ».
        <<- /gn/ __also__ and hasFemForm(\3) -3>> =switchGender(\3, False)                  && Accord de genre erroné avec « \4 ».
        -4>> =switchGender(\4, False)                                                       && Accord de genre erroné entre « \3 » et « \4 ».
        <<- /gn/ __also__ and hasFemForm(\3) -3>> =switchGender(\3, False)                  && Accord de genre erroné avec « \4 ».
        <<- /gn/ morph(\3, ":[NA].*:[si]", ":G") and morph(\4, ":[NA].*:p", ":[GWsi]") and not apposition(\3, \4)
        -4>> =suggSing(\4)                                                                  && Accord de nombre erroné avec « \2 \3 » : « \4 » devrait être au singulier.
        -4>> =suggSing(\4)                                                                  && Accord de nombre erroné avec « \2 \3 » : « \4 » devrait être au singulier.

TEST: chaque élément {{terrestres}}
TEST: notre {{belle}} {{avenu}}
TEST: ils viennent de chaque coin {{ignorée}} du pays.
TEST: que faire de votre {{ennuyeuse}} {{avocat}}
TEST: de quelque cartable {{vides}}
TEST: de notre petit {{amis}}
TEST: Quelque chose tombé dans le puits a souillé l’eau.


__gn_det_notre_votre_3m__
    [chaque|quelque|notre|votre]  *WORD  *WORD  *WORD
        <<- /gn/ morph(<1, "<start>|:V", "*") and \4.islower() >>>
        <<- /gn/ morph(\2, ":[NA].*:m:[si]", ":[fe]") and morph(\3, ":[NA].*:[me]:[si]", ":(?:[123][sp]|G|P|B)|;C") and morph(\4, ":[NA].*:f", "*")
        -4>> =suggMasSing(\4)                                                               && Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au masculin singulier.
        -4>> =suggMasSing(\4)                                                               && Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au masculin singulier.
        <<- /gn/ __else__ and morph(\2, ":[NA].*:f:[si]", ":[me]") and morph(\3, ":[NA].*:[fe]:[si]", ":(?:[123][sp]|G|P|B)|;C") and morph(\4, ":[NA].*:m", "*")
        -4>> =suggFemSing(\4)                                                               && Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au féminin singulier.
        -4>> =suggFemSing(\4)                                                               && Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au féminin singulier.
        <<- /gn/ __else__ and morph(\2, ":[NA].*:[si]", ":[fe]") and morph(\3, ":[NA].*:[me]:[si]", ":(?:[123][sp]|G|P|B)|;C") and morph(\4, ":[NA].*:p", "*")
        -4>> =suggSing(\4)                                                                  && Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au singulier.
        -4>> =suggSing(\4)                                                                  && Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au singulier.

TEST: notre grande armée {{fabuleux}}                                           ->> fabuleuse
TEST: notre supérieur hiérarchique {{ignorante}} des pratiques                  ->> ignorant
TEST: votre petit test {{minables}}                                             ->> minable


## Pluriels

__gn_les_1m__
    ,  les  *WORD
        <<- /gn/ morph(\3, ":[NA].*:s", "*") and not (value(>1, "|et|ou|") and morph(>2, ":[NA]"))
        -3>> =suggPlur(\3)                                                                  && Accord de nombre erroné : « \3 » devrait être au pluriel.
        -3>> =suggPlur(\3)                                                                  && Accord de nombre erroné : « \3 » devrait être au pluriel.

    *WORD  les  *WORD
        <<- /gn/ morph(\2, ":D")
            and ( morph(\3, ":[NA].*:s", "*") or (morph(\3, ":[NA].*:s", ":[pi]|>avoir/") and morph(\1, ":[RC]", ">(?:e[tn]|ou|puis)/") and not (morph(\1, ":Rv") and morph(\3, ":Y"))) )
            and not (value(>1, "|et|ou|") and morph(>2, ":[NA]"))
            and not (value(\1, "|que|") and morph(<1, ">tel/") and morph(\3, ":3[sp]"))
        -3>> =suggPlur(\3)                                                                  && Accord de nombre erroné : « \3 » devrait être au pluriel.
        -3>> =suggPlur(\3)                                                                  && Accord de nombre erroné : « \3 » devrait être au pluriel.

    <start>  les  *WORD
        <<- /gn/ morph(\3, ":[NA].*:s", ":[ipYPGW]") and not (value(>1, "|et|ou|") and morph(>2, ":[NA]"))
        -3>> =suggPlur(\3)                                                                  && Accord de nombre erroné : « \3 » devrait être au pluriel.
        -3>> =suggPlur(\3)                                                                  && Accord de nombre erroné : « \3 » devrait être au pluriel.

TEST: ils viennent, les {{petit}}
TEST: Les {{tiret}}                                           ->> tirets
TEST: Les plus {{grand}} hommes.                              ->> grands
TEST: les {{véhicule}}                                        ->> véhicules
TEST: Les {{démoralisation}}.                                 ->> démoralisations
TEST: dans les {{usine}}                                      ->> usines
TEST: les {{abricot}}                                         ->> abricots
TEST: tels que les décrit Macron
TEST: J’en ramasse quelques-unes, puis les glisse dans l’une de mes poches, ça me fera un souvenir.


__gn_les_2m__
    les  *WORD  *WORD
        <<- /gn/ morph(\1, ":D") and not value(<1, "|et|ou|de|d’|") and not morph(\3, ">seul/") >>>
        <<- /gn/ ((morph(\2, ":[NA].*:m", ":(?:B|e|G|V0|f)") and morph(\3, ":[NA].*:f", "*")) or (morph(\2, ":[NA].*:f", ":(?:B|e|G|V0|m)") and morph(\3, ":[NA].*:m", "*")))
            and not apposition(\2, \3)
        -3>> =switchGender(\3, True)                                                                && Accord de genre erroné entre « \2 » et « \3 ».
        <<- /gn/ __also__ and hasFemForm(\2) -2>> =switchGender(\2, True)                           && Accord de genre erroné avec « \3 ».
        -3>> =switchGender(\3, True)                                                                && Accord de genre erroné entre « \2 » et « \3 ».
        <<- /gn/ __also__ and hasFemForm(\2) -2>> =switchGender(\2, True)                           && Accord de genre erroné avec « \3 ».
        <<- /gn/ morph(\2, ":[NA].*:[pi]") and morph(\3, ":[NA].*:s", "*") and not apposition(\2, \3) and not (value(>1, "|et|,|") and morph(>2, ":A"))
        -3>> =suggPlur(\3)                                                                          && Accord de nombre erroné avec « \1 \2 » : « \3 » devrait être au pluriel.
        -3>> =suggPlur(\3)                                                                          && Accord de nombre erroné avec « \1 \2 » : « \3 » devrait être au pluriel.

    [et|ou]  les  *WORD  *WORD
        <<- /gn/ morph(\2, ":D") and not morph(<1, ":[NA]") and not morph(\3, ">seul/") >>>
        <<- /gn/ ((morph(\3, ":[NA].*:m", ":(?:B|e|G|V0|f)") and morph(\4, ":[NA].*:f", "*")) or (morph(\3, ":[NA].*:f", ":(?:B|e|G|V0|m)") and morph(\4, ":[NA].*:m", "*")))
            and not apposition(\3, \4)
        -4>> =switchGender(\4, True)                                                                && Accord de genre erroné entre « \3 » et « \4 ».
        <<- /gn/ __also__ and hasFemForm(\3) -3>> =switchGender(\3, True)                           && Accord de genre erroné avec « \4 ».
        -4>> =switchGender(\4, True)                                                                && Accord de genre erroné entre « \3 » et « \4 ».
        <<- /gn/ __also__ and hasFemForm(\3) -3>> =switchGender(\3, True)                           && Accord de genre erroné avec « \4 ».
        <<- /gn/ morph(\3, ":[NA].*:[pi]") and morph(\4, ":[NA].*:s", "*") and not apposition(\3, \4) and not (value(>1, "|et|,|") and morph(>2, ":A"))
        -4>> =suggPlur(\4)                                                                          && Accord de nombre erroné avec « \2 \3 » : « \4 » devrait être au pluriel.
        -4>> =suggPlur(\4)                                                                          && Accord de nombre erroné avec « \2 \3 » : « \4 » devrait être au pluriel.

TEST: les pitres {{imbécile}}
TEST: il faut en convenir et les femmes {{oubliés}} seront satisfaites.
TEST: les {{petites}} {{oubliés}}
TEST: c’est ça, et les femmes {{retrouvés}} seront emmenées à l’hôpital.
TEST: fais ce que tu peux, ou les {{petites}} {{perdus}} le seront à jamais
TEST: ça ou les éternels {{imbécile}} du coin
TEST: les {{éventuels}} {{fiches}}
TEST: les moins éloignées possible
TEST: Les besoins minimums en matière de sommeil sont-ils les mêmes d’un individu à l’autre ?
TEST: cette attention de tous les instants portée à la boussole.
TEST: les agrandissements photo
TEST: Il faut donc examiner ensemble les panneaux et les parois latéraux.
TEST: Il faut donc examiner ensemble les panneaux et les parois latérales.
TEST: l’homme les a volés


__gn_leurs_1m__
    leurs  *WORD
        <<- /gn/ morph(\2, ":[NA].*:s", ":(?:[ipGW]|[123][sp])") and not (value(>1, "|et|ou|") and morph(>2, ":[NA]"))
        -2>> =suggPlur(\2)                                                                  && Accord de nombre erroné avec « \1 » : « \2 » devrait être au pluriel.
        <<- /gn/ __also__ -1>> leur                                                         && Accord de nombre erroné avec « \2 ».
        -2>> =suggPlur(\2)                                                                  && Accord de nombre erroné avec « \1 » : « \2 » devrait être au pluriel.
        <<- /gn/ __also__ -1>> leur                                                         && Accord de nombre erroné avec « \2 ».

TEST: {{leurs}} {{action}}
TEST: {{leur}} {{données}}
TEST: {{leurs}} {{abricot}}


__gn_det_pluriel_1m__
    [des|mes|tes|ses|nos|vos|quelques|lesdits|lesdites|desdits|desdites|auxdits|auxdites|moult]  *WORD
        <<- /gn/ morph(\2, ":[NA].*:s", ":[ipGW]") and not (value(>1, "|et|ou|") and morph(>2, ":[NA]"))
        -2>> =suggPlur(\2)                                                                  && Accord de nombre erroné : « \2 » devrait être au pluriel.
        -2>> =suggPlur(\2)                                                                  && Accord de nombre erroné : « \2 » devrait être au pluriel.

TEST: des {{pain}}                                            ->> pains
TEST: Quelques {{homme}}.                                     ->> hommes
TEST: plusieurs {{femme}} sont venues.
TEST: des {{abricot}}
TEST: des {{son}} que nous entendons jour et nuit.
TEST: une personne ou plusieurs ayant décidé de façon déterminée et coordonnée de faire cuire la grenouille


__gn_ces_aux_pluriel_1m__
    [ces|aux]  *WORD
        <<- /gn/ morph(\2, ":[NA].*:s", ":[ipGW]") and not (value(>1, "|et|ou|") and morph(>2, ":[NA]"))
        -2>> =suggPlur(\2)                                                                  && Accord de nombre erroné : « \2 » devrait être au pluriel.
        -2>> =suggPlur(\2)                                                                  && Accord de nombre erroné : « \2 » devrait être au pluriel.
        <<- /gn/ __also__ and morph(\2, ">[bcçdfglklmnpqrstvwxz].*:m", ":f") >>>
        <<- /gn/ \1.endswith("x") or \1.endswith("X") -1>> au                               && Accord de nombre erroné : « \2 » est au singulier.
        <<- /gn/ __else__ -1>> ce                                                           && Accord de nombre erroné : « \2 » est au singulier.
        <<- /gn/ \1.endswith("x") or \1.endswith("X") -1>> au                               && Accord de nombre erroné : « \2 » est au singulier.
        <<- /gn/ __else__ -1>> ce                                                           && Accord de nombre erroné : « \2 » est au singulier.

TEST: {{ces}} {{détournement}} de fonds et ces vols
TEST: ces {{étudiant}} sont légion.
TEST: je vais {{aux}} {{cinéma}}
TEST: il l’a donné aux {{étudiant}}
TEST: aux {{personne}}
TEST: j’entends ces {{même}} âneries tous les jours
TEST: clafoutis aux {{abricot}}


__gn_det_epi_plur_2m__
    [ces|mes|tes|ses|nos|vos|leurs|quelques|plusieurs|aux|moult]  *WORD  *WORD
        <<- /gn/ not value(<1, "|et|ou|de|d’|au|aux|") and not morph(\3, ">seul/") >>>
        <<- /gn/ ((morph(\2, ":[NA].*:m", ":(?:B|e|G|V0|f)") and morph(\3, ":[NA].*:f", "*")) or (morph(\2, ":[NA].*:f", ":(?:B|e|G|V0|m)") and morph(\3, ":[NA].*:m", "*")))
            and not apposition(\2, \3)
        -3>> =switchGender(\3, True)                                                                && Accord de genre erroné entre « \2 » et « \3 ».
        <<- /gn/ __also__ and hasFemForm(\2) -2>> =switchGender(\2, True)                           && Accord de genre erroné avec « \3 ».
        -3>> =switchGender(\3, True)                                                                && Accord de genre erroné entre « \2 » et « \3 ».
        <<- /gn/ __also__ and hasFemForm(\2) -2>> =switchGender(\2, True)                           && Accord de genre erroné avec « \3 ».
        <<- /gn/ morph(\2, ":[NA].*:[pi]") and morph(\3, ":[NA].*:s", "*") and not apposition(\2, \3) and not (value(>1, "|et|,|") and morph(>2, ":A"))
        -3>> =suggPlur(\3)                                                                          && Accord de nombre erroné avec « \1 \2 » : « \3 » devrait être au pluriel.
        -3>> =suggPlur(\3)                                                                          && Accord de nombre erroné avec « \1 \2 » : « \3 » devrait être au pluriel.

    [et|ou|de|d’]  [ces|mes|tes|ses|nos|vos|leurs|quelques|plusieurs|aux|moult]  *WORD  *WORD
        <<- /gn/ not morph(<1, ":[NA]|>(?:et|ou)/") and not morph(\4, ">seul/") >>>
        <<- /gn/ ((morph(\3, ":[NA].*:m", ":(?:B|e|G|V0|f)") and morph(\4, ":[NA].*:f", "*")) or (morph(\3, ":[NA].*:f", ":(?:B|e|G|V0|m)") and morph(\4, ":[NA].*:m", "*")))
            and not apposition(\3, \4)
        -4>> =switchGender(\4, True)                                                                && Accord de genre erroné entre « \3 » et « \4 ».
        <<- /gn/ __also__ and hasFemForm(\3) -3>> =switchGender(\3, True)                           && Accord de genre erroné avec « \4 ».
        -4>> =switchGender(\4, True)                                                                && Accord de genre erroné entre « \3 » et « \4 ».
        <<- /gn/ __also__ and hasFemForm(\3) -3>> =switchGender(\3, True)                           && Accord de genre erroné avec « \4 ».
        <<- /gn/ morph(\3, ":[NA].*:[pi]") and morph(\4, ":[NA].*:s", "*") and not apposition(\3, \4) and not (value(>1, "|et|,|") and morph(>2, ":A"))
            and not (value(\1, "|de|d’|") and value(<1, "|un|une|"))
        -4>> =suggPlur(\4)                                                                          && Accord de nombre erroné avec « \2 \3 » : « \4 » devrait être au pluriel.
        -4>> =suggPlur(\4)                                                                          && Accord de nombre erroné avec « \2 \3 » : « \4 » devrait être au pluriel.

TEST: ces {{beaux}} {{institutions}}
TEST: nos petites {{fille}}
TEST: de plusieurs {{grands}} {{avocates}}
TEST: de vos défauts {{terrible}}, je connais presque tout.
TEST: Les éléments caractéristiques liés à ses valeurs historique et architecturale
TEST: Une des pierres veinée de rouge…
TEST: Pour maintenir le potentiel de membrane qui lui permet de communiquer avec ses voisins sous forme d’influx nerveux, un neurone a besoin d’énergie.
TEST: ces religieux inflexibles envers les femmes mais compatissants envers les tyrans qui soutiennent leur religion.
TEST: le bruit de nos pas étouffé par l’épais tapis.


__gn_det_mas_plur_2m__
    [certains|maints|quels|lesdits|desdits|auxdits]  *WORD  *WORD
        <<- /gn/ not value(<1, "|et|ou|de|d’|") and not morph(\3, ">seul/") >>>
        <<- /gn/ morph(\2, ":[NA].*:[me]", ":(?:B|G|V0)") and morph(\3, ":[NA].*:f", "*") and not apposition(\2, \3)
        -3>> =suggMasPlur(\3, True)                                                         && Accord de genre erroné : « \2 » est masculin, « \3 » est féminin.
        -3>> =suggMasPlur(\3, True)                                                         && Accord de genre erroné : « \2 » est masculin, « \3 » est féminin.
        <<- /gn/ morph(\2, ":[NA].*:[pi]", ":G") and morph(\3, ":[NA].*:s", "*") and not apposition(\2, \3) and not (value(>1, "|et|,|") and morph(>2, ":A"))
        -3>> =suggMasPlur(\3)                                                               && Accord de nombre erroné avec « \1 \2 » : « \3 » devrait être au pluriel.
        -3>> =suggMasPlur(\3)                                                               && Accord de nombre erroné avec « \1 \2 » : « \3 » devrait être au pluriel.

    [et|ou|de|d’]  [certains|maints|quels|lesdits|desdits|auxdits]  *WORD  *WORD
        <<- /gn/ not morph(<1, ":[NA]|>(?:et|ou)/") and not morph(\3, ">seul/") >>>
        <<- /gn/ morph(\3, ":[NA].*:[me]", ":(?:B|G|V0|f)") and morph(\4, ":[NA].*:f", "*") and not apposition(\3, \4)
        -4>> =suggMasPlur(\4, True)                                                         && Accord de genre erroné : « \3 » est masculin, « \4 » est féminin.
        -4>> =suggMasPlur(\4, True)                                                         && Accord de genre erroné : « \3 » est masculin, « \4 » est féminin.
        <<- /gn/ morph(\3, ":[NA].*:[pi]", ":G") and morph(\4, ":[NA].*:s", "*") and not apposition(\3, \4) and not (value(>1, "|et|,|") and morph(>2, ":A"))
            and not (value(\1, "|de|d’|") and value(<1, "|un|une|"))
        -4>> =suggMasPlur(\4)                                                               && Accord de nombre erroné avec « \2 \3 » : « \4 » devrait être au pluriel.
        -4>> =suggMasPlur(\4)                                                               && Accord de nombre erroné avec « \2 \3 » : « \4 » devrait être au pluriel.

TEST: certains claviers {{dégueulasse}}
TEST: certains hommes {{petite}}
TEST: auxdits hommes {{connu}}
TEST: quels hommes {{grandes}}
TEST: elle se rappelle de quels rapports {{désastreuses}} il s’agit.
TEST: de quels grands {{fou}} s’agit-il ?
TEST: chez certains la revue Limite provoque des crises d’hystérie.


__gn_det_fem_plur_2m__
    [certaines|maintes|quelles|lesdites|desdites|auxdites]  *WORD  *WORD
        <<- /gn/ not value(<1, "|et|ou|de|d’|") and not morph(\3, ">seul/") >>>
        <<- /gn/ morph(\2, ":[NA].*:[fe]", ":(?:B|G|V0)") and morph(\3, ":[NA].*:m", "*") and not apposition(\2, \3)
        -3>> =suggFemPlur(\3, True)                                                         && Accord de genre erroné : « \2 » est féminin, « \3 » est masculin.
        -3>> =suggFemPlur(\3, True)                                                         && Accord de genre erroné : « \2 » est féminin, « \3 » est masculin.
        <<- /gn/ morph(\2, ":[NA].*:[pi]") and morph(\3, ":[NA].*:s", "*") and not apposition(\2, \3) and not (value(>1, "|et|,|") and morph(>2, ":A"))
        -3>> =suggFemPlur(\3)                                                               && Accord de nombre erroné avec « \1 \2 » : « \3 » devrait être au pluriel.
        -3>> =suggFemPlur(\3)                                                               && Accord de nombre erroné avec « \1 \2 » : « \3 » devrait être au pluriel.

    [et|ou|de|d’]  [certaines|maintes|quelles|lesdites|desdites|auxdites]  *WORD  *WORD
        <<- /gn/ not morph(<1, ":[NA]|>(?:et|ou)/") and not morph(\4, ">seul/") >>>
        <<- /gn/ morph(\3, ":[NA].*:[fe]", ":(?:B|G|V0|m)") and morph(\4, ":[NA].*:m", "*") and not apposition(\3, \4)
        -4>> =suggFemPlur(\4, True)                                                         && Accord de genre erroné : « \3 » est féminin, « \4 » est masculin.
        -4>> =suggFemPlur(\4, True)                                                         && Accord de genre erroné : « \3 » est féminin, « \4 » est masculin.
        <<- /gn/ morph(\3, ":[NA].*:[pi]") and morph(\4, ":[NA].*:s", "*") and not apposition(\3, \4) and not (value(>1, "|et|,|") and morph(>2, ":A"))
            and not (value(\1, "|de|d’|") and value(<1, "|un|une|"))
        -4>> =suggFemPlur(\4)                                                               && Accord de nombre erroné avec « \2 \3 » : « \4 » devrait être au pluriel.
        -4>> =suggFemPlur(\4)                                                               && Accord de nombre erroné avec « \2 \3 » : « \4 » devrait être au pluriel.

TEST: certaines idioties {{stupide}}
TEST: quelles grandes {{idiots}}
TEST: je ne sais guère de quelles âneries {{proférés}} on parle.
TEST: quelles étonnantes {{petits}}
TEST: ici ou auxdites lointaines {{contrée}}


__gn_nombre_plur_2m__
    $:B:e:p  *WORD  *WORD
        <<- /gn/ not morph(<1, ">(?:et|ou)/|:R") and not morph(\3, ">(?:seul|minimum|maximum)/") >>>
        <<- /gn/ ((morph(\2, ":[NA].*:m", ":(?:B|e|G|V0|f)") and morph(\3, ":[NA].*:f", "*")) or (morph(\2, ":[NA].*:f", ":(?:B|e|G|V0|m)") and morph(\3, ":[NA].*:m", "*")))
            and not apposition(\2, \3)
        -3>> =switchGender(\3, True)                                                                && Accord de genre erroné entre « \2 » et « \3 ».
        <<- /gn/ __also__ and hasFemForm(\2) -2>> =switchGender(\2, True)                           && Accord de genre erroné avec « \3 ».
        -3>> =switchGender(\3, True)                                                                && Accord de genre erroné entre « \2 » et « \3 ».
        <<- /gn/ __also__ and hasFemForm(\2) -2>> =switchGender(\2, True)                           && Accord de genre erroné avec « \3 ».
        <<- /gn/ morph(\2, ":[NA].*:[pi]", ":(?:B|G|V0)") and morph(\3, ":[NA].*:s", "*") and not apposition(\2, \3) and not (value(>1, "|et|,|") and morph(>2, ":A"))
        -3>> =suggPlur(\3)                                                                          && Accord de nombre erroné avec « \1 \2 » : « \3 » devrait être au pluriel.
        -3>> =suggPlur(\3)                                                                          && Accord de nombre erroné avec « \1 \2 » : « \3 » devrait être au pluriel.

TEST: deux sombres {{idiot}}
TEST: sept valeurs {{aléatoire}}
TEST: huit {{grandes}} {{claviers}}
TEST: X a perdu mon estime et ma considération.
TEST: vivre une situation hors du commun à deux a aussi pesé dans la balance.
TEST: deux jours minimum
TEST: ils disent finalement tous les deux la même chose


__gn_des_2m__
    des  *WORD  *WORD
        <<- /gn/ (morph(<1, ":(?:[VRBXÉ]|Cs)|>comme/|<start>|>,", "*") or morph(\3, ":N", ":[AQ]")) and not morph(\3, ">(?:seul|minimum|maximum)/") >>>
        <<- /gn/ ( (morph(\2, ":[NA].*:m", ":[fe]") and morph(\3, ":[NA].*:f", "*")) or (morph(\2, ":[NA].*:f", ":[me]") and morph(\3, ":[NA].*:m", "*")) ) and not apposition(\2, \3)
        -3>> =switchGender(\3, True)                                                                && Accord de genre erroné avec « \2 ».
        <<- /gn/ __also__ and hasFemForm(\2) -2>> =switchGender(\2)                                 && Accord de genre erroné avec « \3 ».
        -3>> =switchGender(\3, True)                                                                && Accord de genre erroné avec « \2 ».
        <<- /gn/ __also__ and hasFemForm(\2) -2>> =switchGender(\2)                                 && Accord de genre erroné avec « \3 ».
        <<- /gn/ morph(\2, ":[NA].*:[pi]", ":G") and morph(\3, ":[NA].*:s", "*") and not apposition(\2, \3) and not (value(>1, "|et|,|") and morph(>2, ":A"))
        -3>> =suggPlur(\3)                                                                          && Accord de nombre erroné avec « \1 \2 » : « \3 » devrait être au pluriel.
        -3>> =suggPlur(\3)                                                                          && Accord de nombre erroné avec « \1 \2 » : « \3 » devrait être au pluriel.
        <<- not morph(\3, ":G|>a/") and checkAgreement(\2, \3) =>> =exclude(\3, ":V")

TEST: faire table rase des passions {{inutile}}               ->> inutiles
TEST: à bonne distance des {{chiens}} {{méchante}}
TEST: des hommes {{attaquée}}
TEST: des femmes {{agressé}}
TEST: des hommes très mal {{renseigné}}                       ->> renseignés
TEST: des dépenses non {{nécessaire}}                         ->> nécessaires
TEST: Des règles pas du tout {{claire}}.                      ->> claires
TEST: Des peines à peine {{croyable}}.                        ->> croyables
TEST: Des {{chambres}} plus ou moins fortement {{éclairé}}.
TEST: Les couleurs rouge, jaune et verte ne doivent pas être utilisées
TEST: des passeports américain, canadien, néerlandais, allemand et britannique.


__gn_plusieurs_1m__
    plusieurs  *WORD
        <<- /gn/ morph(\2, ":[NA].*:s", ":[ipGWP]") and not (value(>1, "|et|ou|") and morph(>2, ":[NA]"))
        -2>> =suggPlur(\2)                                                                  && Accord de nombre erroné : « \2 » devrait être au pluriel.
        -2>> =suggPlur(\2)                                                                  && Accord de nombre erroné : « \2 » devrait être au pluriel.

TEST: plusieurs {{femme}}
TEST: plusieurs {{foi}} par jour.
TEST: plusieurs {{abricot}}


## certains / certaines
__gn_certains_1m__
    certains  *WORD
        <<- /gn/ morph(\2, ":[NA].*:f", ":[emGWP]") -1>> certaines                          && Accord de genre erroné : « \2 » est féminin.
        <<- /gn/ __also__ and hasMasForm(\2) -2>> =suggMasPlur(\2, True)                    && Accord de genre erroné : « \1 » est un déterminant masculin.
        <<- /gn/ morph(\2, ":[NA].*:f", ":[emGWP]") -1>> certaines                          && Accord de genre erroné : « \2 » est féminin.
        <<- /gn/ __also__ and hasMasForm(\2) -2>> =suggMasPlur(\2, True)                    && Accord de genre erroné : « \1 » est un déterminant masculin.
        <<- /gn/ morph(\2, ":[NA].*:s", ":(?:[ipGWP]|V0)") and not (value(>1, "|et|ou|") and morph(>2, ":[NA]"))
        -2>> =suggPlur(\2)                                                                  && Accord de nombre erroné : « \2 » devrait être au pluriel.
        -2>> =suggPlur(\2)                                                                  && Accord de nombre erroné : « \2 » devrait être au pluriel.

__gn_certains_des_1m__
    certains  des  *WORD
        <<- /gn/ morph(\3, ":[NA].*:f", ":[emGW]") -1>> certaines                           && Accord de genre erroné : « \3 » est féminin.
        <<- /gn/ __also__ and hasMasForm(\3) -3>> =suggMasPlur(\3, True)                    && Accord de genre erroné : « \1 » est un déterminant masculin.
        <<- /gn/ morph(\3, ":[NA].*:f", ":[emGW]") -1>> certaines                           && Accord de genre erroné : « \3 » est féminin.
        <<- /gn/ __also__ and hasMasForm(\3) -3>> =suggMasPlur(\3, True)                    && Accord de genre erroné : « \1 » est un déterminant masculin.

__gn_certaines_1m__
    certaines  *WORD
        <<- /gn/ morph(\2, ":[NA].*:m", ":[efGWP]") -1>> certains                           && Accord de genre erroné : « \2 » est masculin.
        <<- /gn/ __also__ and hasFemForm(\2) -2>> =suggFemPlur(\2, True)                    && Accord de genre erroné : « \1 » est un déterminant féminin.
        <<- /gn/ morph(\2, ":[NA].*:m", ":[efGWP]") -1>> certains                           && Accord de genre erroné : « \2 » est masculin.
        <<- /gn/ __also__ and hasFemForm(\2) -2>> =suggFemPlur(\2, True)                    && Accord de genre erroné : « \1 » est un déterminant féminin.
        <<- /gn/ morph(\2, ":[NA].*:s", ":[ipGWP]") and not (value(>1, "|et|ou|") and morph(>2, ":[NA]"))
        -2>> =suggPlur(\2)                                                                  && Accord de nombre erroné : « \2 » devrait être au pluriel.
        -2>> =suggPlur(\2)                                                                  && Accord de nombre erroné : « \2 » devrait être au pluriel.

__gn_certaines_des_1m__
    certaines  des  *WORD
        <<- /gn/ morph(\3, ":[NA].*:m", ":[efGW]") -1>> certains                            && Accord de genre erroné : « \3 » est masculin.
        <<- /gn/ __also__ and hasFemForm(\3) -3>> =suggFemPlur(\3, True)                    && Accord de genre erroné : « \1 » est un déterminant féminin.
        <<- /gn/ morph(\3, ":[NA].*:m", ":[efGW]") -1>> certains                            && Accord de genre erroné : « \3 » est masculin.
        <<- /gn/ __also__ and hasFemForm(\3) -3>> =suggFemPlur(\3, True)                    && Accord de genre erroné : « \1 » est un déterminant féminin.

TEST: {{certains}} {{petites}}
TEST: Certaines {{danse}}
TEST: Certains {{chien}}
TEST: {{certaines}} {{petits}}
TEST: {{certains}} des femmes sont à côté de la plaque.
TEST: {{certains}} des {{nouvelles}} sont à côté de la plaque.
TEST: {{certaines}} des hommes
TEST: {{certaines}} des {{petits}}
TEST: Un problème rapporté par certains est l’incapacité à trouver un partenaire


## maints / maintes
__gn_maints_1m__
    maints  *WORD
        <<- /gn/ morph(\2, ":[NA].*:f", ":[emGWP]") -1>> maintes                            && Accord de genre erroné : « \2 » est féminin.
        <<- /gn/ __also__ and hasMasForm(\2) -2>> =suggMasPlur(\2, True)                    && Accord de genre erroné : « \1 » est un déterminant masculin.
        <<- /gn/ morph(\2, ":[NA].*:f", ":[emGWP]") -1>> maintes                            && Accord de genre erroné : « \2 » est féminin.
        <<- /gn/ __also__ and hasMasForm(\2) -2>> =suggMasPlur(\2, True)                    && Accord de genre erroné : « \1 » est un déterminant masculin.
        <<- /gn/ morph(\2, ":[NA].*:s", ":(?:[ipGWP]|V0)") and not (value(>1, "|et|ou|") and morph(>2, ":[NA]"))
        -2>> =suggPlur(\2)                                                                  && Accord de nombre erroné : « \2 » devrait être au pluriel.
        -2>> =suggPlur(\2)                                                                  && Accord de nombre erroné : « \2 » devrait être au pluriel.

__gn_maintes_1m__
    maintes  *WORD
        <<- /gn/ morph(\2, ":[NA].*:m", ":[efGWP]") -1>> maints                             && Accord de genre erroné : « \2 » est masculin.
        <<- /gn/ __also__ and hasFemForm(\2) -2>> =suggFemPlur(\2, True)                    && Accord de genre erroné : « \1 » est un déterminant féminin.
        <<- /gn/ morph(\2, ":[NA].*:m", ":[efGWP]") -1>> maints                             && Accord de genre erroné : « \2 » est masculin.
        <<- /gn/ __also__ and hasFemForm(\2) -2>> =suggFemPlur(\2, True)                    && Accord de genre erroné : « \1 » est un déterminant féminin.
        <<- /gn/ morph(\2, ":[NA].*:s", ":[ipGWP]") and not (value(>1, "|et|ou|") and morph(>2, ":[NA]"))
        -2>> =suggPlur(\2)                                                                  && Accord de nombre erroné : « \2 » devrait être au pluriel.
        -2>> =suggPlur(\2)                                                                  && Accord de nombre erroné : « \2 » devrait être au pluriel.

TEST: {{maints}} {{petites}}
TEST: Maintes {{danse}}
TEST: Maints {{chien}}
TEST: {{maintes}} {{petits}}
TEST: Un problème rapporté par maints est l’incapacité à trouver un partenaire


## 3m
__gn_det_les_3m__
    les  *WORD  *WORD  *WORD
        <<- /gn/ morph(<1, "<start>|:V", "*") and not morph(\2, ":[123][sp]") and \4.islower() and not morph(\4, ">seul/") >>>
        <<- /gn/ morph(\2, ":[NA].*:m:[pi]", ":[fe]") and morph(\3, ":[NA].*:[me]:[pi]", ":(?:[123][sp]|G|P|B)|;C") and morph(\4, ":[NAQ].*:f", "*")
        -4>> =suggMasPlur(\4)                                                               && Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au masculin pluriel.
        -4>> =suggMasPlur(\4)                                                               && Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au masculin pluriel.
        <<- /gn/ __else__ and morph(\2, ":[NA].*:f:[pi]", ":[me]") and morph(\3, ":[NA].*:[fe]:[pi]", ":(?:[123][sp]|G|P|B)|;C") and morph(\4, ":[NAQ].*:m", "*")
        -4>> =suggFemPlur(\4)                                                               && Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au féminin pluriel.
        -4>> =suggFemPlur(\4)                                                               && Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au féminin pluriel.
        <<- /gn/ __else__ and morph(\2, ":[NA].*:[pi]") and morph(\3, ":[NA].*:[me]:[pi]", ":(?:[123][sp]|G|P|B)|;C") and morph(\4, ":[NAQ].*:s", "*")
        -4>> =suggPlur(\4)                                                                  && Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au pluriel.
        -4>> =suggPlur(\4)                                                                  && Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au pluriel.

TEST: les heureux imbéciles {{payée}} au lance-pierre.                      ->> payés
TEST: les petites gens {{oubliés}}                                          ->> oubliées
TEST: les psychologues hypocrites {{ébranlé}} par la crise                  ->> ébranlés


__gn_det_leurs_3m__
    leurs  *WORD  *WORD  *WORD
        <<- /gn/ morph(<1, "<start>|:V", "*") and not morph(\2, ":[123][sp]") and \4.islower() and not morph(\4, ">seul/") and not before("(?i)\\bune? de +$") >>>
        <<- /gn/ morph(\2, ":[NA].*:m:[pi]", ":[fe]") and morph(\3, ":[NA].*:[me]:[pi]", ":(?:[123][sp]|G|P|B)|;C") and morph(\4, ":[NAQ].*:f", "*")
        -4>> =suggMasPlur(\4)                                                               && Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au masculin pluriel.
        -4>> =suggMasPlur(\4)                                                               && Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au masculin pluriel.
        <<- /gn/ __else__ and morph(\2, ":[NA].*:f:[pi]", ":[me]") and morph(\3, ":[NA].*:[fe]:[pi]", ":(?:[123][sp]|G|P|B)|;C") and morph(\4, ":[NAQ].*:m", "*")
        -4>> =suggFemPlur(\4)                                                               && Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au féminin pluriel.
        -4>> =suggFemPlur(\4)                                                               && Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au féminin pluriel.
        <<- /gn/ __else__ and morph(\2, ":[NA].*:[pi]") and morph(\3, ":[NA].*:[me]:[pi]", ":(?:[123][sp]|G|P|B)|;C") and morph(\4, ":[NAQ].*:s", "*")
        -4>> =suggPlur(\4)                                                                  && Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au pluriel.
        -4>> =suggPlur(\4)                                                                  && Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au pluriel.

TEST: Leurs grands plans {{dépassées}} par les évènements                   ->> dépassés
TEST: leurs grandes peurs {{refoulés}}                                      ->> refoulées
TEST: leurs psychologues hypocrites {{condamné}}                            ->> condamnés


__gn_det_mas_plur_3m__
    [quels|certains|maints|lesdits|desdits|auxdits]  *WORD  *WORD  *WORD
        <<- /gn/ morph(<1, "<start>|:V", "*") and \4.islower() and not morph(\4, ">seul/") and not before("(?i)\\bune? de +$")
            and morph(\2, ":[NA].*:[me]:[pi]") and morph(\3, ":[NA].*:[me]:[pi]", ":(?:[123][sp]|G|P|B)|;C") and morph(\4, ":[NAQ].*:[fs]", "*")
        -4>> =suggMasPlur(\4)                                                               && Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au masculin pluriel.
        -4>> =suggMasPlur(\4)                                                               && Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au masculin pluriel.

TEST: lesdits dentistes ruinés {{oublié}}                                   ->> oubliés
TEST: Prendre goût aux heures passées seul à marcher


__gn_det_fem_plur_3m__
    [quelles|certaines|maintes|lesdites|desdites|auxdites]  *WORD  *WORD  *WORD
        <<- /gn/ morph(<1, "<start>|:V", "*") and \4.islower() and not morph(\4, ">seul/") and not before("(?i)\\bune? de +$")
            and morph(\2, ":[NA].*:[fe]:[pi]") and morph(\3, ":[NA].*:[fe]:[pi]", ":(?:[123][sp]|G|P|B)|;C") and morph(\4, ":[NAQ].*:[ms]", "*")
        -4>> =suggFemPlur(\4)                                                               && Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au féminin pluriel.
        -4>> =suggFemPlur(\4)                                                               && Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au féminin pluriel.

TEST: quelles belles nuits {{inoubliable}}                                  ->> inoubliables


__gn_det_epi_plur_3m__
    [ces|mes|tes|ses|nos|vos|aux|plusieurs|quelques|moult]  *WORD  *WORD  *WORD
        <<- /gn/ morph(<1, "<start>|:V", "*") and \4.islower() and not morph(\4, ">seul/") and not before("(?i)\\bune? de +$") >>>
        <<- /gn/ morph(\2, ":[NA].*:m:[pi]", ":[fe]") and morph(\3, ":[NA].*:[me]:[pi]", ":(?:[123][sp]|G|P|B)|;C") and morph(\4, ":[NAQ].*:f", "*")
        -4>> =suggMasPlur(\4)                                                               && Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au masculin pluriel.
        -4>> =suggMasPlur(\4)                                                               && Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au masculin pluriel.
        <<- /gn/ __else__ and morph(\2, ":[NA].*:f:[pi]", ":[me]") and morph(\3, ":[NA].*:[fe]:[pi]", ":(?:[123][sp]|G|P|B)|;C") and morph(\4, ":[NAQ].*:m", "*")
        -4>> =suggFemPlur(\4)                                                               && Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au féminin pluriel.
        -4>> =suggFemPlur(\4)                                                               && Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au féminin pluriel.
        <<- /gn/ __else__ and morph(\2, ":[NA].*:[pi]") and morph(\3, ":[NA].*:[me]:[pi]", ":(?:[123][sp]|G|P|B)|;C") and morph(\4, ":[NAQ].*:s", "*")
        -4>> =suggPlur(\4)                                                                  && Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au pluriel.
        -4>> =suggPlur(\4)                                                                  && Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au pluriel.

TEST: ces petites sottes {{venus}} foutre la merde                          ->> venues
TEST: mes beaux chevaux {{oubliées}}                                        ->> oubliés
TEST: vos dentistes ridicules {{perdu}} dans la forêt                       ->> perdus
TEST: Prendre goût aux heures passées seul à marcher


## quel / quels / quelle / quelles
__gn_quel_1m__
    quel  *WORD
        <<- /gn/ morph(\2, ":[NA].*:f:p", ":(?:V0|Oo|[NA].*:[me]:[si])")        -1>> quelles                    && Accord de genre et de nombre erroné : « \2 » est féminin et au pluriel.
        <<- /gn/ __also__ and hasFemForm(\2)                                    -2>> =suggMasSing(\2, True)     && Accord de genre et de nombre erroné : « \1 » est masculin et au singulier.
        <<- /gn/ morph(\2, ":[NA].*:m:p", ":(?:V0|Oo|[NA].*:[me]:[si])")        -1>> quels                      && Accord de nombre erroné : « \2 » est au pluriel.
        <<- /gn/ __also__                                                       -2>> =suggSing(\2)              && Accord de nombre erroné : « \1 » est au singulier.
        <<- /gn/ morph(\2, ":[NA].*:f:[si]", ":(?:V0|Oo|[NA].*:[me]:[si])")     -1>> quelle                     && Accord de genre erroné : « \2 » est féminin.
        <<- /gn/ __also__ and hasFemForm(\2)                                    -2>> =suggMasSing(\2, True)     && Accord de genre erroné : « \1 » est masculin.
        <<- /gn/ morph(\2, ":[NA].*:f:p", ":(?:V0|Oo|[NA].*:[me]:[si])")        -1>> quelles                    && Accord de genre et de nombre erroné : « \2 » est féminin et au pluriel.
        <<- /gn/ __also__ and hasFemForm(\2)                                    -2>> =suggMasSing(\2, True)     && Accord de genre et de nombre erroné : « \1 » est masculin et au singulier.
        <<- /gn/ morph(\2, ":[NA].*:m:p", ":(?:V0|Oo|[NA].*:[me]:[si])")        -1>> quels                      && Accord de nombre erroné : « \2 » est au pluriel.
        <<- /gn/ __also__                                                       -2>> =suggSing(\2)              && Accord de nombre erroné : « \1 » est au singulier.
        <<- /gn/ morph(\2, ":[NA].*:f:[si]", ":(?:V0|Oo|[NA].*:[me]:[si])")     -1>> quelle                     && Accord de genre erroné : « \2 » est féminin.
        <<- /gn/ __also__ and hasFemForm(\2)                                    -2>> =suggMasSing(\2, True)     && Accord de genre erroné : « \1 » est masculin.

TEST: {{Quel}} femme.                                         ->> Quelle
TEST: {{Quel}} {{partie}}
TEST: {{Quel}} {{paris}}
TEST: {{Quel}} {{parties}}
TEST: Quel emmerdeur

__gn_quels_1m__
    quels  *WORD
        <<- /gn/ morph(\2, ":[NA].*:f:s", ":(?:V0|Oo|[NA].*:[me]:[pi])")        -1>> quelle                     && Accord de genre et de nombre erroné : « \2 » est féminin et au singulier.
        <<- /gn/ __also__ and hasFemForm(\2)                                    -2>> =suggMasPlur(\2, True)     && Accord de genre et de nombre erroné : « \1 » est masculin et au pluriel.
        <<- /gn/ morph(\2, ":[NA].*:m:s", ":(?:V0|Oo|[NA].*:[me]:[pi])")        -1>> quel                       && Accord de nombre erroné : « \2 » est au singulier.
        <<- /gn/ __also__                                                       -2>> =suggPlur(\2)              && Accord de nombre erroné : « \1 » est au pluriel.
        <<- /gn/ morph(\2, ":[NA].*:f:[pi]", ":(?:V0|Oo|[NA].*:[me]:[pi])")     -1>> quelles                    && Accord de genre erroné : « \2 » est féminin.
        <<- /gn/ __also__ and hasFemForm(\2)                                    -2>> =suggMasPlur(\2, True)     && Accord de genre erroné : « \1 » est masculin.
        <<- /gn/ morph(\2, ":[NA].*:f:s", ":(?:V0|Oo|[NA].*:[me]:[pi])")        -1>> quelle                     && Accord de genre et de nombre erroné : « \2 » est féminin et au singulier.
        <<- /gn/ __also__ and hasFemForm(\2)                                    -2>> =suggMasPlur(\2, True)     && Accord de genre et de nombre erroné : « \1 » est masculin et au pluriel.
        <<- /gn/ morph(\2, ":[NA].*:m:s", ":(?:V0|Oo|[NA].*:[me]:[pi])")        -1>> quel                       && Accord de nombre erroné : « \2 » est au singulier.
        <<- /gn/ __also__                                                       -2>> =suggPlur(\2)              && Accord de nombre erroné : « \1 » est au pluriel.
        <<- /gn/ morph(\2, ":[NA].*:f:[pi]", ":(?:V0|Oo|[NA].*:[me]:[pi])")     -1>> quelles                    && Accord de genre erroné : « \2 » est féminin.
        <<- /gn/ __also__ and hasFemForm(\2)                                    -2>> =suggMasPlur(\2, True)     && Accord de genre erroné : « \1 » est masculin.

TEST: {{Quels}} chanson.                                      ->> Quelle
TEST: {{Quels}} {{chant}}
TEST: {{Quels}} {{idiotes}}
TEST: {{Quels}} {{avocate}}
TEST: Quels idiots

__gn_quelle_1m__
    quelle  *WORD
        <<- /gn/ morph(\2, ":[NA].*:m:p", ":(?:V0|Oo|[NA].*:[fe]:[si])")        -1>> quels                      && Accord de genre et de nombre erroné : « \2 » est masculin et au pluriel.
        <<- /gn/ __also__ and hasFemForm(\2)                                    -2>> =suggFemSing(\2, True)     && Accord de genre et de nombre erroné : « \1 » est féminin et au singulier.
        <<- /gn/ morph(\2, ":[NA].*:f:p", ":(?:V0|Oo|[NA].*:[fe]:[si])")        -1>> quelles                    && Accord de nombre erroné : « \2 » est au pluriel.
        <<- /gn/ __also__                                                       -2>> =suggSing(\2)              && Accord de nombre erroné : « \1 » est au singulier.
        <<- /gn/ morph(\2, ":[NA].*:m:[si]", ":(?:V0|Oo|[NA].*:[fe]:[si])")     -1>> quel                       && Accord de genre erroné : « \2 » est masculin.
        <<- /gn/ __also__ and hasFemForm(\2)                                    -2>> =suggFemSing(\2, True)     && Accord de genre erroné : « \1 » est féminin.
        <<- /gn/ morph(\2, ":[NA].*:m:p", ":(?:V0|Oo|[NA].*:[fe]:[si])")        -1>> quels                      && Accord de genre et de nombre erroné : « \2 » est masculin et au pluriel.
        <<- /gn/ __also__ and hasFemForm(\2)                                    -2>> =suggFemSing(\2, True)     && Accord de genre et de nombre erroné : « \1 » est féminin et au singulier.
        <<- /gn/ morph(\2, ":[NA].*:f:p", ":(?:V0|Oo|[NA].*:[fe]:[si])")        -1>> quelles                    && Accord de nombre erroné : « \2 » est au pluriel.
        <<- /gn/ __also__                                                       -2>> =suggSing(\2)              && Accord de nombre erroné : « \1 » est au singulier.
        <<- /gn/ morph(\2, ":[NA].*:m:[si]", ":(?:V0|Oo|[NA].*:[fe]:[si])")     -1>> quel                       && Accord de genre erroné : « \2 » est masculin.
        <<- /gn/ __also__ and hasFemForm(\2)                                    -2>> =suggFemSing(\2, True)     && Accord de genre erroné : « \1 » est féminin.

TEST: {{Quelle}} homme.                                       ->> Quel
TEST: {{Quelle}} {{folles}}
TEST: {{Quelle}} {{chien}}
TEST: {{Quelle}} {{chats}}
TEST: Quelle sale journée…
TEST: On pourrait également rappeler à quel point l’Église catholique fut hostile à la laïcité et la combattit violemment.

__gn_quelles_1m!8__
    quelles  *WORD
        <<- /gn/ morph(\2, ":[NA].*:m:s", ":(?:V0|Oo|[NA].*:[fe]:[pi])")        -1>> quel                       && Accord de genre et de nombre erroné. « \2 » est masculin et au singulier.
        <<- /gn/ __also__ and hasFemForm(\2)                                    -2>> =suggFemPlur(\2, True)     && Accord de genre et de nombre erroné : « \1 » est féminin et au pluriel.
        <<- /gn/ morph(\2, ":[NA].*:f:s", ":(?:V0|Oo|[NA].*:[fe]:[pi])")        -1>> quelle                     && Accord de nombre erroné : « \2 » est au singulier.
        <<- /gn/ __also__                                                       -2>> =suggPlur(\2)              && Accord de nombre erroné : « \1 » est au pluriel.
        <<- /gn/ morph(\2, ":[NA].*:m:[pi]", ":(?:V0|Oo|[NA].*:[fe]:[pi])")     -1>> quels                      && Accord de genre erroné : « \2 » est masculin.
        <<- /gn/ __also__ and hasFemForm(\2)                                    -2>> =suggFemPlur(\2, True)     && Accord de genre erroné : « \1 » est féminin.
        <<- /gn/ morph(\2, ":[NA].*:m:s", ":(?:V0|Oo|[NA].*:[fe]:[pi])")        -1>> quel                       && Accord de genre et de nombre erroné. « \2 » est masculin et au singulier.
        <<- /gn/ __also__ and hasFemForm(\2)                                    -2>> =suggFemPlur(\2, True)     && Accord de genre et de nombre erroné : « \1 » est féminin et au pluriel.
        <<- /gn/ morph(\2, ":[NA].*:f:s", ":(?:V0|Oo|[NA].*:[fe]:[pi])")        -1>> quelle                     && Accord de nombre erroné : « \2 » est au singulier.
        <<- /gn/ __also__                                                       -2>> =suggPlur(\2)              && Accord de nombre erroné : « \1 » est au pluriel.
        <<- /gn/ morph(\2, ":[NA].*:m:[pi]", ":(?:V0|Oo|[NA].*:[fe]:[pi])")     -1>> quels                      && Accord de genre erroné : « \2 » est masculin.
        <<- /gn/ __also__ and hasFemForm(\2)                                    -2>> =suggFemPlur(\2, True)     && Accord de genre erroné : « \1 » est féminin.

TEST: {{Quelles}} hommes
TEST: {{Quelles}} {{tarés}}.
TEST: {{Quelles}} {{cinglé}}.
TEST: {{Quelles}} {{idiote}}.
TEST: Quelles grandes tours
TEST: Quelles drôles de prunes
22795
22796
22797
22798
22799
22800
22801
22802

22803
22804
22805
22806

22807
22808
22809
22810
22811

22812
22813
22814
22815

22816
22817
22818
22819
22820

22821
22822
22823
22824
22825

22826
22827
22828
22829
22830
22831
22832
22802
22803
22804
22805
22806
22807
22808

22809
22810
22811
22812

22813
22814
22815
22816
22817

22818
22819
22820
22821

22822
22823
22824
22825
22826

22827
22828
22829
22830
22831

22832
22833
22834
22835
22836
22837
22838
22839







-
+



-
+




-
+



-
+




-
+




-
+







    [quels|quelles]  [est|étais|était|sera|serais|serait|fut|fût|fus]
        <<- /gn/ not value(<1, "|tels|telles|")
        -1>> =\1[:-1]                                                                       && Accord de nombre erroné avec “\2”.

__gn_quel_accord_être_sujet__
    quel  [est|était|seras|sera|serais|serait|fut|fût|fus]  [la|cette|ma|ta|sa]  *WORD
        <<- /gn/ not value(<1, "|tel|telle|") and morph(\4, ":[NA].*:[fe]", ":m")
        -1>> quelle                                                                         && Accord de genre erroné avec « \3 \4 ».
        -1>> quelle                                                                         && Accord de genre erroné avec « \3 \4 ».

    quel  [est|était|seras|sera|serais|serait|fut|fût|fus]  [mon|ton|son|notre|votre|leur]  *WORD
        <<- /gn/ not value(<1, "|tel|telle|") and morph(\4, ":[NA].*:f", ":[me]")
        -1>> quelle                                                                         && Accord de genre erroné avec « \3 \4 ».
        -1>> quelle                                                                         && Accord de genre erroné avec « \3 \4 ».

__gn_quelle_accord_être_sujet__
    quelle  [est|était|seras|sera|serais|serait|fut|fût|fus]  [le|ce|cet]  *WORD
        <<- /gn/ not value(<1, "|tel|telle|") and morph(\4, ":[NA].*:[me]", ":f")
        -1>> quel                                                                           && Accord de genre erroné avec « \3 \4 ».
        -1>> quel                                                                           && Accord de genre erroné avec « \3 \4 ».

    quelle  [est|était|seras|sera|serais|serait|fut|fût|fus]  [mon|ton|son|notre|votre|leur]  *WORD
        <<- /gn/ not value(<1, "|tel|telle|") and morph(\4, ":[NA].*:m", ":[fe]")
        -1>> quel                                                                           && Accord de genre erroné avec « \3 \4 ».
        -1>> quel                                                                           && Accord de genre erroné avec « \3 \4 ».

__gn_quels_accord_être_sujet__
    quels  [sont|étaient|seront|serons|seraient|furent|fussent]  [les|ces|mes|tes|ses|nos|vos|leurs]  *WORD
        <<- /gn/ not value(<1, "|tels|telles|") and morph(\4, ":[NA].*:f", ":[me]")
        -1>> quelles                                                                        && Accord de genre erroné avec « \3 \4 ».
        -1>> quelles                                                                        && Accord de genre erroné avec « \3 \4 ».

__gn_quelles_accord_être_sujet__
    quelles  [sont|étaient|seront|serons|seraient|furent|fussent]  [les|ces|mes|tes|ses|nos|vos|leurs]  *WORD
        <<- /gn/ not value(<1, "|tels|telles|") and morph(\4, ":[NA].*:m", ":[fe]")
        -1>> quels                                                                          && Accord de genre erroné avec « \3 \4 ».
        -1>> quels                                                                          && Accord de genre erroné avec « \3 \4 ».

TEST: {{Quel}} sont ces hommes.                                     ->> Quels
TEST: {{Quel}} est cette force ?                                    ->> Quelle
TEST: {{Quel}} serait notre peine ?                                 ->> Quelle
TEST: {{Quel}} est la politique ?                                   ->> Quelle
TEST: {{Quelle}} est mon animal favori ?                            ->> Quel
TEST: {{Quelle}} est le politique ?                                 ->> Quel
22841
22842
22843
22844
22845
22846
22847
22848

22849
22850
22851
22852
22853
22854

22855
22856
22857
22858
22859
22860
22861
22862
22863
22864

22865
22866
22867
22868
22869
22870
22871
22872
22873
22874

22875
22876
22877
22878
22879
22880

22881
22882
22883
22884
22885
22886
22887
22888
22889
22890
22891

22892
22893
22894
22895
22896
22897
22898
22899
22900

22901
22902
22903

22904
22905
22906
22907
22908
22909
22910
22848
22849
22850
22851
22852
22853
22854

22855
22856
22857
22858
22859
22860

22861
22862
22863
22864
22865
22866
22867
22868
22869
22870

22871
22872
22873
22874
22875
22876
22877
22878
22879
22880

22881
22882
22883
22884
22885
22886

22887
22888
22889
22890
22891
22892
22893
22894
22895
22896
22897

22898
22899
22900
22901
22902
22903
22904
22905
22906

22907
22908
22909

22910
22911
22912
22913
22914
22915
22916
22917







-
+





-
+









-
+









-
+





-
+










-
+








-
+


-
+








## masculin requis
__gn_quel_que_être_mas_sing__
    quelle que    [soit|soit|sois|soient|fut|fût] [le|ce|cet]      *WORD
    quelle que    [soit|soit|sois|soient|fut|fût] [mon|ton|son]    ~^[bcdfgjklmnpqrstvwxz]
    quelle qu’ en [soit|soit|sois|soient|fut|fût] [le|ce|cet]      *WORD
    quelle qu’ en [soit|soit|sois|soient|fut|fût] [mon|ton|son]    ~^[bcdfgjklmnpqrstvwxz]
        <<- /gn/ -1>> quel                                                                  && Accord de genre avec « \-2 \-1 ». Utilisez le masculin.
        <<- /gn/ -1>> quel                                                                  && Accord de genre avec « \-2 \-1 ». Utilisez le masculin.

    quelle que    [soit|soit|sois|soient|fut|fût] [notre|votre|leur]  *WORD
    quelle que    [soit|soit|sois|soient|fut|fût] [mon|ton|son]       ~^[aeéèhiîoôuy]
    quelle qu’ en [soit|soit|sois|soient|fut|fût] [notre|votre|leur]  *WORD
    quelle qu’ en [soit|soit|sois|soient|fut|fût] [mon|ton|son]       ~^[aeéèhiîoôuy]
        <<- /gn/ morph(\-1, ":[NA].*:m", ":[fe]") -1>> quel                                 && Accord de genre avec « \-2 \-1 ». Utilisez le masculin.
        <<- /gn/ morph(\-1, ":[NA].*:m", ":[fe]") -1>> quel                                 && Accord de genre avec « \-2 \-1 ». Utilisez le masculin.

TEST: {{quelle}} que soit le chien                            ->> quel
TEST: {{Quelle}} que soit mon intérêt.                        ->> Quel
TEST: {{Quelle}} qu’en soit mon intérêt.                      ->> Quel


__gn_quel_que_être_mas_plur__
    quelles que [soient|furent|fussent] [les|ces|mes|tes|ses|nos|vos|leurs]  @:[NAQ].*:m¬:[fe]
    quelles qu’ en [soient|furent|fussent] [les|ces|mes|tes|ses|nos|vos|leurs]  @:[NAQ].*:m¬:[fe]
        <<- /gn/ -1>> quels                                                                 && Accord de genre avec « \-2 \-1 ». Utilisez le masculin.
        <<- /gn/ -1>> quels                                                                 && Accord de genre avec « \-2 \-1 ». Utilisez le masculin.

TEST: {{Quelles}} que soient ces intérêts                     ->> Quels
TEST: {{Quelles}} que soient les hommes qui…                  ->> Quels


## féminin requis
__gn_quelle_que_être_fem_sing__
    quel que    [soit|soit|sois|fut|fût] [la|cette|ma|ta|sa]  *WORD
    quel qu’ en [soit|soit|sois|fut|fût] [la|cette|ma|ta|sa]  *WORD
        <<- /gn/ -1>> quelle                                                                && Accord de genre avec « \-2 \-1 ». Utilisez le féminin.
        <<- /gn/ -1>> quelle                                                                && Accord de genre avec « \-2 \-1 ». Utilisez le féminin.

    quel que    [soit|soit|sois|soient|fut|fût] [notre|votre|leur]  *WORD
    quel que    [soit|soit|sois|soient|fut|fût] [mon|ton|son]       ~^[aeéèhiîoôuy]
    quel qu’ en [soit|soit|sois|soient|fut|fût] [notre|votre|leur]  *WORD
    quel qu’ en [soit|soit|sois|soient|fut|fût] [mon|ton|son]       ~^[aeéèhiîoôuy]
        <<- /gn/ morph(\5, ":[NA].*:f", ":[me]") -1>> quelle                                && Accord de genre avec « \-2 \-1 ». Utilisez le féminin.
        <<- /gn/ morph(\5, ":[NA].*:f", ":[me]") -1>> quelle                                && Accord de genre avec « \-2 \-1 ». Utilisez le féminin.

TEST: {{Quel}} que soit la force appliquée.                   ->> Quelle
TEST: {{Quel}} que soit mon aversion                          ->> Quelle
TEST: {{Quel}} que soit cette femme                           ->> Quelle
TEST: {{Quel}} que soit la force appliquée.                   ->> Quelle


__gn_quelle_que_être_fem__
    quels que    [soient|furent|fussent] [les|ces|mes|tes|ses|nos|vos|leurs]  @:[NAQ].*:f¬:[me]
    quels qu’ en [soient|furent|fussent] [les|ces|mes|tes|ses|nos|vos|leurs]  @:[NAQ].*:f¬:[me]
        <<- /gn/ -1>> quelles                                                               && Accord de genre avec « \-2 \-1 ». Utilisez le féminin.
        <<- /gn/ -1>> quelles                                                               && Accord de genre avec « \-2 \-1 ». Utilisez le féminin.

TEST: {{Quels}} que soient ces idiotes                        ->> Quelles
TEST: {{Quels}} qu’en soient les raisons                      ->> Quelles


## quelque adverbe
__gn_quelque_adverbe__
    quelques  *NUM
        <<- /gn/ -1>> quelque                                                               && Devant un nombre, « quelque » est un adverbe, donc invariable.
        <<- /gn/ -1>> quelque                                                               && Devant un nombre, « quelque » est un adverbe, donc invariable.

    quelques  $:B:e:p
        <<- /gn/ \2 != "cents" -1>> quelque                                                 && Devant un nombre, « quelque » est un adverbe, donc invariable.
        <<- /gn/ \2 != "cents" -1>> quelque                                                 && Devant un nombre, « quelque » est un adverbe, donc invariable.

TEST: Elle a eu {{quelques}} 300 réponses à sa petite-annonce.
TEST: Il commande {{quelques}} trois cents hommes.
TEST: {{Quelques}} 120 hommes                                 ->> Quelque
TEST: {{Quelques}} deux cents hommes.                         ->> Quelque
TEST: les quelque 2,5 millions d’habitants
TEST: les quelque 12 000 stations-service
22957
22958
22959
22960
22961
22962
22963
22964

22965
22966
22967
22968
22969

22970
22971
22972
22973

22974
22975
22976
22977
22978
22979
22980
22964
22965
22966
22967
22968
22969
22970

22971
22972
22973
22974
22975

22976
22977
22978
22979

22980
22981
22982
22983
22984
22985
22986
22987







-
+




-
+



-
+







    [cent|mille]  ~[iI][èÈ][mM][eE]$  @:[NA].*:[si]
        <<- !2>>

    $:B:e:p  *WORD
        <<- /gn/ not value(\1, "|neuf|mille|") and morph(\2, ":[NA].*:s", "*") and not morph(<1, ":D.*:s")
            and not value(\2, "|maximum|minimum|multiplié|divisé|janvier|février|mars|avril|mai|juin|juillet|août|aout|septembre|octobre|novembre|décembre|rue|route|ruelle|place|boulevard|avenue|allée|chemin|sentier|square|impasse|cour|quai|chaussée|côte|vendémiaire|brumaire|frimaire|nivôse|pluviôse|ventôse|germinal|floréal|prairial|messidor|thermidor|fructidor|")
            and not re.search("^[IVXLDM]+$", \1)
        -2>> =suggPlur(\2)                                                                  && Accord de nombre erroné avec « \1 » : « \2 » devrait être au pluriel.
        -2>> =suggPlur(\2)                                                                  && Accord de nombre erroné avec « \1 » : « \2 » devrait être au pluriel.

    neuf  *WORD
        <<- /gn/ morph(\2, ":[NA].*:s", "*") and not morph(<1, ":N.*:m:[is]") and not morph(<1, ":D.*:s")
            and not value(\2, "|maximum|minimum|multiplié|divisé|janvier|février|mars|avril|mai|juin|juillet|août|aout|septembre|octobre|novembre|décembre|rue|route|ruelle|place|boulevard|avenue|allée|chemin|sentier|square|impasse|cour|quai|chaussée|côte|vendémiaire|brumaire|frimaire|nivôse|pluviôse|ventôse|germinal|floréal|prairial|messidor|thermidor|fructidor|")
        -2>> =suggPlur(\2)                                                                  && Accord de nombre erroné avec « \1 » : « \2 » devrait être au pluriel.
        -2>> =suggPlur(\2)                                                                  && Accord de nombre erroné avec « \1 » : « \2 » devrait être au pluriel.

    mille  *WORD
        <<- /gn/ not value(\2, "|maximum|minimum|multiplié|divisé|") and morph(\2, ":[NA].*:s", "*") and not morph(<1, ":D.*:s")
        -2>> =suggPlur(\2)                                                                  && Accord de nombre erroné avec « \1 » : « \2 » devrait être au pluriel.
        -2>> =suggPlur(\2)                                                                  && Accord de nombre erroné avec « \1 » : « \2 » devrait être au pluriel.

TEST: ce sont trois {{idiot}} pas foutus de trouver leur chemin avec un GPS.        ->> idiots
TEST: Il a abandonné neuf {{enfant}}.                                               ->> enfants
TEST: On peut trouver mille {{travailleur}} d’un claquement de doigts.              ->> travailleurs
TEST: Il y a quatre cents {{mot}} dans la phrase.                                   ->> mots
TEST: cent {{mot}}                                                                  ->> mots
TEST: cinquante {{mot}}                                                             ->> mots
22989
22990
22991
22992
22993
22994
22995
22996

22997
22998
22999
23000
23001

23002
23003
23004
23005
23006
23007
23008
23009


23010
23011

23012
23013
23014
23015
23016
23017
23018
22996
22997
22998
22999
23000
23001
23002

23003
23004
23005
23006
23007

23008
23009
23010
23011
23012
23013
23014


23015
23016
23017

23018
23019
23020
23021
23022
23023
23024
23025







-
+




-
+






-
-
+
+

-
+







TEST: il vit dans un vingt-quatre mètre carré.
TEST: Cent quarante-neuvième épisode


__gn_nombre_chiffres_1m__
    [0|1|01]  @:[NAQ].*:p¬*
        <<- /gn/ space_after(\1, 1, 1) and not value(\2, "|Rois|Corinthiens|Thessaloniciens|") and not (value(<1, "|à|") and meta(<2, "NUM"))
        -2>> =suggSing(\2)                                                                  && Accord de nombre erroné avec « \1 » : « \2 » devrait être au singulier.
        -2>> =suggSing(\2)                                                                  && Accord de nombre erroné avec « \1 » : « \2 » devrait être au singulier.

    *NUM  *WORD
        <<- /gn/ space_after(\1, 1, 1) and not value(<1, "|/|") and not re.search("^0*[01](?:[,.][0-9]+|)$", \1) and morph(\2, ":[NA].*:s", "*") and not morph(<1, ":(?:N|D.*:s)")
            and not value(\2, "|maximum|minimum|multiplié|divisé|janvier|février|mars|avril|mai|juin|juillet|août|aout|septembre|octobre|novembre|décembre|rue|route|ruelle|place|boulevard|avenue|allée|chemin|sentier|square|impasse|cour|quai|chaussée|côte|vendémiaire|brumaire|frimaire|nivôse|pluviôse|ventôse|germinal|floréal|prairial|messidor|thermidor|fructidor|")
        -2>> =suggPlur(\2)                                                                  && Accord de nombre erroné avec « \1 » : « \2 » devrait être au pluriel.
        -2>> =suggPlur(\2)                                                                  && Accord de nombre erroné avec « \1 » : « \2 » devrait être au pluriel.

    *NUM  *WORD  *WORD
        <<- /gn/ not value(\2, "|maximum|minimum|fois|multiplié|divisé|janvier|février|mars|avril|mai|juin|juillet|août|aout|septembre|octobre|novembre|décembre|rue|route|ruelle|place|boulevard|avenue|allée|chemin|sentier|square|impasse|cour|quai|chaussée|côte|vendémiaire|brumaire|frimaire|nivôse|pluviôse|ventôse|germinal|floréal|prairial|messidor|thermidor|fructidor|")
            and not re.search("^0*[01](?:,[0-9]+|)$", \1) and not morph(<1, ">(?:et|ou)/|:(?:N|D.*:[si])") and not morph(\3, ">(?:seul|maximum|minimum)/|:(?:[BG]|V0)") >>>
        <<- /gn/ ((morph(\2, ":[NA].*:m", ":(?:B|e|G|V0|f)") and morph(\3, ":[NA].*:f", "*")) or (morph(\2, ":[NA].*:f", ":(?:B|e|G|V0|m)") and morph(\3, ":[NA].*:m", "*")))
            and not apposition(\2, \3)
        -3>> =switchGender(\3, True)                                                                && Accord de genre erroné entre « \2 » et « \3 ».
        <<- /gn/ __also__ and hasFemForm(\2) -2>> =switchGender(\2, True)                           && Accord de genre erroné avec « \3 ».
        -3>> =switchGender(\3, True)                                                                && Accord de genre erroné entre « \2 » et « \3 ».
        <<- /gn/ __also__ and hasFemForm(\2) -2>> =switchGender(\2, True)                           && Accord de genre erroné avec « \3 ».
        <<- /gn/ morph(\2, ":[NA].*:[pi]", "*") and morph(\3, ":[NA].*:s", "*") and not apposition(\2, \3) and not (value(>1, "|et|,|") and morph(>2, ":A"))
        -3>> =suggPlur(\3)                                                                          && Accord de nombre erroné avec « \1 \2 » : « \3 » devrait être au pluriel.
        -3>> =suggPlur(\3)                                                                          && Accord de nombre erroné avec « \1 \2 » : « \3 » devrait être au pluriel.

TEST: il a adopté 1 {{chiens}}.
TEST: 22 {{heure}}
TEST: 3 {{heure}}
TEST: Environ 10 essais {{nucléaire}} ont été réalisés
TEST: 20 {{grandes}} {{animaux}}
TEST: 00 heure, 01 heure
23069
23070
23071
23072
23073
23074
23075
23076

23077
23078
23079
23080
23081
23082
23083
23076
23077
23078
23079
23080
23081
23082

23083
23084
23085
23086
23087
23088
23089
23090







-
+







TEST: une sœur et une sœur réunies
TEST: une nation avec une armée et une volonté a toutes les chances d’y parvenir


##  trouver ça/ceci/cela + adj
__gn_trouver_ça_adj__
    >trouver  [ça|cela|ceci]  @:A.*:(?:f|m:p)¬:(?:G|3[sp]|M)
        <<- /gn/ -3>> =suggMasSing(\3)                                              && Trouver \2 + [adjectif] : l’adjectif s’accorde avec “\2” (au masculin singulier).
        <<- /gn/ -3>> =suggMasSing(\3)                                              && Trouver \2 + [adjectif] : l’adjectif s’accorde avec “\2” (au masculin singulier).

TEST: ils trouvent ça de plus en plus {{idiots}}              ->> idiot


##  Adjectifs précédents

__gn_seul_e_s_det_substantifs_nombre__
23165
23166
23167
23168
23169
23170
23171
23172
23173


23174
23175
23176


23177
23178
23179
23180
23181
23182
23183
23184
23185
23186
23187
23188
23189
23190
23191






23192
23193
23194
23195
23196
23197
23198
23199
23200
23201
23202
23203
23204
23205
23206
23207


23208
23209
23210


23211
23212
23213
23214
23215
23216
23217
23218
23219
23220
23221


23222
23223
23224


23225
23226
23227
23228
23229
23230
23231
23232
23233
23234
23235
23236


23237
23238
23239
23240


23241
23242
23243
23244
23245
23246
23247
23248
23249
23250
23251
23252
23253
23254
23255
23256
23257


23258
23259
23260
23261


23262
23263
23264
23265
23266
23267
23268
23172
23173
23174
23175
23176
23177
23178


23179
23180
23181


23182
23183
23184
23185
23186
23187
23188
23189
23190
23191
23192






23193
23194
23195
23196
23197
23198
23199
23200
23201
23202
23203
23204
23205
23206
23207
23208
23209
23210
23211
23212


23213
23214
23215


23216
23217
23218
23219
23220
23221
23222
23223
23224
23225
23226


23227
23228
23229


23230
23231
23232
23233
23234
23235
23236
23237
23238
23239
23240
23241


23242
23243
23244
23245


23246
23247
23248
23249
23250
23251
23252
23253
23254
23255
23256
23257
23258
23259
23260
23261
23262


23263
23264
23265
23266


23267
23268
23269
23270
23271
23272
23273
23274
23275







-
-
+
+

-
-
+
+









-
-
-
-
-
-
+
+
+
+
+
+














-
-
+
+

-
-
+
+









-
-
+
+

-
-
+
+










-
-
+
+


-
-
+
+















-
-
+
+


-
-
+
+







!!
!!

## Sans article
__gn_start_2m__
    <start>  @:[NA]¬*  @:[NA]¬*
        <<- /gn/ ((morph(\2, ":m", "*") and morph(\3, ":f", "*")) or (morph(\2, ":f", "*") and morph(\3, ":m", "*"))) and not apposition(\2, \3)
        -3>> =switchGender(\3)                                                                      && Accord de genre erroné avec « \2 ».
        <<- /gn/ __also__ and hasFemForm(\2) -2>> =switchGender(\2)                                 && Accord de genre erroné avec « \3 ».
        -3>> =switchGender(\3)                                                                      && Accord de genre erroné avec « \2 ».
        <<- /gn/ __also__ and hasFemForm(\2) -2>> =switchGender(\2)                                 && Accord de genre erroné avec « \3 ».
        <<- /gn/ ((morph(\2, ":s", "*") and morph(\3, ":p", "*")) or (morph(\2, ":p", "*") and morph(\3, ":s", "*"))) and not apposition(\2, \3)
        -3>> =switchPlural(\3)                                                                      && Accord de nombre erroné avec « \2 ».
        <<- /gn/ __also__ -2>> =switchPlural(\2)                                                    && Accord de nombre erroné avec « \3 ».
        -3>> =switchPlural(\3)                                                                      && Accord de nombre erroné avec « \2 ».
        <<- /gn/ __also__ -2>> =switchPlural(\2)                                                    && Accord de nombre erroné avec « \3 ».

TEST: {{serrurière}} {{intelligent}}.
TEST: {{serrurier}} {{intelligente}}.
TEST: {{Femmes}} {{mariée}}
TEST: {{hommes}} {{marié}}


__gn_start_3m__
    <start>  @:[NA]¬*  @:[NA]¬*  @:[NA]¬*
        <<- /gn/ morph(\2, ":p") and morph(\3, ":[pi]") and morph(\4, ":s") and \4.islower() -4>> =switchPlural(\4)  && Accord de nombre erroné avec « \2 \3 » : « \4 » devrait être au pluriel.
        <<- /gn/ morph(\2, ":i") and morph(\3, ":p")    and morph(\4, ":s") and \4.islower() -4>> =switchPlural(\4)  && Accord de nombre erroné avec « \2 \3 » : « \4 » devrait être au pluriel.
        <<- /gn/ morph(\2, ":s") and morph(\3, ":[si]") and morph(\4, ":p") and \4.islower() -4>> =switchPlural(\4)  && Accord de nombre erroné avec « \2 \3 » : « \4 » devrait être au singulier.
        <<- /gn/ morph(\2, ":i") and morph(\3, ":s")    and morph(\4, ":p") and \4.islower() -4>> =switchPlural(\4)  && Accord de nombre erroné avec « \2 \3 » : « \4 » devrait être au singulier.
        <<- /gn/ morph(\2, ":m", ":[fe]") and morph(\3, ":[me]") and morph(\4, ":f") and \4.islower() -4>> =switchGender(\4)  && Accord de genre erroné avec « \2 \3 » : « \4 » devrait être au masculin.
        <<- /gn/ morph(\2, ":f", ":[me]") and morph(\3, ":[fe]") and morph(\4, ":m") and \4.islower() -4>> =switchGender(\4)  && Accord de genre erroné avec « \2 \3 » : « \4 » devrait être au féminin.
        <<- /gn/ morph(\2, ":p") and morph(\3, ":[pi]") and morph(\4, ":s") and \4.islower() -4>> =switchPlural(\4)  && Accord de nombre erroné avec « \2 \3 » : « \4 » devrait être au pluriel.
        <<- /gn/ morph(\2, ":i") and morph(\3, ":p")    and morph(\4, ":s") and \4.islower() -4>> =switchPlural(\4)  && Accord de nombre erroné avec « \2 \3 » : « \4 » devrait être au pluriel.
        <<- /gn/ morph(\2, ":s") and morph(\3, ":[si]") and morph(\4, ":p") and \4.islower() -4>> =switchPlural(\4)  && Accord de nombre erroné avec « \2 \3 » : « \4 » devrait être au singulier.
        <<- /gn/ morph(\2, ":i") and morph(\3, ":s")    and morph(\4, ":p") and \4.islower() -4>> =switchPlural(\4)  && Accord de nombre erroné avec « \2 \3 » : « \4 » devrait être au singulier.
        <<- /gn/ morph(\2, ":m", ":[fe]") and morph(\3, ":[me]") and morph(\4, ":f") and \4.islower() -4>> =switchGender(\4)  && Accord de genre erroné avec « \2 \3 » : « \4 » devrait être au masculin.
        <<- /gn/ morph(\2, ":f", ":[me]") and morph(\3, ":[fe]") and morph(\4, ":m") and \4.islower() -4>> =switchGender(\4)  && Accord de genre erroné avec « \2 \3 » : « \4 » devrait être au féminin.

TEST: Grande manifestation {{réprimées}} dans le sang.                  ->> réprimée
TEST: Petite manifestation {{ignorées}} par les médias.                 ->> ignorée
TEST: Précis brûlé {{oubliés}}                                          ->> oublié
TEST: Grandes démonstrations {{oubliée}} par l’Histoire.                ->> oubliées
TEST: Prix incroyables {{valable}} uniquement jusqu’à demain.           ->> valables
TEST: Petites filles {{oubliés}}                                        ->> oubliées
TEST: Petits écarts {{pardonnées}}                                      ->> pardonnés


## Prépositions
__gn_pfx_en_2m__
    en  @:[NA]¬*  @:[NA]¬*
        <<- /gn/ ( (morph(\2, ":m", "*") and morph(\3, ":f", "*")) or (morph(\2, ":f", "*") and morph(\3, ":m", "*")) ) and not apposition(\2, \3)
        -3>> =switchGender(\3)                                                                      && Accord de genre erroné avec « \2 ».
        <<- /gn/ __also__ and hasFemForm(\2) -2>> =switchGender(\2)                                 && Accord de genre erroné avec « \3 ».
        -3>> =switchGender(\3)                                                                      && Accord de genre erroné avec « \2 ».
        <<- /gn/ __also__ and hasFemForm(\2) -2>> =switchGender(\2)                                 && Accord de genre erroné avec « \3 ».
        <<- /gn/ ( (morph(\2, ":p", "*") and morph(\3, ":s", "*")) or (morph(\2, ":s", "*") and morph(\3, ":p", "*")) ) and not apposition(\2, \3)
        -3>> =switchPlural(\3)                                                                      && Accord de nombre erroné avec « \2 ».
        <<- /gn/ __also__ -2>> =switchPlural(\2)                                                    && Accord de nombre erroné avec « \3 ».
        -3>> =switchPlural(\3)                                                                      && Accord de nombre erroné avec « \2 ».
        <<- /gn/ __also__ -2>> =switchPlural(\2)                                                    && Accord de nombre erroné avec « \3 ».

TEST: en homme {{courtoise}}
TEST: en {{grande}} {{avocat}}
TEST: en {{femme}} {{cultivées}}


__gn_pfx_à_par_pour_sans_2m__
    [à|par|pour|sans]  @:[NA]¬:Y  @:[NA]¬:G
        <<- /gn/ ( (morph(\2, ":m", ":[fe]") and morph(\3, ":f", "*")) or (morph(\2, ":f", ":[me]") and morph(\3, ":m", "*")) ) and not apposition(\2, \3)
        -3>> =switchGender(\3)                                                                      && Accord de genre erroné avec « \2 ».
        <<- /gn/ __also__ and hasFemForm(\2) -2>> =switchGender(\2)                                 && Accord de genre erroné avec « \3 ».
        -3>> =switchGender(\3)                                                                      && Accord de genre erroné avec « \2 ».
        <<- /gn/ __also__ and hasFemForm(\2) -2>> =switchGender(\2)                                 && Accord de genre erroné avec « \3 ».
        <<- /gn/ ( (morph(\2, ":p", ":[si]") and morph(\3, ":s", "*")) or (morph(\2, ":s", ":[pi]") and morph(\3, ":p", "*")) ) and not apposition(\2, \3)
        -3>> =switchPlural(\3)                                                                      && Accord de nombre erroné avec « \2 ».
        <<- /gn/ __also__ -2>> =switchPlural(\2)                                                    && Accord de nombre erroné avec « \3 ».
        -3>> =switchPlural(\3)                                                                      && Accord de nombre erroné avec « \2 ».
        <<- /gn/ __also__ -2>> =switchPlural(\2)                                                    && Accord de nombre erroné avec « \3 ».

TEST: à {{grande}} {{enjambées}}
TEST: pour {{belle}} {{appartement}}
TEST: une femme sans a priori


__gn_pfx_de_2m__
    [de|d’]  @:[NA]¬:Y  @:[NA]¬*
        <<- /gn/ ( (morph(\2, ":m", ":[fe]") and morph(\3, ":f", "*")) or (morph(\2, ":f", ":[me]") and morph(\3, ":m", "*")) )
            and not apposition(\2, \3) and not morph(<1, ":[NA]|>(?:et|ou)/")
        -3>> =switchGender(\3)                                                                      && Accord de genre erroné avec « \2 ».
        <<- /gn/ __also__ and hasFemForm(\2) -2>> =switchGender(\2)                                 && Accord de genre erroné avec « \3 ».
        -3>> =switchGender(\3)                                                                      && Accord de genre erroné avec « \2 ».
        <<- /gn/ __also__ and hasFemForm(\2) -2>> =switchGender(\2)                                 && Accord de genre erroné avec « \3 ».
        <<- /gn/ ( (morph(\2, ":p", ":[si]") and morph(\3, ":s", "*")) or (morph(\2, ":s", ":[pi]") and morph(\3, ":p", "*")) )
            and not apposition(\2, \3) and not morph(<1, ":[NA]|>(?:et|ou)/")
        -3>> =switchPlural(\3)                                                                      && Accord de nombre erroné avec « \2 ».
        <<- /gn/ __also__ -2>> =switchPlural(\2)                                                    && Accord de nombre erroné avec « \3 ».
        -3>> =switchPlural(\3)                                                                      && Accord de nombre erroné avec « \2 ».
        <<- /gn/ __also__ -2>> =switchPlural(\2)                                                    && Accord de nombre erroné avec « \3 ».

TEST: Ils ont de {{grandes}} {{oreille}}
TEST: de {{grands}} {{homme}}
TEST: de {{manière}} {{légal}}
TEST: de {{petite}} {{homme}}
TEST: de {{pousse}} {{actif}}
TEST: De {{bon}} {{conseils}}
TEST: De {{mauvaises}} {{hommes}}
TEST: Ces produits sont de {{belle}} {{qualités}}.


__gn_pfx_sur_avec_après_2m__
    [sur|avec|après]  @:[NA]¬:V0  @:[NA]¬*
        <<- /gn/ ( (morph(\2, ":m", ":[fe]") and morph(\3, ":f", "*")) or (morph(\2, ":f", ":[me]") and morph(\3, ":m", "*")) )
            and not apposition(\2, \3) and morph(<1, ":[VRX]|<start>")
        -3>> =switchGender(\3)                                                                      && Accord de genre erroné avec « \2 ».
        <<- /gn/ __also__ and hasFemForm(\2) -2>> =switchGender(\2)                                 && Accord de genre erroné avec « \3 ».
        -3>> =switchGender(\3)                                                                      && Accord de genre erroné avec « \2 ».
        <<- /gn/ __also__ and hasFemForm(\2) -2>> =switchGender(\2)                                 && Accord de genre erroné avec « \3 ».
        <<- /gn/ ( (morph(\2, ":p", ":[si]") and morph(\3, ":s", "*")) or (morph(\2, ":s", ":[pi]") and morph(\3, ":p", "*")) )
            and not apposition(\2, \3) and morph(<1, ":[VRX]|<start>")
        -3>> =switchPlural(\3)                                                                      && Accord de nombre erroné avec « \2 ».
        <<- /gn/ __also__ -2>> =switchPlural(\2)                                                    && Accord de nombre erroné avec « \3 ».
        -3>> =switchPlural(\3)                                                                      && Accord de nombre erroné avec « \2 ».
        <<- /gn/ __also__ -2>> =switchPlural(\2)                                                    && Accord de nombre erroné avec « \3 ».

TEST: avec {{grand}} {{industrie}}
TEST: avec {{grandes}} {{industrie}}
TEST: sur {{petite}} {{pied}}
TEST: Après être demeurée assise pendant quelque temps, elle se leva
TEST: ils choisissent de devenir indépendants

23306
23307
23308
23309
23310
23311
23312
23313

23314
23315
23316
23317
23318

23319
23320
23321
23322

23323
23324
23325
23326
23327
23328

23329
23330
23331
23332
23333

23334
23335
23336
23337
23338
23339

23340
23341
23342
23343
23344
23345
23346
23313
23314
23315
23316
23317
23318
23319

23320
23321
23322
23323
23324

23325
23326
23327
23328

23329
23330
23331
23332
23333
23334

23335
23336
23337
23338
23339

23340
23341
23342
23343
23344
23345

23346
23347
23348
23349
23350
23351
23352
23353







-
+




-
+



-
+





-
+




-
+





-
+







!!!! Groupe nominal: Accords avec de / des / du                                                   !!
!!
!!

__gn_devinette__
    [la|ma|ta|sa|une|cette]  *WORD  [de|d’]  [la|ma|ta|sa|cette|une]  *WORD  *WORD
        <<- /gn/ morph(\6, ":[NA].*:(?:m|f:p)", ":(?:G|P|[fe]:[is]|V0|3[sp])") and morph(\5, ":[NA].*:[fe]") and not apposition(\5, \6)
        -6>> =suggFemSing(\6, True)                                                         && Accord erroné : « \6 » devrait être au féminin singulier.
        -6>> =suggFemSing(\6, True)                                                         && Accord erroné : « \6 » devrait être au féminin singulier.

    [le|un|ce|cet]  *WORD  [de|d’]  [ce|cet|un]  (*WORD)  (*WORD)
    [le|un|ce|cet]  *WORD  du  (*WORD)  (*WORD)
        <<- /gn/ morph(\2, ":[NA].*:(?:f|m:p)", ":(?:G|P|[me]:[is]|V0|3[sp])") and morph(\1, ":[NA].*:[me]") and not apposition(\1, \2)
        -2>> =suggMasSing(\2, True)                                                         && Accord erroné : « \2 » devrait être au masculin singulier.
        -2>> =suggMasSing(\2, True)                                                         && Accord erroné : « \2 » devrait être au masculin singulier.

    [le|un|ce|cet]  *WORD  de  [mon|ton|son]  *WORD  *WORD
        <<- /gn/ morph(\5, ":", ":[NA].*:f|>[aéeiou].*:e") and morph(\6, ":[NA].*:(?:f|m:p)", ":(?:G|P|m:[is]|V0|3[sp])") and not apposition(\5, \6)
        -6>> =suggMasSing(\6, True)                                                         && Accord erroné : « \6 » devrait être au masculin singulier.
        -6>> =suggMasSing(\6, True)                                                         && Accord erroné : « \6 » devrait être au masculin singulier.

    [mon|ton|son]  *WORD  [de|d’]  [ce|cet|un]  *WORD  *WORD
    [mon|ton|son]  *WORD  du  *WORD  *WORD
        <<- /gn/ morph(\2, ":[NA].*:m", ":G|>[aéeiou].*:[ef]")
            and morph(\-1, ":[NA].*:(?:f|m:p)", ":(?:G|P|[me]:[is]|V0|3[sp])") and not apposition(\-2, \-1)
        --1>> =suggMasSing(\-1, True)                                                       && Accord erroné : « \-1 » devrait être au masculin singulier.
        --1>> =suggMasSing(\-1, True)                                                       && Accord erroné : « \-1 » devrait être au masculin singulier.

    [mon|ton|son]  *WORD  de [mon|ton|son]  *WORD  *WORD
        <<- /gn/ morph(\2, ":[NA].*:m", ":G|>[aéeiou].*:[ef]")
            and not morph(\-2, ":[NA].*:f|>[aéeiou].*:e") and morph(\-1, ":[NA].*:(?:f|m:p)", ":(?:G|P|[me]:[is]|V0|3[sp])") and not apposition(\-2, \-1)
        --1>> =suggMasSing(\-1, True)                                                       && Accord erroné : « \-1 » devrait être au masculin singulier.
        --1>> =suggMasSing(\-1, True)                                                       && Accord erroné : « \-1 » devrait être au masculin singulier.

    [les|ces|mes|tes|ses|nos|vos|leurs|quelques]  *WORD  de [ces|mes|tes|ses|nos|vos|leurs]  *WORD  *WORD
    [les|ces|mes|tes|ses|nos|vos|leurs|quelques]  *WORD  des  *WORD  *WORD
        <<- /gn/ morph(\-1, ":[NA].*:s", ":(?:G|P|[me]:[ip]|V0|3[sp])") and morph(\-2, ":[NA].*:[pi]") and not apposition(\-2, \-1)
            and not (value(>1, "|et|ou|") and morph(>2, ":A.*:[si]"))
        --1>> =suggPlur(\-1)                                                                && Accord erroné : « \-1 » devrait être au pluriel.
        --1>> =suggPlur(\-1)                                                                && Accord erroné : « \-1 » devrait être au pluriel.

TEST: La fille de cette belle {{inconnu}}                       ->> inconnue
TEST: Le chien du voisin {{mourante}}                           ->> mourant
TEST: Un chien de ce voisin {{amicale}}                         ->> amical
TEST: mon amour du chocolat {{immodérée}}                       ->> immodéré
TEST: ton amour de son verbe {{enthousiasmante}}                ->> enthousiasmant
TEST: Cet homme de mon groupe {{oubliés}}                       ->> oublié
23380
23381
23382
23383
23384
23385
23386
23387

23388
23389
23390

23391
23392
23393

23394
23395
23396

23397
23398
23399
23400
23401
23402
23403
23404
23405
23406
23407
23408
23409

23410
23411
23412

23413
23414
23415

23416
23417
23418

23419
23420
23421

23422
23423
23424
23425
23426
23427
23428
23429
23430
23431
23432
23433
23434

23435
23436
23437

23438
23439
23440

23441
23442
23443

23444
23445
23446
23447
23448
23449
23450
23387
23388
23389
23390
23391
23392
23393

23394
23395
23396

23397
23398
23399

23400
23401
23402

23403
23404
23405
23406
23407
23408
23409
23410
23411
23412
23413
23414
23415

23416
23417
23418

23419
23420
23421

23422
23423
23424

23425
23426
23427

23428
23429
23430
23431
23432
23433
23434
23435
23436
23437
23438
23439
23440

23441
23442
23443

23444
23445
23446

23447
23448
23449

23450
23451
23452
23453
23454
23455
23456
23457







-
+


-
+


-
+


-
+












-
+


-
+


-
+


-
+


-
+












-
+


-
+


-
+


-
+







!!
!!!! Groupe nominal (accord avec déterminant suivant le groupe)                                   !!
!!
!!

__gn_lequel_laquelle_lesquels_lesquelles__
    <start> [le|l’|un|ce|cet|mon|ton|son|notre|votre|leur]                  *WORD  *WORD   [laquelle|lesquels|lesquelles]
        <<- /conf/ morph(\3, ":N.*:m:[si]", ":f") and morph(\4, ":R", ">à/") --1>> lequel           && Accord avec “\2 \3” : utilisez le masculin singulier.
        <<- /conf/ morph(\3, ":N.*:m:[si]", ":f") and morph(\4, ":R", ">à/") --1>> lequel           && Accord avec “\2 \3” : utilisez le masculin singulier.

    <start> [la|l’|une|cette|ma|ta|sa|notre|votre|leur]                     *WORD  *WORD   [lequel|lesquels|lesquelles]
        <<- /conf/ morph(\3, ":N.*:f:[si]", ":m") and morph(\4, ":R", ">à/") --1>> laquelle         && Accord avec “\2 \3” : utilisez le féminin singulier.
        <<- /conf/ morph(\3, ":N.*:f:[si]", ":m") and morph(\4, ":R", ">à/") --1>> laquelle         && Accord avec “\2 \3” : utilisez le féminin singulier.

    <start> [les|des|ces|mes|tes|ses|quelques|plusieurs|certains|maints]    *WORD  *WORD   [lequel|laquelle|lesquelles]
        <<- /conf/ morph(\3, ":N.*:m:[pi]", ":f") and morph(\4, ":R", ">à/") --1>> lesquels         && Accord avec “\2 \3” : utilisez le pluriel masculin.
        <<- /conf/ morph(\3, ":N.*:m:[pi]", ":f") and morph(\4, ":R", ">à/") --1>> lesquels         && Accord avec “\2 \3” : utilisez le pluriel masculin.

    <start> [les|des|ces|mes|tes|ses|quelques|plusieurs|certaines|maintes]  *WORD  *WORD   [lequel|laquelle|lesquels]
        <<- /conf/ morph(\3, ":N.*:f:[pi]", ":m") and morph(\4, ":R", ">à/") --1>> lesquelles       && Accord avec “\2 \3” : utilisez le pluriel féminin.
        <<- /conf/ morph(\3, ":N.*:f:[pi]", ":m") and morph(\4, ":R", ">à/") --1>> lesquelles       && Accord avec “\2 \3” : utilisez le pluriel féminin.

TEST: L’homme pour {{laquelle}} tu te plies en quatre ne le mérite pas.                 ->> lequel
TEST: Une femme contre {{lequel}} je me suis battu bec et ongles.                       ->> laquelle
TEST: ces idiots avec {{lesquelles}} j’ai commis la bêtise de partir                    ->> lesquels
TEST: plusieurs femmes avec {{lesquels}} nous avons parlé                               ->> lesquelles
TEST: La femme avec laquelle tu parles
TEST: La faux avec laquelle on fauche.
TEST: Une distance au-delà de laquelle il devient difficile de voir.


__gn_auquel_à_laquelle_auxquels_auxquelles__
    <start> [le|l’|un|ce|cet|mon|ton|son|notre|votre|leur]                  *WORD   [auxquels|auxquelles]
        <<- /conf/ morph(\3, ":N.*:m:[si]", ":f") --1>> auquel                                      && Accord avec “\2 \3” : utilisez le masculin singulier.
        <<- /conf/ morph(\3, ":N.*:m:[si]", ":f") --1>> auquel                                      && Accord avec “\2 \3” : utilisez le masculin singulier.

    <start> [le|l’|un|ce|cet|mon|ton|son|notre|votre|leur]                  *WORD   à laquelle
        <<- /conf/ morph(\3, ":N.*:m:[si]", ":f:[si]") --2:-1>> auquel                              && Accord avec “\2 \3” : utilisez le masculin singulier.
        <<- /conf/ morph(\3, ":N.*:m:[si]", ":f:[si]") --2:-1>> auquel                              && Accord avec “\2 \3” : utilisez le masculin singulier.

    <start> [la|l’|une|cette|ma|ta|sa|notre|votre|leur]                     *WORD   [auquel|auxquels|auxquelles]
        <<- /conf/ morph(\3, ":N.*:f:[si]", ":m") --1>> à laquelle                                  && Accord avec “\2 \3” : utilisez le féminin singulier.
        <<- /conf/ morph(\3, ":N.*:f:[si]", ":m") --1>> à laquelle                                  && Accord avec “\2 \3” : utilisez le féminin singulier.

    <start> [les|des|ces|mes|tes|ses|quelques|plusieurs|certains|maints]    *WORD   [auquel|auxquelles]
        <<- /conf/ morph(\3, ":N.*:m:[pi]") --1>> auxquels                                          && Accord avec “\2 \3” : utilisez le pluriel masculin.
        <<- /conf/ morph(\3, ":N.*:m:[pi]") --1>> auxquels                                          && Accord avec “\2 \3” : utilisez le pluriel masculin.

    <start> [les|des|ces|mes|tes|ses|quelques|plusieurs|certaines|maintes]  *WORD   [auquel|auxquels]
        <<- /conf/ morph(\3, ":N.*:f:[pi]", ":m") --1>> auxquelles                                  && Accord avec “\2 \3” : utilisez le pluriel féminin.
        <<- /conf/ morph(\3, ":N.*:f:[pi]", ":m") --1>> auxquelles                                  && Accord avec “\2 \3” : utilisez le pluriel féminin.

TEST: le délire {{à laquelle}} nous avons dû faire face.                                ->> auquel
TEST: le chien {{auxquels}} ils ont apporté à manger avait disparu                      ->> auquel
TEST: la mission {{auquel}} nous avons consacré tant de temps a finalement été annulée  ->> à laquelle
TEST: les femmes {{auxquels}} j’ai confié cette mission se sont rebellées.              ->> auxquelles
TEST: les hommes {{auxquelles}} nous avons fait confiance nous sont trahis.             ->> auxquels
TEST: Les femmes auxquelles tu parles


__gn_duquel_de_laquelle_desquels_desquelles__
# Nous présumons qu’au singulier, la différence sonore prévient toute confusion possible (les faux positifs possibles sont nombreux).
    [<start>|,|(]  *WORD  [les|des|ces|mes|tes|ses|quelques|plusieurs|certains]   *WORD    desquelles
        <<- /conf/ morph(\2, ":R") and morph(\4, ":N.*:m:[pi]", ":f:[pi]") --1>> desquels           && Si “\-1” se rapporte à “\3 \4” : utilisez le pluriel masculin.
        <<- /conf/ morph(\2, ":R") and morph(\4, ":N.*:m:[pi]", ":f:[pi]") --1>> desquels           && Si “\-1” se rapporte à “\3 \4” : utilisez le pluriel masculin.

    [<start>|,|(]  *WORD  [les|des|ces|mes|tes|ses|quelques|plusieurs|certaines]  *WORD    desquels
        <<- /conf/ morph(\2, ":R") and morph(\4, ":N.*:f:[pi]", ":m:[pi]") --1>> desquelles         && Si “\-1” se rapporte à “\3 \4” : utilisez le pluriel féminin.
        <<- /conf/ morph(\2, ":R") and morph(\4, ":N.*:f:[pi]", ":m:[pi]") --1>> desquelles         && Si “\-1” se rapporte à “\3 \4” : utilisez le pluriel féminin.

    <start>  [les|des|ces|mes|tes|ses|quelques|plusieurs|certains|maints|aux]     *WORD    desquelles
        <<- /conf/ morph(\3, ":N.*:m:[pi]", ":f:[pi]") --1>> desquels                               && Si “\-1” se rapporte à “\2 \3” : utilisez le pluriel masculin.
        <<- /conf/ morph(\3, ":N.*:m:[pi]", ":f:[pi]") --1>> desquels                               && Si “\-1” se rapporte à “\2 \3” : utilisez le pluriel masculin.

    <start>  [les|des|ces|mes|tes|ses|quelques|plusieurs|certaines|maintes|aux]   *WORD    desquels
        <<- /conf/ morph(\3, ":N.*:f:[pi]", ":m:[pi]") --1>> desquelles                             && Si “\-1” se rapporte à “\2 \3” : utilisez le pluriel féminin.
        <<- /conf/ morph(\3, ":N.*:f:[pi]", ":m:[pi]") --1>> desquelles                             && Si “\-1” se rapporte à “\2 \3” : utilisez le pluriel féminin.

TEST: contre les ennuis {{desquelles}} nous nous sommes dépêtrés seuls                  ->> desquels
TEST: par ces idées {{desquels}} il fut possible de bâtir notre empire                  ->> desquelles
TEST: les travaux {{desquelles}} nous tirons ces résultats                              ->> desquels
TEST: aux ressources {{desquels}} nous avons tiré notre richesse.                       ->> desquelles
TEST: C’était une Église, parmi tant d’autres, au milieu de laquelle prospéraient les hypocrites.
TEST: au nombre desquels on compte les vaisseaux de l’Invincible Armada.
23527
23528
23529
23530
23531
23532
23533
23534

23535
23536
23537
23538
23539
23540
23541
23542
23543
23544
23545
23546
23547
23548

23549
23550
23551

23552
23553
23554
23555
23556
23557
23558
23534
23535
23536
23537
23538
23539
23540

23541
23542
23543
23544
23545
23546
23547
23548
23549
23550
23551
23552
23553
23554

23555
23556
23557

23558
23559
23560
23561
23562
23563
23564
23565







-
+













-
+


-
+







!!
!!!! Singuliers & Pluriels                                                                        !!
!!
!!

#### Prépositions

# Similaires à prépositions : http://www.synapse-fr.com/manuels/PP_ATTENDU.htm
# 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
# ! problème avec l’ouïe, ouï retiré de la liste
__gn_prépositions__
    <start> ?non¿ [comprise|comprises] [le|la|l’|les|ce|cet|cette|ces|mon|ton|son|ma|ta|sa|mes|tes|ses|notre|votre|nos|vos|leur|leurs]
        <<- /gn/ --2>> compris                                                              && Considéré comme préposition, invariable.

    <start> [non-comprise|non-comprises] [le|la|l’|les|ce|cet|cette|ces|mon|ton|son|ma|ta|sa|mes|tes|ses|notre|votre|nos|vos|leur|leurs]
        <<- /gn/ -2>> non compris                                                           && Considéré comme préposition, invariable.

    <start> [entendus|exceptés|ôtés|supposés|passés|entendue|exceptée|ôtée|supposée|passée|entendues|exceptées|ôtées|supposées|passées]  [le|la|l’|les|ce|cet|cette|ces|mon|ton|son|ma|ta|sa|mes|tes|ses|notre|votre|nos|vos|leur|leurs]
        <<- /gn/ -2>> =suggMasSing(\2)                                                      && Considéré comme préposition, invariable.

    [<start>|,|(]  [attendus|attendue|attendues]  [que|qu’]
        <<- /gn/ -2>> attendu                                                               && “Attendu que” : considéré comme préposition, invariable.
        <<- /gn/ -2>> attendu                                                               && “Attendu que” : considéré comme préposition, invariable.

    [<start>|,|(]  étant [donnés|donnée|données]
        <<- /gn/ -3>> donné                                                                 && “Étant donné” : considéré comme préposition, invariable.
        <<- /gn/ -3>> donné                                                                 && “Étant donné” : considéré comme préposition, invariable.

    [<start>|,|(]  [vus|vue|vues]  [le|la|l’|les|ce|cet|cette|ces|mon|ton|son|ma|ta|sa|mes|tes|ses|notre|votre|nos|vos|leur|leurs]
    [<start>|,|(]  [vus|vue|vues]  [que|qu’]
        <<- /gn/ -2>> vu                                                                    && “Vu que”. Considéré comme préposition, invariable.

TEST: {{comprises}} mes prestations sur place
TEST: {{non-comprises}} les boissons
23587
23588
23589
23590
23591
23592
23593
23594

23595
23596
23597
23598
23599
23600
23601
23602
23603
23604
23605
23606
23607
23608
23609
23610
23611
23612
23613
23614
23615

23616
23617
23618
23619
23620
23621
23622
23594
23595
23596
23597
23598
23599
23600

23601
23602
23603
23604
23605
23606
23607
23608
23609
23610
23611
23612
23613
23614
23615
23616
23617
23618
23619
23620
23621

23622
23623
23624
23625
23626
23627
23628
23629







-
+




















-
+







__gn_vingt__
    vingts
        <<- /gn/ not value(<1, "|quatre|") ->> vingt                                        && “Vingt” ne prend la marque du pluriel que dans “quatre-vingts”.

    quatre-vingt
    quatre vingt
        <<- /gn/ not morph(>1, ":B") and not morph(<1, ">(?:numéro|page|chapitre|référence|année|test|série)/")
        ->> quatre-vingts                                                                   && Mettre « vingt » au pluriel, excepté s’il s’agit d’une référence (page, chapitre, année…).
        ->> quatre-vingts                                                                   && Mettre « vingt » au pluriel, excepté s’il s’agit d’une référence (page, chapitre, année…).

    quatre-vingts-un
    quatre-vingts-deux
    quatre-vingts-trois
    quatre-vingts-quatre
    quatre-vingts-cinq
    quatre-vingts-six
    quatre-vingts-sept
    quatre-vingts-huit
    [quatre-vingts-neuf+s]
    quatre-vingts-dix
    quatre-vingts-onze
    quatre-vingts-douze
    quatre-vingts-treize
    quatre-vingts-quatorze
    quatre-vingts-quinze
    quatre-vingts-seize
    quatre-vingts-dix-sept
    quatre-vingts-dix-huit
    [quatre-vingts-dix-neuf|quatre-vingts-dix-neufs]
        <<- /gn/ -1>> =\1.replace("vingts", "vingt").replace("VINGTS", "VINGT")             && Mettez « vingt » au singulier.
        <<- /gn/ -1>> =\1.replace("vingts", "vingt").replace("VINGTS", "VINGT")             && Mettez « vingt » au singulier.

TEST: Il y a {{vingts}} personnes dans le salon.
TEST: {{Quatre-vingt}} femmes sont passées.
TEST: On en a reçu {{quatre-vingts-dix}}.
TEST: Le gagnant est le numéro quatre-vingt.


23640
23641
23642
23643
23644
23645
23646
23647

23648
23649
23650
23651

23652
23653
23654
23655
23656
23657
23658
23647
23648
23649
23650
23651
23652
23653

23654
23655
23656
23657

23658
23659
23660
23661
23662
23663
23664
23665







-
+



-
+







__gn_nombre_cents__
    [deux|trois|quatre|cinq|six|sept|huit|neuf]  cent
        <<- /gn/ not morph(>1, ":B:e:p|>une?") and not morph(<1, ">(?:numéro|page|chapitre|référence|année|test|série)/")
        -2>> cents                          && Mettre “cent” au pluriel (centaines entières), excepté s’il s’agit d’une référence (page, chapitre, année…).|https://fr.wiktionary.org/wiki/cent

    [deux|trois|quatre|cinq|six|sept|huit|neuf|mille]  cents
        <<- /gn/ morph(>1, ":B:e:p|>une?")
        -2>> cent                           && Nombre cardinal : pas de “s” à “cent” (hormis sur les centaines entières).|https://fr.wiktionary.org/wiki/cent
        -2>> cent                           && Nombre cardinal : pas de “s” à “cent” (hormis sur les centaines entières).|https://fr.wiktionary.org/wiki/cent

    cents  @:[NA].*:[pi]¬:G
        <<- /gn/ morph(<1, ":[VR]|<start>", ":B")
        -1>> cent                           && Nombre cardinal : pas de “s” à “cent” (hormis sur les centaines entières).|https://fr.wiktionary.org/wiki/cent
        -1>> cent                           && Nombre cardinal : pas de “s” à “cent” (hormis sur les centaines entières).|https://fr.wiktionary.org/wiki/cent

TEST: deux {{cents}} trois mots                                                         ->> cent
TEST: il y a {{cents}} mots                                                             ->> cent
TEST: {{cents}} mots                                                                    ->> cent
TEST: ils mangent {{cents}} têtes                                                       ->> cent
TEST: trois {{cent}} marches à gravir.
TEST: deux {{cents}} quatre tests lancés à chaque itération du processus nouveau
23672
23673
23674
23675
23676
23677
23678
23679

23680
23681
23682
23683
23684
23685
23686
23679
23680
23681
23682
23683
23684
23685

23686
23687
23688
23689
23690
23691
23692
23693







-
+








#### Groupes, regroupements, collections, etc.

## Pluriel des groupes
__gn_nombre_de_1m__
    nombre  [de|d’]  *WORD
        <<- /gn/ morph(\3, ":[NA].*:s", ":[ip]|>o(?:nde|xydation|r)/") and morph(<1, ":(?:G|[123][sp])|<start>|>,", ":[AD]")
        -3>> =suggPlur(\3)                                                                  && Ici, « nombre de » devrait probablement être suivi d’un pluriel.
        -3>> =suggPlur(\3)                                                                  && Ici, « nombre de » devrait probablement être suivi d’un pluriel.

TEST: Je connais nombre d’{{emmerdeur}} et aucun n’est pire que lui.


__gn_plein_de__
    pleins [de|d’]
        <<- /gn/ morph(<1, ":(?:V|R|[NAQ].*:s)|<start>|>,", ":(?:[NA].*:[pi]|V0e.*:[123]p)")
23838
23839
23840
23841
23842
23843
23844
23845

23846
23847
23848

23849
23850
23851
23852
23853
23854
23855
23856
23857
23858
23859
23860
23861
23862
23863
23864
23865
23866
23867
23868

23869
23870
23871
23872
23873
23874
23875
23845
23846
23847
23848
23849
23850
23851

23852
23853
23854

23855
23856
23857
23858
23859
23860
23861
23862
23863
23864
23865
23866
23867
23868
23869
23870
23871
23872
23873
23874

23875
23876
23877
23878
23879
23880
23881
23882







-
+


-
+



















-
+







TEST: L’entretien dure environ une {{demie heure}}.
TEST: les {{demies heures}} les plus longues de ma vie
TEST: Une demi-heure d’ennui profond.


__gn_demi_demie__
    [>année|>semaine|>journée|>heure|>minute|>seconde|>bouteille|>caisse|>cuillère|>page|>remorque|>tasse|>tonne] et [demi|demis|demies]
        <<- /gn/ -3>> demie                             && « Une et demie », « deux et demie », etc.
        <<- /gn/ -3>> demie                             && « Une et demie », « deux et demie », etc.

    [>millénaire|>siècle|>an|>jour|>degré|>kilo|>litre|>mètre|>wagon] et [demie|demis|demies]
        <<- /gn/ -3>> demi                              && « Un et demi », « deux et demi », etc.
        <<- /gn/ -3>> demi                              && « Un et demi », « deux et demi », etc.

    >demi [>douzaine|>cercle|>litre|>millénaire|>siècle|>journée|>heure|>sœur|>frère|>fin|>sel|>final|>centre|>million|>pension|>portion|>mot|>mort|>longueur|>page|>mesure|>écrémer|>tour|teinte+s]
        <<- /gn/ ->> demi-\2                            && Pour la moitié de “\2”, écrivez “demi-\2”.

TEST: nous avons rendez-vous dans une heure et {{demi}}
TEST: Deux mètre et {{demis}}.
TEST: achète une {{demie douzaine}} d’œufs.

__loc_à_demi__
    [à|a] [demis|demie|demies]
        <<- /loc/ ->> à demi                            && Pour la locution adverbiale signifiant “à moitié” ou “en partie”, écrivez “à demi”.|https://fr.wiktionary.org/wiki/%C3%A0_demi

TEST: Elle est {{à demie}} consciente de ce qui se passe en face de chez elle.
TEST: Il est {{à demis}} cuit.


# dévolu
__loc_leur_dévolu__
    >jeter leurs dévolus
        <<- /loc/ -2:3>> leur dévolu                    && Jeter son dévolu, leur dévolu : au singulier.
        <<- /loc/ -2:3>> leur dévolu                    && Jeter son dévolu, leur dévolu : au singulier.

TEST: Ces gens qui jettent {{leurs dévolus}} sur n’importe qui, c’est d’une indécence.


# extérieur/intérieur
__gn_intérieur_extérieur__
    [l’|d’|mon|ton|son|leur|notre|votre|cet|en] [intérieure|extérieure]
23883
23884
23885
23886
23887
23888
23889
23890

23891
23892
23893
23894
23895
23896
23897
23898
23899
23900
23901
23902
23903
23904
23905
23906
23907
23908
23909
23910

23911
23912
23913
23914
23915
23916
23917
23918

23919
23920
23921
23922
23923
23924
23925
23926

23927
23928
23929
23930

23931
23932
23933
23934
23935
23936
23937
23890
23891
23892
23893
23894
23895
23896

23897
23898
23899
23900
23901
23902
23903
23904
23905
23906
23907
23908
23909
23910
23911
23912
23913
23914
23915
23916

23917
23918
23919
23920
23921
23922
23923
23924

23925
23926
23927
23928
23929
23930
23931
23932

23933
23934
23935
23936

23937
23938
23939
23940
23941
23942
23943
23944







-
+



















-
+







-
+







-
+



-
+







TEST: un homme de l’{{intérieure}}.
TEST: des {{intérieures}} remarquables.


# en bons termes
__loc_en_bons_termes__
    en bon terme
        <<- /loc/ ->> en bons termes                    && En bons termes : cette locution est toujours au pluriel.
        <<- /loc/ ->> en bons termes                    && En bons termes : cette locution est toujours au pluriel.

TEST: nous sommes à présent {{en bon terme}}


# eux-mêmes, elles-mêmes
__loc_eux_elles_mêmes__
    eux-même
        <<- /loc/ ->> eux-mêmes                                     && Il manque un “s” à même.

    elles-même
        <<- /loc/ ->> elles-mêmes                                   && Il manque un “s” à même.

TEST: Elles ne sont plus {{elles-même}}.
TEST: Ils ne peuvent s’en prendre qu’à {{eux-même}}.


# par intermittence
__loc_par_intermittence__
    par intermittences
        <<- /loc/ ->> par intermittence                             && Locution : « par intermittence ».
        <<- /loc/ ->> par intermittence                             && Locution : « par intermittence ».

TEST: Elles ne viennent que {{par intermittences}}.


# par intervalles
__loc_par_intervalles__
    par intervalle
        <<- /loc/ ->> par intervalles                               && Locution : « par intervalles ».
        <<- /loc/ ->> par intervalles                               && Locution : « par intervalles ».

TEST: On va procéder {{par intervalle}}


# pied
__loc_pied__
    [>avoir|>perdre]  pieds
        <<- /loc/ -2>> pied                                         && Locution “\1 pied” : écrivez “pied” au singulier.
        <<- /loc/ -2>> pied                                         && Locution “avoir pied” ou “perdre pied” : écrivez “pied” au singulier.

    à pieds
        <<- /loc/ not before("(?i)\\b(?:lit|fauteuil|armoire|commode|guéridon|tabouret|chaise)s?\\b") and not morph(>1, ">sculpter/")
        -2>> pied                                                   && Locution “à pied” : écrivez “pied” au singulier.|https://fr.wiktionary.org/wiki/%C3%A0_pied
        -2>> pied                                                   && Locution “à pied” : écrivez “pied” au singulier.|https://fr.wiktionary.org/wiki/%C3%A0_pied

    [à|aux] >pied >levé
        <<- /loc/ ->> au pied levé                                  && Locution adverbiale invariable.

TEST: ils ont tout simplement perdu {{pieds}}
TEST: ils y sont allés à {{pieds}}.
TEST: Elles ont accompli l’impossible, et de surcroît {{aux pieds levés}}
23952
23953
23954
23955
23956
23957
23958
23959

23960
23961
23962
23963

23964
23965
23966
23967
23968
23969
23970
23959
23960
23961
23962
23963
23964
23965

23966
23967
23968
23969

23970
23971
23972
23973
23974
23975
23976
23977







-
+



-
+







TEST: nous ferons autant de tests que {{possibles}}, c’est une nécessité.
TEST: rabaissons autant de connards prétentieux que {{possibles}}…


# quelque
__loc_quelque_temps__
    quelques temps
        <<- /loc/ ->> quelque temps                                 && Quelque temps : un temps indéterminé. Ici, “quelque” est un adverbe (donc invariable).|https://fr.wiktionary.org/wiki/quelque_temps
        <<- /loc/ ->> quelque temps                                 && Quelque temps : un temps indéterminé. Ici, “quelque” est un adverbe (donc invariable).|https://fr.wiktionary.org/wiki/quelque_temps

__loc_en_quelque_sorte__
    en quelques sortes
        <<- /loc/ ->> en quelque sorte                              && En quelque sorte : locution invariable.|https://fr.wiktionary.org/wiki/en_quelque_sorte
        <<- /loc/ ->> en quelque sorte                              && En quelque sorte : locution invariable.|https://fr.wiktionary.org/wiki/en_quelque_sorte

TEST: Il y a {{quelques temps}} que nous nous connaissons.
TEST: Je suis en vacances, {{en quelques sortes}}.


# rafales
__loc_par_en_rafales__
24057
24058
24059
24060
24061
24062
24063
24064

24065
24066
24067
24068
24069
24070
24071
24064
24065
24066
24067
24068
24069
24070

24071
24072
24073
24074
24075
24076
24077
24078







-
+







TEST: On peut {{rires}}, non ?
TEST: Faire {{rires}}, c’est compliqué.


__gn_rien_de_adj__
    [<start>|,|(]       rien  [de|d’]  @:A.*:[pf]¬:[me]:[si]
    n’ ?[en|y]¿ >avoir  rien  [de|d’]  @:A.*:[pf]¬:[me]:[si]
        <<- /gn/ --1>> =suggMasSing(\-1)                            && Avec “rien de” l’adjectif suivant devrait être au masculin singulier. Exemple : il n’y a plus rien de naturel ici, tout est bétonné.
        <<- /gn/ --1>> =suggMasSing(\-1)                            && Avec “rien de”, l’adjectif suivant devrait être au masculin singulier. Exemple : il n’y a plus rien de naturel ici, tout est bétonné.

TEST: il n’y a plus rien de {{naturelle}} dans cette bouffe.            ->> naturel
TEST: rien d’{{interdites}} dans cette mesure                           ->> interdit



!!!! Adverbes après verbe                                                                         !!
24350
24351
24352
24353
24354
24355
24356
24357

24358
24359
24360

24361
24362
24363
24364
24365
24366
24367
24357
24358
24359
24360
24361
24362
24363

24364
24365
24366

24367
24368
24369
24370
24371
24372
24373
24374







-
+


-
+







    >être  rendu  compte
        <<- !2>>

    /_VCint_  rendu  compte
        <<- morphVC(\1, ">être/") !2>>

    >être  [rendue|rendus|rendues]  compte
        <<- /ppas/ -2>> rendu                                                                       && Accord erroné : dans l’expression “se rendre compte”, “rendu” est invariable.
        <<- /ppas/ -2>> rendu                                                                       && Accord erroné : dans l’expression “se rendre compte”, “rendu” est invariable.

    /_VCint_  [rendue|rendus|rendues]  compte
        <<- /ppas/ morphVC(\1, ">être/") -2>> rendu                                                 && Accord erroné : dans l’expression “se rendre compte”, “rendu” est invariable.
        <<- /ppas/ morphVC(\1, ">être/") -2>> rendu                                                 && Accord erroné : dans l’expression “se rendre compte”, “rendu” est invariable.

TEST: Elles se sont {{rendues}} compte
TEST: Elles se sont parfois {{rendues}} compte de leur erreur
TEST: se sont-ils {{rendus}} compte
TEST: se sont-elles réellement {{rendus}} compte
TEST: La puissance publique s’en est-elle rendu compte ?
TEST: Elle s’est rendu compte qu’il s’était moqué d’elle une fois de plus.
25178
25179
25180
25181
25182
25183
25184
25185

25186
25187
25188
25189

25190
25191
25192
25193
25194
25195
25196

25197
25198
25199
25200
25201
25202
25203

25204
25205
25206
25207

25208
25209
25210
25211
25212
25213
25214

25215
25216
25217
25218
25219
25220
25221

25222
25223
25224
25225

25226
25227
25228
25229
25230
25231
25232

25233
25234
25235
25236
25237
25238
25239
25185
25186
25187
25188
25189
25190
25191

25192
25193
25194
25195

25196
25197
25198
25199
25200
25201
25202

25203
25204
25205
25206
25207
25208
25209

25210
25211
25212
25213

25214
25215
25216
25217
25218
25219
25220

25221
25222
25223
25224
25225
25226
25227

25228
25229
25230
25231

25232
25233
25234
25235
25236
25237
25238

25239
25240
25241
25242
25243
25244
25245
25246







-
+



-
+






-
+






-
+



-
+






-
+






-
+



-
+






-
+








__infi_laisser_avec_pronom__
    [me|m’|te|t’|lui|nous|vous|se|s’]  >laisser  *WORD  [le|la|l’|les|un|une|ce|cet|cette|ces|mon|ton|son|ma|ta|sa|mes|tes|ses|notre|votre|nos|vos|leur|leurs|quelques|chaque]
    [me|m’|te|t’|lui|nous|vous|se|s’]  >laisser  *WORD  [<end>|,|)]
    [me|m’|te|t’|lui|nous|vous|se|s’]  >laisser  *WORD  [dans|avec]
    [me|m’|te|t’|lui|nous|vous|se|s’]  >laisser  *WORD  [autant|que|qu’|lorsque|quand|combien|comment|car|quoi|quoique|quoiqu’|puisque|puisqu’]
        <<- /infi/ morph(\3, ":V1.*:(?:Q|Ip.*:2p|Iq.*:[123]s)", ">désemparer/.*:Q")
        -3>> =suggVerbInfi(\3)                                                          && Après “laisser”, le verbe doit être à l’infinitif. Exemples : Laisser faire, laisser aller, laisser venir, etc.
        -3>> =suggVerbInfi(\3)                                                          && Après “laisser”, le verbe doit être à l’infinitif. Exemples : Laisser faire, laisser aller, laisser venir, etc.

    [me|m’|te|t’|lui|nous|vous|se|s’]  >laisser  [le|la|l’|les|leur]                                       *WORD
        <<- /infi/ morph(\-1, ":V1.*:(?:Q|Ip.*:2p|Iq.*:[123]s)", ">désemparer/.*:Q|:N")
        --1>> =suggVerbInfi(\-1)                                                        && Après “laisser”, le verbe doit être à l’infinitif. Exemples : Laisser faire, laisser aller, laisser venir, etc.
        --1>> =suggVerbInfi(\-1)                                                        && Après “laisser”, le verbe doit être à l’infinitif. Exemples : Laisser faire, laisser aller, laisser venir, etc.

    [me|m’|te|t’|lui|nous|vous|se|s’]  >laisser  [en|me|m’|te|t’|se|s’|nous|vous|lui|y]                    *WORD
    [me|m’|te|t’|lui|nous|vous|se|s’]  >laisser  [me|m’|te|t’|se|s’|nous|vous] [le|la|l’|les|en|y]         *WORD
    [me|m’|te|t’|lui|nous|vous|se|s’]  >laisser  [le|la|l’|les]                [lui|leur|en|y][nous|vous]  *WORD
    [me|m’|te|t’|lui|nous|vous|se|s’]  >laisser  [lui|leur|y]                  en                          *WORD
        <<- /infi/ morph(\-1, ":V1.*:(?:Q|Ip.*:2p|Iq.*:[123]s)", ">désemparer/.*:Q")
        --1>> =suggVerbInfi(\-1)                                                        && Après “laisser”, le verbe doit être à l’infinitif. Exemples : Laisser faire, laisser aller, laisser venir, etc.
        --1>> =suggVerbInfi(\-1)                                                        && Après “laisser”, le verbe doit être à l’infinitif. Exemples : Laisser faire, laisser aller, laisser venir, etc.

    [le|la|l’|les|leur]  >laisser  *WORD  [le|la|l’|les|un|une|ce|cet|cette|ces|mon|ton|son|ma|ta|sa|mes|tes|ses|notre|votre|nos|vos|leur|leurs|quelques|chaque]
    [le|la|l’|les|leur]  >laisser  *WORD  [<end>|,|)]
    [le|la|l’|les|leur]  >laisser  *WORD  [dans|avec]
    [le|la|l’|les|leur]  >laisser  *WORD  [autant|que|qu’|lorsque|quand|combien|comment|car|quoi|quoique|quoiqu’|puisque|puisqu’]
        <<- /infi/ not morph(\2, ":N") and morph(\3, ":V1.*:(?:Q|Ip.*:2p)", ">désemparer/.*:Q")
        -3>> =suggVerbInfi(\3)                                                          && Après “laisser”, le verbe doit être à l’infinitif. Exemples : Laisser faire, laisser aller, laisser venir, etc.
        -3>> =suggVerbInfi(\3)                                                          && Après “laisser”, le verbe doit être à l’infinitif. Exemples : Laisser faire, laisser aller, laisser venir, etc.

    [le|la|l’|les|leur]  >laisser  [le|la|l’|les|leur]                                       *WORD
        <<- /infi/ not morph(\2, ":N") and morph(\-1, ":V1.*:(?:Q|Ip.*:2p|Iq.*:[123]s)", ">désemparer/.*:Q|:N")
        --1>> =suggVerbInfi(\-1)                                                        && Après “laisser”, le verbe doit être à l’infinitif. Exemples : Laisser faire, laisser aller, laisser venir, etc.
        --1>> =suggVerbInfi(\-1)                                                        && Après “laisser”, le verbe doit être à l’infinitif. Exemples : Laisser faire, laisser aller, laisser venir, etc.

    [le|la|l’|les|leur]  >laisser  [en|me|m’|te|t’|se|s’|nous|vous|lui|y]                    *WORD
    [le|la|l’|les|leur]  >laisser  [me|m’|te|t’|se|s’|nous|vous] [le|la|l’|les|en|y]         *WORD
    [le|la|l’|les|leur]  >laisser  [le|la|l’|les]                [lui|leur|en|y][nous|vous]  *WORD
    [le|la|l’|les|leur]  >laisser  [lui|leur|y]                  en                          *WORD
        <<- /infi/ not morph(\2, ":N") and morph(\-1, ":V1.*:(?:Q|Ip.*:2p|Iq.*:[123]s)", ">désemparer/.*:Q")
        --1>> =suggVerbInfi(\-1)                                                        && Après “laisser”, le verbe doit être à l’infinitif. Exemples : Laisser faire, laisser aller, laisser venir, etc.
        --1>> =suggVerbInfi(\-1)                                                        && Après “laisser”, le verbe doit être à l’infinitif. Exemples : Laisser faire, laisser aller, laisser venir, etc.

    [/-le|/-la|/-les|/-moi|/-toi|/-lui|/-nous|/-vous|/-leur]  *WORD  [le|la|l’|les|un|une|ce|cet|cette|ces|mon|ton|son|ma|ta|sa|mes|tes|ses|notre|votre|nos|vos|leur|leurs|quelques|chaque]
    [/-le|/-la|/-les|/-moi|/-toi|/-lui|/-nous|/-vous|/-leur]  *WORD  [<end>|,|)]
    [/-le|/-la|/-les|/-moi|/-toi|/-lui|/-nous|/-vous|/-leur]  *WORD  [dans|avec]
    [/-le|/-la|/-les|/-moi|/-toi|/-lui|/-nous|/-vous|/-leur]  *WORD  [autant|que|qu’|lorsque|quand|combien|comment|car|quoi|quoique|quoiqu’|puisque|puisqu’]
        <<- /infi/ morphVC(\1, ">laisser") and (morph(\2, ":V1.*:(?:Q|Ip.*:2[sp])", ">désemparer/.*:Q") or (not morph(<1, ":D") and morph(\-1, ":V1.*:Iq.*:[123]s", ">désemparer/.*:Q")))
        -2>> =suggVerbInfi(\2)                                                          && Après “laisser”, le verbe doit être à l’infinitif. Exemples : Laisser faire, laisser aller, laisser venir, etc.
        -2>> =suggVerbInfi(\2)                                                          && Après “laisser”, le verbe doit être à l’infinitif. Exemples : Laisser faire, laisser aller, laisser venir, etc.

    [/-le|/-la|/-les|/-moi|/-toi|/-lui|/-nous|/-vous|/-leur]  [le|la|l’|les|leur]                                       *WORD
        <<- /infi/ morphVC(\1, ">laisser") and (morph(\-1, ":V1.*:(?:Q|Ip.*:2[sp])", ">désemparer/.*:Q|:N") or (not morph(<1, ":D") and morph(\-1, ":V1.*:Iq.*:[123]s", ">désemparer/.*:Q|:N")))
        --1>> =suggVerbInfi(\-1)                                                        && Après “laisser”, le verbe doit être à l’infinitif. Exemples : Laisser faire, laisser aller, laisser venir, etc.
        --1>> =suggVerbInfi(\-1)                                                        && Après “laisser”, le verbe doit être à l’infinitif. Exemples : Laisser faire, laisser aller, laisser venir, etc.

    [/-le|/-la|/-les|/-moi|/-toi|/-lui|/-nous|/-vous|/-leur]  [en|me|m’|te|t’|se|s’|nous|vous|lui|y]                    *WORD
    [/-le|/-la|/-les|/-moi|/-toi|/-lui|/-nous|/-vous|/-leur]  [me|m’|te|t’|se|s’|nous|vous] [le|la|l’|les|en|y]         *WORD
    [/-le|/-la|/-les|/-moi|/-toi|/-lui|/-nous|/-vous|/-leur]  [le|la|l’|les]                [lui|leur|en|y][nous|vous]  *WORD
    [/-le|/-la|/-les|/-moi|/-toi|/-lui|/-nous|/-vous|/-leur]  [lui|leur|y]                  en                          *WORD
        <<- /infi/ morphVC(\1, ">laisser") and (morph(\-1, ":V1.*:(?:Q|Ip.*:2[sp])", ">désemparer/.*:Q") or (not morph(<1, ":D") and morph(\-1, ":V1.*:Iq.*:[123]s", ">désemparer/.*:Q")))
        --1>> =suggVerbInfi(\-1)                                                        && Après “laisser”, le verbe doit être à l’infinitif. Exemples : Laisser faire, laisser aller, laisser venir, etc.
        --1>> =suggVerbInfi(\-1)                                                        && Après “laisser”, le verbe doit être à l’infinitif. Exemples : Laisser faire, laisser aller, laisser venir, etc.

TEST: Il se laisse trop {{allé}}, ce petit.                                                         ->> aller
TEST: elle me laisse vous {{aidés}}.                                                                ->> aider
TEST: nous vous laissons la {{dégorgée}}                                                            ->> dégorger
TEST: Nous nous laissions {{allé}} dans le plus complet abandon.                                    ->> aller
TEST: Je le laissais {{mangé}} autant qu’il le voulut.                                              ->> manger
TEST: on les laisse les {{chantés}} à leur guise                                                    ->> chanter
25380
25381
25382
25383
25384
25385
25386
25387

25388
25389

25390
25391

25392
25393
25394
25395
25396
25397
25398
25387
25388
25389
25390
25391
25392
25393

25394
25395

25396
25397

25398
25399
25400
25401
25402
25403
25404
25405







-
+

-
+

-
+







        && Confusion probable. Si « \2 \3 » est bien le sujet de l’action « \5 », vous confondez la préposition « à » avec « a » (forme conjuguée de « avoir ») et l’infinitif avec le participe passé (avec lesquels écrire un passé composé). Exemple : « il a réparé l’une des machines à réparer ».
        <<- /conf/ __also__ -5>> =suggVerbPpas(\5, ":m:s")
        && Confusion probable. Si « \2 \3 » est bien le sujet de l’action « \5 », vous confondez la préposition « à » avec « a » (forme conjuguée de « avoir ») et l’infinitif avec le participe passé (avec lesquels écrire un passé composé). Exemple : « il a réparé l’une des machines à réparer ».

    [<start>|,|dont|que|qu’|lorsque|lorsqu’|puisque|puisqu’|quoique|quoiqu’|quand|auquel|auxquels|auxquelles|lequel|laquelle|lesquels|lesquelles|duquel|desquels|desquelles]
        ||  @:D.*:s  @:[NA].*:[si]  [lui|nous|vous]  à  @:V1.*:Y
        <<- /conf/ space_after(\5, 1, 1) -5:6>> ="a "+suggVerbPpas(\6, ":m:s")
        && Confusion probable. Si « \3 \4 » est bien le sujet de l’action « \6 », vous confondez la préposition « à » avec « a » (forme conjuguée de « avoir ») et l’infinitif avec le participe passé (avec lesquels écrire un passé composé). Exemple : « il a réparé l’une des machines à réparer ».
        && Confusion probable. Si « \2 \3 » est bien le sujet de l’action « \6 », vous confondez la préposition « à » avec « a » (forme conjuguée de « avoir ») et l’infinitif avec le participe passé (avec lesquels écrire un passé composé). Exemple : « il a réparé l’une des machines à réparer ».
        <<- /conf/ __else__ -5>> a
        && Confusion probable. Si « \3 \4 » est bien le sujet de l’action « \6 », vous confondez la préposition « à » avec « a » (forme conjuguée de « avoir ») et l’infinitif avec le participe passé (avec lesquels écrire un passé composé). Exemple : « il a réparé l’une des machines à réparer ».
        && Confusion probable. Si « \2 \3 » est bien le sujet de l’action « \6 », vous confondez la préposition « à » avec « a » (forme conjuguée de « avoir ») et l’infinitif avec le participe passé (avec lesquels écrire un passé composé). Exemple : « il a réparé l’une des machines à réparer ».
        <<- /conf/ __also__ -6>> =suggVerbPpas(\6, ":m:s")
        && Confusion probable. Si « \3 \4 » est bien le sujet de l’action « \6 », vous confondez la préposition « à » avec « a » (forme conjuguée de « avoir ») et l’infinitif avec le participe passé (avec lesquels écrire un passé composé). Exemple : « il a réparé l’une des machines à réparer ».
        && Confusion probable. Si « \2 \3 » est bien le sujet de l’action « \6 », vous confondez la préposition « à » avec « a » (forme conjuguée de « avoir ») et l’infinitif avec le participe passé (avec lesquels écrire un passé composé). Exemple : « il a réparé l’une des machines à réparer ».

TEST: quand Maria {{à parler}}, il a fallu ronger son frein                                 ->> a parlé
TEST: lorsque Siegfried {{à}} lentement {{avancer}}, ils ont ri, un peu                     ->> a|||avancé
TEST: Pauline nous {{à mentionner}} dans son document                                       ->> a mentionné
TEST: Élise lui {{à}} sèchement {{parler}} de leur incompétence                             ->> a|||parlé
TEST: lorsque le ciment {{à sécher}}, on peut poser le ragréage                             ->> a séché
TEST: puisque cet individu {{à}} “{{échouer}}”, c’est à nous de jouer                       ->> a|||échoué
26259
26260
26261
26262
26263
26264
26265
26266

26267
26268

26269
26270
26271
26272
26273
26274
26275
26276
26277
26278
26279
26280
26281
26282
26283
26284
26285
26286

26287
26288

26289
26290
26291
26292
26293
26294
26295
26266
26267
26268
26269
26270
26271
26272

26273
26274

26275
26276
26277
26278
26279
26280
26281
26282
26283
26284
26285
26286
26287
26288
26289
26290
26291
26292

26293
26294

26295
26296
26297
26298
26299
26300
26301
26302







-
+

-
+

















-
+

-
+







!!!! OCR                                                                                          !!

# Participes passés
__ocr_être_participe_passé__
    >être  ~..es?$
        <<- /ocr/ not value(\1, "|êtres|") >>>
        <<- /ocr/ \2.endswith("e") and morph(\2, ":V1.*:Ip.*:[13]s", ":[GMA]") and not before("(?i)\\belle +(?:ne +|n’|)$")
        -2>> =suggVerbPpas(\2, ":m:s")                                                              && Erreur de numérisation ?
        -2>> =suggVerbPpas(\2, ":m:s")                                                              && Erreur de numérisation ?
        <<- /ocr/ __else__ and \2.endswith("s") and morph(\2, ":V1.*:Ip.*:2s", ":[GMA]") and not before("(?i)\\belles +(?:ne +|n’|)$")
        -2>> =suggVerbPpas(\2, ":m:p")                                                              && Erreur de numérisation ?
        -2>> =suggVerbPpas(\2, ":m:p")                                                              && Erreur de numérisation ?

TEST: __ocr__ vous serez {{couche}} en terre.
TEST: __ocr__ nous serons {{presses}} de monter à bord de ce train-ci.
TEST: __ocr__ Elle était toujours persuadée que B. serait {{acquitte}}
TEST: __ocr__ Alors il lui est {{remonte}} dessus
TEST: __ocr__ il n’était pas le seul à être {{remonte}} contre eux.
TEST: __ocr__ par terre et je suis {{retourne}} sur la tombe.
TEST: __ocr__ il était sublime.
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?)


__ocr_avoir_participe_passé__
    >avoir  ~..es?$
        <<- /ocr/ not value(\1, "|avoirs|") >>>
        <<- /ocr/ \2.endswith("e") and morph(\2, ":V1.*:Ip.*:[13]s", ":[GM]|>envie/")
        -2>> =suggVerbPpas(\2, ":m:s")                                                              && Erreur de numérisation ?
        -2>> =suggVerbPpas(\2, ":m:s")                                                              && Erreur de numérisation ?
        <<- /ocr/ __else__ and \2.endswith("s") and morph(\2, ":V1.*:Ip.*:2s", ":[GM]")
        -2>> =suggVerbPpas(\2, ":m:p")                                                              && Erreur de numérisation ?
        -2>> =suggVerbPpas(\2, ":m:p")                                                              && Erreur de numérisation ?

TEST: __ocr__ je reconnais que j’ai pas {{traîne}}
TEST: __ocr__ elle est fauchée et a {{emprunte}} de l’argent
TEST: __ocr__ quel héros d’avoir {{affronte}} ces salopards de la police
TEST: __ocr__ tant avoir {{creuse}} vers le haut.
TEST: __ocr__ tu devrais le savoir, d’avoir {{affrontes}} ces gens…
TEST: __ocr__ elle avait envie de s’en sortir enfin.
26325
26326
26327
26328
26329
26330
26331
26332

26333
26334
26335
26336
26337
26338
26339
26332
26333
26334
26335
26336
26337
26338

26339
26340
26341
26342
26343
26344
26345
26346







-
+







TEST: une chambre {{ou}} nous n’avons rien trouvé


## Accord et incohérences
__ppas_sont_adj__
    sont  *WORD
        <<- /ppas/ morph(\2, ":V[123]", ":(?:N|A|Q|W|G|3p)") and not tag_before(\1, "_ceque_")
        -2>> =suggVerbPpas(\2, ":m:p")                      && Incohérence : “\2” n’est pas un participe passé.
        -2>> =suggVerbPpas(\2, ":m:p")                      && Incohérence : “\2” n’est pas un participe passé.

TEST: après avoir mis à jour sont {{profile}}.
TEST: maintenir en confinement certaines personnes sous prétexte qu’elles sont à risques serait une mesure inconstitutionnelle et discriminatoire.



!!
26481
26482
26483
26484
26485
26486
26487
26488

26489
26490
26491
26492
26493

26494
26495
26496
26497
26498
26499
26500
26488
26489
26490
26491
26492
26493
26494

26495
26496
26497
26498
26499

26500
26501
26502
26503
26504
26505
26506
26507







-
+




-
+








TEST: elles ne s’y étaient pas {{donnée}}.
TEST: sans fin elles se sont succédé


__ppas_se_être__
    [me|m’|te|se|s’]  ?[y|en]¿  >être  *WORD
        <<- /ppas/ morph(\-1, ":(?:Y|[123][sp])", ":[QAG]") --1>> =suggVerbPpas(\-1)                && Incohérence. Après « s’être », le verbe doit être un participe passé.
        <<- /ppas/ morph(\-1, ":(?:Y|[123][sp])", ":[QAG]") --1>> =suggVerbPpas(\-1)                && Incohérence. Après « s’être », le verbe doit être un participe passé.
        <<- /ppas/ __else__ and morph(\-2, ":[123]s") and morph(\-1, ":Q.*:p") and not tag_before(\1, "_que_") and not before("(?i)\\bon (?:ne |)$")
        --1>> =suggSing(\-1)                                                                        && Le participe passé devrait être au singulier.

    tu  t’  ?[y|en]¿  [es|étais|seras|serais|fus|fusses]  *WORD
        <<- /ppas/ morph(\-1, ":(?:Y|[123][sp])", ":[QAG]") --1>> =suggVerbPpas(\-1)                && Incohérence. Après « s’être », le verbe doit être un participe passé.
        <<- /ppas/ morph(\-1, ":(?:Y|[123][sp])", ":[QAG]") --1>> =suggVerbPpas(\-1)                && Incohérence. Après « s’être », le verbe doit être un participe passé.

TEST: s’être toujours {{donner}} le mot.
TEST: je suis venu et me suis totalement {{donnés}} à cette œuvre
TEST: c’est de ce qui s’est {{passe}}.
TEST: s’était toujours {{passe}} comme ça avec elle
TEST: s’est {{approche}} de la penderie
TEST: terrorisant l’animal qui s’était {{cabre}}.
26554
26555
26556
26557
26558
26559
26560
26561

26562
26563
26564
26565
26566
26567
26568
26569
26570
26571

26572
26573
26574

26575
26576
26577
26578
26579
26580
26581
26561
26562
26563
26564
26565
26566
26567

26568
26569
26570
26571
26572
26573
26574
26575
26576
26577

26578
26579
26580

26581
26582
26583
26584
26585
26586
26587
26588







-
+









-
+


-
+







TEST: nous nous sommes faits plus grands que nous n’étions réellement.


!!!! Participes passés: se laisser +adjectif                                                      !!

__ppas_pronom_laisser_adj__
    [me|m’|te|t’|le|la|l’]  >laisser  @:A.*:p¬:(?:[YG]|[AQ].*:[is])
        <<- /ppas/ -3>> =suggSing(\3)                                       && Accord avec “\1” : “\3” devrait être au singulier.
        <<- /ppas/ -3>> =suggSing(\3)                                       && Accord avec “\1” : “\3” devrait être au singulier.

TEST: Elle te laisse {{épuisés}} par la tâche.
TEST: Ils la laissèrent {{malades}}.
TEST: Ils la laissent prendre le train.
TEST: Elle te laisse finir le travail.
TEST: Je me laisse de quoi finir.
TEST: Il te laisse trois jours de délai.

    les  >laisser  @:[AQ].*:s¬:(?:[YG]|[AQ].*:[ip])
        <<- /ppas/ -3>> =suggPlur(\3)                                       && Accord avec “\1” : “\3” devrait être au singulier.
        <<- /ppas/ -3>> =suggPlur(\3)                                       && Accord avec “\1” : “\3” devrait être au singulier.

    nous  >laisser  @:[AQ].*:s¬:(?:[YG]|[AQ].*:[ip])
        <<- /ppas/ not \2.endswith("ons") -3>> =suggPlur(\3)                && Accord avec “\1” : “\3” devrait être au singulier.
        <<- /ppas/ not \2.endswith("ons") -3>> =suggPlur(\3)                && Accord avec “\1” : “\3” devrait être au singulier.

TEST: je les laisse {{indifférent}}.
TEST: elle nous laissera {{perdu}} dans nos délires.
TEST: elle doit nous laisser tout à fait {{tranquille}}
TEST: je les laisse indifférents.
TEST: tu nous laisses indifférentes.
TEST: ils nous laisseront étourdis.
26620
26621
26622
26623
26624
26625
26626
26627

26628
26629
26630
26631

26632
26633
26634
26635

26636
26637
26638

26639
26640
26641

26642
26643
26644

26645
26646
26647

26648
26649
26650

26651
26652
26653

26654
26655
26656
26657
26658
26659
26660
26627
26628
26629
26630
26631
26632
26633

26634
26635
26636
26637

26638
26639
26640
26641

26642
26643
26644

26645
26646
26647

26648
26649
26650

26651
26652
26653

26654
26655
26656

26657
26658
26659

26660
26661
26662
26663
26664
26665
26666
26667







-
+



-
+



-
+


-
+


-
+


-
+


-
+


-
+


-
+







__ppas_je_tu_verbe_état__
    [je|j’|tu] ?[ne|n’]¿ ?[en|y]¿          /_VE_                                                   @:[NAQ].*:p¬:[GWYsi]
    [je|j’|tu] ?[ne|n’]¿ ?[en|y]¿          /_LVED_ ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ /_LVEF_     @:[NAQ].*:p¬:[GWYsi]
    [je|j’]    ?[ne|n’]¿ [me|m’] ?[en|y]¿  /_VEP_                                                  @:[NAQ].*:p¬:[GWYsi]
    tu         ?[ne|n’]¿ [te|t’] ?[en|y]¿  /_VEP_                                                  @:[NAQ].*:p¬:[GWYsi]
    [je|j’]    ?[ne|n’]¿ [me|m’] ?[en|y]¿  /_LVEPD_ ?/_LVEP_¿ ?/_LVEP_¿ ?/_LVEP_¿ /_LVEPF_         @:[NAQ].*:p¬:[GWYsi]
    tu         ?[ne|n’]¿ [te|t’] ?[en|y]¿  /_LVEPD_ ?/_LVEP_¿ ?/_LVEP_¿ ?/_LVEP_¿ /_LVEPF_         @:[NAQ].*:p¬:[GWYsi]
        <<- /ppas/ not tag(<1, "_ceque_") --1>> =suggSing(\-1)                                  && Accord avec le sujet “\1” : “\-1” devrait être au singulier.
        <<- /ppas/ not tag(<1, "_ceque_") --1>> =suggSing(\-1)                                  && Accord avec le sujet “\1” : “\-1” devrait être au singulier.

    [/-je|/-tu]  @:(?:[123][sp]|Y|[NAQ].*:p)¬:[GWsi]
        <<- /ppas/ morphVC(\1, ">(?:être|devenir|redevenir)/")
        -2>> =suggSing(\2)                                              && Accord avec “\1” : “\2” devrait être au singulier.
        -2>> =suggSing(\2)                                              && Accord avec “\1” : “\2” devrait être au singulier.

    [/-je|/-tu]  @:(?:[123][sp]|[NAQ].*:p)¬:[GWYsi]
        <<- /ppas/ morphVC(\1, ">(?:sembler|rester|demeurer|para[îi]tre)/")
        -2>> =suggSing(\2)                                              && Accord avec “\1” : “\2” devrait être au singulier.
        -2>> =suggSing(\2)                                              && Accord avec “\1” : “\2” devrait être au singulier.

    /-je  ?/_LVEI_¿ ?/_LVEI_¿ ?/_LVEI_¿ ?/_LVEI_¿ /_LVEIF_     @:[NAQ].*:p¬:[GWYsi]
        <<- /ppas/ --1>> =suggSing(\-1)                                 && Accord avec le sujet “je” : “\-1” devrait être au singulier.
        <<- /ppas/ --1>> =suggSing(\-1)                                 && Accord avec le sujet “je” : “\-1” devrait être au singulier.

    /-tu  ?/_LVEI_¿ ?/_LVEI_¿ ?/_LVEI_¿ ?/_LVEI_¿ /_LVEIF_     @:[NAQ].*:p¬:[GWYsi]
        <<- /ppas/ --1>> =suggSing(\-1)                                 && Accord avec le sujet “tu” : “\-1” devrait être au singulier.
        <<- /ppas/ --1>> =suggSing(\-1)                                 && Accord avec le sujet “tu” : “\-1” devrait être au singulier.

    [me|m’]  /-je  @:[NAQ].*:p¬:[GWYsi]
        <<- /ppas/ tag(\2, "_VEPI_") --1>> =suggSing(\-1)               && Accord avec le sujet “je” : “\-1” devrait être au singulier.
        <<- /ppas/ tag(\2, "_VEPI_") --1>> =suggSing(\-1)               && Accord avec le sujet “je” : “\-1” devrait être au singulier.

    [te|t’]  /-tu  @:[NAQ].*:p¬:[GWYsi]
        <<- /ppas/ tag(\2, "_VEPI_") --1>> =suggSing(\-1)               && Accord avec le sujet “tu” : “\-1” devrait être au singulier.
        <<- /ppas/ tag(\2, "_VEPI_") --1>> =suggSing(\-1)               && Accord avec le sujet “tu” : “\-1” devrait être au singulier.

    [me|m’]  /-je  ?/_LVEPI_¿ ?/_LVEPI_¿ ?/_LVEPI_¿ ?/_LVEPI_¿ /_LVEPIF_  @:[NAQ].*:p¬:[GWYsi]
        <<- /ppas/ tag(\2, "_LVEPID_") --1>> =suggSing(\-1)             && Accord avec le sujet “je” : “\-1” devrait être au singulier.
        <<- /ppas/ tag(\2, "_LVEPID_") --1>> =suggSing(\-1)             && Accord avec le sujet “je” : “\-1” devrait être au singulier.

    [te|t’]  /-tu  ?/_LVEPI_¿ ?/_LVEPI_¿ ?/_LVEPI_¿ ?/_LVEPI_¿ /_LVEPIF_  @:[NAQ].*:p¬:[GWYsi]
        <<- /ppas/ tag(\2, "_LVEPID_") --1>> =suggSing(\-1)             && Accord avec le sujet “tu” : “\-1” devrait être au singulier.
        <<- /ppas/ tag(\2, "_LVEPID_") --1>> =suggSing(\-1)             && Accord avec le sujet “tu” : “\-1” devrait être au singulier.

TEST: j’étais {{perdus}}                                                          ->> perdu
TEST: j’aurais été {{perdus}} sans toi                                            ->> perdu
TEST: je n’étais pas {{perdus}}                                                   ->> perdu
TEST: Je suis {{contents}}.                                                       ->> content
TEST: J’en ai été {{contents}}.                                                   ->> content
TEST: Je parais {{contents}}.                                                     ->> content
26720
26721
26722
26723
26724
26725
26726
26727

26728
26729
26730
26731

26732
26733
26734
26735

26736
26737
26738
26739

26740
26741
26742
26743

26744
26745
26746
26747

26748
26749
26750
26751

26752
26753

26754
26755
26756
26757
26758
26759
26760

26761
26762
26763
26764
26765
26766

26767
26768
26769
26770
26771
26772
26773
26774

26775
26776
26777
26778
26779
26780

26781
26782
26783
26784
26785
26786

26787
26788
26789
26790
26791
26792
26793

26794
26795
26796
26797
26798
26799
26800
26727
26728
26729
26730
26731
26732
26733

26734
26735
26736
26737

26738
26739
26740
26741

26742
26743
26744
26745

26746
26747
26748
26749

26750
26751
26752
26753

26754
26755
26756
26757

26758
26759

26760
26761
26762
26763
26764
26765
26766

26767
26768
26769
26770
26771
26772

26773
26774
26775
26776
26777
26778
26779
26780

26781
26782
26783
26784
26785
26786

26787
26788
26789
26790
26791
26792

26793
26794
26795
26796
26797
26798
26799

26800
26801
26802
26803
26804
26805
26806
26807







-
+



-
+



-
+



-
+



-
+



-
+



-
+

-
+






-
+





-
+







-
+





-
+





-
+






-
+







        <<- !4>>

    ([il|ce|c’|ç’|quiconque]) ?[ne|n’]¿ ?[en|y]¿          (/_VE_)                                                @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
    ([il|ce|c’|ç’|quiconque]) ?[ne|n’]¿ ?[en|y]¿          (/_LVED_) ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ /_LVEF_  @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
    ([il|quiconque])          ?[ne|n’]¿ [se|s’] ?[en|y]¿  (/_VEP_)                                               @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
    ([il|quiconque])          ?[ne|n’]¿ [se|s’] ?[en|y]¿  (/_LVEPD_) ?/_LVEP_¿ ?/_LVEP_¿ ?/_LVEP_¿ /_LVEPF_      @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
        <<- /ppas/ morph(\2, ":(?:[123]s|P)") and not tag(<1, "_ceque_")
        --1>> =suggMasSing(\-1)                                                                     && Accord avec le sujet “\1” : “\-1” devrait être au masculin singulier.
        --1>> =suggMasSing(\-1)                                                                     && Accord avec le sujet “\1” : “\-1” devrait être au masculin singulier.

    /-il  @:(?:[123][sp]|Y|[NAQ].*:[pf])¬:(?:G|W|[me]:[si])
        <<- /ppas/ morphVC(\1, ">(?:être|devenir|redevenir)/.*:[123]s") and not value(\-1, "|légion|pléthore|néant|réalité|question|")
        -2>> =suggMasSing(\2)                                                                       && Accord avec le sujet “il” : “\2” devrait être au masculin singulier.
        -2>> =suggMasSing(\2)                                                                       && Accord avec le sujet “il” : “\2” devrait être au masculin singulier.

    /-il  @:(?:[123][sp]|[NAQ].*:[pf])¬:(?:G|W|Y|[me]:[si])
        <<- /ppas/ morphVC(\1, ">(?:sembler|rester|demeurer|para[îi]tre)/.*:[123]s") and not value(\-1, "|légion|pléthore|néant|réalité|question|")
        -2>> =suggMasSing(\2)                                                                       && Accord avec le sujet “il” : “\2” devrait être au masculin singulier.
        -2>> =suggMasSing(\2)                                                                       && Accord avec le sujet “il” : “\2” devrait être au masculin singulier.

    /-il  ?/_LVEI_¿ ?/_LVEI_¿ ?/_LVEI_¿ ?/_LVEI_¿ /_LVEIF_  @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
        <<- /ppas/ tag(\1, "_LVEID_") and morphVC(\1, ":3s") and not value(\-1, "|légion|pléthore|néant|réalité|question|")
        --1>> =suggMasSing(\-1)                                                                     && Accord avec le sujet “il” : “\-1” devrait être au masculin singulier.
        --1>> =suggMasSing(\-1)                                                                     && Accord avec le sujet “il” : “\-1” devrait être au masculin singulier.

    [se|s’]  /-il  @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
        <<- /ppas/ tag(\2, "_VEPI_") and morphVC(\2, ":3s") and not value(\-1, "|légion|pléthore|néant|réalité|question|")
        --1>> =suggMasSing(\-1)                                                                     && Accord avec le sujet “il” : “\-1” devrait être au masculin singulier.
        --1>> =suggMasSing(\-1)                                                                     && Accord avec le sujet “il” : “\-1” devrait être au masculin singulier.

    [se|s’]  /-il  ?/_LVEPI_¿ ?/_LVEPI_¿ ?/_LVEPI_¿ ?/_LVEPI_¿ /_LVEPIF_  @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
        <<- /ppas/ tag(\2, "_LVEPID_") and morphVC(\2, ":3s") and not value(\-1, "|légion|pléthore|néant|réalité|question|")
        --1>> =suggMasSing(\-1)                                                                     && Accord avec le sujet “il” : “\-1” devrait être au masculin singulier.
        --1>> =suggMasSing(\-1)                                                                     && Accord avec le sujet “il” : “\-1” devrait être au masculin singulier.

    /-ce  *WORD
        <<- /ppas/ morphVC(\1, ":V0e.*:3s") and morph(\2, ":(?:[123][sp]|[AQ].*:[pf])", ":(?:G|W|Y|[me]:[si])")
        -2>> =suggMasSing(\2)                                           && Accord avec le sujet “\1” : “\2” devrait être au masculin singulier.
        -2>> =suggMasSing(\2)                                           && Accord avec le sujet “\1” : “\2” devrait être au masculin singulier.
        <<- /ppas/ __else__ and morphVC(\1, ":V0e.*:3p") and morph(\2, ":(?:[123][sp]|[AQ].*:[sf])", ":(?:G|W|Y|[me]:[pi])")
        -2>> =suggMasPlur(\2)                                           && Accord avec le sujet “\1” : “\2” devrait être au masculin pluriel.
        -2>> =suggMasPlur(\2)                                           && Accord avec le sujet “\1” : “\2” devrait être au masculin pluriel.

    ([ça|ceci|cela|celui-ci|celui-là|aucun|chacun]) ?[ne|n’]¿ ?[en|y]¿          (/_VE_)                                                 @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
    ([ça|ceci|cela|celui-ci|celui-là|aucun|chacun]) ?[ne|n’]¿ ?[en|y]¿          (/_LVED_) ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ /_LVEF_   @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
    ([ça|ceci|cela|celui-ci|celui-là|aucun|chacun]) ?[ne|n’]¿ [se|s’] ?[en|y]¿  (/_VEP_)                                                @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
    ([ça|ceci|cela|celui-ci|celui-là|aucun|chacun]) ?[ne|n’]¿ [se|s’] ?[en|y]¿  (/_LVEPD_) ?/_LVEP_¿ ?/_LVEP_¿ ?/_LVEP_¿ /_LVEPF_       @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
        <<- /ppas/ not tag(\1, "_enum_") and morph(\2, ":(?:3s|P)") and not morph(<1, ":[RV]|>(?:et|ou)/") and not tag(<1, "_ceque_")
        --1>> =suggMasSing(\-1)                                                                                         && Accord avec le sujet “\1” : “\-1” devrait être au masculin singulier.
        --1>> =suggMasSing(\-1)                                                                                         && Accord avec le sujet “\1” : “\-1” devrait être au masculin singulier.

    [<start>|,|(|/_start_] tout ?[ne|n’]¿ ?[en|y]¿          (/_VE_)                                                 @:[AQ].*:[fp]¬:(?:[GWYN]|[me]:[si])
    [<start>|,|(|/_start_] tout ?[ne|n’]¿ ?[en|y]¿          (/_LVED_) ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ /_LVEF_   @:[AQ].*:[fp]¬:(?:[GWYN]|[me]:[si])
    [<start>|,|(|/_start_] tout ?[ne|n’]¿ [se|s’] ?[en|y]¿  (/_VEP_)                                                @:[AQ].*:[fp]¬:(?:[GWYN]|[me]:[si])
    [<start>|,|(|/_start_] tout ?[ne|n’]¿ [se|s’] ?[en|y]¿  (/_LVEPD_) ?/_LVEP_¿ ?/_LVEP_¿ ?/_LVEP_¿ /_LVEPF_       @:[AQ].*:[fp]¬:(?:[GWYN]|[me]:[si])
        <<- /ppas/ morph(\1, "[123][sp]") --1>> =suggMasSing(\-1)                                                       && Accord avec le sujet “tout” : “\-1” devrait être au masculin singulier.
        <<- /ppas/ morph(\1, "[123][sp]") --1>> =suggMasSing(\-1)                                                       && Accord avec le sujet “tout” : “\-1” devrait être au masculin singulier.

    lui [ne|n’|y]                   /_VE_                                                   @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
    lui [ne|n’|y]                   /_LVED_ ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ /_LVEF_     @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
    lui n’ [en|y]                   /_VE_                                                   @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
    lui n’ [en|y]                   /_LVED_ ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ /_LVEF_     @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
    lui ?[ne|n’]¿ [se|s’] ?[en|y]¿  /_VEP_                                                  @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
    lui ?[ne|n’]¿ [se|s’] ?[en|y]¿  /_LVEPD_ ?/_LVEP_¿ ?/_LVEP_¿ ?/_LVEP_¿ /_LVEPF_         @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
        <<- /ppas/ not morph(<1, ":[RV]") and not tag(<1, "_ceque_") --1>> =suggMasSing(\-1)    && Accord avec le sujet “\1” : “\-1” devrait être au masculin singulier.
        <<- /ppas/ not morph(<1, ":[RV]") and not tag(<1, "_ceque_") --1>> =suggMasSing(\-1)    && Accord avec le sujet “\1” : “\-1” devrait être au masculin singulier.

    ([lui|ça|ceci|cela|ce|c’|ç’|celui|celui-ci|celui-là]) qui ?[ne|n’]¿ ?[en|y]¿         (/_VE_)                                                @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
    ([lui|ça|ceci|cela|ce|c’|ç’|celui|celui-ci|celui-là]) qui ?[ne|n’]¿ ?[en|y]¿         (/_LVED_) ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ /_LVEF_  @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
    ([lui|ça|ceci|cela|ce|c’|ç’|celui|celui-ci|celui-là]) qui ?[ne|n’]¿ [se|s’] ?[en|y]¿ (/_VEP_)                                               @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
    ([lui|ça|ceci|cela|ce|c’|ç’|celui|celui-ci|celui-là]) qui ?[ne|n’]¿ [se|s’] ?[en|y]¿ (/_LVEPD_) ?/_LVEP_¿ ?/_LVEP_¿ ?/_LVEP_¿ /_LVEPF_      @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
        <<- /ppas/ morph(\2, ":(?:[123]s|P)") and not tag(<1, "_ceque_") --1>> =suggMasSing(\-1) && Accord avec le sujet “\1 qui” : “\-1” devrait être au masculin singulier.
        <<- /ppas/ morph(\2, ":(?:[123]s|P)") and not tag(<1, "_ceque_") --1>> =suggMasSing(\-1) && Accord avec le sujet “\1 qui” : “\-1” devrait être au masculin singulier.

    lequel ?[ne|n’]¿ ?[en|y]¿           /_VE_                                                 @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
    lequel ?[ne|n’]¿ ?[en|y]¿           /_LVED_ ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ /_LVEF_   @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
    lequel ?[ne|n’]¿ [se|s’] ?[en|y]¿   /_VEP_                                                @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
    lequel ?[ne|n’]¿ [se|s’] ?[en|y]¿   /_LVEPD_ ?/_LVEP_¿ ?/_LVEP_¿ ?/_LVEP_¿ /_LVEPF_       @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
        <<- /ppas/ not morph(<1, ":R") --1>> =suggMasSing(\-1)                                                          && Accord avec le sujet “\1” : “\-1” devrait être au masculin singulier.
        <<- /ppas/ not morph(<1, ":R") --1>> =suggMasSing(\-1)                                                          && Accord avec le sujet “\1” : “\-1” devrait être au masculin singulier.

    [<start>|,|(|/_start_]  ?l’¿ un  ?[ne|n’]¿ ?[en|y]¿         (/_VE_)                                                 @:[AQ]¬:(?:[GWM]|[me]:[si])
    [<start>|,|(|/_start_]  ?l’¿ un  ?[ne|n’]¿ ?[en|y]¿         (/_LVED_) ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ /_LVEF_   @:[AQ]¬:(?:[GWM]|[me]:[si])
    [<start>|,|(|/_start_]  ?l’¿ un  ?[ne|n’]¿ [se|s’] ?[en|y]¿ (/_VEP_)                                                @:[AQ]¬:(?:[GWM]|[me]:[si])
    [<start>|,|(|/_start_]  ?l’¿ un  ?[ne|n’]¿ [se|s’] ?[en|y]¿ (/_LVEPD_) ?/_LVEP_¿ ?/_LVEP_¿ ?/_LVEP_¿ /_LVEPF_       @:[AQ]¬:(?:[GWM]|[me]:[si])
        <<- /ppas/ not value(\-1, "|légion|pléthore|néant|réalité|") and morph(\1, ":(?:[123]s|P)")
        --1>> =suggMasSing(\-1)                                                                     && Accord erroné : “un” et “\-1” ne sont pas accordés, l’adjectif devrait être au masculin singulier.
        --1>> =suggMasSing(\-1)                                                                     && Accord erroné : “un” et “\-1” ne sont pas accordés, l’adjectif devrait être au masculin singulier.

TEST: un des leurs restait {{introuvables}}
TEST: Il semble être {{partis}} pour toujours.                                    ->> parti
TEST: Il n’est pas {{demander}} à chacun de participer.
TEST: Il n’en était pas {{contents}}.                                             ->> content
TEST: Il est {{laisser}} à lui-même
TEST: il continue de paraître {{pieuse}} aux yeux des bigts                       ->> pieux
26900
26901
26902
26903
26904
26905
26906
26907

26908
26909
26910
26911
26912
26913
26914

26915
26916
26917
26918

26919
26920
26921
26922

26923
26924
26925
26926

26927
26928
26929
26930

26931
26932
26933
26934

26935
26936
26937
26938
26939
26940

26941
26942
26943
26944
26945
26946
26947

26948
26949
26950
26951
26952
26953
26954
26907
26908
26909
26910
26911
26912
26913

26914
26915
26916
26917
26918
26919
26920

26921
26922
26923
26924

26925
26926
26927
26928

26929
26930
26931
26932

26933
26934
26935
26936

26937
26938
26939
26940

26941
26942
26943
26944
26945
26946

26947
26948
26949
26950
26951
26952
26953

26954
26955
26956
26957
26958
26959
26960
26961







-
+






-
+



-
+



-
+



-
+



-
+



-
+





-
+






-
+








__ppas_3sg_fem_verbe_état__
    ([elle|celle-ci|celle-là|aucune|chacune]) ?[ne|n’]¿ ?[en|y]¿         (/_VE_)                                                @:(?:N.*:p|[AQ])¬:(?:[GWY]|[fe]:[si])
    ([elle|celle-ci|celle-là|aucune|chacune]) ?[ne|n’]¿ ?[en|y]¿         (/_LVED_) ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ /_LVEF_  @:(?:N.*:p|[AQ])¬:(?:[GWY]|[fe]:[si])
    ([elle|celle-ci|celle-là|aucune|chacune]) ?[ne|n’]¿ [se|s’] ?[en|y]¿ (/_VEP_)                                               @:(?:N.*:p|[AQ])¬:(?:[GWY]|[fe]:[si])
    ([elle|celle-ci|celle-là|aucune|chacune]) ?[ne|n’]¿ [se|s’] ?[en|y]¿ (/_LVEPD_) ?/_LVEP_¿ ?/_LVEP_¿ ?/_LVEP_¿ /_LVEPF_      @:(?:N.*:p|[AQ])¬:(?:[GWY]|[fe]:[si])
        <<- /ppas/ not tag(\1, "_enum_") and not morph(<1, ":[RV]|>(?:et|ou)/") and morph(\2, ":(?:[123]s|P)") and not tag(<1, "_ceque_")
        --1>> =suggFemSing(\-1)                                                                     && Accord avec le sujet “\1” : “\-1” devrait être au féminin singulier.
        --1>> =suggFemSing(\-1)                                                                     && Accord avec le sujet “\1” : “\-1” devrait être au féminin singulier.

    ([elle|celle|celle-ci|celle-là|aucune|chacune]) qui ?[ne|n’]¿ ?[en|y]¿         (/_VE_)                                                 @:(?:N.*:p|[AQ])¬:(?:[GWY]|[fe]:[si])
    ([elle|celle|celle-ci|celle-là|aucune|chacune]) qui ?[ne|n’]¿ ?[en|y]¿         (/_LVED_) ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ /_LVEF_   @:(?:N.*:p|[AQ])¬:(?:[GWY]|[fe]:[si])
    ([elle|celle|celle-ci|celle-là|aucune|chacune]) qui ?[ne|n’]¿ [se|s’] ?[en|y]¿ (/_VEP_)                                                @:(?:N.*:p|[AQ])¬:(?:[GWY]|[fe]:[si])
    ([elle|celle|celle-ci|celle-là|aucune|chacune]) qui ?[ne|n’]¿ [se|s’] ?[en|y]¿ (/_LVEPD_) ?/_LVEP_¿ ?/_LVEP_¿ ?/_LVEP_¿ /_LVEPF_       @:(?:N.*:p|[AQ])¬:(?:[GWY]|[fe]:[si])
        <<- /ppas/ morph(\2, ":(?:[123]s|P)") and not tag(<1, "_ceque_")
        --1>> =suggFemSing(\-1)                                                                     && Accord avec le sujet “\1 qui” : “\-1” devrait être au féminin singulier.
        --1>> =suggFemSing(\-1)                                                                     && Accord avec le sujet “\1 qui” : “\-1” devrait être au féminin singulier.

    /-elle  @:(?:[123][sp]|Y|[NAQ].*:[pm])¬:(?:G|W|[fe]:[si])
        <<- /ppas/ morphVC(\1, ">(?:être|devenir|redevenir)/.*:[123]s") and not value(<1, "|se|s’|")
        -2>> =suggFemSing(\2)                                                                       && Accord avec le sujet “elle” : “\2” devrait être au féminin singulier.
        -2>> =suggFemSing(\2)                                                                       && Accord avec le sujet “elle” : “\2” devrait être au féminin singulier.

    /-elle  @:(?:[123][sp]|[NAQ].*:[pm])¬:(?:G|W|Y|[fe]:[si])
        <<- /ppas/ morphVC(\1, ">(?:sembler|rester|demeurer|para[îi]tre)/.*:[123]s")
        -2>> =suggFemSing(\2)                                                                       && Accord avec le sujet “elle” : “\2” devrait être au féminin singulier.
        -2>> =suggFemSing(\2)                                                                       && Accord avec le sujet “elle” : “\2” devrait être au féminin singulier.

    /-elle  ?/_LVEI_¿ ?/_LVEI_¿ ?/_LVEI_¿ ?/_LVEI_¿ /_LVEIF_  @:(?:N.*:p|[AQ])¬:(?:[GWY]|[fe]:[si])
        <<- /ppas/ tag(\1, "_LVEID_") and morphVC(\1, ":3s") and not value(\-1, "|néant|")
        --1>> =suggFemSing(\-1)                                                                     && Accord avec le sujet “elle” : “\-1” devrait être au féminin singulier.
        --1>> =suggFemSing(\-1)                                                                     && Accord avec le sujet “elle” : “\-1” devrait être au féminin singulier.

    [se|s’]  /-elle  @:(?:N.*:p|[AQ])¬:(?:[GWY]|[fe]:[si])
        <<- /ppas/ tag(\2, "_VEPI_") and morphVC(\2, ":3s") and not value(\-1, "|néant|")
        --1>> =suggFemSing(\-1)                                                                     && Accord avec le sujet “elle” : “\-1” devrait être au féminin singulier.
        --1>> =suggFemSing(\-1)                                                                     && Accord avec le sujet “elle” : “\-1” devrait être au féminin singulier.

    [se|s’]  /-elle  ?/_LVEPI_¿ ?/_LVEPI_¿ ?/_LVEPI_¿ ?/_LVEPI_¿ /_LVEPIF_  @:(?:N.*:p|[AQ])¬:(?:[GWY]|[fe]:[si])
        <<- /ppas/ tag(\2, "_LVEPID_") and morphVC(\2, ":3s") and not value(\-1, "|néant|")
        --1>> =suggFemSing(\-1)                                                                     && Accord avec le sujet “elle” : “\-1” devrait être au féminin singulier.
        --1>> =suggFemSing(\-1)                                                                     && Accord avec le sujet “elle” : “\-1” devrait être au féminin singulier.

    laquelle ?[ne|n’]¿ ?[en|y]¿         /_VE_                                                   @:(?:N.*:p|[AQ])¬:(?:[GWY]|[fe]:[si])
    laquelle ?[ne|n’]¿ ?[en|y]¿         /_LVED_ ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ /_LVEF_     @:(?:N.*:p|[AQ])¬:(?:[GWY]|[fe]:[si])
    laquelle ?[ne|n’]¿ [se|s’] ?[en|y]¿ /_VEP_                                                  @:(?:N.*:p|[AQ])¬:(?:[GWY]|[fe]:[si])
    laquelle ?[ne|n’]¿ [se|s’] ?[en|y]¿ /_LVEPD_ ?/_LVEP_¿ ?/_LVEP_¿ ?/_LVEP_¿ /_LVEPF_         @:(?:N.*:p|[AQ])¬:(?:[GWY]|[fe]:[si])
        <<- /ppas/ not morph(<1, ":R") --1>> =suggFemSing(\-1)                                      && Accord avec le sujet “\1” : “\-1” devrait être au féminin singulier.
        <<- /ppas/ not morph(<1, ":R") --1>> =suggFemSing(\-1)                                      && Accord avec le sujet “\1” : “\-1” devrait être au féminin singulier.

    [<start>|,|(|/_start_]  ?l’¿ une  ?[ne|n’]¿  ?[en|y]¿           (/_VE_)                                                 @:[AQ]¬:(?:[GWM]|[fe]:[si])
    [<start>|,|(|/_start_]  ?l’¿ une  ?[ne|n’]¿  ?[en|y]¿           (/_LVED_) ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ /_LVEF_   @:[AQ]¬:(?:[GWM]|[fe]:[si])
    [<start>|,|(|/_start_]  ?l’¿ une  ?[ne|n’]¿  [se|s’] ?[en|y]¿   (/_VEP_)                                                @:[AQ]¬:(?:[GWM]|[fe]:[si])
    [<start>|,|(|/_start_]  ?l’¿ une  ?[ne|n’]¿  [se|s’] ?[en|y]¿   (/_LVEPD_) ?/_LVEP_¿ ?/_LVEP_¿ ?/_LVEP_¿ /_LVEPF_       @:[AQ]¬:(?:[GWM]|[fe]:[si])
        <<- /ppas/ not value(\-1, "|néant|") and morph(\1, ":(?:[123]s|P)")
        --1>> =suggFemSing(\-1)                                                                     && Accord erroné : “une” et “\-1” ne sont pas accordés, l’adjectif devrait être au féminin singulier.
        --1>> =suggFemSing(\-1)                                                                     && Accord erroné : “une” et “\-1” ne sont pas accordés, l’adjectif devrait être au féminin singulier.

TEST: elle a été {{perdu}} par ses parents                                          ->> perdue
TEST: Elle semble être totalement {{ruiné}}.                                        ->> ruinée
TEST: Elle est complètement {{fol}}.                                                ->> folle
TEST: elle n’est pas {{petits}}                                                     ->> petite
TEST: Elle en est de plus en plus {{belles}}.                                       ->> belle
TEST: elle n’en est pas {{fâché}}                                                   ->> fâchée
27020
27021
27022
27023
27024
27025
27026
27027

27028
27029
27030
27031

27032
27033
27034
27035

27036
27037
27038

27039
27040
27041

27042
27043
27044

27045
27046
27047
27048
27049
27050
27051
27027
27028
27029
27030
27031
27032
27033

27034
27035
27036
27037

27038
27039
27040
27041

27042
27043
27044

27045
27046
27047

27048
27049
27050

27051
27052
27053
27054
27055
27056
27057
27058







-
+



-
+



-
+


-
+


-
+


-
+








__ppas_iel_verbe_état__
    iel ?[ne|n’]¿ ?[en|y]¿          (/_VE_)                                                 @:[NAQ].*:p¬:[GWYsi]
    iel ?[ne|n’]¿ ?[en|y]¿          (/_LVED_) ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ /_LVEF_   @:[NAQ].*:p¬:[GWYsi]
    iel ?[ne|n’]¿ [se|s’] ?[en|y]¿  (/_VEP_)                                                @:[NAQ].*:p¬:[GWYsi]
    iel ?[ne|n’]¿ [se|s’] ?[en|y]¿  (/_LVEPD_) ?/_LVEP_¿ ?/_LVEP_¿ ?/_LVEP_¿ /_LVEPF_       @:[NAQ].*:p¬:[GWYsi]
        <<- /ppas/ not value(\-1, "|légion|pléthore|néant|réalité|") and not morph(<1, ":[RV]") and morph(\1, ":(?:3s|P)") and not tag(<1, "_ceque_")
        --1>> =suggSing(\-1)                                                                        && Accord avec le sujet “iel” : “\-1” devrait être au pluriel.
        --1>> =suggSing(\-1)                                                                        && Accord avec le sujet “iel” : “\-1” devrait être au pluriel.

    /-iel  @:(?:[123][sp]|Y|[NAQ].*:p)¬:[GWsi]
        <<- /ppas/ morphVC(\1, ">(?:être|devenir|redevenir)/.*:[123]s")
        -2>> =suggSing(\2)                                                                          && Accord avec le sujet “iel” : “\2” devrait être au singulier.
        -2>> =suggSing(\2)                                                                          && Accord avec le sujet “iel” : “\2” devrait être au singulier.

    /-iel  @:(?:[123][sp]|[NAQ].*:p)¬:[GWYsi]
        <<- /ppas/ morphVC(\1, ">(?:sembler|rester|demeurer|para[îi]tre)/.*:[123]s")
        -2>> =suggSing(\2)                                                                          && Accord avec le sujet “iel” : “\2” devrait être au singulier.
        -2>> =suggSing(\2)                                                                          && Accord avec le sujet “iel” : “\2” devrait être au singulier.

    /-iel  ?/_LVEI_¿ ?/_LVEI_¿ ?/_LVEI_¿ ?/_LVEI_¿ /_LVEIF_  @:[NAQ].*:p¬:[GWYsi]
        <<- /ppas/ morphVC(\1, ":3s") --1>> =suggSing(\-1)                                          && Accord avec le sujet “iel” : “\-1” devrait être au singulier.
        <<- /ppas/ morphVC(\1, ":3s") --1>> =suggSing(\-1)                                          && Accord avec le sujet “iel” : “\-1” devrait être au singulier.

    [se|s’]  /-iel  @:[NAQ].*:p¬:[GWYsi]
        <<- /ppas/ tag(\2, "_VEPI_") and morphVC(\2, ":3s") --1>> =suggSing(\-1)                    && Accord avec le sujet “iel” : “\-1” devrait être au singulier.
        <<- /ppas/ tag(\2, "_VEPI_") and morphVC(\2, ":3s") --1>> =suggSing(\-1)                    && Accord avec le sujet “iel” : “\-1” devrait être au singulier.

    [se|s’]  /-iel  ?/_LVEPI_¿ ?/_LVEPI_¿ ?/_LVEPI_¿ ?/_LVEPI_¿ /_LVEPIF_  @:[NAQ].*:p¬:[GWYsi]
        <<- /ppas/ tag(\2, "_LVEPID_") and morphVC(\2, ":3s") --1>> =suggSing(\-1)                  && Accord avec le sujet “iel” : “\-1” devrait être au singulier.
        <<- /ppas/ tag(\2, "_LVEPID_") and morphVC(\2, ":3s") --1>> =suggSing(\-1)                  && Accord avec le sujet “iel” : “\-1” devrait être au singulier.

TEST: iel paraît {{faibles}}
TEST: iel paraît avoir été complètement {{prises}} de panique.
TEST: iel doit avoir été bien {{méchants}} pour être traité de la sorte.
TEST: iel ne peut devenir aussi {{perspicaces}} avec tout cet alcool ingurgité.
TEST: iel pense être {{désirés}}
TEST: iel n’y doit pas être {{instruits}}, mais…
27067
27068
27069
27070
27071
27072
27073
27074

27075
27076
27077
27078

27079
27080
27081
27082

27083
27084
27085
27086

27087
27088
27089
27090

27091
27092
27093
27094

27095
27096
27097
27098
27099
27100
27101
27074
27075
27076
27077
27078
27079
27080

27081
27082
27083
27084

27085
27086
27087
27088

27089
27090
27091
27092

27093
27094
27095
27096

27097
27098
27099
27100

27101
27102
27103
27104
27105
27106
27107
27108







-
+



-
+



-
+



-
+



-
+



-
+








__ppas_nous_verbe_état__
    nous ?[ne|n’]¿ ?[en|y]¿         (/_VE_)                                                 @:[NAQ].*:s¬:[GWYpi]
    nous ?[ne|n’]¿ ?[en|y]¿         (/_LVED_) ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ /_LVEF_   @:[NAQ].*:s¬:[GWYpi]
    nous ?[ne|n’]¿ nous ?[en|y]¿    (/_VEP_)                                                @:[NAQ].*:s¬:[GWYpi]
    nous ?[ne|n’]¿ nous ?[en|y]¿    (/_LVEPD_) ?/_LVEP_¿ ?/_LVEP_¿ ?/_LVEP_¿ /_LVEPF_       @:[NAQ].*:s¬:[GWYpi]
        <<- /ppas/ not value(\-1, "|légion|pléthore|néant|réalité|") and not morph(<1, ":[RV]|>(?:ne|nous)/") and morph(\1, ":(?:1p|P)") and not tag(<1, "_ceque_")
        --1>> =suggPlur(\-1)                                                                        && Accord avec le sujet “nous” : “\-1” devrait être au pluriel.
        --1>> =suggPlur(\-1)                                                                        && Accord avec le sujet “nous” : “\-1” devrait être au pluriel.

    /-nous  @:(?:[123][sp]|Y|[NAQ].*:s)¬:[GWpi]|>dire/
        <<- /ppas/ morphVC(\1, ">(?:être|devenir|redevenir)/.*:1p") and not value(\-1, "|légion|pléthore|néant|réalité|") and not value(<1, "|nous|")
        -2>> =suggPlur(\2)                                                                          && Accord avec le sujet “nous” : “\2” devrait être au pluriel.
        -2>> =suggPlur(\2)                                                                          && Accord avec le sujet “nous” : “\2” devrait être au pluriel.

    /-nous  @:(?:[123][sp]|[NAQ].*:s)¬:[GWYpi]|>dire/
        <<- /ppas/ morphVC(\1, ">(?:sembler|rester|demeurer|para[îi]tre)/.*:1p") and not value(\-1, "|légion|pléthore|néant|réalité|")
        -2>> =suggPlur(\2)                                                                          && Accord avec le sujet “nous” : “\2” devrait être au pluriel.
        -2>> =suggPlur(\2)                                                                          && Accord avec le sujet “nous” : “\2” devrait être au pluriel.

    /-nous  ?/_LVEI_¿ ?/_LVEI_¿ ?/_LVEI_¿ ?/_LVEI_¿ /_LVEIF_  @:[NAQ].*:s¬:[GWYpi]
        <<- /ppas/ tag(\1, "_LVEID_") and morphVC(\1, ":1p") and not value(\-1, "|légion|pléthore|néant|réalité|")
        --1>> =suggPlur(\-1)                                                                        && Accord avec le sujet “nous” : “\-1” devrait être au pluriel.
        --1>> =suggPlur(\-1)                                                                        && Accord avec le sujet “nous” : “\-1” devrait être au pluriel.

    nous  /-nous  @:[NAQ].*:s¬:[GWYpi]
        <<- /ppas/ tag(\2, "_VEPI_") and morphVC(\2, ":1p") and not value(\-1, "|légion|pléthore|néant|réalité|")
        --1>> =suggPlur(\-1)                                                                        && Accord avec le sujet “nous” : “\-1” devrait être au pluriel.
        --1>> =suggPlur(\-1)                                                                        && Accord avec le sujet “nous” : “\-1” devrait être au pluriel.

    nous  /-nous  ?/_LVEPI_¿ ?/_LVEPI_¿ ?/_LVEPI_¿ ?/_LVEPI_¿ /_LVEPIF_  @:[NAQ].*:s¬:[GWYpi]
        <<- /ppas/ tag(\2, "_LVEPID_") and morphVC(\2, ":1p") and not value(\-1, "|légion|pléthore|néant|réalité|")
        --1>> =suggPlur(\-1)                                                                        && Accord avec le sujet “nous” : “\-1” devrait être au pluriel.
        --1>> =suggPlur(\-1)                                                                        && Accord avec le sujet “nous” : “\-1” devrait être au pluriel.

TEST: nous paraissons {{faible}}
TEST: Nous paraissons avoir été complètement {{prise}} de panique.                          ->> prises
TEST: Nous devons avoir été bien {{méchant}} pour être traité de la sorte.
TEST: nous ne pouvons devenir aussi {{perspicace}} avec tout cet alcool ingurgité.
TEST: nous pensons être {{désiré}}
TEST: nous n’y devons pas être {{instruit}}, mais…
27136
27137
27138
27139
27140
27141
27142
27143

27144
27145
27146
27147

27148
27149
27150
27151

27152
27153
27154
27155

27156
27157
27158
27159

27160
27161
27162
27163

27164
27165
27166
27167
27168
27169
27170

27171
27172
27173
27174
27175
27176
27177

27178
27179
27180
27181
27182
27183
27184

27185
27186
27187
27188
27189
27190
27191
27143
27144
27145
27146
27147
27148
27149

27150
27151
27152
27153

27154
27155
27156
27157

27158
27159
27160
27161

27162
27163
27164
27165

27166
27167
27168
27169

27170
27171
27172
27173
27174
27175
27176

27177
27178
27179
27180
27181
27182
27183

27184
27185
27186
27187
27188
27189
27190

27191
27192
27193
27194
27195
27196
27197
27198







-
+



-
+



-
+



-
+



-
+



-
+






-
+






-
+






-
+








__ppas_3pl_mas_verbe_état__
    ils ?[ne|n’]¿ ?[en|y]¿          /_VE_                                                   @:(?:N.*:s|[AQ])¬:(?:[GWY]|[me]:[pi])
    ils ?[ne|n’]¿ ?[en|y]¿          /_LVED_ ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ /_LVEF_     @:(?:N.*:s|[AQ])¬:(?:[GWY]|[me]:[pi])
    ils ?[ne|n’]¿ [se|s’] ?[en|y]¿  /_VEP_                                                  @:(?:N.*:s|[AQ])¬:(?:[GWY]|[me]:[pi])
    ils ?[ne|n’]¿ [se|s’] ?[en|y]¿  /_LVEPD_ ?/_LVEP_¿ ?/_LVEP_¿ ?/_LVEP_¿ /_LVEPF_         @:(?:N.*:s|[AQ])¬:(?:[GWY]|[me]:[pi])
        <<- /ppas/ not value(\-1, "|légion|pléthore|néant|réalité|") and not tag(<1, "_ceque_")
        --1>> =suggMasPlur(\-1)                                                                     && Accord avec le sujet “\1” : “\-1” devrait être au masculin pluriel.
        --1>> =suggMasPlur(\-1)                                                                     && Accord avec le sujet “\1” : “\-1” devrait être au masculin pluriel.

    /-ils  @:(?:[123][sp]|Y|[NAQ].*:[sf])¬:(?:G|W|[me]:[pi])|>dire/
        <<- /ppas/ morphVC(\1, ">(?:être|devenir|redevenir)/.*:3p") and not value(\-1, "|légion|pléthore|néant|réalité|") and not value(<1, "|se|s’|")
        -2>> =suggMasPlur(\2)                                                                       && Accord avec le sujet “ils” : “\2” devrait être au masculin pluriel.
        -2>> =suggMasPlur(\2)                                                                       && Accord avec le sujet “ils” : “\2” devrait être au masculin pluriel.

    /-ils  @:(?:[123][sp]|[NAQ].*:[sf])¬:(?:G|W|Y|[me]:[pi])|>dire/
        <<- /ppas/ morphVC(\1, ">(?:sembler|rester|demeurer|para[îi]tre)/.*:3p") and not value(\-1, "|légion|pléthore|néant|réalité|")
        -2>> =suggMasPlur(\2)                                                                       && Accord avec le sujet “ils” : “\2” devrait être au masculin pluriel.
        -2>> =suggMasPlur(\2)                                                                       && Accord avec le sujet “ils” : “\2” devrait être au masculin pluriel.

    /-ils  ?/_LVEI_¿ ?/_LVEI_¿ ?/_LVEI_¿ ?/_LVEI_¿ /_LVEIF_  @:(?:N.*:s|[AQ])¬:(?:[GWY]|[me]:[pi])
        <<- /ppas/ tag(\1, "_LVEID_") and morphVC(\1, ":3p") and not value(\-1, "|légion|pléthore|néant|réalité|")
        --1>> =suggMasPlur(\-1)                                                                     && Accord avec le sujet “ils” : “\-1” devrait être au masculin pluriel.
        --1>> =suggMasPlur(\-1)                                                                     && Accord avec le sujet “ils” : “\-1” devrait être au masculin pluriel.

    [se|s’]  /-ils  @:(?:N.*:s|[AQ])¬:(?:[GWY]|[me]:[pi])
        <<- /ppas/ tag(\2, "_VEPI_") and morphVC(\2, ":3p") and not value(\-1, "|légion|pléthore|néant|réalité|")
        --1>> =suggMasPlur(\-1)                                                                     && Accord avec le sujet “ils” : “\-1” devrait être au masculin pluriel.
        --1>> =suggMasPlur(\-1)                                                                     && Accord avec le sujet “ils” : “\-1” devrait être au masculin pluriel.

    [se|s’]  /-ils  ?/_LVEPI_¿ ?/_LVEPI_¿ ?/_LVEPI_¿ ?/_LVEPI_¿ /_LVEPIF_  @:(?:N.*:s|[AQ])¬:(?:[GWY]|[me]:[pi])
        <<- /ppas/ tag(\2, "_LVEPID_") and morphVC(\2, ":3p") and not value(\-1, "|légion|pléthore|néant|réalité|")
        --1>> =suggMasPlur(\-1)                                                                     && Accord avec le sujet “ils” : “\-1” devrait être au masculin pluriel.
        --1>> =suggMasPlur(\-1)                                                                     && Accord avec le sujet “ils” : “\-1” devrait être au masculin pluriel.

    ([eux|ceux-ci|ceux-là|certains|quelques-uns|maints]) ?[ne|n’]¿ ?[en|y]¿            (/_VE_)                                                 @:(?:N.*:s|[AQ])¬:(?:[GWY]|[me]:[pi])
    ([eux|ceux-ci|ceux-là|certains|quelques-uns|maints]) ?[ne|n’]¿ ?[en|y]¿            (/_LVED_) ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ /_LVEF_   @:(?:N.*:s|[AQ])¬:(?:[GWY]|[me]:[pi])
    ([eux|ceux-ci|ceux-là|certains|quelques-uns|maints]) ?[ne|n’]¿ [se|s’] ?[en|y]¿    (/_VEP_)                                                @:(?:N.*:s|[AQ])¬:(?:[GWY]|[me]:[pi])
    ([eux|ceux-ci|ceux-là|certains|quelques-uns|maints]) ?[ne|n’]¿ [se|s’] ?[en|y]¿    (/_LVEPD_) ?/_LVEP_¿ ?/_LVEP_¿ ?/_LVEP_¿ /_LVEPF_       @:(?:N.*:s|[AQ])¬:(?:[GWY]|[me]:[pi])
        <<- /ppas/ not morph(<1, ":[RV]") and morph(\2, ":(?:3p|P)") and not value(\-1, "|légion|pléthore|néant|réalité|") and not tag(<1, "_ceque_")
        --1>> =suggMasPlur(\-1)                                                                     && Accord avec le sujet “\1” : “\-1” devrait être au masculin pluriel.
        --1>> =suggMasPlur(\-1)                                                                     && Accord avec le sujet “\1” : “\-1” devrait être au masculin pluriel.

    ([eux|ceux|ceux-ci|ceux-là|certains|quelques-uns|maints]) qui ?[ne|n’]¿ ?[en|y]¿           (/_VE_)                                                 @:(?:N.*:s|[AQ])¬:(?:[GWY]|[me]:[pi])
    ([eux|ceux|ceux-ci|ceux-là|certains|quelques-uns|maints]) qui ?[ne|n’]¿ ?[en|y]¿           (/_LVED_) ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ /_LVEF_   @:(?:N.*:s|[AQ])¬:(?:[GWY]|[me]:[pi])
    ([eux|ceux|ceux-ci|ceux-là|certains|quelques-uns|maints]) qui ?[ne|n’]¿ [se|s’] ?[en|y]¿   (/_VEP_)                                                @:(?:N.*:s|[AQ])¬:(?:[GWY]|[me]:[pi])
    ([eux|ceux|ceux-ci|ceux-là|certains|quelques-uns|maints]) qui ?[ne|n’]¿ [se|s’] ?[en|y]¿   (/_LVEPD_) ?/_LVEP_¿ ?/_LVEP_¿ ?/_LVEP_¿ /_LVEPF_       @:(?:N.*:s|[AQ])¬:(?:[GWY]|[me]:[pi])
        <<- /ppas/ morph(\2, ":(?:3p|P)") and not value(\-1, "|légion|pléthore|néant|réalité|") and not tag(<1, "_ceque_")
        --1>> =suggMasPlur(\-1)                                                                     && Accord avec le sujet “\1” : “\-1” devrait être au masculin pluriel.
        --1>> =suggMasPlur(\-1)                                                                     && Accord avec le sujet “\1” : “\-1” devrait être au masculin pluriel.

    lesquels ?[ne|n’]¿ ?[en|y]¿         /_VE_                                                   @:(?:N.*:s|[AQ])¬:(?:[GWY]|[me]:[pi])
    lesquels ?[ne|n’]¿ ?[en|y]¿         /_LVED_ ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ /_LVEF_     @:(?:N.*:s|[AQ])¬:(?:[GWY]|[me]:[pi])
    lesquels ?[ne|n’]¿ [se|s’] ?[en|y]¿ /_VEP_                                                  @:(?:N.*:s|[AQ])¬:(?:[GWY]|[me]:[pi])
    lesquels ?[ne|n’]¿ [se|s’] ?[en|y]¿ /_LVEPD_ ?/_LVEP_¿ ?/_LVEP_¿ ?/_LVEP_¿ /_LVEPF_         @:(?:N.*:s|[AQ])¬:(?:[GWY]|[me]:[pi])
        <<- /ppas/ not morph(<1, ":R") and not value(\-1, "|légion|pléthore|néant|réalité|")
        --1>> =suggMasPlur(\-1)                                                                     && Accord avec le sujet “\1” : “\-1” devrait être au masculin pluriel.
        --1>> =suggMasPlur(\-1)                                                                     && Accord avec le sujet “\1” : “\-1” devrait être au masculin pluriel.

TEST: ils sont {{parti}}.                                                           ->> partis
TEST: ils sont {{parties}}.                                                         ->> partis
TEST: ils restaient {{méfiantes}}                                                   ->> méfiants
TEST: Ils semblent avoir été {{attaqué}} par des soldats.                           ->> attaqués
TEST: Ils sont de manière si étonnante et si admirable {{arrivé}} à ce résultat…
TEST: Ils sont, semble-t-il, {{parti}} à la chasse.
27235
27236
27237
27238
27239
27240
27241
27242

27243
27244
27245
27246
27247
27248
27249

27250
27251
27252
27253

27254
27255
27256
27257

27258
27259
27260
27261

27262
27263
27264
27265

27266
27267
27268
27269

27270
27271
27272
27273
27274
27275
27276

27277
27278
27279
27280
27281
27282
27283
27242
27243
27244
27245
27246
27247
27248

27249
27250
27251
27252
27253
27254
27255

27256
27257
27258
27259

27260
27261
27262
27263

27264
27265
27266
27267

27268
27269
27270
27271

27272
27273
27274
27275

27276
27277
27278
27279
27280
27281
27282

27283
27284
27285
27286
27287
27288
27289
27290







-
+






-
+



-
+



-
+



-
+



-
+



-
+






-
+








__ppas_3pl_fem_verbe_état__
    ([elles|celles-ci|celles-là|certaines|quelques-unes|maintes]) ?[ne|n’]¿ ?[en|y]¿            (/_VE_)                                                 @:(?:N.*:s|[AQ])¬:(?:[GWY]|[fe]:[pi])
    ([elles|celles-ci|celles-là|certaines|quelques-unes|maintes]) ?[ne|n’]¿ ?[en|y]¿            (/_LVED_) ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ /_LVEF_   @:(?:N.*:s|[AQ])¬:(?:[GWY]|[fe]:[pi])
    ([elles|celles-ci|celles-là|certaines|quelques-unes|maintes]) ?[ne|n’]¿ [se|s’] ?[en|y]¿    (/_VEP_)                                                @:(?:N.*:s|[AQ])¬:(?:[GWY]|[fe]:[pi])
    ([elles|celles-ci|celles-là|certaines|quelques-unes|maintes]) ?[ne|n’]¿ [se|s’] ?[en|y]¿    (/_LVEPD_) ?/_LVEP_¿ ?/_LVEP_¿ ?/_LVEP_¿ /_LVEPF_       @:(?:N.*:s|[AQ])¬:(?:[GWY]|[fe]:[pi])
        <<- /ppas/ not morph(<1, ":[RV]") and morph(\2, ":(?:3p|P)") and not value(\-1, "|légion|pléthore|néant|réalité|") and not tag(<1, "_ceque_")
        --1>> =suggFemPlur(\-1)                                                                     && Accord avec le sujet “\1” : “\-1” devrait être au féminin pluriel.
        --1>> =suggFemPlur(\-1)                                                                     && Accord avec le sujet “\1” : “\-1” devrait être au féminin pluriel.

    ([elles|celles|celles-ci|celles-là|certaines|quelques-unes|maintes]) qui ?[ne|n’]¿ ?[en|y]¿         (/_VE_)                                                 @:(?:N.*:s|[AQ])¬:(?:[GWY]|[fe]:[pi])
    ([elles|celles|celles-ci|celles-là|certaines|quelques-unes|maintes]) qui ?[ne|n’]¿ ?[en|y]¿         (/_LVED_) ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ /_LVEF_   @:(?:N.*:s|[AQ])¬:(?:[GWY]|[fe]:[pi])
    ([elles|celles|celles-ci|celles-là|certaines|quelques-unes|maintes]) qui ?[ne|n’]¿ [se|s’] ?[en|y]¿ (/_VEP_)                                                @:(?:N.*:s|[AQ])¬:(?:[GWY]|[fe]:[pi])
    ([elles|celles|celles-ci|celles-là|certaines|quelques-unes|maintes]) qui ?[ne|n’]¿ [se|s’] ?[en|y]¿ (/_LVEPD_) ?/_LVEP_¿ ?/_LVEP_¿ ?/_LVEP_¿ /_LVEPF_       @:(?:N.*:s|[AQ])¬:(?:[GWY]|[fe]:[pi])
        <<- /ppas/ morph(\2, ":(?:3p|P)") and not value(\-1, "|légion|pléthore|néant|réalité|") and not tag(<1, "_ceque_")
        --1>> =suggFemPlur(\-1)                                                                     && Accord avec le sujet “\1 qui” : “\-1” devrait être au féminin pluriel.
        --1>> =suggFemPlur(\-1)                                                                     && Accord avec le sujet “\1 qui” : “\-1” devrait être au féminin pluriel.

    /-elles  @:(?:[123][sp]|Y|[NAQ].*:[sm])¬:(?:G|W|[fe]:[pi])|>dire/
        <<- /ppas/ morphVC(\1, ">(?:être|devenir|redevenir)/.*:3p") and not value(\-1, "|légion|pléthore|néant|réalité|") and not value(<1, "|se|s’|")
        -2>> =suggFemPlur(\2)                                                                       && Accord avec le sujet “elles” : “\2” devrait être au féminin pluriel.
        -2>> =suggFemPlur(\2)                                                                       && Accord avec le sujet “elles” : “\2” devrait être au féminin pluriel.

    /-elles  @:(?:[123][sp]|[NAQ].*:[sm])¬:(?:G|W|Y|[fe]:[pi])|>dire/
        <<- /ppas/ morphVC(\1, ">(?:sembler|rester|demeurer|para[îi]tre)/.*:3p") and not value(\-1, "|légion|pléthore|néant|réalité|")
        -2>> =suggFemPlur(\2)                                                                       && Accord avec le sujet “elles” : “\2” devrait être au féminin pluriel.
        -2>> =suggFemPlur(\2)                                                                       && Accord avec le sujet “elles” : “\2” devrait être au féminin pluriel.

    /-elles  ?/_LVEI_¿ ?/_LVEI_¿ ?/_LVEI_¿ ?/_LVEI_¿ /_LVEIF_  @:(?:N.*:s|[AQ])¬:(?:[GWY]|[fe]:[pi])
        <<- /ppas/ tag(\1, "_LVEID_") and morphVC(\1, ":3p") and not value(\-1, "|légion|pléthore|néant|réalité|")
        --1>> =suggFemPlur(\-1)                                                                     && Accord avec le sujet “elles” : “\-1” devrait être au féminin pluriel.
        --1>> =suggFemPlur(\-1)                                                                     && Accord avec le sujet “elles” : “\-1” devrait être au féminin pluriel.

    [se|s’]  /-elles  @:(?:N.*:s|[AQ])¬:(?:[GWY]|[fe]:[pi])
        <<- /ppas/ tag(\2, "_VEPI_") and morphVC(\2, ":3p") and not value(\-1, "|légion|pléthore|néant|réalité|")
        --1>> =suggFemPlur(\-1)                                                                     && Accord avec le sujet “elles” : “\-1” devrait être au féminin pluriel.
        --1>> =suggFemPlur(\-1)                                                                     && Accord avec le sujet “elles” : “\-1” devrait être au féminin pluriel.

    [se|s’]  /-elles  ?/_LVEPI_¿ ?/_LVEPI_¿ ?/_LVEPI_¿ ?/_LVEPI_¿ /_LVEPIF_  @:(?:N.*:s|[AQ])¬:(?:[GWY]|[fe]:[pi])
        <<- /ppas/ tag(\2, "_LVEPID_") and morphVC(\2, ":3p") and not value(\-1, "|légion|pléthore|néant|réalité|")
        --1>> =suggFemPlur(\-1)                                                                     && Accord avec le sujet “elles” : “\-1” devrait être au féminin pluriel.
        --1>> =suggFemPlur(\-1)                                                                     && Accord avec le sujet “elles” : “\-1” devrait être au féminin pluriel.

    lesquelles ?[ne|n’]¿ ?[en|y]¿           /_VE_                                                   @:(?:N.*:s|[AQ])¬:(?:[GWY]|[fe]:[pi])
    lesquelles ?[ne|n’]¿ ?[en|y]¿           /_LVED_ ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ /_LVEF_     @:(?:N.*:s|[AQ])¬:(?:[GWY]|[fe]:[pi])
    lesquelles ?[ne|n’]¿ [se|s’] ?[en|y]¿   /_VEP_                                                  @:(?:N.*:s|[AQ])¬:(?:[GWY]|[fe]:[pi])
    lesquelles ?[ne|n’]¿ [se|s’] ?[en|y]¿   /_LVEPD_ ?/_LVEP_¿ ?/_LVEP_¿ ?/_LVEP_¿ /_LVEPF_         @:(?:N.*:s|[AQ])¬:(?:[GWY]|[fe]:[pi])
        <<- /ppas/ not morph(<1, ":R") and not value(\-1, "|légion|pléthore|néant|réalité|")
        --1>> =suggFemPlur(\-1)                                                                     && Accord avec le sujet “\1” : “\-1” devrait être au féminin pluriel.
        --1>> =suggFemPlur(\-1)                                                                     && Accord avec le sujet “\1” : “\-1” devrait être au féminin pluriel.

TEST: elles n’ont tout de même pas été {{attaqué}}                                  ->> attaquées
TEST: Elles sont {{affamé}}.                                                        ->> affamées
TEST: Celles-là sont {{folle}}.
TEST: elles veulent être {{différente}}
TEST: Elle peut être {{observées}}.
TEST: Elles ne peuvent pas être {{observée}}.
27314
27315
27316
27317
27318
27319
27320
27321

27322
27323
27324
27325

27326
27327
27328
27329

27330
27331
27332
27333

27334
27335
27336
27337

27338
27339
27340
27341

27342
27343
27344
27345
27346
27347
27348
27321
27322
27323
27324
27325
27326
27327

27328
27329
27330
27331

27332
27333
27334
27335

27336
27337
27338
27339

27340
27341
27342
27343

27344
27345
27346
27347

27348
27349
27350
27351
27352
27353
27354
27355







-
+



-
+



-
+



-
+



-
+



-
+








__ppas_3pl_épi_verbe_état__
    ([iels|plusieurs]) ?[ne|n’]¿ ?[en|y]¿           (/_VE_)                                                 @:[NAQ].*:s¬:[GWYpi]
    ([iels|plusieurs]) ?[ne|n’]¿ ?[en|y]¿           (/_LVED_) ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ /_LVEF_   @:[NAQ].*:s¬:[GWYpi]
    ([iels|plusieurs]) ?[ne|n’]¿ [se|s’] ?[en|y]¿   (/_VEP_)                                                @:[NAQ].*:s¬:[GWYpi]
    ([iels|plusieurs]) ?[ne|n’]¿ [se|s’] ?[en|y]¿   (/_LVEPD_) ?/_LVEP_¿ ?/_LVEP_¿ ?/_LVEP_¿ /_LVEPF_       @:[NAQ].*:s¬:[GWYpi]
        <<- /ppas/ not value(\-1, "|légion|pléthore|néant|réalité|") and not morph(<1, ":[RV]") and morph(\2, ":(?:3p|P)") and not tag(<1, "_ceque_")
        --1>> =suggPlur(\-1)                                                                        && Accord avec le sujet “\1” : “\-1” devrait être au pluriel.
        --1>> =suggPlur(\-1)                                                                        && Accord avec le sujet “\1” : “\-1” devrait être au pluriel.

    /-iels  @:(?:[123][sp]|Y|[NAQ].*:s)¬:[GWpi]|>dire/
        <<- /ppas/ morphVC(\1, ">(?:être|devenir|redevenir)/.*:3p") and not value(\-1, "|légion|pléthore|néant|réalité|") and not value(<1, "|se|s’|")
        -2>> =suggPlur(\2)                                                                          && Accord avec le sujet “iels” : “\2” devrait être au pluriel.
        -2>> =suggPlur(\2)                                                                          && Accord avec le sujet “iels” : “\2” devrait être au pluriel.

    /-iels  @:(?:[123][sp]|[NAQ].*:s)¬:[GWYpi]|>dire/
        <<- /ppas/ morphVC(\1, ">(?:sembler|rester|demeurer|para[îi]tre)/.*:3p") and not value(\-1, "|légion|pléthore|néant|réalité|")
        -2>> =suggPlur(\2)                                                                          && Accord avec le sujet “iels” : “\2” devrait être au pluriel.
        -2>> =suggPlur(\2)                                                                          && Accord avec le sujet “iels” : “\2” devrait être au pluriel.

    /-iels  ?/_LVEI_¿ ?/_LVEI_¿ ?/_LVEI_¿ ?/_LVEI_¿ /_LVEIF_  @:[NAQ].*:s¬:[GWYpi]
        <<- /ppas/ tag(\1, "_LVEID_") and morphVC(\1, ":3p") and not value(\-1, "|légion|pléthore|néant|réalité|")
        --1>> =suggPlur(\-1)                                                                        && Accord avec le sujet “iels” : “\-1” devrait être au pluriel.
        --1>> =suggPlur(\-1)                                                                        && Accord avec le sujet “iels” : “\-1” devrait être au pluriel.

    [se|s’]  /-iels  @:[NAQ].*:s¬:[GWYpi]
        <<- /ppas/ tag(\2, "_VEPI_") and morphVC(\2, ":3p") and not value(\-1, "|légion|pléthore|néant|réalité|")
        --1>> =suggPlur(\-1)                                                                        && Accord avec le sujet “iels” : “\-1” devrait être au pluriel.
        --1>> =suggPlur(\-1)                                                                        && Accord avec le sujet “iels” : “\-1” devrait être au pluriel.

    [se|s’]  /-iels  ?/_LVEPI_¿ ?/_LVEPI_¿ ?/_LVEPI_¿ ?/_LVEPI_¿ /_LVEPIF_  @:[NAQ].*:s¬:[GWYpi]
        <<- /ppas/ tag(\2, "_LVEPID_") and morphVC(\2, ":3p") and not value(\-1, "|légion|pléthore|néant|réalité|")
        --1>> =suggPlur(\-1)                                                                        && Accord avec le sujet “iels” : “\-1” devrait être au pluriel.
        --1>> =suggPlur(\-1)                                                                        && Accord avec le sujet “iels” : “\-1” devrait être au pluriel.

TEST: iels paraissent {{faible}}
TEST: iels paraissent avoir été complètement {{prise}} de panique.                  ->> prises
TEST: iels doivent avoir été bien {{méchant}} pour être traité de la sorte.
TEST: iels ne peuvent devenir aussi {{perspicace}} avec tout cet alcool ingurgité.
TEST: iels pensent être {{désiré}}
TEST: iels n’y doivent pas être {{instruit}}, mais…
27390
27391
27392
27393
27394
27395
27396
27397

27398
27399
27400
27401
27402
27403

27404
27405
27406
27407

27408
27409
27410
27411
27412
27413
27414
27397
27398
27399
27400
27401
27402
27403

27404
27405
27406
27407
27408
27409

27410
27411
27412
27413

27414
27415
27416
27417
27418
27419
27420
27421







-
+





-
+



-
+







TEST: C’eût été foncer tête baissée dans la gueule du loup.
TEST: Leur passe-temps, ça a été faire n’importe quoi.
TEST: Ne pas ressortir le livre le plus remarqué de la collaboration aurait été faire acte de censure.
TEST: Partir aurait été assurer sa survie.
TEST: J’ai été conseiller régional


!!!! Participes passés: accord en nombre avec la conjugaison de « être » (et équivalent)          !!
!!!! Participes passés: accord en nombre avec la conjugaison de « être » (et équivalent)          !!

__ppas_être_accord_sing!3__
    (*WORD)      ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_VE_)                                                @:[NAQ].*:p¬:[GMWYsi]
    (*WORD)      ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_) ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ /_LVEF_  @:[NAQ].*:p¬:[GMWYsi]
        <<- /ppas/ not morph(\1, ":G") and morph(\2, ":[123]s", ":(?:C|N.*:p|[123]p)")
        --1>> =suggSing(\-1)                                                                        && Accord avec la forme verbale “\2” : “\-1” devrait être au singulier.
        --1>> =suggSing(\-1)                                                                        && Accord avec la forme verbale “\2” : “\-1” devrait être au singulier.

    [<start>|,|(]  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_VE_)                                                  @:[NAQ].*:p¬:[GMWYsi]
    [<start>|,|(]  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_) ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ /_LVEF_    @:[NAQ].*:p¬:[GMWYsi]
        <<- /ppas/ morph(\1, ":[123]s", ":(?:C|N.*:p|[123]p)") --1>> =suggSing(\-1)                 && Accord avec la forme verbale “\1” : “\-1” devrait être au singulier.
        <<- /ppas/ morph(\1, ":[123]s", ":(?:C|N.*:p|[123]p)") --1>> =suggSing(\-1)                 && Accord avec la forme verbale “\1” : “\-1” devrait être au singulier.

TEST: cette petite chienne à poil roux avait été longtemps {{malades}}.
TEST: Ce mâle malingre et rachitique qui est resté {{arrogants}} ?
TEST: folle qui n’affirme pas avoir été {{frappés}}.
TEST: homme qui n’en souhaite pas rester {{amnésiques}}.
TEST: Qui n’en semble pas être devenu {{malades}} ?
TEST: C’est le crime qui se vante, qui adore avoir semblé {{légitimes}}.
27425
27426
27427
27428
27429
27430
27431
27432

27433
27434
27435
27436

27437
27438
27439
27440
27441
27442
27443
27432
27433
27434
27435
27436
27437
27438

27439
27440
27441
27442

27443
27444
27445
27446
27447
27448
27449
27450







-
+



-
+







TEST: Non ! Nous, musulmans, ne sommes pas persécutés en France. Nous sommes dans notre pays des citoyens à part entière.


__ppas_être_accord_plur!3__
    (*WORD)      ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_VE_)                                                @:[NAQ].*:s¬:[GMWYpi]
    (*WORD)      ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_) ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ /_LVEF_  @:[NAQ].*:s¬:[GMWYpi]
        <<- /ppas/ not value(\-1, "|légion|pléthore|néant|réalité|") and not morph(\1, ":G") and morph(\2, ":[13]p")
        --1>> =suggPlur(\-1)                                                                                            && Accord avec la forme verbale “\2” : “\-1” devrait être au pluriel.
        --1>> =suggPlur(\-1)                                                                                            && Accord avec la forme verbale “\2” : “\-1” devrait être au pluriel.

    [<start>|,|(]  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_VE_)                                                  @:[NAQ].*:s¬:[GMWYpi]
    [<start>|,|(]  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_) ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ /_LVEF_    @:[NAQ].*:s¬:[GMWYpi]
        <<- /ppas/ not value(\-1, "|légion|pléthore|néant|réalité|") and morph(\1, ":[13]p") --1>> =suggPlur(\-1)                && Accord avec la forme verbale “\1” : “\-1” devrait être au pluriel.
        <<- /ppas/ not value(\-1, "|légion|pléthore|néant|réalité|") and morph(\1, ":[13]p") --1>> =suggPlur(\-1)                && Accord avec la forme verbale “\1” : “\-1” devrait être au pluriel.

TEST: lui et son staff y sont très {{favorable}}
TEST: Mais cet homme et son compagnon affirment être redevenus {{humble}}.
TEST: cette femme et cet homme n’affirment pas avoir été {{courtoise}}.
TEST: un chat et un chien qui n’en demeurent pas moins {{attaché}} à leur maître
TEST: des avocates qui n’imaginent pas devenir {{inapte}} pour si peu.
TEST: ces hommes qui n’y semblent pas avoir été {{élégant}}.
27480
27481
27482
27483
27484
27485
27486
27487

27488
27489
27490
27491
27492
27493
27494

27495
27496
27497
27498
27499
27500
27501
27502
27503



27504
27505
27506
27507
27508
27509
27510
27487
27488
27489
27490
27491
27492
27493

27494
27495
27496
27497
27498
27499
27500

27501
27502
27503
27504
27505
27506
27507



27508
27509
27510
27511
27512
27513
27514
27515
27516
27517







-
+






-
+






-
-
-
+
+
+








__ppas_sujet_être_accord_singulier__
    [<start>|,|(|/_start_]  [un|le|ce|cet]  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿          (/_VE_)                                                @:[AQ]¬:(?:[GWM]|[me]:[si])
    [<start>|,|(|/_start_]  [un|le|ce|cet]  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿          (/_LVED_) ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ /_LVEF_  @:[AQ]¬:(?:[GWM]|[me]:[si])
    [<start>|,|(|/_start_]  [un|le|ce|cet]  (*WORD)  ?qui¿  ?[ne|n’]¿  [se|s’] ?[en|y]¿  (/_VEP_)                                               @:[AQ]¬:(?:[GWM]|[me]:[si])
    [<start>|,|(|/_start_]  [un|le|ce|cet]  (*WORD)  ?qui¿  ?[ne|n’]¿  [se|s’] ?[en|y]¿  (/_LVEPD_) ?/_LVEP_¿ ?/_LVEP_¿ ?/_LVEP_¿ /_LVEPF_      @:[AQ]¬:(?:[GWM]|[me]:[si])
        <<- /ppas/ not value(\-1, "|légion|pléthore|néant|réalité|") and morph(\1, ":[NA].*:[me]", ":[GW]") and (morph(\2, ":[123]s") or (not tag(\1, "_enum_") and morph(\2, ":P")))
        --1>> =suggMasSing(\-1)                                                                     && Accord erroné : “\1” et “\-1” ne sont pas accordés.
        --1>> =suggMasSing(\-1)                                                                     && Accord erroné : “\1” et “\-1” ne sont pas accordés.

    [<start>|,|(|/_start_]  [une|la|ma|ta|sa|cette]  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿         (/_VE_)                                                @:[AQ]¬:(?:[GWM]|[fe]:[si])
    [<start>|,|(|/_start_]  [une|la|ma|ta|sa|cette]  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿         (/_LVED_) ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ /_LVEF_  @:[AQ]¬:(?:[GWM]|[fe]:[si])
    [<start>|,|(|/_start_]  [une|la|ma|ta|sa|cette]  (*WORD)  ?qui¿  ?[ne|n’]¿  [se|s’] ?[en|y]¿ (/_VEP_)                                               @:[AQ]¬:(?:[GWM]|[fe]:[si])
    [<start>|,|(|/_start_]  [une|la|ma|ta|sa|cette]  (*WORD)  ?qui¿  ?[ne|n’]¿  [se|s’] ?[en|y]¿ (/_LVEPD_) ?/_LVEP_¿ ?/_LVEP_¿ ?/_LVEP_¿ /_LVEPF_      @:[AQ]¬:(?:[GWM]|[fe]:[si])
        <<- /ppas/ not value(\-1, "|légion|pléthore|néant|réalité|") and morph(\1, ":[NA].*:[fe]", ":[GW]") and (morph(\2, ":[123]s") or (not tag(\1, "_enum_") and morph(\2, ":P")))
        --1>> =suggFemSing(\-1)                                                                     && Accord erroné : “\1” et “\-1” ne sont pas accordés.
        --1>> =suggFemSing(\-1)                                                                     && Accord erroné : “\1” et “\-1” ne sont pas accordés.

    [<start>|,|(|/_start_]  [l’|mon|ton|son|notre|votre|leur] (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿           (/_VE_)                                                 @:[AQ]¬:[GWM]
    [<start>|,|(|/_start_]  [l’|mon|ton|son|notre|votre|leur] (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿           (/_LVED_) ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ /_LVEF_   @:[AQ]¬:[GWM]
    [<start>|,|(|/_start_]  [l’|mon|ton|son|notre|votre|leur] (*WORD)  ?qui¿  ?[ne|n’]¿  [se|s’] ?[en|y]¿   (/_VEP_)                                                @:[AQ]¬:[GWM]
    [<start>|,|(|/_start_]  [l’|mon|ton|son|notre|votre|leur] (*WORD)  ?qui¿  ?[ne|n’]¿  [se|s’] ?[en|y]¿   (/_LVEPD_) ?/_LVEP_¿ ?/_LVEP_¿ ?/_LVEP_¿ /_LVEPF_       @:[AQ]¬:[GWM]
        <<- /ppas/ not value(\-1, "|légion|pléthore|néant|réalité|") and (morph(\2, ":[123]s") or (not tag(\1, "_enum_") and morph(\2, ":P"))) >>>
        <<- /ppas/ morph(\1, ":[NA].*:f", ":[me]") and morph(\-1, ":m", ":[fe]") --1>> =suggFemSing(\-1)                && Accord erroné : “\1” et “\-1” ne sont pas accordés. Mettez au féminin singulier.
        <<- /ppas/ __else__ and morph(\1, ":[NA].*:m", ":[fe]") and morph(\-1, ":f", ":[me]") --1>> =suggMasSing(\-1)   && Accord erroné : “\1” et “\-1” ne sont pas accordés. Mettez au masculin singulier.
        <<- /ppas/ __else__ and morph(\1, ":[NA].*:[si]") and morph(\-1, ":p", ":[si]") --1>> =suggSing(\-1)            && Accord erroné : “\1” et “\-1” ne sont pas accordés. Mettez au singulier.
        <<- /ppas/ morph(\1, ":[NA].*:f", ":[me]") and morph(\-1, ":m", ":[fe]") --1>> =suggFemSing(\-1)                && Accord erroné : “\1” et “\-1” ne sont pas accordés. Mettez au féminin singulier.
        <<- /ppas/ __else__ and morph(\1, ":[NA].*:m", ":[fe]") and morph(\-1, ":f", ":[me]") --1>> =suggMasSing(\-1)   && Accord erroné : “\1” et “\-1” ne sont pas accordés. Mettez au masculin singulier.
        <<- /ppas/ __else__ and morph(\1, ":[NA].*:[si]") and morph(\-1, ":p", ":[si]") --1>> =suggSing(\-1)            && Accord erroné : “\1” et “\-1” ne sont pas accordés. Mettez au singulier.

TEST: Un orage est {{annoncée}}.
TEST: ce chat ne sera pas {{euthanasiée}}
TEST: Le chien qui n’y sera pas {{traitée}}
TEST: cet homme qui ne cesse pas d’être {{ennuyée}}
TEST: cet espion qui sera {{jugée}} bientôt
TEST: la danse n’en est pas {{fini}} pour autant…
27539
27540
27541
27542
27543
27544
27545
27546
27547
27548



27549
27550
27551
27552
27553
27554
27555

27556
27557
27558
27559
27560
27561
27562

27563
27564
27565
27566
27567
27568
27569
27546
27547
27548
27549
27550
27551
27552



27553
27554
27555
27556
27557
27558
27559
27560
27561

27562
27563
27564
27565
27566
27567
27568

27569
27570
27571
27572
27573
27574
27575
27576







-
-
-
+
+
+






-
+






-
+







    [<start>|,|(|/_start_]  [les|ces|mes|tes|ses|nos|vos|leurs|quelques|plusieurs|$:B]  (*WORD)
        || ?qui¿  ?[ne|n’]¿  ?[en|y]¿           (/_LVED_) ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ /_LVEF_   @:[AQ]¬:[GWM]
    [<start>|,|(|/_start_]  [les|ces|mes|tes|ses|nos|vos|leurs|quelques|plusieurs|$:B]  (*WORD)
        || ?qui¿  ?[ne|n’]¿  [se|s’] ?[en|y]¿   (/_VEP_)                                                @:[AQ]¬:[GWM]
    [<start>|,|(|/_start_]  [les|ces|mes|tes|ses|nos|vos|leurs|quelques|plusieurs|$:B]  (*WORD)
        || ?qui¿  ?[ne|n’]¿  [se|s’] ?[en|y]¿   (/_LVEPD_) ?/_LVEP_¿ ?/_LVEP_¿ ?/_LVEP_¿ /_LVEPF_       @:[AQ]¬:[GWM]
        <<- /ppas/ not value(\-1, "|légion|pléthore|néant|réalité|") and morph(\2, ":(?:[123]p|P)") >>>
        <<- /ppas/ morph(\1, ":f", ":[me]") and morph(\-1, ":m", ":[fe]") --1>> =suggFemPlur(\-1)               && Accord erroné : “\1” et “\-1” ne sont pas accordés. Mettez au féminin pluriel.
        <<- /ppas/ __else__ and morph(\1, ":m", ":[fe]") and morph(\-1, ":f", ":[me]") --1>> =suggMasPlur(\-1)  && Accord erroné : “\1” et “\-1” ne sont pas accordés. Mettez au masculin pluriel.
        <<- /ppas/ __else__ and morph(\-1, ":s", ":[pi]") --1>> =suggPlur(\-1)                                  && Accord erroné : “\1” et “\-1” ne sont pas accordés. Mettez au pluriel.
        <<- /ppas/ morph(\1, ":f", ":[me]") and morph(\-1, ":m", ":[fe]") --1>> =suggFemPlur(\-1)               && Accord erroné : “\1” et “\-1” ne sont pas accordés. Mettez au féminin pluriel.
        <<- /ppas/ __else__ and morph(\1, ":m", ":[fe]") and morph(\-1, ":f", ":[me]") --1>> =suggMasPlur(\-1)  && Accord erroné : “\1” et “\-1” ne sont pas accordés. Mettez au masculin pluriel.
        <<- /ppas/ __else__ and morph(\-1, ":s", ":[pi]") --1>> =suggPlur(\-1)                                  && Accord erroné : “\1” et “\-1” ne sont pas accordés. Mettez au pluriel.

    [<start>|,|(|/_start_]  [certains|maints]  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿           (/_VE_)                                                 @:[AQ]¬:(?:[GW]|[me]:[pi])
    [<start>|,|(|/_start_]  [certains|maints]  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿           (/_LVED_) ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ /_LVEF_   @:[AQ]¬:(?:[GW]|[me]:[pi])
    [<start>|,|(|/_start_]  [certains|maints]  (*WORD)  ?qui¿  ?[ne|n’]¿  [se|s’] ?[en|y]¿   (/_VEP_)                                                @:[AQ]¬:(?:[GW]|[me]:[pi])
    [<start>|,|(|/_start_]  [certains|maints]  (*WORD)  ?qui¿  ?[ne|n’]¿  [se|s’] ?[en|y]¿   (/_LVEPD_) ?/_LVEP_¿ ?/_LVEP_¿ ?/_LVEP_¿ /_LVEPF_       @:[AQ]¬:(?:[GW]|[me]:[pi])
        <<- /ppas/ not value(\-1, "|légion|pléthore|néant|réalité|") and morph(\1, ":[NA].*:[me]:[pi]", ":[GW]") and morph(\2, ":(?:[123]p|P)")
        --1>> =suggMasPlur(\-1)                                                                     && Accord erroné : “\1” et “\-1” ne sont pas accordés. Mettez au masculin pluriel.
        --1>> =suggMasPlur(\-1)                                                                     && Accord erroné : “\1” et “\-1” ne sont pas accordés. Mettez au masculin pluriel.

    [<start>|,|(|/_start_]  [certaines|maintes]  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿          (/_VE_)                                                 @:[AQ]¬:(?:[GW]|[fe]:[pi])
    [<start>|,|(|/_start_]  [certaines|maintes]  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿          (/_LVED_) ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ /_LVEF_   @:[AQ]¬:(?:[GW]|[fe]:[pi])
    [<start>|,|(|/_start_]  [certaines|maintes]  (*WORD)  ?qui¿  ?[ne|n’]¿  [se|s’] ?[en|y]¿  (/_VEP_)                                                @:[AQ]¬:(?:[GW]|[me]:[pi])
    [<start>|,|(|/_start_]  [certaines|maintes]  (*WORD)  ?qui¿  ?[ne|n’]¿  [se|s’] ?[en|y]¿  (/_LVEPD_) ?/_LVEP_¿ ?/_LVEP_¿ ?/_LVEP_¿ /_LVEPF_       @:[AQ]¬:(?:[GW]|[me]:[pi])
        <<- /ppas/ not value(\-1, "|légion|pléthore|néant|réalité|") and morph(\1, ":[NA].*:[fe]:[pi]", ":[GW]") and morph(\2, ":(?:[123]p|P)")
        --1>> =suggFemPlur(\-1)                                                                     && Accord erroné : “\1” et “\-1” ne sont pas accordés. Mettez au féminin pluriel.
        --1>> =suggFemPlur(\-1)                                                                     && Accord erroné : “\1” et “\-1” ne sont pas accordés. Mettez au féminin pluriel.

TEST: les femmes sont vraiment {{partis}}                                                   ->> parties
TEST: les hommes n’en sont pas tout à fait {{fâchées}}                                      ->> fâchés
TEST: plusieurs invités qui n’en sont pas {{contentes}}
TEST: les réunions sans cesse reportées qui sont {{annulés}}
TEST: les hommes croyant être {{instruites}}
TEST: les ouvriers ayant été {{persécutée}} par leur hiérarchie                             ->> persécutés
27592
27593
27594
27595
27596
27597
27598
27599
27600
27601



27602
27603
27604
27605
27606
27607
27608
27599
27600
27601
27602
27603
27604
27605



27606
27607
27608
27609
27610
27611
27612
27613
27614
27615







-
-
-
+
+
+








__ppas_nom_propre_être_accord__
    [<start>|,|(|/_start_]  ($:M)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿           (/_VE_)                                                 @:[AQ]¬:[GMW]
    [<start>|,|(|/_start_]  ($:M)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿           (/_LVED_) ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ /_LVEF_   @:[AQ]¬:[GMW]
    [<start>|,|(|/_start_]  ($:M)  ?qui¿  ?[ne|n’]¿  [se|s’]  ?[en|y]¿  (/_VEP_)                                                @:[AQ]¬:[GMW]
    [<start>|,|(|/_start_]  ($:M)  ?qui¿  ?[ne|n’]¿  [se|s’]  ?[en|y]¿  (/_LVEPD_) ?/_LVEP_¿ ?/_LVEP_¿ ?/_LVEP_¿ /_LVEPF_       @:[AQ]¬:[GMW]
        <<- /ppas/ not tag(\1, "_enum_") and not value(\-1, "|légion|pléthore|néant|réalité|") and (morph(\2, ":[123]s") or (not tag(\1, "_enum_") and morph(\2, ":P"))) >>>
        <<- /ppas/ morph(\1, ":M.*:f", ":[me]") and morph(\-1, ":[AQ].*:m", ":[fe]") --1>> =suggFemSing(\-1)                && Accord erroné : “\1” et “\-1” ne sont pas accordés. Mettez au féminin pluriel.
        <<- /ppas/ __else__ and morph(\1, ":M.*:m", ":[fe]") and morph(\-1, ":[AQ].*:f", ":[me]") --1>> =suggMasSing(\-1)   && Accord erroné : “\1” et “\-1” ne sont pas accordés. Mettez au masculin pluriel.
        <<- /ppas/ __else__ and morph(\-1, ":p", ":[AQ].*:[si]") --1>> =suggSing(\-1)                                       && Accord erroné : “\1” et “\-1” ne sont pas accordés. Mettez au pluriel.
        <<- /ppas/ morph(\1, ":M.*:f", ":[me]") and morph(\-1, ":[AQ].*:m", ":[fe]") --1>> =suggFemSing(\-1)                && Accord erroné : “\1” et “\-1” ne sont pas accordés. Mettez au féminin pluriel.
        <<- /ppas/ __else__ and morph(\1, ":M.*:m", ":[fe]") and morph(\-1, ":[AQ].*:f", ":[me]") --1>> =suggMasSing(\-1)   && Accord erroné : “\1” et “\-1” ne sont pas accordés. Mettez au masculin pluriel.
        <<- /ppas/ __else__ and morph(\-1, ":p", ":[AQ].*:[si]") --1>> =suggSing(\-1)                                       && Accord erroné : “\1” et “\-1” ne sont pas accordés. Mettez au pluriel.

TEST: Marianne semble devenue {{colériques}}
TEST: Pauline n’affirme pas avoir été {{vaincu}} pour autant
TEST: Sara n’en croit pas cependant être devenue {{aigries}}
TEST: Patrick est devenu {{folles}}
TEST: Mohammed ne semble pas avoir paru {{dingues}}
TEST: Isaac n’en estime pas réellement avoir semblé {{faibles}}
27698
27699
27700
27701
27702
27703
27704
27705

27706
27707
27708
27709

27710
27711
27712
27713

27714
27715
27716
27717

27718
27719
27720
27721
27722
27723
27724
27725
27726
27727
27728
27729
27730

27731
27732
27733
27734
27735

27736
27737
27738
27739
27740

27741
27742
27743
27744
27745

27746
27747
27748
27749
27750

27751
27752
27753
27754

27755
27756
27757
27758

27759
27760
27761
27762

27763
27764
27765
27766

27767
27768

27769
27770
27771
27772
27773
27774

27775
27776
27777
27778
27779
27780
27781
27705
27706
27707
27708
27709
27710
27711

27712
27713
27714
27715

27716
27717
27718
27719

27720
27721
27722
27723

27724
27725
27726
27727
27728
27729
27730
27731
27732
27733
27734
27735
27736

27737
27738
27739
27740
27741

27742
27743
27744
27745
27746

27747
27748
27749
27750
27751

27752
27753
27754
27755
27756

27757
27758
27759
27760

27761
27762
27763
27764

27765
27766
27767
27768

27769
27770
27771
27772

27773
27774

27775
27776
27777
27778
27779
27780

27781
27782
27783
27784
27785
27786
27787
27788







-
+



-
+



-
+



-
+












-
+




-
+




-
+




-
+




-
+



-
+



-
+



-
+



-
+

-
+





-
+








!!!! Participes passés après se croire/considérer/montrer/penser/révéler/savoir/sentir/voir/vouloir !!


__ppas_part_présent_infinitif__
    [me|m’|te|t’|l’]  ?[en|y]¿  [avouant|faisant|montrant|pensant|révélant|sachant|sentant|supposant|tenant|voyant|voulant]  @:[NA].*:p¬:(?:[GWYsi]|V0)
    [me|m’|te|t’|l’]  ?[en|y]¿  [avouer|faire|montrer|penser|révéler|savoir|sentir|supposer|tenir|voir|vouloir]              @:[NA].*:p¬:(?:[GWYsi]|V0)
        <<- /ppas/ --1>> =suggSing(\-1)                                 && Accord avec le pronom objet “\1” : “\-1” devrait être au singulier.
        <<- /ppas/ --1>> =suggSing(\-1)                                 && Accord avec le pronom objet “\1” : “\-1” devrait être au singulier.

    le                          [avouant|faisant|montrant|pensant|révélant|sachant|sentant|supposant|tenant|voyant|voulant]  @:[NA].*:[fp]¬:(?:[GWY]|V0|m:[si])
    le                          [avouer|faire|montrer|penser|révéler|savoir|sentir|supposer|tenir|voir|vouloir]              @:[NA].*:[fp]¬:(?:[GWY]|V0|m:[si])
        <<- /ppas/ --1>> =suggMasSing(\-1)                              && Accord avec le pronom objet “\1” : “\-1” devrait être au masculin singulier.
        <<- /ppas/ --1>> =suggMasSing(\-1)                              && Accord avec le pronom objet “\1” : “\-1” devrait être au masculin singulier.

    la                          [avouant|faisant|montrant|pensant|révélant|sachant|sentant|supposant|tenant|voyant|voulant]  @:[NA].*:[mp]¬:(?:[GWY]|V0|f:[si])
    la                          [avouer|faire|montrer|penser|révéler|savoir|sentir|supposer|tenir|voir|vouloir]              @:[NA].*:[mp]¬:(?:[GWY]|V0|f:[si])
        <<- /ppas/ --1>> =suggFemSing(\-1)                              && Accord avec le pronom objet “\1” : “\-1” devrait être au féminin singulier.
        <<- /ppas/ --1>> =suggFemSing(\-1)                              && Accord avec le pronom objet “\1” : “\-1” devrait être au féminin singulier.

    les                         [avouant|faisant|montrant|pensant|révélant|sachant|sentant|supposant|tenant|voyant|voulant]  @:[NA].*:s¬:(?:[GWY]|V0|[pi])
    les                         [avouer|faire|montrer|penser|révéler|savoir|sentir|supposer|tenir|voir|vouloir]              @:[NA].*:s¬:(?:[GWY]|V0|[pi])
        <<- /ppas/ --1>> =suggPlur(\-1)                                 && Accord avec le pronom objet “\1” : “\-1” devrait être au pluriel.
        <<- /ppas/ --1>> =suggPlur(\-1)                                 && Accord avec le pronom objet “\1” : “\-1” devrait être au pluriel.

TEST: me sachant {{libres}}, elle renonça.                                          ->> libre
TEST: te voyant {{dégagées}} de toute occupation, il crut bon de t’importuner.      ->> dégagée
TEST: le sentant {{incomprise}}                                                     ->> incompris
TEST: la voir {{persécuté}} ainsi me fit mal au cœur                                ->> persécutée
TEST: les montrer {{inflexible}} nous aidera à les convaincre.                      ->> inflexibles
TEST: la tenant {{prêt}} à bondir                                                   ->> prête


__ppas_le_verbe_pensée__
    le [>faire|>trouver|>considérer|>croire|>imaginer|>rendre|voilà]  *WORD
        <<- /ppas/ morph(\3, ":[AQ].*:(?:[me]:p|f)", ":(?:G|Y|V0|P|[AQ].*:m:[is])") and not (morph(\2, ":Y") and morph(\3, ":3s"))
        -3>> =suggMasSing(\3)                                                       && Accord avec le COD “le” : « \3 » doit être au masculin singulier.
        -3>> =suggMasSing(\3)                                                       && Accord avec le COD “le” : « \3 » doit être au masculin singulier.

__ppas_la_verbe_pensée__
    la [>faire|>trouver|>considérer|>croire|>imaginer|>rendre|voilà]  *WORD
        <<- /ppas/ morph(\3, ":[AQ].*:(?:[fe]:p|m)", ":(?:G|Y|V0|P|[AQ]:f:[is])") and not (morph(\2, ":Y") and morph(\2, ":3s"))
        -3>> =suggFemSing(\3)                                                       && Accord avec le COD “la” : « \2 » doit être au féminin singulier.
        -3>> =suggFemSing(\3)                                                       && Accord avec le COD “la” : « \2 » doit être au féminin singulier.

__ppas_les_verbe_pensée__
    les [>faire|>trouver|>considérer|>croire|>imaginer|>rendre|voilà]  *WORD
        <<- /ppas/ morph(\3, ":[AQ].*:s", ":(?:G|Y|V0|P|[AQ].*:[ip])") and not (morph(\2, ":Y") and morph(\3, ":3s"))
        -3>> =suggPlur(\3)                                                          && Accord avec le COD “les” : « \2 » doit être au pluriel.
        -3>> =suggPlur(\3)                                                          && Accord avec le COD “les” : « \2 » doit être au pluriel.

__ppas_me_te_verbe_pensée__
    [me|m’|te|t’|l’] [>faire|>trouver|>considérer|>croire|>imaginer|>rendre|voilà]  *WORD
        <<- /ppas/ morph(\3, ":[AQ].*:p", ":(?:G|Y|V0|P|[AQ].*:[is])") and not (morph(\2, ":Y") and morph(\3, ":3s"))
        -3>> =suggSing(\3)                                                          && Accord avec le pronom “\1” : « \3 » doit être au singulier.
        -3>> =suggSing(\3)                                                          && Accord avec le pronom “\1” : « \3 » doit être au singulier.

__ppas_se_verbe_pensée__
    il [se|s’] [>trouver|>considérer|>croire|>imaginer|>rendre]  *WORD
        <<- /ppas/ morph(\3, ":3s") and morph(\4, ":[AQ].*:[fp]", ":(?:G|Y|V0|P|[AQ].*:m:[si])")
        -4>> =suggMasSing(\4)                                                       && Accord avec “il” : « \4 » doit être au masculin singulier.
        -4>> =suggMasSing(\4)                                                       && Accord avec “il” : « \4 » doit être au masculin singulier.

    elle [se|s’] [>trouver|>considérer|>croire|>imaginer|>rendre]  *WORD
        <<- /ppas/ morph(\3, ":3s") and morph(\4, ":[AQ].*:[mp]", ":(?:G|Y|V0|P|[AQ].*:f:[si])") and not morph(<1, ":R")
        -4>> =suggFemSing(\4)                                                       && Accord avec “elle” : « \4 » doit être au féminin singulier.
        -4>> =suggFemSing(\4)                                                       && Accord avec “elle” : « \4 » doit être au féminin singulier.

    ils [se|s’] [>trouver|>considérer|>croire|>imaginer|>rendre]  *WORD
        <<- /ppas/ morph(\3, ":3p") and morph(\4, ":[AQ].*:[fs]", ":(?:G|Y|V0|P|[AQ].*:m:[pi])")
        -4>> =suggMasPlur(\4)                                                       && Accord avec “ils” : « \4 » doit être au masculin pluriel.
        -4>> =suggMasPlur(\4)                                                       && Accord avec “ils” : « \4 » doit être au masculin pluriel.

    elles [se|s’] [>trouver|>considérer|>croire|>imaginer|>rendre]  *WORD
        <<- /ppas/ morph(\3, ":3p") and morph(\4, ":[AQ].*:[ms]", ":(?:G|Y|V0|P|[AQ].*:f:[pi])") and not morph(<1, ":R")
        -4>> =suggFemPlur(\4)                                                       && Accord avec “elles” : « \4 » doit être au féminin pluriel.
        -4>> =suggFemPlur(\4)                                                       && Accord avec “elles” : « \4 » doit être au féminin pluriel.

    [se|s’] [>trouver|>considérer|>croire|>imaginer|>rendre]  *WORD
        <<- /ppas/ morph(\2, ":3s") and morph(\3, ":[AQ].*:p", ":(?:G|Y|V0|P|[AQ].*:[si])")
        -3>> =suggSing(\3)                                                          && Accord avec le pronom “se” (le verbe étant au singulier) : « \3 » doit être au singulier.
        -3>> =suggSing(\3)                                                          && Accord avec le pronom “se” (le verbe étant au singulier) : « \3 » doit être au singulier.
        <<- /ppas/ __else__ and morph(\2, ":3p") and morph(\3, ":[AQ].*:s", ":(?:G|Y|V0|[AQ].*:[pi])")
        -3>> =suggPlur(\3)                                                          && Accord avec le pronom “se” (le verbe étant au pluriel) : « \3 » doit être au pluriel.
        -3>> =suggPlur(\3)                                                          && Accord avec le pronom “se” (le verbe étant au pluriel) : « \3 » doit être au pluriel.

__ppas_nous_verbe_pensée__
    nous [>faire|>trouver|>considérer|>croire|>imaginer|>rendre|voilà]  *WORD
        <<- /ppas/ ( not morph(\2, ":1p") or (morph(\2, ":1p") and value(<1, "|nous|ne|")) )
            and morph(\3, ":[AQ].*:s", ":(?:G|Y|V0|P|[AQ].*:[ip])") and not (morph(\2, ":Y") and morph(\3, ":3s"))
        -3>> =suggPlur(\3)                                                          && Accord avec le pronom “nous” : « \3 » doit être au pluriel.
        -3>> =suggPlur(\3)                                                          && Accord avec le pronom “nous” : « \3 » doit être au pluriel.

TEST: ces hommes le rendent {{dingues}}
TEST: Ce con me considère {{stupides}}
TEST: la commandante nous trouve {{stupide}}
TEST: Je les crois {{capable}} du pire
TEST: la voilà {{perdu}}
TEST: la voilà {{forcé}} à abandonner
27822
27823
27824
27825
27826
27827
27828
27829

27830
27831
27832

27833
27834
27835
27836
27837
27838
27839
27840
27841
27842
27843

27844
27845
27846
27847

27848
27849
27850
27851

27852
27853
27854
27855

27856
27857
27858
27859

27860
27861
27862
27863

27864
27865
27866
27867

27868
27869
27870
27871
27872
27873
27874
27829
27830
27831
27832
27833
27834
27835

27836
27837
27838

27839
27840
27841
27842
27843
27844
27845
27846
27847
27848
27849

27850
27851
27852
27853

27854
27855
27856
27857

27858
27859
27860
27861

27862
27863
27864
27865

27866
27867
27868
27869

27870
27871
27872
27873

27874
27875
27876
27877
27878
27879
27880
27881







-
+


-
+










-
+



-
+



-
+



-
+



-
+



-
+



-
+







TEST: ces psychologues qu’elle trouvait {{absurde}}                                         ->> absurdes
TEST: les petits que tu trouvais {{froid}}                                                  ->> froids
TEST: mes godasses qu’il trouvait {{affreux}}                                               ->> affreuses


__ppas_falloir_être__
    il  [me|m’|te|t’|lui]   >falloir  [être|devenir|redevenir|demeurer|paraître|paraitre|rester]  @:[NA].*:p¬:(?:[GWY]|V0|[si])
        <<- /ppas/ --1>> =suggSing(\-1)                                                             && Accord avec le pronom « \2 » : « \-1 » devrait être au singulier.
        <<- /ppas/ --1>> =suggSing(\-1)                                                             && Accord avec le pronom « \2 » : « \-1 » devrait être au singulier.

    il  [nous|leur]         >falloir  [être|devenir|redevenir|demeurer|paraître|paraitre|rester]  @:[NA].*:s¬:(?:[GWY]|V0|[pi])
        <<- /ppas/ --1>> =suggPlur(\-1)                                                             && Accord avec le pronom « \2 » : « \-1 » devrait être au pluriel.
        <<- /ppas/ --1>> =suggPlur(\-1)                                                             && Accord avec le pronom « \2 » : « \-1 » devrait être au pluriel.

TEST: il me faut être {{meilleurs}} que ces gars-là                             ->> meilleur
TEST: il leur faut être {{prudent}}                                             ->> prudents
TEST: il lui faut être malin
TEST: il nous faut être malines


__ppas_pronom_sujet_verbe_état_verbe__
    [<start>|,|(]  [je|tu|iel] ?[ne|n’]¿ ?[en|y]¿ /_VE_                                                    @:[123][sp]¬:[NAQGM]
    [<start>|,|(]  [je|tu|iel] ?[ne|n’]¿ ?[en|y]¿ /_LVED_ ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ /_LVEF_      @:[123][sp]¬:[NAQGM]
        <<- /ppas/ --1>> =suggVerbPpas(\-1, ":s")                                                   && Accord avec le sujet “\2” : “\-1” devrait être un participe passé singulier.
        <<- /ppas/ --1>> =suggVerbPpas(\-1, ":s")                                                   && Accord avec le sujet “\2” : “\-1” devrait être un participe passé singulier.

    [<start>|,|(]  il ?[ne|n’]¿ ?[en|y]¿ /_VE_                                                             @:[123][sp]¬:[NAQGM]
    [<start>|,|(]  il ?[ne|n’]¿ ?[en|y]¿ /_LVED_ ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ /_LVEF_               @:[123][sp]¬:[NAQGM]
        <<- /ppas/ --1>> =suggVerbPpas(\-1, ":m:s")                                                 && Accord avec le sujet “\2” : “\-1” devrait être un participe passé masculin singulier.
        <<- /ppas/ --1>> =suggVerbPpas(\-1, ":m:s")                                                 && Accord avec le sujet “\2” : “\-1” devrait être un participe passé masculin singulier.

    [<start>|,|(]  elle ?[ne|n’]¿ ?[en|y]¿ /_VE_                                                           @:[123][sp]¬:[NAQGM]
    [<start>|,|(]  elle ?[ne|n’]¿ ?[en|y]¿ /_LVED_ ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ /_LVEF_             @:[123][sp]¬:[NAQGM]
        <<- /ppas/ --1>> =suggVerbPpas(\-1, ":f:s")                                                 && Accord avec le sujet “\2” : “\-1” devrait être un participe passé féminin singulier.
        <<- /ppas/ --1>> =suggVerbPpas(\-1, ":f:s")                                                 && Accord avec le sujet “\2” : “\-1” devrait être un participe passé féminin singulier.

    [<start>|,|(]  [nous|iels] ?[ne|n’]¿ ?[en|y]¿ /_VE_                                                    @:[123][sp]¬:[NAQGM]
    [<start>|,|(]  [nous|iels] ?[ne|n’]¿ ?[en|y]¿ /_LVED_ ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ /_LVEF_      @:[123][sp]¬:[NAQGM]
        <<- /ppas/ --1>> =suggVerbPpas(\-1, ":p")                                                   && Accord avec le sujet “\2” : “\-1” devrait être un participe passé pluriel.
        <<- /ppas/ --1>> =suggVerbPpas(\-1, ":p")                                                   && Accord avec le sujet “\2” : “\-1” devrait être un participe passé pluriel.

    [<start>|,|(]  [on|vous] ?[ne|n’]¿ ?[en|y]¿ /_VE_                                                      @:[123][sp]¬:[NAQGM]
    [<start>|,|(]  [on|vous] ?[ne|n’]¿ ?[en|y]¿ /_LVED_ ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ /_LVEF_        @:[123][sp]¬:[NAQGM]
        <<- /ppas/ --1>> =suggVerbPpas(\-1)                                                         && Accord avec le sujet “\2” : “\-1” devrait être un participe passé.
        <<- /ppas/ --1>> =suggVerbPpas(\-1)                                                         && Accord avec le sujet “\2” : “\-1” devrait être un participe passé.

    [<start>|,|(]  ils ?[ne|n’]¿ ?[en|y]¿ /_VE_                                                            @:[123][sp]¬:[NAQGM]
    [<start>|,|(]  ils ?[ne|n’]¿ ?[en|y]¿ /_LVED_ ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ /_LVEF_              @:[123][sp]¬:[NAQGM]
        <<- /ppas/ --1>> =suggVerbPpas(\-1, ":m:p")                                                 && Accord avec le sujet “\2” : “\-1” devrait être un participe passé masculin pluriel.
        <<- /ppas/ --1>> =suggVerbPpas(\-1, ":m:p")                                                 && Accord avec le sujet “\2” : “\-1” devrait être un participe passé masculin pluriel.

    [<start>|,|(]  elles ?[ne|n’]¿ ?[en|y]¿ /_VE_                                                          @:[123][sp]¬:[NAQGM]
    [<start>|,|(]  elles ?[ne|n’]¿ ?[en|y]¿ /_LVED_ ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ /_LVEF_            @:[123][sp]¬:[NAQGM]
        <<- /ppas/ --1>> =suggVerbPpas(\-1, ":f:p")                                                 && Accord avec le sujet “\2” : “\-1” devrait être un participe passé féminin pluriel.
        <<- /ppas/ --1>> =suggVerbPpas(\-1, ":f:p")                                                 && Accord avec le sujet “\2” : “\-1” devrait être un participe passé féminin pluriel.

TEST: je ne parais pas {{épuise}} par mon périple, mais je le suis.
TEST: j’ai été {{bouleverse}} par ces aveux.
TEST: il sait être {{désire}}
TEST: elle imagine être {{désire}}
TEST: elle semble avoir été {{sonne}}
TEST: iel semble être {{ignore}}
28031
28032
28033
28034
28035
28036
28037
28038

28039
28040
28041

28042
28043
28044
28045


28046
28047
28048
28049


28050
28051
28052

28053
28054
28055

28056
28057
28058
28059
28060
28061
28062
28038
28039
28040
28041
28042
28043
28044

28045
28046
28047

28048
28049
28050


28051
28052
28053
28054


28055
28056
28057
28058

28059
28060
28061

28062
28063
28064
28065
28066
28067
28068
28069







-
+


-
+


-
-
+
+


-
-
+
+


-
+


-
+







TEST: Sa robe a l’air élégant des créations des grands couturiers.
TEST: Ses amies ont l’air distant, mais l’âme généreuse.



__ppas_ayant_été_pronom_ppas__
    ayant  été  lui-même  @:[QA].*:[fp]¬:[me][si]
        <<- /ppas/ --1>> =suggMasSing(\-1)                              && Accord avec “\3” : “\-1” devrait être au masculin singulier.
        <<- /ppas/ --1>> =suggMasSing(\-1)                              && Accord avec “\3” : “\-1” devrait être au masculin singulier.

    ayant  été  elle-même  @:[QA].*:[mp]¬:[fe][si]
        <<- /ppas/ --1>> =suggFemSing(\-1)                              && Accord avec “\3” : “\-1” devrait être au féminin singulier.
        <<- /ppas/ --1>> =suggFemSing(\-1)                              && Accord avec “\3” : “\-1” devrait être au féminin singulier.

    ayant  été  [nous-même|vous-même|iel-même]  @:[QA].*:p¬:[si]
        <<- /ppas/ -3>> \3s                                             && Accord avec “\-1” : “\3” devrait être au pluriel.
        <<- /ppas/ __also__ --1>> =suggSing(\-1)                        && Accord avec “\3” : “\-1” devrait être au singulier.
        <<- /ppas/ -3>> \3s                                             && Accord avec “\-1” : “\3” devrait être au pluriel.
        <<- /ppas/ __also__ --1>> =suggSing(\-1)                        && Accord avec “\3” : “\-1” devrait être au singulier.

    ayant  été  [nous-mêmes|vous-mêmes|iels-mêmes]  @:[QA].*:s¬:[pi]
        <<- /ppas/ -3>> =\3[:-1]                                        && Accord avec “\-1” : “\3” devrait être au singulier.
        <<- /ppas/ __also__ --1>> =suggPlur(\-1)                        && Accord avec “\3” : “\-1” devrait être au pluriel.
        <<- /ppas/ -3>> =\3[:-1]                                        && Accord avec “\-1” : “\3” devrait être au singulier.
        <<- /ppas/ __also__ --1>> =suggPlur(\-1)                        && Accord avec “\3” : “\-1” devrait être au pluriel.

    ayant  été  eux-mêmes  @:[QA].*:[fs]¬:[me][pi]
        <<- /ppas/ --1>> =suggMasPlur(\-1)                              && Accord avec “\3” : “\-1” devrait être au masculin pluriel.
        <<- /ppas/ --1>> =suggMasPlur(\-1)                              && Accord avec “\3” : “\-1” devrait être au masculin pluriel.

    ayant  été  elles-mêmes  @:[QA].*:[ms]¬:[fe][pi]
        <<- /ppas/ --1>> =suggFemPlur(\-1)                              && Accord avec “\3” : “\-1” devrait être au féminin pluriel.
        <<- /ppas/ --1>> =suggFemPlur(\-1)                              && Accord avec “\3” : “\-1” devrait être au féminin pluriel.

    ayant été [lui-même|elle-même|nous-même|vous-même|nous-mêmes|vous-mêmes|eux-mêmes|elles-mêmes]
        <<- ~3>> *

TEST: ayant été lui-même {{attaquée}}                               ->> attaqué
TEST: ayant été elle-même {{pris}} dans la tourmente                ->> prise
TEST: ayant été {{vous-même}} {{blâmés}}                            ->> vous-mêmes|||blâmé
28188
28189
28190
28191
28192
28193
28194
28195

28196
28197
28198
28199
28200
28201
28202
28203
28204
28205
28206
28207
28208

28209
28210
28211
28212
28213
28214
28215
28216
28217
28218
28219
28220
28221
28222
28223
28224
28225
28226

28227
28228
28229
28230
28231
28232
28233
28195
28196
28197
28198
28199
28200
28201

28202
28203
28204
28205
28206
28207
28208
28209
28210
28211
28212
28213
28214

28215
28216
28217
28218
28219
28220
28221
28222
28223
28224
28225
28226
28227
28228
28229
28230
28231
28232

28233
28234
28235
28236
28237
28238
28239
28240







-
+












-
+

















-
+







TEST: Le théâtre, en l’occurrence, a charge de sensibiliser
TEST: Cet homme a nui à notre existence.


__ppas_les_avoir__
    les  >avoir  @:V[0-3]..t.*:Q.*:s¬:[GWpi]
        <<- /ppas/ morph(\2, ":V0a") -3>> =suggPlur(\3)
        && Accord avec le COD « les » : Le participe passé « \3 » devrait être au pluriel (et accordé en genre).|http://fr.wikipedia.org/wiki/Accord_du_participe_pass%C3%A9_en_fran%C3%A7ais
        && Accord avec le COD « les » : Le participe passé « \3 » devrait être au pluriel (et accordé en genre).|http://fr.wikipedia.org/wiki/Accord_du_participe_pass%C3%A9_en_fran%C3%A7ais

TEST: je les avais {{trompé}} avec mon baratin.
TEST: les avoirs reçus ne couvrent pas toutes les dépenses.
TEST: Mes joueurs, je les ai fait reposer
TEST: Mes joueurs, je les ai fait se reposer
TEST: tu les as fait élever


__ppas_nous_avoir__
    nous  >avoir  *WORD  <end>
        <<- /ppas/ morph(\2, ":V0a", ":1p") and morph(\3, ":V[0-3]..t_.*:Q.*:s", ":[GWpi]") and morph(<1, ":(?:M|Os|N)", ":R") and not value(<2, "|que|qu’|")
        -3>> =suggPlur(\3)
        && Accord avec le COD « nous » : Le participe passé « \3 » devrait être au pluriel (et accordé en genre).|http://fr.wikipedia.org/wiki/Accord_du_participe_pass%C3%A9_en_fran%C3%A7ais
        && Accord avec le COD « nous » : Le participe passé « \3 » devrait être au pluriel (et accordé en genre).|http://fr.wikipedia.org/wiki/Accord_du_participe_pass%C3%A9_en_fran%C3%A7ais

TEST: Ces maisons nous avaient {{subjugué}}.
TEST: Alexandre aujourd’hui nous a {{quitté}}
TEST: C’est mot pour mot un script qu’on nous a filé.
TEST: Nous avons donné.
TEST: ces cons nous ont donnés.
TEST: ils nous ont vendus.
TEST: elles nous ont dit : “c’est la fin”.
TEST: Il nous avait dit que…
TEST: c’est la plus belle lettre que le Comité nous a envoyée.
TEST: tu nous as fait élever
TEST: dans le genre que la biologie nous a assigné


__ppas_l_avoir__
    l’ >avoir @:V[0-3]..t.*:Q.*:p¬:[GWsi]
        <<- /ppas/ -3>> =suggSing(\3)
        && Accord avec « l’ » : le participe passé « \3 » devrait être au singulier (et accordé en genre).|http://fr.wikipedia.org/wiki/Accord_du_participe_pass%C3%A9_en_fran%C3%A7ais
        && Accord avec « l’ » : le participe passé « \3 » devrait être au singulier (et accordé en genre).|http://fr.wikipedia.org/wiki/Accord_du_participe_pass%C3%A9_en_fran%C3%A7ais

TEST: ils l’avaient {{retrouvés}}.
TEST: Vous l’avez {{trouvez}}.                                                    ->> trouvé
TEST: Nous l’avons {{mangés}}.
TEST: Nous l’avons {{mangées}}.
TEST: Ils ne me l’ont pas {{donnés}}
TEST: il faillit agir, mais l’ayant {{remarqués}}, il passa son chemin.
28284
28285
28286
28287
28288
28289
28290
28291

28292
28293
28294
28295

28296
28297
28298
28299
28300
28301
28302
28303
28304
28305
28306
28307
28308
28309
28310

28311
28312

28313
28314
28315
28316

28317
28318
28319
28320

28321
28322
28323
28324

28325
28326
28327
28328
28329
28330
28331
28291
28292
28293
28294
28295
28296
28297

28298
28299
28300
28301

28302
28303
28304
28305
28306
28307
28308
28309
28310
28311
28312
28313
28314
28315
28316

28317
28318

28319
28320
28321
28322

28323
28324
28325
28326

28327
28328
28329
28330

28331
28332
28333
28334
28335
28336
28337
28338







-
+



-
+














-
+

-
+



-
+



-
+



-
+







TEST: Pourquoi m’avoir {{ignorés}} ainsi ?
TEST: sans avoir {{ignorée}} le problème.


## avoir avec participe passé
__ppas_m_t_l_avoir__
    [l’|m’]  ?[en|y]¿  >avoir  @:(?:Y|[123][sp])¬:[QGWMX]
        <<- /ppas/ --1>> =suggVerbPpas(\-1, ":m:s")         && Confusion : employez un participe passé.
        <<- /ppas/ --1>> =suggVerbPpas(\-1, ":m:s")         && Confusion : employez un participe passé.

    t’  ?[en|y]¿  >avoir  @:(?:Y|[123][sp])¬:[QGWMX]
        <<- /ppas/ not value(\-1, "|confiance|charge|cours|envie|peine|prise|crainte|cure|affaire|hâte|force|recours|")
        --1>> =suggVerbPpas(\-1, ":m:s")                    && Confusion : employez un participe passé.
        --1>> =suggVerbPpas(\-1, ":m:s")                    && Confusion : employez un participe passé.

TEST: m’avoir {{terminer}}.
TEST: il m’a {{souffler}} la bonne réponse.
TEST: elle t’en a {{parle}}.
TEST: c’est vous qui m’avez {{convertit}}.
TEST: parce que t’as envie que je le fasse
TEST: t’avais confiance
TEST: t’en as envie ?
TEST: quand sa mère l’a emmenée voir un hypnothérapeute pour qu’elle se souvienne


__ppas_avoir__
    >avoir  ~..e[rz]$
        <<- /ppas/ not value(\1, "|A|avions|avoirs|") and morph(\2, ":(?:Y|2p)")
        -2>> =suggVerbPpas(\2, ":m:s")                                              && Incohérence probable avec “\1” : “\2” n’est pas un participe passé.
        -2>> =suggVerbPpas(\2, ":m:s")                                              && Incohérence probable avec “\1” : “\2” n’est pas un participe passé.
        <<- /ppas/ __also__ and \1 == "a" and \2.endswith("r") and not value(<1, "|n’|m’|t’|l’|il|on|elle|")
        -1>> à                                                                      && Confusion probable : “a” est une conjugaison du verbe avoir. Pour la préposition, écrivez “à”.
        -1>> à                                                                      && Confusion probable : “a” est une conjugaison du verbe avoir. Pour la préposition, écrivez “à”.

    >avoir  ~..it$
        <<- /ppas/ not value(\1, "|A|avions|avoirs|") and morph(\2, ":V(?:2.*:Ip.*:3s|3.*:Is.*:3s)", ":[NAQ]")
        -2>> =suggVerbPpas(\2, ":m:s")                                              && Incohérence probable avec “\1” : “\2” n’est pas un participe passé.
        -2>> =suggVerbPpas(\2, ":m:s")                                              && Incohérence probable avec “\1” : “\2” n’est pas un participe passé.

    >avoir  ~..is$
        <<- /ppas/ not value(\1, "|A|avions|avoirs|") and morph(\2, ":V3.*:I[ps].*:[12]s", ":[NAQ]")
        -2>> =suggVerbPpas(\2, ":m:s")                                              && Incohérence probable avec “\1” : “\2” n’est pas un participe passé.
        -2>> =suggVerbPpas(\2, ":m:s")                                              && Incohérence probable avec “\1” : “\2” n’est pas un participe passé.

    >avoir  ~.ut$
        <<- /ppas/ not value(\1, "|A|avions|avoirs|") and morph(\2, ":V3.*:Is.*:3s", ":[NAQ]")
        -2>> =suggVerbPpas(\2, ":m:s")                                              && Incohérence probable avec “\1” : “\2” n’est pas un participe passé.
        -2>> =suggVerbPpas(\2, ":m:s")                                              && Incohérence probable avec “\1” : “\2” n’est pas un participe passé.

TEST: Avoir {{marcher}} toute la journée m’a épuisée.
TEST: L’homme, voyez-vous, {{a}} réellement {{marcher}} sur la Lune.
TEST: Je ne lui ai rien {{demander}}, mais il est venu à notre secours au nom de la justice.
TEST: Avoir {{finit}} son œuvre dans les temps, ce n’est pas toujours suffisant.
TEST: ces hommes, n’en doutez pas, auraient {{put}} trouver la solution.
TEST: à celui qui aurait {{déclarer}} une telle horreur
28438
28439
28440
28441
28442
28443
28444
28445

28446
28447
28448

28449
28450
28451
28452
28453
28454
28455
28445
28446
28447
28448
28449
28450
28451

28452
28453
28454

28455
28456
28457
28458
28459
28460
28461
28462







-
+


-
+










!!!! Participes passés: du / dû                                                                   !!

__ppas_avoir_dû_vinfi__
    >avoir  [du|dus|due|dues]  [le|la|les|l’|me|m’|te|t’|se|lui|s’|nous|vous|leur|$:Y]
        <<- /ppas/ not value(\-1, "|pouvoir|") -2>> dû          && Participe passé de devoir : “dû”.
        <<- /ppas/ not value(\-1, "|pouvoir|") -2>> dû          && Participe passé de devoir : “dû”.

    /_VCint_  [du|dus|due|dues]  [le|la|les|l’|me|m’|te|t’|se|lui|s’|nous|vous|leur|$:Y]
        <<- /ppas/ not value(\-1, "|pouvoir|") -2>> dû          && Participe passé de devoir : “dû”.
        <<- /ppas/ not value(\-1, "|pouvoir|") -2>> dû          && Participe passé de devoir : “dû”.

TEST: Il a {{du}} leur prendre.
TEST: J’ai {{du}} lui donner.
TEST: J’ai {{du}} leur prendre.
TEST: A-t-il {{du}} se résoudre à céder ?
TEST: Aurait-il {{du}} prendre son repas plus tôt ?
TEST: Les Français ont du pouvoir.
28503
28504
28505
28506
28507
28508
28509
28510

28511
28512
28513
28514
28515
28516
28517
28518
28519
28520

28521
28522
28523
28524
28525
28526
28527
28528
28529
28530
28531
28532
28533
28534
28535
28536

28537
28538
28539
28540
28541
28542
28543
28544
28545

28546
28547
28548
28549
28550
28551
28552
28553
28554
28555
28556
28557

28558
28559
28560
28561
28562
28563
28564
28565
28566

28567
28568
28569
28570
28571
28572
28573
28574
28575
28576
28577
28578
28579

28580
28581
28582
28583
28584
28585
28586
28587
28588

28589
28590
28591
28592
28593
28594
28595
28596
28597
28598
28599
28600
28601
28602
28603

28604
28605
28606
28607

28608
28609
28610
28611

28612
28613
28614
28615

28616
28617
28618
28619

28620
28621
28622
28623
28624
28625
28626
28510
28511
28512
28513
28514
28515
28516

28517
28518
28519
28520
28521
28522
28523
28524
28525
28526

28527
28528
28529
28530
28531
28532
28533
28534
28535
28536
28537
28538
28539
28540
28541
28542

28543
28544
28545
28546
28547
28548
28549
28550
28551

28552
28553
28554
28555
28556
28557
28558
28559
28560
28561
28562
28563

28564
28565
28566
28567
28568
28569
28570
28571
28572

28573
28574
28575
28576
28577
28578
28579
28580
28581
28582
28583
28584
28585

28586
28587
28588
28589
28590
28591
28592
28593
28594

28595
28596
28597
28598
28599
28600
28601
28602
28603
28604
28605
28606
28607
28608
28609

28610
28611
28612
28613

28614
28615
28616
28617

28618
28619
28620
28621

28622
28623
28624
28625

28626
28627
28628
28629
28630
28631
28632
28633







-
+









-
+















-
+








-
+











-
+








-
+












-
+








-
+














-
+



-
+



-
+



-
+



-
+







TEST: A-t-il Pierre pour ami ?
TEST: Quel lien y a-t-il entre donner et recevoir ?


__ppas_l_m_t_avoir_interrogatif__
    [l’|m’|t’]  /_VCint_  *WORD
        <<- /ppas/ morphVC(\2, ":V0a") and morph(\3, ":(?:Y|2p|Q.*:p|3[sp])", ":[GWsi]")
        -3>> =suggVerbPpas(\3, ":m:s")                      && Accord avec le COD “\1” : le participe passé “\3” devrait être au singulier (et accordé en genre).
        -3>> =suggVerbPpas(\3, ":m:s")                      && Accord avec le COD “\1” : le participe passé “\3” devrait être au singulier (et accordé en genre).

TEST: l’avait-il {{regardés}} longtemps ?                                       ->> regardé
TEST: l’a-t-il {{finis}} ?                                                      ->> fini
TEST: m’as-tu {{entendus}} ?                                                    ->> entendu


__ppas_les_avoir_pronom__
    les  /_VCint_  *WORD
        <<- /ppas/ morphVC(\2, ":V0a") and morph(\3, ":(?:Y|2p|Q.*:s|3[sp])", ":[GWpi]")
        -3>> =suggVerbPpas(\3, ":p")                        && Accord avec le COD “les” : le participe passé “\3” devrait être au pluriel (et accordé en genre).
        -3>> =suggVerbPpas(\3, ":p")                        && Accord avec le COD “les” : le participe passé “\3” devrait être au pluriel (et accordé en genre).

TEST: les avais-tu {{acheté}} là-bas ?
TEST: les ont-ils {{détecté}} ?
TEST: les avaient-ils {{détectez}} ?


!!
!!
!!!! Participes passés: Accords avec l’adjectif précédant le pronom                               !!
!!
!!

__ppas_adj_accord_je_tu_iel__
    <start>  *WORD  ?,¿  [je|j’|tu|iel]
        <<- /ppas/ morph(\2, ":A.*:p", ":[GEMWPsi]") and not tag(\2, "_exctx_")
        -2>> =suggSing(\2)                                                      && Si cet adjectif se réfère au pronom « \-1 », l’adjectif devrait être au singulier (et accordé en genre).
        -2>> =suggSing(\2)                                                      && Si cet adjectif se réfère au pronom « \-1 », l’adjectif devrait être au singulier (et accordé en genre).

TEST: {{Découragés}}, je suis parti.


__ppas_adj_accord_il__
    <start>  *WORD  ?,¿  il
        <<- /ppas/ not value(\2, "|bref|désolé|désolée|pire|")  and not tag(\2, "_exctx_") and morph(\2, ":A.*:[fp]", ":(?:G|E|M1|W|P|m:[si])")
            and not morph(>1, ">falloir/") and not after("^ +(?:y (?:a|aura|avait|eut)|d(?:ut|oit|evait|evra) y avoir|s’agi(?:ssait|t|ra))[, .]")
        -2>> =suggMasSing(\2)                                                   && Si cet adjectif se réfère au pronom « il », l’adjectif devrait être au masculin singulier.
        -2>> =suggMasSing(\2)                                                   && Si cet adjectif se réfère au pronom « il », l’adjectif devrait être au masculin singulier.

TEST: — {{Déçue}}, il s’en est allé.
TEST: — Désolée, il va partir bientôt.
TEST: Lancés il y a plus de 13 ans, le 14 février 2001, ces outils
TEST: Si délégués il doit y avoir, ce sera uniquement des gens choisis parmi nous.
TEST: Étudiante, il s’agissait de s’inventer des parents riches.


__ppas_adj_accord_elle__
    <start>  *WORD  ?,¿  elle
        <<- /ppas/ not value(\2, "|bref|désolé|désolée|pire|") and not tag(\2, "_exctx_") and morph(\2, ":A.*:[mp]", ":(?:G|E|M1|W|P|f:[si])")
        -2>> =suggFemSing(\2)                                                   && Si cet adjectif se réfère au pronom « elle », l’adjectif devrait être au féminin singulier.
        -2>> =suggFemSing(\2)                                                   && Si cet adjectif se réfère au pronom « elle », l’adjectif devrait être au féminin singulier.

TEST: — {{Déçu}}, elle s’en est allée.
TEST: Parlant de réussite, elle se donne bonne conscience en y rajoutant de la bienveillance.


__ppas_adj_accord_ils__
    <start>  *WORD  ?,¿  ils
        <<- /ppas/ not value(\2, "|bref|désolé|désolée|pire|") and not tag(\2, "_exctx_") and morph(\2, ":A.*:[fs]", ":(?:G|E|M1|W|P|m:[pi])")
        -2>> =suggMasPlur(\2)                                                   && Si cet adjectif se réfère au pronom « ils », l’adjectif devrait être au masculin pluriel.
        -2>> =suggMasPlur(\2)                                                   && Si cet adjectif se réfère au pronom « ils », l’adjectif devrait être au masculin pluriel.

TEST: Vraiment {{soucieuse}}, ils sont.
TEST: Très vite, ils sont partis
TEST: Une fois terminé, ils sont revenus.
TEST: Désolé, ils ne viendront pas.
TEST: Pire, ils piétinent parfois les droits humains.
TEST: Bref, ils veulent des services publics là où ces derniers font de plus en plus défaut.


__ppas_adj_accord_elles__
    <start>  *WORD  ?,¿  elles
        <<- /ppas/ not value(\2, "|bref|désolé|désolée|pire|") and not tag(\2, "_exctx_") and morph(\2, ":A.*:[ms]", ":(?:G|E|M1|W|P|f:[pi])")
        -2>> =suggFemPlur(\2)                                                   && Si cet adjectif se réfère au pronom « elles », l’adjectif devrait être au féminin pluriel.
        -2>> =suggFemPlur(\2)                                                   && Si cet adjectif se réfère au pronom « elles », l’adjectif devrait être au féminin pluriel.

TEST: Absolument {{heureux}}, elles exultèrent de joie.
TEST: quoique heureuse, ils la crurent tourmentée.


__ppas_adj_accord_iels__
    <start>  *WORD  ?,¿  iels
        <<- /ppas/ morph(\2, ":A.*:s", ":[GEMWPpi]") and not tag(\2, "_exctx_")
        -2>> =suggPlur(\2)                                                      && Si cet adjectif se réfère au pronom « iels », l’adjectif devrait être au pluriel.
        -2>> =suggPlur(\2)                                                      && Si cet adjectif se réfère au pronom « iels », l’adjectif devrait être au pluriel.

TEST: {{Découragé}}, iels sont partis.


!!
!!
!!!! Impératif !                                                                                  !!
!!
!!

# Confusions
__imp_confusion_2e_pers_pluriel__
    [<start>|,|(]  *WORD  moi
        <<- /imp/ space_after(\2, 1, 1) and morph(\2, ":(?:V1.*:[YQ]|Iq.*:[123]s)")
        -2:3>> =suggVerbTense(\2, ":E", ":2p") + "-" + \3                                           && Confusion probable. Pour l’impératif, écrivez :
        -2:3>> =suggVerbTense(\2, ":E", ":2p") + "-" + \3                                           && Confusion probable. Pour l’impératif, écrivez :

    [<start>|,|(]  *WORD  la  *WORD
        <<- /imp/ space_after(\2, 1, 1) and morph(\2, ":(?:V1.*:[YQ]|Iq.*:[123]s)") and morph(\4, ":[ORC]", ":[NA]|>plupart/")
        -2:3>> =suggVerbTense(\2, ":E", ":2p") + "-" + \3                                           && Confusion probable. Pour l’impératif, écrivez :
        -2:3>> =suggVerbTense(\2, ":E", ":2p") + "-" + \3                                           && Confusion probable. Pour l’impératif, écrivez :

    [<start>|,|(]  *WORD  [le|les|leur]  *WORD
        <<- /imp/ space_after(\2, 1, 1) and morph(\2, ":(?:V1.*:[YQ]|Iq.*:[123]s)") and morph(\4, ":[ORC]", ":[NA]")
        -2:3>> =suggVerbTense(\2, ":E", ":2p") + "-" + \3                                           && Confusion probable. Pour l’impératif, écrivez :
        -2:3>> =suggVerbTense(\2, ":E", ":2p") + "-" + \3                                           && Confusion probable. Pour l’impératif, écrivez :

    [<start>|,|(]  *WORD  [lui|nous|vous]  *WORD
        <<- /imp/ space_after(\2, 1, 1) and morph(\2, ":(?:V1.*:[YQ]|Iq.*:[123]s)") and morph(\4, ":[ORCD]", ":Y")
        -2:3>> =suggVerbTense(\2, ":E", ":2p") + "-" + \3                                           && Confusion probable. Pour l’impératif, écrivez :
        -2:3>> =suggVerbTense(\2, ":E", ":2p") + "-" + \3                                           && Confusion probable. Pour l’impératif, écrivez :

    [<start>|,|(|et|ou]  *WORD  [les|le|la|lui|nous|vous|leur]  [<end>|,|)]
        <<- /imp/ space_after(\2, 1, 1) and morph(\2, ":(?:V1.*:[YQ]|Iq.*:[123]s)")
        -2:3>> =suggVerbTense(\2, ":E", ":2p") + "-" + \3                                           && Confusion probable. Pour l’impératif, écrivez :
        -2:3>> =suggVerbTense(\2, ":E", ":2p") + "-" + \3                                           && Confusion probable. Pour l’impératif, écrivez :

TEST: {{Donner moi}} une chance                         ->> Donnez-moi
TEST: {{donner la}} et oublie-moi.                      ->> donnez-la|||là
TEST: {{prenait les}} ou volez-les                      ->> prenez-les
TEST: je vous en prie, {{prenais moi}} avec vous.       ->> prenez-moi
TEST: {{avançait moi}} de l’argent                      ->> avancez-moi
TEST: {{filé moi}} du fric, bon sang !                  ->> filez-moi
28786
28787
28788
28789
28790
28791
28792
28793

28794
28795
28796
28797
28798
28799
28800
28793
28794
28795
28796
28797
28798
28799

28800
28801
28802
28803
28804
28805
28806
28807







-
+







TEST: {{Attend}} la correction.
TEST: {{Répond}}.                                                       ->> Réponds
TEST: — Pour ma part, répond P., je crois que tout va bien.


!!
!!
!!!! Impératif : traits d’union manquants                                                         !!
!!!! Impératif : traits d’union manquants                                                         !!
!!
!!

__imp_union_moi__
    *WORD  moi
        <<- /imp/ space_after(\1, 1, 1)
            and morph(\1, ":E", ":[GM]|>(?:venir|aller|partir)/") and not value(<1, "|de|d’|le|la|les|l’|je|j’|me|m’|te|t’|se|s’|nous|vous|lui|leur|")
29051
29052
29053
29054
29055
29056
29057
29058

29059
29060
29061
29062
29063
29064

29065
29066
29067
29068
29069
29070

29071
29072
29073
29074
29075
29076

29077
29078
29079
29080
29081
29082

29083
29084
29085
29086
29087
29088
29089

29090
29091
29092
29093
29094
29095
29096

29097
29098
29099
29100
29101
29102
29103
29058
29059
29060
29061
29062
29063
29064

29065
29066
29067
29068
29069
29070

29071
29072
29073
29074
29075
29076

29077
29078
29079
29080
29081
29082

29083
29084
29085
29086
29087
29088

29089
29090
29091
29092
29093
29094
29095

29096
29097
29098
29099
29100
29101
29102

29103
29104
29105
29106
29107
29108
29109
29110







-
+





-
+





-
+





-
+





-
+






-
+






-
+







!!

__conf_le_la_leur_les_verbe_nom!6__
    [<start>|,|(] [le|un]         @:V¬:[NAY]  [ne|n’|me|m’|te|s’|se|s’]
    [<start>|,|(] [le|un]         @:V¬:[NAY]  [le|la|l’|les|leur]         @:[123][sp]¬:[QNAG]
    [<start>|,|(] [le|un]         @:V¬:[NAY]  ?[nous|vous]¿               @:[123][sp]¬:[QG]
        <<- /conf/ hasSimil(\3, ":[NA].*:[me]:[si]")
        -3>> =suggSimil(\3, ":[NA].*:[me]:[si]", True)                              && Confusion probable : “\3” est une forme verbale conjuguée. Si “\2” est un déterminant, il faut placer un nom après.
        -3>> =suggSimil(\3, ":[NA].*:[me]:[si]", True)                              && Confusion probable : “\3” est une forme verbale conjuguée. Si “\2” est un déterminant, il faut placer un nom après.

    [<start>|,|(] [la|une]        @:V¬:[NAY]  [ne|n’|me|m’|te|s’|se|s’]
    [<start>|,|(] [la|une]        @:V¬:[NAY]  [le|la|l’|les|leur]         @:[123][sp]¬:[QNAG]
    [<start>|,|(] [la|une]        @:V¬:[NAY]  ?[nous|vous]¿               @:[123][sp]¬:[QG]
        <<- /conf/ hasSimil(\3, ":[NA].*:[fe]:[si]")
        -3>> =suggSimil(\3, ":[NA].*:[fe]:[si]", True)                              && Confusion probable : “\3” est une forme verbale conjuguée. Si “\2” est un déterminant, il faut placer un nom après.
        -3>> =suggSimil(\3, ":[NA].*:[fe]:[si]", True)                              && Confusion probable : “\3” est une forme verbale conjuguée. Si “\2” est un déterminant, il faut placer un nom après.

    [<start>|,|(] l’              @:V¬:[NAY]  [ne|n’|me|m’|te|s’|se|s’]
    [<start>|,|(] l’              @:V¬:[NAY]  [le|la|l’|les|leur]         @:[123][sp]¬:[QNAG]
    [<start>|,|(] l’              @:V¬:[NAY]  ?[nous|vous]¿               @:[123][sp]¬:[QG]
        <<- /conf/ hasSimil(\3, ":[NA].*:[si]")
        -3>> =suggSimil(\3, ":[NA].*:[si]", True)                                   && Confusion probable : “\3” est une forme verbale conjuguée. Si “\2” est un déterminant, il faut placer un nom après.
        -3>> =suggSimil(\3, ":[NA].*:[si]", True)                                   && Confusion probable : “\3” est une forme verbale conjuguée. Si “\2” est un déterminant, il faut placer un nom après.

    [<start>|,|(] leur            @:V¬:[NAY]  [ne|n’|me|m’|te|s’|se|s’]
    [<start>|,|(] leur            @:V¬:[NAY]  [le|la|l’|les|leur]         @:[123][sp]¬:[QNAG]
    [<start>|,|(] leur            @:V¬:[NAY]  ?[nous|vous]¿               @:[123][sp]¬:[QG]
        <<- /conf/ hasSimil(\3, ":[NA].*:[si]")
        -3>> =suggSimil(\3, ":[NA].*:[si]", True)                                   && Confusion probable : “\3” est une forme verbale conjuguée. Si “\2” est un déterminant, il faut placer un nom après.
        -3>> =suggSimil(\3, ":[NA].*:[si]", True)                                   && Confusion probable : “\3” est une forme verbale conjuguée. Si “\2” est un déterminant, il faut placer un nom après.

    [<start>|,|(] [les|plusieurs|leurs]  @:V¬:[NAY]  [ne|n’|me|m’|te|s’|se|s’]
    [<start>|,|(] [les|plusieurs|leurs]  @:V¬:[NAY]  [le|la|l’|les|leur]  @:[123][sp]¬:[QNAG]
    [<start>|,|(] [les|plusieurs|leurs]  @:V¬:[NAY]  ?[nous|vous]¿        @:[123][sp]¬:[QG]
        <<- /conf/ hasSimil(\3, ":[NA].*:[pi]")
        -3>> =suggSimil(\3, ":[NA].*:[pi]", True)                                   && Confusion probable : “\3” est une forme verbale conjuguée. Si “\2” est un déterminant, il faut placer un nom après.
        -3>> =suggSimil(\3, ":[NA].*:[pi]", True)                                   && Confusion probable : “\3” est une forme verbale conjuguée. Si “\2” est un déterminant, il faut placer un nom après.

    [<start>|,|(] [certains|maints]     @:V¬:[NAY]  [me|m’|te|s’|se|s’]
    [<start>|,|(] [certains|maints]     @:V¬:[NAY]  [ne|n’]                     @:[123][sp]
    [<start>|,|(] [certains|maints]     @:V¬:[NAY]  [le|la|l’|les|leur]         @:[123][sp]¬:[QNAG]
    [<start>|,|(] [certains|maints]     @:V¬:[NAY]  ?[nous|vous]¿               @:[123][sp]¬:[QG]
        <<- /conf/ hasSimil(\3, ":[NA].*:[me]:[pi]")
        -3>> =suggSimil(\3, ":[NA].*:[me]:[pi]", True)                              && Confusion probable : “\3” est une forme verbale conjuguée. Si “\2” est un déterminant, il faut placer un nom après.
        -3>> =suggSimil(\3, ":[NA].*:[me]:[pi]", True)                              && Confusion probable : “\3” est une forme verbale conjuguée. Si “\2” est un déterminant, il faut placer un nom après.

    [<start>|,|(] [certaines|maintes]   @:V¬:[NAY]  [me|m’|te|s’|se|s’]
    [<start>|,|(] [certaines|maintes]   @:V¬:[NAY]  [ne|n’]                     @:[123][sp]
    [<start>|,|(] [certaines|maintes]   @:V¬:[NAY]  [le|la|l’|les|leur]         @:[123][sp]¬:[QNAG]
    [<start>|,|(] [certaines|maintes]   @:V¬:[NAY]  ?[nous|vous]¿               @:[123][sp]¬:[QG]
        <<- /conf/ hasSimil(\3, ":[NA].*:[fe]:[pi]")
        -3>> =suggSimil(\3, ":[NA].*:[fe]:[pi]", True)                              && Confusion probable : “\3” est une forme verbale conjuguée. Si “\2” est un déterminant, il faut placer un nom après.
        -3>> =suggSimil(\3, ":[NA].*:[fe]:[pi]", True)                              && Confusion probable : “\3” est une forme verbale conjuguée. Si “\2” est un déterminant, il faut placer un nom après.

TEST: Un {{défie}} se définit par la difficulté                 ->> défi
TEST: Le {{défit}} ne l’enthousiasmait pas.                     ->> défi
TEST: Le {{défie}} ne l’enthousiasmait pas.                     ->> défi
TEST: Les {{connections}} étaient défaillantes.                 ->> connexions
TEST: l’{{accueille}} se révéla ennuyeux.                       ->> accueil
TEST: La {{sert}} était cassée                                  ->> serre
29129
29130
29131
29132
29133
29134
29135
29136

29137
29138
29139
29140
29141
29142
29143
29144
29145
29146
29147
29148
29149
29150
29151
29152
29153
29154

29155
29156
29157
29158
29159
29160
29161
29162
29163
29164
29165
29166
29167
29168
29169
29170
29171
29172

29173
29174
29175
29176
29177
29178
29179
29180
29181
29182
29183
29184
29185
29186
29187
29188
29189
29190

29191
29192
29193
29194
29195
29196
29197
29198
29199
29200
29201
29202
29203
29204
29205
29206
29207
29208

29209
29210
29211
29212
29213
29214
29215
29216
29217
29218
29219
29220
29221
29222
29223
29224
29225
29226
29227
29228

29229
29230
29231

29232
29233
29234

29235
29236
29237

29238
29239
29240

29241
29242
29243

29244
29245
29246
29247
29248
29249
29250
29251
29252
29253
29254
29255
29256
29257

29258
29259
29260
29261
29262
29263
29264
29265
29266
29267
29268
29269

29270
29271
29272
29273
29274
29275

29276
29277
29278
29279
29280
29281

29282
29283
29284
29285
29286
29287

29288
29289
29290
29291
29292
29293

29294
29295
29296
29297
29298
29299

29300
29301
29302
29303
29304
29305
29306
29307
29308
29309
29310
29311
29312
29313
29314
29315
29316
29317
29318
29319
29320

29321
29322
29323
29324
29325
29326
29327
29328

29329
29330
29331
29332
29333
29334
29335
29336

29337
29338
29339
29340
29341
29342
29343
29344

29345
29346
29347
29348
29349
29350
29351
29352
29353
29354
29355
29356
29357
29358
29359
29360
29361
29362

29363
29364
29365
29366

29367
29368
29369
29370

29371
29372
29373
29374

29375
29376
29377
29378
29379
29380
29381
29136
29137
29138
29139
29140
29141
29142

29143
29144
29145
29146
29147
29148
29149
29150
29151
29152
29153
29154
29155
29156
29157
29158
29159
29160

29161
29162
29163
29164
29165
29166
29167
29168
29169
29170
29171
29172
29173
29174
29175
29176
29177
29178

29179
29180
29181
29182
29183
29184
29185
29186
29187
29188
29189
29190
29191
29192
29193
29194
29195
29196

29197
29198
29199
29200
29201
29202
29203
29204
29205
29206
29207
29208
29209
29210
29211
29212
29213
29214

29215
29216
29217
29218
29219
29220
29221
29222
29223
29224
29225
29226
29227
29228
29229
29230
29231
29232
29233
29234

29235
29236
29237

29238
29239
29240

29241
29242
29243

29244
29245
29246

29247
29248
29249

29250
29251
29252
29253
29254
29255
29256
29257
29258
29259
29260
29261
29262
29263

29264
29265
29266
29267
29268
29269
29270
29271
29272
29273
29274
29275

29276
29277
29278
29279
29280
29281

29282
29283
29284
29285
29286
29287

29288
29289
29290
29291
29292
29293

29294
29295
29296
29297
29298
29299

29300
29301
29302
29303
29304
29305

29306
29307
29308
29309
29310
29311
29312
29313
29314
29315
29316
29317
29318
29319
29320
29321
29322
29323
29324
29325
29326

29327
29328
29329
29330
29331
29332
29333
29334

29335
29336
29337
29338
29339
29340
29341
29342

29343
29344
29345
29346
29347
29348
29349
29350

29351
29352
29353
29354
29355
29356
29357
29358
29359
29360
29361
29362
29363
29364
29365
29366
29367
29368

29369
29370
29371
29372

29373
29374
29375
29376

29377
29378
29379
29380

29381
29382
29383
29384
29385
29386
29387
29388







-
+

















-
+

















-
+

















-
+

















-
+



















-
+


-
+


-
+


-
+


-
+


-
+













-
+











-
+





-
+





-
+





-
+





-
+





-
+




















-
+







-
+







-
+







-
+

















-
+



-
+



-
+



-
+







    [<start>|,|(]  [le|la|l’|leur|les]  @:[NA]¬:3[sp]                         ?[ne|n’]¿   [le|la|l’|les]                  [lui|leur|en|y]             @:[123][sp]¬:[NA]  [le|un]  @:[123][sp]¬:[NA].*:[me]:[si]
    [<start>|,|(]  $:D¬:Ov              @:[NA]                                ?[ne|n’]¿   [lui|leur]                      en                          @:[123][sp]¬:[NA]  [le|un]  @:[123][sp]¬:[NA].*:[me]:[si]
    [<start>|,|(]  [le|la|l’|leur|les]  @:[NA]¬:3[sp]                         ?[ne|n’]¿   [lui|leur]                      en                          @:[123][sp]¬:[NA]  [le|un]  @:[123][sp]¬:[NA].*:[me]:[si]
    [<start>|,|(]  $:Y                                                        ?[ne|n’]¿   ?[le|la|l’|les|en|me|m’|te|t’|se|s’|nous|vous|lui|leur|y]¿  @:[123][sp]        [le|un]  @:[123][sp]¬:[NA].*:[me]:[si]
    [<start>|,|(]  $:Y                                                        ?[ne|n’]¿   [me|m’|te|t’|se|s’|nous|vous]   [le|la|l’|les|en|y]         @:[123][sp]        [le|un]  @:[123][sp]¬:[NA].*:[me]:[si]
    [<start>|,|(]  $:Y                                                        ?[ne|n’]¿   [le|la|l’|les]                  [lui|leur|en|y]             @:[123][sp]        [le|un]  @:[123][sp]¬:[NA].*:[me]:[si]
    [<start>|,|(]  $:Y                                                        ?[ne|n’]¿   [lui|leur]                      en                          @:[123][sp]        [le|un]  @:[123][sp]¬:[NA].*:[me]:[si]
        <<- /conf/ --1>> =suggSimil(\-1, ":[NA].*:[me]:[si]", True)                 && Confusion probable : “\-1” est une forme verbale conjuguée. Si “\-2” est un déterminant, il faut placer un nom après.
        <<- /conf/ --1>> =suggSimil(\-1, ":[NA].*:[me]:[si]", True)                 && Confusion probable : “\-1” est une forme verbale conjuguée. Si “\-2” est un déterminant, il faut placer un nom après.

    [<start>|,|(]  [je|j’|tu|il|elle|on|nous|vous|ils|elles|iel|iels|ce|c’]   ?[ne|n’]¿   ?[le|la|l’|les|en|me|m’|te|t’|se|s’|nous|vous|lui|leur|y]¿  @:[123][sp]        [la|une]  @:[123][sp]¬:[NA].*:[fe]:[si]
    [<start>|,|(]  [je|j’|tu|il|elle|on|nous|vous|ils|elles|iel|iels|ce|c’]   ?[ne|n’]¿   [me|m’|te|t’|se|s’|nous|vous]   [le|la|l’|les|en|y]         @:[123][sp]        [la|une]  @:[123][sp]¬:[NA].*:[fe]:[si]
    [<start>|,|(]  [je|j’|tu|il|elle|on|nous|vous|ils|elles|iel|iels|ce|c’]   ?[ne|n’]¿   [le|la|l’|les]                  [lui|leur|en|y]             @:[123][sp]        [la|une]  @:[123][sp]¬:[NA].*:[fe]:[si]
    [<start>|,|(]  [je|j’|tu|il|elle|on|nous|vous|ils|elles|iel|iels|ce|c’]   ?[ne|n’]¿   [lui|leur]                      en                          @:[123][sp]        [la|une]  @:[123][sp]¬:[NA].*:[fe]:[si]
    [<start>|,|(]  $:D¬:Ov              @:[NA]                                ?[ne|n’]¿   ?[le|la|l’|les|en|me|m’|te|t’|se|s’|nous|vous|lui|leur|y]¿  @:[123][sp]¬:[NA]  [la|une]  @:[123][sp]¬:[NA].*:[fe]:[si]
    [<start>|,|(]  [le|la|l’|leur|les]  @:[NA]¬:3[sp]                         ?[ne|n’]¿   ?[le|la|l’|les|en|me|m’|te|t’|se|s’|nous|vous|lui|leur|y]¿  @:[123][sp]¬:[NA]  [la|une]  @:[123][sp]¬:[NA].*:[fe]:[si]
    [<start>|,|(]  $:D¬:Ov              @:[NA]                                ?[ne|n’]¿   [me|m’|te|t’|se|s’|nous|vous]   [le|la|l’|les|en|y]         @:[123][sp]¬:[NA]  [la|une]  @:[123][sp]¬:[NA].*:[fe]:[si]
    [<start>|,|(]  [le|la|l’|leur|les]  @:[NA]¬:3[sp]                         ?[ne|n’]¿   [me|m’|te|t’|se|s’|nous|vous]   [le|la|l’|les|en|y]         @:[123][sp]¬:[NA]  [la|une]  @:[123][sp]¬:[NA].*:[fe]:[si]
    [<start>|,|(]  $:D¬:Ov              @:[NA]                                ?[ne|n’]¿   [le|la|l’|les]                  [lui|leur|en|y]             @:[123][sp]¬:[NA]  [la|une]  @:[123][sp]¬:[NA].*:[fe]:[si]
    [<start>|,|(]  [le|la|l’|leur|les]  @:[NA]¬:3[sp]                         ?[ne|n’]¿   [le|la|l’|les]                  [lui|leur|en|y]             @:[123][sp]¬:[NA]  [la|une]  @:[123][sp]¬:[NA].*:[fe]:[si]
    [<start>|,|(]  $:D¬:Ov              @:[NA]                                ?[ne|n’]¿   [lui|leur]                      en                          @:[123][sp]¬:[NA]  [la|une]  @:[123][sp]¬:[NA].*:[fe]:[si]
    [<start>|,|(]  [le|la|l’|leur|les]  @:[NA]¬:3[sp]                         ?[ne|n’]¿   [lui|leur]                      en                          @:[123][sp]¬:[NA]  [la|une]  @:[123][sp]¬:[NA].*:[fe]:[si]
    [<start>|,|(]  $:Y                                                        ?[ne|n’]¿   ?[le|la|l’|les|en|me|m’|te|t’|se|s’|nous|vous|lui|leur|y]¿  @:[123][sp]        [la|une]  @:[123][sp]¬:[NA].*:[fe]:[si]
    [<start>|,|(]  $:Y                                                        ?[ne|n’]¿   [me|m’|te|t’|se|s’|nous|vous]   [le|la|l’|les|en|y]         @:[123][sp]        [la|une]  @:[123][sp]¬:[NA].*:[fe]:[si]
    [<start>|,|(]  $:Y                                                        ?[ne|n’]¿   [le|la|l’|les]                  [lui|leur|en|y]             @:[123][sp]        [la|une]  @:[123][sp]¬:[NA].*:[fe]:[si]
    [<start>|,|(]  $:Y                                                        ?[ne|n’]¿   [lui|leur]                      en                          @:[123][sp]        [la|une]  @:[123][sp]¬:[NA].*:[fe]:[si]
        <<- /conf/ --1>> =suggSimil(\-1, ":[NA].*:[fe]:[si]", True)                 && Confusion probable : “\-1” est une forme verbale conjuguée. Si “\-2” est un déterminant, il faut placer un nom après.
        <<- /conf/ --1>> =suggSimil(\-1, ":[NA].*:[fe]:[si]", True)                 && Confusion probable : “\-1” est une forme verbale conjuguée. Si “\-2” est un déterminant, il faut placer un nom après.

    [<start>|,|(]  [je|j’|tu|il|elle|on|nous|vous|ils|elles|iel|iels|ce|c’]   ?[ne|n’]¿   ?[le|la|l’|les|en|me|m’|te|t’|se|s’|nous|vous|lui|leur|y]¿  @:[123][sp]        [l’|leur]  @:[123][sp]¬:[NA].*:[si]
    [<start>|,|(]  [je|j’|tu|il|elle|on|nous|vous|ils|elles|iel|iels|ce|c’]   ?[ne|n’]¿   [me|m’|te|t’|se|s’|nous|vous]   [le|la|l’|les|en|y]         @:[123][sp]        [l’|leur]  @:[123][sp]¬:[NA].*:[si]
    [<start>|,|(]  [je|j’|tu|il|elle|on|nous|vous|ils|elles|iel|iels|ce|c’]   ?[ne|n’]¿   [le|la|l’|les]                  [lui|leur|en|y]             @:[123][sp]        [l’|leur]  @:[123][sp]¬:[NA].*:[si]
    [<start>|,|(]  [je|j’|tu|il|elle|on|nous|vous|ils|elles|iel|iels|ce|c’]   ?[ne|n’]¿   [lui|leur]                      en                          @:[123][sp]        [l’|leur]  @:[123][sp]¬:[NA].*:[si]
    [<start>|,|(]  $:D¬:Ov              @:[NA]                                ?[ne|n’]¿   ?[le|la|l’|les|en|me|m’|te|t’|se|s’|nous|vous|lui|leur|y]¿  @:[123][sp]¬:[NA]  [l’|leur]  @:[123][sp]¬:[NA].*:[si]
    [<start>|,|(]  [le|la|l’|leur|les]  @:[NA]¬:3[sp]                         ?[ne|n’]¿   ?[le|la|l’|les|en|me|m’|te|t’|se|s’|nous|vous|lui|leur|y]¿  @:[123][sp]¬:[NA]  [l’|leur]  @:[123][sp]¬:[NA].*:[si]
    [<start>|,|(]  $:D¬:Ov              @:[NA]                                ?[ne|n’]¿   [me|m’|te|t’|se|s’|nous|vous]   [le|la|l’|les|en|y]         @:[123][sp]¬:[NA]  [l’|leur]  @:[123][sp]¬:[NA].*:[si]
    [<start>|,|(]  [le|la|l’|leur|les]  @:[NA]¬:3[sp]                         ?[ne|n’]¿   [me|m’|te|t’|se|s’|nous|vous]   [le|la|l’|les|en|y]         @:[123][sp]¬:[NA]  [l’|leur]  @:[123][sp]¬:[NA].*:[si]
    [<start>|,|(]  $:D¬:Ov              @:[NA]                                ?[ne|n’]¿   [le|la|l’|les]                  [lui|leur|en|y]             @:[123][sp]¬:[NA]  [l’|leur]  @:[123][sp]¬:[NA].*:[si]
    [<start>|,|(]  [le|la|l’|leur|les]  @:[NA]¬:3[sp]                         ?[ne|n’]¿   [le|la|l’|les]                  [lui|leur|en|y]             @:[123][sp]¬:[NA]  [l’|leur]  @:[123][sp]¬:[NA].*:[si]
    [<start>|,|(]  $:D¬:Ov              @:[NA]                                ?[ne|n’]¿   [lui|leur]                      en                          @:[123][sp]¬:[NA]  [l’|leur]  @:[123][sp]¬:[NA].*:[si]
    [<start>|,|(]  [le|la|l’|leur|les]  @:[NA]¬:3[sp]                         ?[ne|n’]¿   [lui|leur]                      en                          @:[123][sp]¬:[NA]  [l’|leur]  @:[123][sp]¬:[NA].*:[si]
    [<start>|,|(]  $:Y                                                        ?[ne|n’]¿   ?[le|la|l’|les|en|me|m’|te|t’|se|s’|nous|vous|lui|leur|y]¿  @:[123][sp]        [l’|leur]  @:[123][sp]¬:[NA].*:[si]
    [<start>|,|(]  $:Y                                                        ?[ne|n’]¿   [me|m’|te|t’|se|s’|nous|vous]   [le|la|l’|les|en|y]         @:[123][sp]        [l’|leur]  @:[123][sp]¬:[NA].*:[si]
    [<start>|,|(]  $:Y                                                        ?[ne|n’]¿   [le|la|l’|les]                  [lui|leur|en|y]             @:[123][sp]        [l’|leur]  @:[123][sp]¬:[NA].*:[si]
    [<start>|,|(]  $:Y                                                        ?[ne|n’]¿   [lui|leur]                      en                          @:[123][sp]        [l’|leur]  @:[123][sp]¬:[NA].*:[si]
        <<- /conf/ --1>> =suggSimil(\-1, ":[NA].*:[si]", True)                      && Confusion probable : “\-1” est une forme verbale conjuguée. Si “\-2” est un déterminant, il faut placer un nom après.
        <<- /conf/ --1>> =suggSimil(\-1, ":[NA].*:[si]", True)                      && Confusion probable : “\-1” est une forme verbale conjuguée. Si “\-2” est un déterminant, il faut placer un nom après.

    [<start>|,|(]  [je|j’|tu|il|elle|on|nous|vous|ils|elles|iel|iels|ce|c’]   ?[ne|n’]¿   ?[le|la|l’|les|en|me|m’|te|t’|se|s’|nous|vous|lui|leur|y]¿  @:[123][sp]        [les|leurs]  @:[123][sp]¬:[NA].*:[pi]
    [<start>|,|(]  [je|j’|tu|il|elle|on|nous|vous|ils|elles|iel|iels|ce|c’]   ?[ne|n’]¿   [me|m’|te|t’|se|s’|nous|vous]   [le|la|l’|les|en|y]         @:[123][sp]        [les|leurs]  @:[123][sp]¬:[NA].*:[pi]
    [<start>|,|(]  [je|j’|tu|il|elle|on|nous|vous|ils|elles|iel|iels|ce|c’]   ?[ne|n’]¿   [le|la|l’|les]                  [lui|leur|en|y]             @:[123][sp]        [les|leurs]  @:[123][sp]¬:[NA].*:[pi]
    [<start>|,|(]  [je|j’|tu|il|elle|on|nous|vous|ils|elles|iel|iels|ce|c’]   ?[ne|n’]¿   [lui|leur]                      en                          @:[123][sp]        [les|leurs]  @:[123][sp]¬:[NA].*:[pi]
    [<start>|,|(]  $:D¬:Ov              @:[NA]                                ?[ne|n’]¿   ?[le|la|l’|les|en|me|m’|te|t’|se|s’|nous|vous|lui|leur|y]¿  @:[123][sp]¬:[NA]  [les|leurs]  @:[123][sp]¬:[NA].*:[pi]
    [<start>|,|(]  [le|la|l’|leur|les]  @:[NA]¬:3[sp]                         ?[ne|n’]¿   ?[le|la|l’|les|en|me|m’|te|t’|se|s’|nous|vous|lui|leur|y]¿  @:[123][sp]¬:[NA]  [les|leurs]  @:[123][sp]¬:[NA].*:[pi]
    [<start>|,|(]  $:D¬:Ov              @:[NA]                                ?[ne|n’]¿   [me|m’|te|t’|se|s’|nous|vous]   [le|la|l’|les|en|y]         @:[123][sp]¬:[NA]  [les|leurs]  @:[123][sp]¬:[NA].*:[pi]
    [<start>|,|(]  [le|la|l’|leur|les]  @:[NA]¬:3[sp]                         ?[ne|n’]¿   [me|m’|te|t’|se|s’|nous|vous]   [le|la|l’|les|en|y]         @:[123][sp]¬:[NA]  [les|leurs]  @:[123][sp]¬:[NA].*:[pi]
    [<start>|,|(]  $:D¬:Ov              @:[NA]                                ?[ne|n’]¿   [le|la|l’|les]                  [lui|leur|en|y]             @:[123][sp]¬:[NA]  [les|leurs]  @:[123][sp]¬:[NA].*:[pi]
    [<start>|,|(]  [le|la|l’|leur|les]  @:[NA]¬:3[sp]                         ?[ne|n’]¿   [le|la|l’|les]                  [lui|leur|en|y]             @:[123][sp]¬:[NA]  [les|leurs]  @:[123][sp]¬:[NA].*:[pi]
    [<start>|,|(]  $:D¬:Ov              @:[NA]                                ?[ne|n’]¿   [lui|leur]                      en                          @:[123][sp]¬:[NA]  [les|leurs]  @:[123][sp]¬:[NA].*:[pi]
    [<start>|,|(]  [le|la|l’|leur|les]  @:[NA]¬:3[sp]                         ?[ne|n’]¿   [lui|leur]                      en                          @:[123][sp]¬:[NA]  [les|leurs]  @:[123][sp]¬:[NA].*:[pi]
    [<start>|,|(]  $:Y                                                        ?[ne|n’]¿   ?[le|la|l’|les|en|me|m’|te|t’|se|s’|nous|vous|lui|leur|y]¿  @:[123][sp]        [les|leurs]  @:[123][sp]¬:[NA].*:[pi]
    [<start>|,|(]  $:Y                                                        ?[ne|n’]¿   [me|m’|te|t’|se|s’|nous|vous]   [le|la|l’|les|en|y]         @:[123][sp]        [les|leurs]  @:[123][sp]¬:[NA].*:[pi]
    [<start>|,|(]  $:Y                                                        ?[ne|n’]¿   [le|la|l’|les]                  [lui|leur|en|y]             @:[123][sp]        [les|leurs]  @:[123][sp]¬:[NA].*:[pi]
    [<start>|,|(]  $:Y                                                        ?[ne|n’]¿   [lui|leur]                      en                          @:[123][sp]        [les|leurs]  @:[123][sp]¬:[NA].*:[pi]
        <<- /conf/ --1>> =suggSimil(\-1, ":[NA].*:[pi]", True)                      && Confusion probable : “\-1” est une forme verbale conjuguée. Si “\-2” est un déterminant, il faut placer un nom après.
        <<- /conf/ --1>> =suggSimil(\-1, ":[NA].*:[pi]", True)                      && Confusion probable : “\-1” est une forme verbale conjuguée. Si “\-2” est un déterminant, il faut placer un nom après.

    [<start>|,|(]  [je|j’|tu|il|elle|on|nous|vous|ils|elles|iel|iels|ce|c’]   ?[ne|n’]¿   ?[le|la|l’|les|en|me|m’|te|t’|se|s’|nous|vous|lui|leur|y]¿  @:[123][sp]        en  @:[123][sp]¬:[NA]
    [<start>|,|(]  [je|j’|tu|il|elle|on|nous|vous|ils|elles|iel|iels|ce|c’]   ?[ne|n’]¿   [me|m’|te|t’|se|s’|nous|vous]   [le|la|l’|les|en|y]         @:[123][sp]        en  @:[123][sp]¬:[NA]
    [<start>|,|(]  [je|j’|tu|il|elle|on|nous|vous|ils|elles|iel|iels|ce|c’]   ?[ne|n’]¿   [le|la|l’|les]                  [lui|leur|en|y]             @:[123][sp]        en  @:[123][sp]¬:[NA]
    [<start>|,|(]  [je|j’|tu|il|elle|on|nous|vous|ils|elles|iel|iels|ce|c’]   ?[ne|n’]¿   [lui|leur]                      en                          @:[123][sp]        en  @:[123][sp]¬:[NA]
    [<start>|,|(]  $:D¬:Ov              @:[NA]                                ?[ne|n’]¿   ?[le|la|l’|les|en|me|m’|te|t’|se|s’|nous|vous|lui|leur|y]¿  @:[123][sp]¬:[NA]  en  @:[123][sp]¬:[NA]
    [<start>|,|(]  [le|la|l’|leur|les]  @:[NA]¬:3[sp]                         ?[ne|n’]¿   ?[le|la|l’|les|en|me|m’|te|t’|se|s’|nous|vous|lui|leur|y]¿  @:[123][sp]¬:[NA]  en  @:[123][sp]¬:[NA]
    [<start>|,|(]  $:D¬:Ov              @:[NA]                                ?[ne|n’]¿   [me|m’|te|t’|se|s’|nous|vous]   [le|la|l’|les|en|y]         @:[123][sp]¬:[NA]  en  @:[123][sp]¬:[NA]
    [<start>|,|(]  [le|la|l’|leur|les]  @:[NA]¬:3[sp]                         ?[ne|n’]¿   [me|m’|te|t’|se|s’|nous|vous]   [le|la|l’|les|en|y]         @:[123][sp]¬:[NA]  en  @:[123][sp]¬:[NA]
    [<start>|,|(]  $:D¬:Ov              @:[NA]                                ?[ne|n’]¿   [le|la|l’|les]                  [lui|leur|en|y]             @:[123][sp]¬:[NA]  en  @:[123][sp]¬:[NA]
    [<start>|,|(]  [le|la|l’|leur|les]  @:[NA]¬:3[sp]                         ?[ne|n’]¿   [le|la|l’|les]                  [lui|leur|en|y]             @:[123][sp]¬:[NA]  en  @:[123][sp]¬:[NA]
    [<start>|,|(]  $:D¬:Ov              @:[NA]                                ?[ne|n’]¿   [lui|leur]                      en                          @:[123][sp]¬:[NA]  en  @:[123][sp]¬:[NA]
    [<start>|,|(]  [le|la|l’|leur|les]  @:[NA]¬:3[sp]                         ?[ne|n’]¿   [lui|leur]                      en                          @:[123][sp]¬:[NA]  en  @:[123][sp]¬:[NA]
    [<start>|,|(]  $:Y                                                        ?[ne|n’]¿   ?[le|la|l’|les|en|me|m’|te|t’|se|s’|nous|vous|lui|leur|y]¿  @:[123][sp]        en  @:[123][sp]¬:[NA]
    [<start>|,|(]  $:Y                                                        ?[ne|n’]¿   [me|m’|te|t’|se|s’|nous|vous]   [le|la|l’|les|en|y]         @:[123][sp]        en  @:[123][sp]¬:[NA]
    [<start>|,|(]  $:Y                                                        ?[ne|n’]¿   [le|la|l’|les]                  [lui|leur|en|y]             @:[123][sp]        en  @:[123][sp]¬:[NA]
    [<start>|,|(]  $:Y                                                        ?[ne|n’]¿   [lui|leur]                      en                          @:[123][sp]        en  @:[123][sp]¬:[NA]
        <<- /conf/ --1>> =suggSimil(\-1, ":[NA].*:[si]", True)                      && Confusion probable : “\-1” est une forme verbale conjuguée. Si “\-2” est une préposition, il faut placer un nom après.
        <<- /conf/ --1>> =suggSimil(\-1, ":[NA].*:[si]", True)                      && Confusion probable : “\-1” est une forme verbale conjuguée. Si “\-2” est une préposition, il faut placer un nom après.

TEST: je relève le {{défit}}.                                   ->> défi
TEST: elle relève une fois de plus le {{défie}}.                ->> défi
TEST: il gère l’{{accueille}}                                   ->> accueil
TEST: Elle ne connait pas leur {{recule}}                       ->> recul
TEST: elle lisait la {{garantit}}                               ->> garantie
TEST: nous racontons le {{dépare}} des peuples vers les étoiles ->> départ
TEST: Les papiers resteront en {{colorie}} vert                 ->> coloris
TEST: Le parquet ne demande pas le {{maintient}} en détention   ->> maintien
TEST: Mon idée rend leur {{dépare}} nécessaire                  ->> départ
TEST: tu vois, l’oiseau étend les {{hèles}}                     ->> ailes
TEST: Lire nous révèle les {{fixions}} du genre                 ->> fictions
TEST: c’était le {{profile}} qui était assez similaire          ->> profil
TEST: c’est un {{parie}} sur l’avenir                           ->> pari
TEST: Quel homme ferait un {{parie}} si risqué.                 ->> pari


__conf_interrogatif_ou_impératif_det_verbe_nom__
    [/_VCint_|/_VCimp_]  le  @:[123][sp]¬:[NA].*:[me]:[si]
        <<- /conf/ --1>> =suggSimil(\-1, ":[NA].*:[me]:[si]", True)             && Confusion probable : “\-1” est une forme verbale conjuguée. Si “\-2” est un déterminant, il faut placer un nom après.
        <<- /conf/ --1>> =suggSimil(\-1, ":[NA].*:[me]:[si]", True)             && Confusion probable : “\-1” est une forme verbale conjuguée. Si “\-2” est un déterminant, il faut placer un nom après.

    [/_VCint_|/_VCimp_]  la  @:[123][sp]¬:[NA].*:[fe]:[si]
        <<- /conf/ --1>> =suggSimil(\-1, ":[NA].*:[fe]:[si]", True)             && Confusion probable : “\-1” est une forme verbale conjuguée. Si “\-2” est un déterminant, il faut placer un nom après.
        <<- /conf/ --1>> =suggSimil(\-1, ":[NA].*:[fe]:[si]", True)             && Confusion probable : “\-1” est une forme verbale conjuguée. Si “\-2” est un déterminant, il faut placer un nom après.

    [/_VCint_|/_VCimp_]  l’  @:[123][sp]¬:[NA].*:[si]
        <<- /conf/ --1>> =suggSimil(\-1, ":[NA].*:[si]", True)                  && Confusion probable : “\-1” est une forme verbale conjuguée. Si “\-2” est un déterminant, il faut placer un nom après.
        <<- /conf/ --1>> =suggSimil(\-1, ":[NA].*:[si]", True)                  && Confusion probable : “\-1” est une forme verbale conjuguée. Si “\-2” est un déterminant, il faut placer un nom après.

    [/_VCint_|/_VCimp_]  leur  @:[123][sp]¬:[NA].*:[si]
        <<- /conf/ --1>> =suggSimil(\-1, ":[NA].*:[si]", True)                  && Confusion probable : “\-1” est une forme verbale conjuguée. Si “\-2” est un déterminant, il faut placer un nom après.
        <<- /conf/ --1>> =suggSimil(\-1, ":[NA].*:[si]", True)                  && Confusion probable : “\-1” est une forme verbale conjuguée. Si “\-2” est un déterminant, il faut placer un nom après.

    [/_VCint_|/_VCimp_]  les  @:[123][sp]¬:[NA].*:[pi]
        <<- /conf/ --1>> =suggSimil(\-1, ":[NA].*:[pi]", True)                  && Confusion probable : “\-1” est une forme verbale conjuguée. Si “\-2” est un déterminant, il faut placer un nom après.
        <<- /conf/ --1>> =suggSimil(\-1, ":[NA].*:[pi]", True)                  && Confusion probable : “\-1” est une forme verbale conjuguée. Si “\-2” est un déterminant, il faut placer un nom après.

    [/_VCint_|/_VCimp_]  en  @:[123][sp]¬:[NA]
        <<- /conf/ --1>> =suggSimil(\-1, ":[NA].*:[si]", True)                  && Confusion probable : “\-1” est une forme verbale conjuguée. Si “\-2” est une préposition, il faut placer un nom après.
        <<- /conf/ --1>> =suggSimil(\-1, ":[NA].*:[si]", True)                  && Confusion probable : “\-1” est une forme verbale conjuguée. Si “\-2” est une préposition, il faut placer un nom après.

TEST: Siffle-t-il le {{dépare}} du duel ?                       ->> départ
TEST: Regardes-tu la {{commette}} ?                             ->> comète
TEST: Gérons-nous l’{{accueille}} ?                             ->> accueil
TEST: Connaissent-ils leur {{assied}}                           ->> acier
TEST: Écrit-elle les {{fixions}} ?                              ->> fictions
TEST: Avouera-t-elle le {{choie}} qu’il a fait ?                ->> choix
TEST: Entreront-ils en {{contacte}} avec eux ?                  ->> contact


__conf_vc_int_imp_verbe!3__
    [/_VCint_|/_VCimp_]  @:[123][sp]¬:[GNAQWM]
        <<- /conf/ not value(\1, "|rendez-vous|entre-nous|entre-vous|entre-elles|") and not morphVC(\1, ":V0")
        -2>> _                                                                  && Incohérence probable : “\2” est une forme verbale conjuguée.
        -2>> _                                                                  && Incohérence probable : “\2” est une forme verbale conjuguée.

TEST: Annonce-le {{dépare}}.
TEST: prends-la {{tète}}.
TEST: alors rappelons-nous Marie


__conf_verbes_det_verbe_nom__
    [<start>|,|(]  ?[ne|n’]¿   ?[le|la|l’|les|en|me|m’|te|t’|se|s’|nous|vous|lui|leur|y]¿  @:[123][sp]¬:[NAGM]  le     @:[123][sp]¬:[NA].*:[me]:[si]
    [<start>|,|(]  ?[ne|n’]¿   [me|m’|te|t’|se|s’|nous|vous]   [le|la|l’|les|en|y]         @:[123][sp]¬:[NAGM]  le     @:[123][sp]¬:[NA].*:[me]:[si]
    [<start>|,|(]  ?[ne|n’]¿   [le|la|l’|les]                  [lui|leur|en|y]             @:[123][sp]¬:[NAGM]  le     @:[123][sp]¬:[NA].*:[me]:[si]
    [<start>|,|(]  ?[ne|n’]¿   [lui|leur]                      en                          @:[123][sp]¬:[NAGM]  le     @:[123][sp]¬:[NA].*:[me]:[si]
        <<- /conf/ --1>> =suggSimil(\-1, ":[NA].*:[me]:[si]", True)             && Confusion probable : “\-1” est une forme verbale conjuguée. Si “\-2” est un déterminant, il faut placer un nom après.
        <<- /conf/ --1>> =suggSimil(\-1, ":[NA].*:[me]:[si]", True)             && Confusion probable : “\-1” est une forme verbale conjuguée. Si “\-2” est un déterminant, il faut placer un nom après.

    [<start>|,|(]  ?[ne|n’]¿   ?[le|la|l’|les|en|me|m’|te|t’|se|s’|nous|vous|lui|leur|y]¿  @:[123][sp]¬:[NAGM]  la     @:[123][sp]¬:[NA].*:[fe]:[si]
    [<start>|,|(]  ?[ne|n’]¿   [me|m’|te|t’|se|s’|nous|vous]   [le|la|l’|les|en|y]         @:[123][sp]¬:[NAGM]  la     @:[123][sp]¬:[NA].*:[fe]:[si]
    [<start>|,|(]  ?[ne|n’]¿   [le|la|l’|les]                  [lui|leur|en|y]             @:[123][sp]¬:[NAGM]  la     @:[123][sp]¬:[NA].*:[fe]:[si]
    [<start>|,|(]  ?[ne|n’]¿   [lui|leur]                      en                          @:[123][sp]¬:[NAGM]  la     @:[123][sp]¬:[NA].*:[fe]:[si]
        <<- /conf/ --1>> =suggSimil(\-1, ":[NA].*:[fe]:[si]", True)             && Confusion probable : “\-1” est une forme verbale conjuguée. Si “\-2” est un déterminant, il faut placer un nom après.
        <<- /conf/ --1>> =suggSimil(\-1, ":[NA].*:[fe]:[si]", True)             && Confusion probable : “\-1” est une forme verbale conjuguée. Si “\-2” est un déterminant, il faut placer un nom après.

    [<start>|,|(]  ?[ne|n’]¿   ?[le|la|l’|les|en|me|m’|te|t’|se|s’|nous|vous|lui|leur|y]¿  @:[123][sp]¬:[NAGM]  l’     @:[123][sp]¬:[NA].*:[si]
    [<start>|,|(]  ?[ne|n’]¿   [me|m’|te|t’|se|s’|nous|vous]   [le|la|l’|les|en|y]         @:[123][sp]¬:[NAGM]  l’     @:[123][sp]¬:[NA].*:[si]
    [<start>|,|(]  ?[ne|n’]¿   [le|la|l’|les]                  [lui|leur|en|y]             @:[123][sp]¬:[NAGM]  l’     @:[123][sp]¬:[NA].*:[si]
    [<start>|,|(]  ?[ne|n’]¿   [lui|leur]                      en                          @:[123][sp]¬:[NAGM]  l’     @:[123][sp]¬:[NA].*:[si]
        <<- /conf/ --1>> =suggSimil(\-1, ":[NA].*:[si]", True)                  && Confusion probable : “\-1” est une forme verbale conjuguée. Si “\-2” est un déterminant, il faut placer un nom après.
        <<- /conf/ --1>> =suggSimil(\-1, ":[NA].*:[si]", True)                  && Confusion probable : “\-1” est une forme verbale conjuguée. Si “\-2” est un déterminant, il faut placer un nom après.

    [<start>|,|(]  ?[ne|n’]¿   ?[le|la|l’|les|en|me|m’|te|t’|se|s’|nous|vous|lui|leur|y]¿  @:[123][sp]¬:[NAGM]  leur   @:[123][sp]¬:[NA].*:[si]
    [<start>|,|(]  ?[ne|n’]¿   [me|m’|te|t’|se|s’|nous|vous]   [le|la|l’|les|en|y]         @:[123][sp]¬:[NAGM]  leur   @:[123][sp]¬:[NA].*:[si]
    [<start>|,|(]  ?[ne|n’]¿   [le|la|l’|les]                  [lui|leur|en|y]             @:[123][sp]¬:[NAGM]  leur   @:[123][sp]¬:[NA].*:[si]
    [<start>|,|(]  ?[ne|n’]¿   [lui|leur]                      en                          @:[123][sp]¬:[NAGM]  leur   @:[123][sp]¬:[NA].*:[si]
        <<- /conf/ --1>> =suggSimil(\-1, ":[NA].*:[si]", True)                  && Confusion probable : “\-1” est une forme verbale conjuguée. Si “\-2” est un déterminant, il faut placer un nom après.
        <<- /conf/ --1>> =suggSimil(\-1, ":[NA].*:[si]", True)                  && Confusion probable : “\-1” est une forme verbale conjuguée. Si “\-2” est un déterminant, il faut placer un nom après.

    [<start>|,|(]  ?[ne|n’]¿   ?[le|la|l’|les|en|me|m’|te|t’|se|s’|nous|vous|lui|leur|y]¿  @:[123][sp]¬:[NAGM]  [les|leurs]  @:[123][sp]¬:[NA].*:[pi]
    [<start>|,|(]  ?[ne|n’]¿   [me|m’|te|t’|se|s’|nous|vous]   [le|la|l’|les|en|y]         @:[123][sp]¬:[NAGM]  [les|leurs]  @:[123][sp]¬:[NA].*:[pi]
    [<start>|,|(]  ?[ne|n’]¿   [le|la|l’|les]                  [lui|leur|en|y]             @:[123][sp]¬:[NAGM]  [les|leurs]  @:[123][sp]¬:[NA].*:[pi]
    [<start>|,|(]  ?[ne|n’]¿   [lui|leur]                      en                          @:[123][sp]¬:[NAGM]  [les|leurs]  @:[123][sp]¬:[NA].*:[pi]
        <<- /conf/ --1>> =suggSimil(\-1, ":[NA].*:[pi]", True)                  && Confusion probable : “\-1” est une forme verbale conjuguée. Si “\-2” est un déterminant, il faut placer un nom après.
        <<- /conf/ --1>> =suggSimil(\-1, ":[NA].*:[pi]", True)                  && Confusion probable : “\-1” est une forme verbale conjuguée. Si “\-2” est un déterminant, il faut placer un nom après.

    [<start>|,|(]  ?[ne|n’]¿   ?[le|la|l’|les|en|me|m’|te|t’|se|s’|nous|vous|lui|leur|y]¿  @:[123][sp]¬:[NAGM]  en     @:[123][sp]¬:[NA]
    [<start>|,|(]  ?[ne|n’]¿   [me|m’|te|t’|se|s’|nous|vous]   [le|la|l’|les|en|y]         @:[123][sp]¬:[NAGM]  en     @:[123][sp]¬:[NA]
    [<start>|,|(]  ?[ne|n’]¿   [le|la|l’|les]                  [lui|leur|en|y]             @:[123][sp]¬:[NAGM]  en     @:[123][sp]¬:[NA]
    [<start>|,|(]  ?[ne|n’]¿   [lui|leur]                      en                          @:[123][sp]¬:[NAGM]  en     @:[123][sp]¬:[NA]
        <<- /conf/ --1>> =suggSimil(\-1, ":[NA].*:[si]", True)                  && Confusion probable : “\-1” est une forme verbale conjuguée. Si “\-2” est une préposition, il faut placer un nom après.
        <<- /conf/ --1>> =suggSimil(\-1, ":[NA].*:[si]", True)                  && Confusion probable : “\-1” est une forme verbale conjuguée. Si “\-2” est une préposition, il faut placer un nom après.

TEST: arrive ainsi le {{dépare}}
TEST: n’envoie pas leur {{signale}}
TEST: observa alors la {{saillit}}
TEST: ensuite, tu vois, surviennent les {{désires}}.
TEST: ne leur donne pas le {{choie}}.
TEST: ne gère pas l’{{accueille}} comme il faut.
TEST: sont en {{recule}}
TEST: cela le rend malade
TEST: Marie Desplechin en savait quelque chose
TEST: qui les aiment, les étudient, les protègent mais aussi les exploitent, les chassent, les mangent


__conf_vinfi_adj__
    <start> [le|l’|ce|cet|mon|ton|son|notre|votre|leur|quel]                *WORD      *WORD    [ne|n’|me|m’|te|t’|se|s’]
    <start> [le|l’|ce|cet|mon|ton|son|notre|votre|leur|quel]                *WORD      *WORD    ?[le|la|l’|les|en|nous|vous|lui|leur|y]¿    @:[123][sp]
    <start> [le|l’|ce|cet|mon|ton|son|notre|votre|leur|quel]                *WORD      *WORD    [nous|vous]     [le|la|l’|les|en|y]         @:[123][sp]
    <start> [le|l’|ce|cet|mon|ton|son|notre|votre|leur|quel]                *WORD      *WORD    [le|la|l’|les]  [lui|leur|en|y]             @:[123][sp]
    <start> [le|l’|ce|cet|mon|ton|son|notre|votre|leur|quel]                *WORD      *WORD    [lui|leur|y]    en                          @:[123][sp]
        <<- /conf/ \4.islower() and morph(\3, ":[NA].*:m:[si]", ":G|>verbe/") and morph(\4, ":V1.*:Y", ":M")
        -4>> =suggVerbPpas(\4, ":m:s")                                      && Confusion probable : “\4” est un verbe à l’infinitif, alors qu’il faudrait probablement un adjectif se rapportant à “\2 \3”.
        -4>> =suggVerbPpas(\4, ":m:s")                                      && Confusion probable : “\4” est un verbe à l’infinitif, alors qu’il faudrait probablement un adjectif se rapportant à “\2 \3”.

    <start> [la|l’|cette|mon|ton|son|ma|ta|sa|notre|votre|leur|quelle]      *WORD      *WORD    [ne|n’|me|m’|te|t’|se|s’]
    <start> [la|l’|cette|mon|ton|son|ma|ta|sa|notre|votre|leur|quelle]      *WORD      *WORD    ?[le|la|l’|les|en|nous|vous|lui|leur|y]¿    @:[123][sp]
    <start> [la|l’|cette|mon|ton|son|ma|ta|sa|notre|votre|leur|quelle]      *WORD      *WORD    [nous|vous]     [le|la|l’|les|en|y]         @:[123][sp]
    <start> [la|l’|cette|mon|ton|son|ma|ta|sa|notre|votre|leur|quelle]      *WORD      *WORD    [le|la|l’|les]  [lui|leur|en|y]             @:[123][sp]
    <start> [la|l’|cette|mon|ton|son|ma|ta|sa|notre|votre|leur|quelle]      *WORD      *WORD    [lui|leur|y]    en                          @:[123][sp]
        <<- /conf/ \4.islower() and morph(\3, ":[NA].*:f:[si]", ":G") and morph(\4, ":V1.*:Y", ":M")
        -4>> =suggVerbPpas(\4, ":f:s")                                      && Confusion probable : “\4” est un verbe à l’infinitif, alors qu’il faudrait probablement un adjectif se rapportant à “\2 \3”.
        -4>> =suggVerbPpas(\4, ":f:s")                                      && Confusion probable : “\4” est un verbe à l’infinitif, alors qu’il faudrait probablement un adjectif se rapportant à “\2 \3”.

    <start> [l’|notre|votre|leur]                                           *WORD      *WORD    [ne|n’|me|m’|te|t’|se|s’]
    <start> [l’|notre|votre|leur]                                           *WORD      *WORD    ?[le|la|l’|les|en|nous|vous|lui|leur|y]¿    @:[123][sp]
    <start> [l’|notre|votre|leur]                                           *WORD      *WORD    [nous|vous]     [le|la|l’|les|en|y]         @:[123][sp]
    <start> [l’|notre|votre|leur]                                           *WORD      *WORD    [le|la|l’|les]  [lui|leur|en|y]             @:[123][sp]
    <start> [l’|notre|votre|leur]                                           *WORD      *WORD    [lui|leur|y]    en                          @:[123][sp]
        <<- /conf/ \4.islower() and morph(\3, ":[NA].*:e:[si]", ":G") and morph(\4, ":V1.*:Y", ":M")
        -4>> =suggVerbPpas(\4, ":s")                                        && Confusion probable : “\4” est un verbe à l’infinitif, alors qu’il faudrait probablement un adjectif se rapportant à “\2 \3”.
        -4>> =suggVerbPpas(\4, ":s")                                        && Confusion probable : “\4” est un verbe à l’infinitif, alors qu’il faudrait probablement un adjectif se rapportant à “\2 \3”.

    <start> [les|ces|mes|tes|ses|nos|vos|leurs|quels|quelles|quelques|plusieurs|certains|certaines|maints|maintes]    *WORD      *WORD     [ne|n’|me|m’|te|t’|se|s’]
    <start> [les|ces|mes|tes|ses|nos|vos|leurs|quels|quelles|quelques|plusieurs|certains|certaines|maints|maintes]    *WORD      *WORD     ?[le|la|l’|les|en|nous|vous|lui|leur|y]¿    @:[123][sp]
    <start> [les|ces|mes|tes|ses|nos|vos|leurs|quels|quelles|quelques|plusieurs|certains|certaines|maints|maintes]    *WORD      *WORD     [nous|vous]     [le|la|l’|les|en|y]         @:[123][sp]
    <start> [les|ces|mes|tes|ses|nos|vos|leurs|quels|quelles|quelques|plusieurs|certains|certaines|maints|maintes]    *WORD      *WORD     [le|la|l’|les]  [lui|leur|en|y]             @:[123][sp]
    <start> [les|ces|mes|tes|ses|nos|vos|leurs|quels|quelles|quelques|plusieurs|certains|certaines|maints|maintes]    *WORD      *WORD     [lui|leur|y]    en                          @:[123][sp]
        <<- /conf/ \4.islower() and morph(\3, ":[NA].*:[pi]", ":G") and morph(\4, ":V1.*:Y", ":M")
        -4>> =suggVerbPpas(\4, ":p")                                        && Confusion probable : “\4” est un verbe à l’infinitif, alors qu’il faudrait probablement un adjectif se rapportant à “\2 \3”.
        -4>> =suggVerbPpas(\4, ":p")                                        && Confusion probable : “\4” est un verbe à l’infinitif, alors qu’il faudrait probablement un adjectif se rapportant à “\2 \3”.

TEST: mon pantalon {{repriser}} me grattait.
TEST: la petite {{penser}} ne cessait de tourner dans son cerveau enfiévré.
TEST: les hommes nouvellement {{arriver}} ne nous dirent rien de ce qu’ils avaient vu.
TEST: les documents {{photocopier}} ne sont pas lisibles.
TEST: tes doutes {{remâcher}} deviennent difficiles à vivre.
TEST: ce tableau {{voler}} coûte très cher.
TEST: la difficulté {{passer}} t’aidera par la suite
TEST: notre voiture {{décolorer}} avait mauvaise allure
TEST: l’activiste {{démasquer}} servira de taupe pour nous.
TEST: Le vieux cocher avait mission
TEST: le verbe aller est irrégulier.


__conf_quel_être_nom_verbe__
    [quel|quels|quelle|quelles]  >être          [le|mon|ton|son|ce|cet]  @:V¬:[NA]
    [quel|quels|quelle|quelles]  >pouvoir être  [le|mon|ton|son|ce|cet]  @:V¬:[NA]
        <<- /conf/ morph(\2, ":[123][sp]") --1>> =suggSimil(\-1, ":[NA].*:[me]:[si]", True)     && Confusion probable : “\-1”  est un forme verbale conjuguée, alors qu’il faudrait probablement un substantif.
        <<- /conf/ morph(\2, ":[123][sp]") --1>> =suggSimil(\-1, ":[NA].*:[me]:[si]", True)     && Confusion probable : “\-1” est un forme verbale conjuguée, alors qu’il faudrait probablement un substantif.

    [quel|quels|quelle|quelles]  >être          [la|ma|ta|sa|cette]  @:V¬:[NA]
    [quel|quels|quelle|quelles]  >pouvoir être  [la|ma|ta|sa|cette]  @:V¬:[NA]
        <<- /conf/ morph(\2, ":[123][sp]") --1>> =suggSimil(\-1, ":[NA].*:[fe]:[si]", True)     && Confusion probable : “\-1”  est un forme verbale conjuguée, alors qu’il faudrait probablement un substantif.
        <<- /conf/ morph(\2, ":[123][sp]") --1>> =suggSimil(\-1, ":[NA].*:[fe]:[si]", True)     && Confusion probable : “\-1” est un forme verbale conjuguée, alors qu’il faudrait probablement un substantif.

    [quel|quels|quelle|quelles]  >être          [l’|notre|votre|leur]  @:V¬:[NA]
    [quel|quels|quelle|quelles]  >pouvoir être  [l’|notre|votre|leur]  @:V¬:[NA]
        <<- /conf/ morph(\2, ":[123][sp]") --1>> =suggSimil(\-1, ":[NA].*:[si]", True)          && Confusion probable : “\-1”  est un forme verbale conjuguée, alors qu’il faudrait probablement un substantif.
        <<- /conf/ morph(\2, ":[123][sp]") --1>> =suggSimil(\-1, ":[NA].*:[si]", True)          && Confusion probable : “\-1” est un forme verbale conjuguée, alors qu’il faudrait probablement un substantif.

    [quel|quels|quelle|quelles]  >être          [les|ces|mes|tes|ses|nos|vos|leurs|plusieurs]  @:V¬:[NA]
    [quel|quels|quelle|quelles]  >pouvoir être  [les|ces|mes|tes|ses|nos|vos|leurs|plusieurs]  @:V¬:[NA]
        <<- /conf/ morph(\2, ":[123][sp]") --1>> =suggSimil(\-1, ":[NA].*:[pi]", True)          && Confusion probable : “\-1”  est un forme verbale conjuguée, alors qu’il faudrait probablement un substantif.
        <<- /conf/ morph(\2, ":[123][sp]") --1>> =suggSimil(\-1, ":[NA].*:[pi]", True)          && Confusion probable : “\-1” est un forme verbale conjuguée, alors qu’il faudrait probablement un substantif.

TEST: quel peut être le {{boycotte}}                                                ->> boycott
TEST: quelle peut être la {{saillit}} qui le rendit célèbre                         ->> saillie
TEST: Quel serait leur {{impacte}} sur la population.                               ->> impact
TEST: Quels étaient les {{ennuient}} avec ces gens                                  ->> ennuis
TEST: un homme humble et doux, quel être le deviendrait en de telles circonstances ?

29398
29399
29400
29401
29402
29403
29404
29405

29406
29407
29408
29409
29410
29411
29412
29405
29406
29407
29408
29409
29410
29411

29412
29413
29414
29415
29416
29417
29418
29419







-
+







    [/-je|/-tu|/-il|/-on|/-elle|/-nous|/-vous|/-ils|/-elles|/-iel|/-iels]  @:V.......e_.*:Q
        <<- /conf/ morphVC(\1, ">avoir/") -1>> _                && Incohérence. La forme verbale “\2” ne peut pas être utilisé avec l’auxiliaire “avoir”, seulement avec l’auxiliaire “être”.

    [je|j’|tu|il|elle|on|ils|nous|vous|elle|elles|iel|iels]  ?[ne|n’]¿  ?[le|la|l’|les|en|me|m’|te|t’|se|s’|nous|vous|lui|leur|y]¿  >avoir  @:V.......e_.*:Q
    [je|j’|tu|il|elle|on|ils|nous|vous|elle|elles|iel|iels]  ?[ne|n’]¿  [me|m’|te|t’|se|s’|nous|vous]   [le|la|l’|les|en|y]         >avoir  @:V.......e_.*:Q
    [je|j’|tu|il|elle|on|ils|nous|vous|elle|elles|iel|iels]  ?[ne|n’]¿  [le|la|l’|les]                  [lui|leur|en|y]             >avoir  @:V.......e_.*:Q
    [je|j’|tu|il|elle|on|ils|nous|vous|elle|elles|iel|iels]  ?[ne|n’]¿  [lui|leur|y]                    en                          >avoir  @:V.......e_.*:Q
        <<- /conf/ --2>> _                                      && Incohérence. La forme verbale “\-2” ne peut pas être utilisé avec l’auxiliaire “avoir”, seulement avec l’auxiliaire “être”.
        <<- /conf/ --2>> _                                      && Incohérence. La forme verbale “\-1” ne peut pas être utilisé avec l’auxiliaire “avoir”, seulement avec l’auxiliaire “être”.

    ce [qui|que|qu’] ?[ne|n’]¿  ?[le|la|l’|les|en|me|m’|te|t’|se|s’|nous|vous|lui|leur|y]¿  [ait|aie|aies|ai|ais]
    ce [qui|que|qu’] ?[ne|n’]¿  [me|m’|te|t’|se|s’|nous|vous]   [le|la|l’|les|en|y]         [ait|aie|aies|ai|ais]
    ce [qui|que|qu’] ?[ne|n’]¿  [le|la|l’|les]                  [lui|leur|en|y]             [ait|aie|aies|ai|ais]
    ce [qui|que|qu’] ?[ne|n’]¿  [lui|leur|y]                    en                          [ait|aie|aies|ai|ais]
        <<- /conf/ --1>> est                                    && Confusion probable entre le verbe “avoir” et “être”.

29776
29777
29778
29779
29780
29781
29782
29783

29784
29785
29786
29787
29788
29789
29790
29783
29784
29785
29786
29787
29788
29789

29790
29791
29792
29793
29794
29795
29796
29797







-
+








#### a / à
__conf_pronom_verbe_à__
    [<start>|,|(]  [je|j’|tu|il|elle|on|ils|elles|iel|iels]   @:V        a
    [<start>|,|(]  [nous|vous]                                @:V¬:Y     a
    [<start>|,|(]  c’                                         >être      a
    [<start>|,|(]  [cela|ceci|celui-ci|celui-là|celle-ci|celle-là|ceux-ci|ceux-là|celles-ci|celles-là]  @:(?:[123][sp]|P)  a
        <<- /conf/ \-1 != "A" --1>> à                               && Confusion probable : “a” est une conjugaison du verbe “avoir”. Utilisez la préposition “à”.
        <<- /conf/ \-1 != "A" --1>> à                               && Confusion probable : “a” est une conjugaison du verbe “avoir”. Utilisez la préposition “à”.

TEST: Il vient {{a}} la maison.
TEST: tu ne donnes rien {{a}} ces hommes.
TEST: Nous les donnons {{a}} ces gens.
TEST: j’arrive {{a}} la gare
TEST: Cela venait {{a}} la maison régulièrement.
TEST: C’est {{a}} des années-lumière de réussir.
29930
29931
29932
29933
29934
29935
29936
29937

29938
29939
29940
29941
29942

29943
29944
29945
29946
29947

29948
29949
29950
29951

29952
29953
29954
29955
29956

29957
29958
29959
29960
29961
29962
29963
29964
29965
29966
29967
29968
29969

29970
29971
29972
29973

29974
29975
29976
29977
29978

29979
29980
29981
29982
29983
29984
29985
29986
29987
29988
29989
29990

29991
29992
29993
29994

29995
29996
29997
29998
29999

30000
30001
30002
30003
30004
30005
30006
30007
30008
30009
30010
30011
30012

30013
30014
30015
30016
30017
30018
30019
30020
30021
30022
30023

30024
30025
30026
30027

30028
30029
30030
30031
30032

30033
30034
30035
30036
30037
30038
30039
30040
30041
30042
30043
30044
30045
30046
30047

30048
30049
30050
30051

30052
30053
30054
30055

30056
30057
30058
30059

30060
30061
30062
30063
30064
30065
30066

30067
30068
30069
30070
30071
30072
30073
30074
30075
30076
30077
30078
30079
30080
30081
30082
30083

30084
30085
30086
30087

30088
30089
30090
30091

30092
30093
30094
30095

30096
30097
30098
30099
30100

30101
30102
30103
30104
30105
30106
30107
30108
30109
30110
30111
30112
30113
30114
30115
30116

30117
30118
30119
30120

30121
30122
30123
30124
30125

30126
30127
30128
30129
30130
30131
30132
30133
30134
30135
30136

30137
30138
30139
30140

30141
30142
30143
30144
30145

30146
30147
30148
30149
30150
30151
30152
29937
29938
29939
29940
29941
29942
29943

29944
29945
29946
29947
29948

29949
29950
29951
29952
29953

29954
29955
29956
29957

29958
29959
29960
29961
29962

29963
29964
29965
29966
29967
29968
29969
29970
29971
29972
29973
29974
29975

29976
29977
29978
29979

29980
29981
29982
29983
29984

29985
29986
29987
29988
29989
29990
29991
29992
29993
29994
29995
29996

29997
29998
29999
30000

30001
30002
30003
30004
30005

30006
30007
30008
30009
30010
30011
30012
30013
30014
30015
30016
30017
30018

30019
30020
30021
30022
30023
30024
30025
30026
30027
30028
30029

30030
30031
30032
30033

30034
30035
30036
30037
30038

30039
30040
30041
30042
30043
30044
30045
30046
30047
30048
30049
30050
30051
30052
30053

30054
30055
30056
30057

30058
30059
30060
30061

30062
30063
30064
30065

30066
30067
30068
30069
30070
30071
30072

30073
30074
30075
30076
30077
30078
30079
30080
30081
30082
30083
30084
30085
30086
30087
30088
30089

30090
30091
30092
30093

30094
30095
30096
30097

30098
30099
30100
30101

30102
30103
30104
30105
30106

30107
30108
30109
30110
30111
30112
30113
30114
30115
30116
30117
30118
30119
30120
30121
30122

30123
30124
30125
30126

30127
30128
30129
30130
30131

30132
30133
30134
30135
30136
30137
30138
30139
30140
30141
30142

30143
30144
30145
30146

30147
30148
30149
30150
30151

30152
30153
30154
30155
30156
30157
30158
30159







-
+




-
+




-
+



-
+




-
+












-
+



-
+




-
+











-
+



-
+




-
+












-
+










-
+



-
+




-
+














-
+



-
+



-
+



-
+






-
+
















-
+



-
+



-
+



-
+




-
+















-
+



-
+




-
+










-
+



-
+




-
+







!!
!!

__inte_union_je!7__
    [<start>|,|comment|pourquoi|combien|que|qu’|quoique|quoiqu’|où|puis|quand|qui]  ~..[éèe]$  je  [<end>|,|)]
    [<start>|,|comment|pourquoi|combien|que|qu’|quoique|quoiqu’|où|puis|quand|qui]  ~..[éèe]$  je  @:¬:1s
        <<- /inte/ space_after(\2, 1, 1) and morph(\2, ":V.*:1[sŝś]", ":[GW]")
        -2:3>> =\2[:-1]+"é-je"                                                                      && Forme interrogative ? Mettez un trait d’union.
        -2:3>> =\2[:-1]+"é-je"                                                                      && Forme interrogative ? Mettez un trait d’union.

    *WORD  ~..[éèe]$  je  [<end>|,|)]
    *WORD  ~..[éèe]$  je  @:¬:1s
        <<- /inte/ space_after(\2, 1, 1) and morph(\2, ":V.*:1[sŝś]", ":[GNW]") and not value(\1, "|je|j’|il|elle|")
        -2:3>> =\2[:-1]+"é-je"                                                                      && Forme interrogative ? Mettez un trait d’union.
        -2:3>> =\2[:-1]+"é-je"                                                                      && Forme interrogative ? Mettez un trait d’union.

    [<start>|,|comment|pourquoi|combien|que|qu’|quoique|quoiqu’|où|puis|quand|qui]  ~.[is]$  je  [<end>|,|)]
    [<start>|,|comment|pourquoi|combien|que|qu’|quoique|quoiqu’|où|puis|quand|qui]  ~.[is]$  je  @:¬:1s
        <<- /inte/ space_after(\2, 1, 1) and morph(\2, ":V.*:1s", ":[GW]")
        -2:3>> \2-je                                                                                && Forme interrogative ? Mettez un trait d’union.
        -2:3>> \2-je                                                                                && Forme interrogative ? Mettez un trait d’union.

    [<start>|,|comment|pourquoi|combien|que|qu’|quoique|quoiqu’|où|puis|quand|qui]  [ai|avais|eus|eussé|eusse|aurai|aurais|suis|étais|fus|fussé|fusse|serai|serais]  je
        <<- /inte/ space_after(\2, 1, 1)
        -2:3>> \2-je                                                                                && Forme interrogative ? Mettez un trait d’union.
        -2:3>> \2-je                                                                                && Forme interrogative ? Mettez un trait d’union.

    *WORD  ~.[is]$  je  [<end>|,|)]
    *WORD  ~.[is]$  je  @:¬:1s
        <<- /inte/ space_after(\2, 1, 1) and morph(\2, ":V.*:1s", ":[GNW]") and not value(\1, "|je|j’|tu|")
        -2:3>> \2-je                                                                                && Forme interrogative ? Mettez un trait d’union.
        -2:3>> \2-je                                                                                && Forme interrogative ? Mettez un trait d’union.

TEST: quel animal {{dessine je}}
TEST: {{mangé je}} {{ça}} avec dégoût ?
TEST: {{viendrais je}} à la fête ?
TEST: {{ai je}} enfin trouvé la réponse à mes questions ?
TEST: quel amour {{connaîtrai je}} si je juge sans cesse ?


__inte_union_tu!7__
    [<start>|,|comment|pourquoi|combien|que|qu’|quoique|quoiqu’|où|puis|quand|qui]  ~.[sx]$  tu  [<end>|,|)]
    [<start>|,|comment|pourquoi|combien|que|qu’|quoique|quoiqu’|où|puis|quand|qui]  ~.[sx]$  tu  @:¬:2s
        <<- /inte/ space_after(\2, 1, 1) and morph(\2, ":V.*:2s", ":[GW]")
        -2:3>> \2-tu                                                                                && Forme interrogative ? Mettez un trait d’union.
        -2:3>> \2-tu                                                                                && Forme interrogative ? Mettez un trait d’union.

    [<start>|,|comment|pourquoi|combien|que|qu’|quoique|quoiqu’|où|puis|quand|qui]  [as|avais|eus|eusses|es|auras|aurais|étais|fus|fusses|seras|serais]  tu
        <<- /inte/ space_after(\2, 1, 1)
        -2:3>> \2-tu                                                                                && Forme interrogative ? Mettez un trait d’union.
        -2:3>> \2-tu                                                                                && Forme interrogative ? Mettez un trait d’union.

    *WORD  ~.s$  tu  [<end>|,|)]
    *WORD  ~.s$  tu  @:¬:2s
        <<- /inte/ space_after(\2, 1, 1) and morph(\2, ":V.*:2s", ":[GNW]") and not value(\1, "|je|j’|tu|")
        -2:3>> \2-tu                                                                                && Forme interrogative ? Mettez un trait d’union.
        -2:3>> \2-tu                                                                                && Forme interrogative ? Mettez un trait d’union.

TEST: {{Viendras tu}} là ?
TEST: et toi, {{as tu}} découvert le secret de l’immortalité ?
TEST: quelle vie {{connaitras tu}} ?
TEST: Comment {{peux tu}} ?


__inte_union_il_on!7__
    [<start>|,|comment|pourquoi|combien|que|qu’|quoique|quoiqu’|où|puis|quand|qui]  ~.[td]$  [il|on]  [<end>|,|)]
    [<start>|,|comment|pourquoi|combien|que|qu’|quoique|quoiqu’|où|puis|quand|qui]  ~.[td]$  [il|on]  @:¬:3s
        <<- /inte/ space_after(\2, 1, 1) and morph(\2, ":V.*:3s", ":[GW]")
        -2:3>> \2-\3                                                                                && Forme interrogative ? Mettez un trait d’union.
        -2:3>> \2-\3                                                                                && Forme interrogative ? Mettez un trait d’union.

    [<start>|,|comment|pourquoi|combien|que|qu’|quoique|quoiqu’|où|puis|quand|qui]  [avait|eut|eût|est|aurait|était|fut|fût|serait]   [il|on]
        <<- /inte/ space_after(\2, 1, 1)
        -2:3>> \2-\3                                                                                && Forme interrogative ? Mettez un trait d’union.
        -2:3>> \2-\3                                                                                && Forme interrogative ? Mettez un trait d’union.

    *WORD  ~.[td]$  [il|on]  [<end>|,|)]
    *WORD  ~.[td]$  [il|on]  @:¬:3s
        <<- /inte/ space_after(\2, 1, 1) and morph(\2, ":V.*:3s", ":[GNW]") and not value(\1, "|ce|il|elle|on|")
        -2:3>> \2-\3                                                                                && Forme interrogative ? Mettez un trait d’union.
        -2:3>> \2-\3                                                                                && Forme interrogative ? Mettez un trait d’union.

TEST: {{prend on}} le temps d’y réfléchir ?
TEST: De quel droit {{vient il}} m’{{ennuyer}} ?
TEST: comment {{était il}}
TEST: Pourquoi le message de Jean {{était il}} très radical pour son époque ?
TEST: Pourquoi le message de Jean était‐il très radical pour son époque ? (Hyphen U+2010)


__inte_union_ce!7__
    [<start>|,|(] [est|était|étaient] ce ?pas¿ [le|la|les|l’|un|une|de|des|d’|ce|cet|cette|ces|quelques|plusieurs|mon|ma|ta|sa|notre|votre|leur|mes|tes|ses|nos|vos|leurs]
    [<start>|,|(] [est|était|étaient] ce ?pas¿ @:G¬:[NA].*:[me]:[si]|>(?:qu[ei’]|pourquoi|dont)/
    [<start>|,|(] [est|était|étaient] ce [ton|son] @:N¬:A.*:[me]:[si]
        <<- /inte/ space_after(\2, 1, 1) -2:3>> \2-\3                                               && Forme interrogative ? Mettez un trait d’union.
        <<- /inte/ space_after(\2, 1, 1) -2:3>> \2-\3                                               && Forme interrogative ? Mettez un trait d’union.

TEST: N’{{était ce}} pas le bon moment pour y songer.                   ->> était-ce
TEST: Qu’était ce raffut ?
TEST: Cette liberté, formalisée par le libéralisme économique, dès les Physiocrates (vers 1750), est ce dont le despotisme économique a besoin pour que son soubassement économique fonctionne mécaniquement.


__inte_union_elle_iel!7__
    [<start>|,|comment|pourquoi|combien|que|qu’|quoique|quoiqu’|où|puis|quand|qui]  ~.[td]$  [elle|iel]  [<end>|,|)]
    [<start>|,|comment|pourquoi|combien|que|qu’|quoique|quoiqu’|où|puis|quand|qui]  ~.[td]$  [elle|iel]  @:¬:3s
        <<- /inte/ space_after(\2, 1, 1) and morph(\2, ":V.*:3s", ":[GW]")
        -2:3>> \2-\3                                                                                && Forme interrogative ? Mettez un trait d’union.
        -2:3>> \2-\3                                                                                && Forme interrogative ? Mettez un trait d’union.

    [<start>|,|comment|pourquoi|combien|que|qu’|quoique|quoiqu’|où|puis|quand|qui]  [avait|eut|eût|aurait|est|était|fut|fût|serait]   [elle|iel]
        <<- /inte/ space_after(\2, 1, 1)
        -2:3>> \2-\3                                                                                && Forme interrogative ? Mettez un trait d’union.
        -2:3>> \2-\3                                                                                && Forme interrogative ? Mettez un trait d’union.

    *WORD  ~.[td]$  [elle|iel]  [<end>|,|)]
    *WORD  ~.[td]$  [elle|iel]  @:¬:3s
        <<- /inte/ space_after(\2, 1, 1) and morph(\2, ":V.*:3s", ":[GNW]") and not value(\1, "|ce|c’|ça|ç’|il|elle|on|iel|")
        -2:3>> \2-\3                                                                                && Forme interrogative ? Mettez un trait d’union.
        -2:3>> \2-\3                                                                                && Forme interrogative ? Mettez un trait d’union.

TEST: {{vient elle}} souvent ?
TEST: comment {{sait elle}}
TEST: qui {{était elle}} ?
TEST: quel travail {{avait elle}} accompli ?
TEST: {{sait iel}} comment faire ?
TEST: je ne comprenais pas pourquoi c’était elle qui était punie et que personne ne parlait de celui qui avait fait ça.
TEST: C’était elle qui avait pris le contrôle.


__inte_union_nous2!7__
    ,  ~ons$  nous  [<end>|,|)]
    ,  ~ons$  nous  @:¬:(?:1p|Y)
        <<- /inte/ space_after(\2, 1, 1) and morph(\2, ":V.*:1p", ":[GW]") and not value(\2, "|veuillons|sachons|")
        -2:3>> \2-\3                                                                                && Forme interrogative ? Mettez un trait d’union.
        -2:3>> \2-\3                                                                                && Forme interrogative ? Mettez un trait d’union.

    <start>  ~ons  nous
        <<- /inte/ space_after(\2, 1, 1) and morph(\2, ":V.*:1p", ":[GW]") and not value(\2, "|veuillons|sachons|allons|venons|partons|")
        -2:3>> \2-\3                                                                                && Forme interrogative ? Mettez un trait d’union.
        -2:3>> \2-\3                                                                                && Forme interrogative ? Mettez un trait d’union.

    [comment|pourquoi|combien|que|qu’|quoique|quoiqu’|où|puis|quand|qui]  ~ons  nous
        <<- /inte/ space_after(\2, 1, 1) and morph(\2, ":V.*:1p", ":[GW]") and not value(\2, "|veuillons|sachons|")
        -2:3>> \2-\3                                                                                && Forme interrogative ? Mettez un trait d’union.
        -2:3>> \2-\3                                                                                && Forme interrogative ? Mettez un trait d’union.

    [<start>|,|comment|pourquoi|combien|que|qu’|quoique|quoiqu’|où|puis|quand|qui]  [sommes|étions|fûmes|fussions|serons|serions|avons|avions|eûmes|eussions|aurons|aurions]  nous
        <<- /inte/ space_after(\2, 1, 1)
        -2:3>> \2-nous                                                                              && Forme interrogative ? Mettez un trait d’union.
        -2:3>> \2-nous                                                                              && Forme interrogative ? Mettez un trait d’union.

    *WORD  ~ons$  nous  [<end>|,|)]
    *WORD  ~ons$  nous  @:¬:(?:Y|1p)
        <<- /inte/ space_after(\2, 1, 1) and
            ( (value(\2, "|avions|") and not morph(\1, ":A.*:[me]:[sp]") and not morph(\-1, ":(:?3[sp]|Ov)"))
            or (morph(\2, ":V.*:1p", ":[GNW]") and not morph(\1, ":Os")) )
        -2:3>> \2-nous                                                                              && Forme interrogative ? Mettez un trait d’union.
        -2:3>> \2-nous                                                                              && Forme interrogative ? Mettez un trait d’union.

TEST: Ils savent, réellement {{croyons nous}}, comment résoudre le problème, mais ils n’ont fait que de la merde.
TEST: y {{retrouverons nous}} enfin la tranquilité ?
TEST: comment alors {{irons nous}} à la pêche ?
TEST: pourquoi {{sommes nous}} réellement des dieux ?
TEST: À quelle autorité {{prétendons nous}} sur ces gens…
TEST: quel exercice {{avions nous}} revu ?
TEST: À quelle autorité {{prétendons nous}} si…
TEST: pourquoi {{entendons nous}} souvent ces injonctions idiotes ?
TEST: les avions nous font rêver.


__inte_union_vous2!7__
    ,  ~ez$  vous  [<end>|,|)]
    ,  ~ez$  vous  @:¬:(?:2p|Y)
        <<- /inte/ space_after(\2, 1, 1) and morph(\2, ":V.*:2p", ":[GW]") and not value(\2, "|veuillez|sachez|")
        -2:3>> \2-\3                                                                                && Forme interrogative ? Mettez un trait d’union.
        -2:3>> \2-\3                                                                                && Forme interrogative ? Mettez un trait d’union.

    <start>  ~ez$  vous
        <<- /inte/ space_after(\2, 1, 1) and morph(\2, ":V.*:2p", ":[GW]") and not value(\2, "|veuillez|sachez|allez|venez|partez|")
        -2:3>> \2-\3                                                                                && Forme interrogative ? Mettez un trait d’union.
        -2:3>> \2-\3                                                                                && Forme interrogative ? Mettez un trait d’union.

    [comment|pourquoi|combien|que|qu’|quoique|quoiqu’|où|puis|quand|qui]  ~ez$  vous
        <<- /inte/ space_after(\2, 1, 1) and morph(\2, ":V.*:2p", ":[GW]") and not value(\2, "|veuillez|sachez|")
        -2:3>> \2-\3                                                                                && Forme interrogative ? Mettez un trait d’union.
        -2:3>> \2-\3                                                                                && Forme interrogative ? Mettez un trait d’union.

    [<start>|,|comment|pourquoi|combien|que|qu’|quoique|quoiqu’|où|puis|quand|qui]  [êtes|étiez|fûtes|fussiez|serez|seriez|avez|aviez|eûtes|eussiez|aurez|auriez]  vous
        <<- /inte/ space_after(\2, 1, 1)
        -2:3>> \2-vous                                                                              && Forme interrogative ? Mettez un trait d’union.
        -2:3>> \2-vous                                                                              && Forme interrogative ? Mettez un trait d’union.

    *WORD  ~..e[zs]$  vous  [<end>|,|)]
    *WORD  ~..e[zs]$  vous  @:¬:(?:Y|2p)
        <<- /inte/ space_after(\2, 1, 1) and morph(\2, ":V.*:2p", ":[GNW]") and not value(\2, "|veuillez|") and not morph(\1, ":Os")
        -2:3>> \2-vous                                                                              && Forme interrogative ? Mettez un trait d’union.
        -2:3>> \2-vous                                                                              && Forme interrogative ? Mettez un trait d’union.

TEST: ils seront, me {{direz vous}}, étroitement surveillés, mais rien ne le garantit.
TEST: Mais {{soutiendrez vous}} cette proposition ?
TEST: pourquoi ailleurs {{soutenez vous}} ces gens-là ?
TEST: comment {{êtes vous}} arrivées là ?
TEST: quel genre de femme {{voulez vous}} réellement ?
TEST: quel exercice {{avions nous}} réellement ?
TEST: quel homme {{voulez vous}} qu’il devienne
TEST: Veuillez vous instruire avant de contester ces mesures.


__inte_union_ils!7__
    [<start>|,|comment|pourquoi|combien|que|qu’|quoique|quoiqu’|où|puis|quand|qui]  ~[eo]nt$  ils  [<end>|,|)]
    [<start>|,|comment|pourquoi|combien|que|qu’|quoique|quoiqu’|où|puis|quand|qui]  ~[eo]nt$  ils  @:¬:3p
        <<- /inte/ space_after(\2, 1, 1) and morph(\2, ":V.*:3p", ":[GW]")
        -2:3>> \2-\3                                                                                && Forme interrogative ? Mettez un trait d’union.
        -2:3>> \2-\3                                                                                && Forme interrogative ? Mettez un trait d’union.

    [<start>|,|comment|pourquoi|combien|que|qu’|quoique|quoiqu’|où|puis|quand|qui]  [ont|avaient|eurent|eussent|auront|auraient|sont|étaient|furent|fussent|seront|seraient]  ils
        <<- /inte/ space_after(\2, 1, 1)
        -2:3>> \2-\3                                                                                && Forme interrogative ? Mettez un trait d’union.
        -2:3>> \2-\3                                                                                && Forme interrogative ? Mettez un trait d’union.

    *WORD  ~[eo]nt$  ils  [<end>|,|)]
    *WORD  ~[eo]nt$  ils  @:¬:3p
        <<- /inte/ space_after(\2, 1, 1) and morph(\2, ":V.*:3p", ":[GNW]") and not value(\1, "|ce|ils|elles|iels|")
        -2:3>> \2-\3                                                                                && Forme interrogative ? Mettez un trait d’union.
        -2:3>> \2-\3                                                                                && Forme interrogative ? Mettez un trait d’union.

TEST: {{Viendront ils}} demain ?
TEST: qui {{seront ils}} une fois adultes ?
TEST: dans quel retaurant {{iront ils}} ?


__inte_union_elles_iels!7__
    [<start>|,|comment|pourquoi|combien|que|qu’|quoique|quoiqu’|où|puis|quand|qui]  ~[eo]nt$  [elles|iels]  [<end>|,|)]
    [<start>|,|comment|pourquoi|combien|que|qu’|quoique|quoiqu’|où|puis|quand|qui]  ~[eo]nt$  [elles|iels]  @:¬:3p
        <<- /inte/ space_after(\2, 1, 1) and morph(\2, ":V.*:3p", ":[GW]")
        -2:3>> \2-\3                                                                                && Forme interrogative ? Mettez un trait d’union.
        -2:3>> \2-\3                                                                                && Forme interrogative ? Mettez un trait d’union.

    [<start>|,|comment|pourquoi|combien|que|qu’|quoique|quoiqu’|où|puis|quand|qui]  [ont|avaient|eurent|eussent|auront|auraient|sont|étaient|furent|fussent|seront|seraient]  [elles|iels]
        <<- /inte/ space_after(\2, 1, 1)
        -2:3>> \2-\3                                                                                && Forme interrogative ? Mettez un trait d’union.
        -2:3>> \2-\3                                                                                && Forme interrogative ? Mettez un trait d’union.

    *WORD  ~[eo]nt$  [elles|iels]  [<end>|,|)]
    *WORD  ~[eo]nt$  [elles|iels]  @:¬:3p
        <<- /inte/ space_after(\2, 1, 1) and morph(\2, ":V.*:3p", ":[GNW]") and not value(\1, "|ce|ils|elles|iels|")
        -2:3>> \2-\3                                                                                && Forme interrogative ? Mettez un trait d’union.
        -2:3>> \2-\3                                                                                && Forme interrogative ? Mettez un trait d’union.

TEST: {{viennent elles}} souvent ?
TEST: quand {{furent elles}} recrutées ?
TEST: quels éléments {{examinèrent elles}} ?
TEST: {{connaissent iels}} leurs droits ?


30340
30341
30342
30343
30344
30345
30346
30347

30348
30349
30350

30351
30352
30353
30354
30355
30356
30357
30347
30348
30349
30350
30351
30352
30353

30354
30355
30356

30357
30358
30359
30360
30361
30362
30363
30364







-
+


-
+







TEST: Cela {{dis}}, on ne sait pas comment s’en sortir.
TEST: tu sais, n’importe qui {{connais}} la valeur de ces choses.
TEST: Y avait-il seulement quelqu’un pour vouloir soumettre ses recherches ?


__conj_tout__
    tout  @:V¬:(?:3s|P|Q|Y|G|M|3p!|N.*:m:[si])
        <<- /conj/ not morph(<1, ":[VRD]") -2>> =suggVerb(\2, ":3s")    && Conjugaison erronée. Accord avec « tout ». Le verbe devrait être à la 3ᵉ personne du singulier.
        <<- /conj/ not morph(<1, ":[VRD]") -2>> =suggVerb(\2, ":3s")    && Conjugaison erronée. Accord avec « tout ». Le verbe devrait être à la 3ᵉ personne du singulier.

    tout  qui  @:V¬:(?:3s|P|Q|G|3p!)
        <<- /conj/ -3>> =suggVerb(\3, ":3s")                            && Conjugaison erronée. Accord avec « tout ». Le verbe devrait être à la 3ᵉ personne du singulier.
        <<- /conj/ -3>> =suggVerb(\3, ":3s")                            && Conjugaison erronée. Accord avec « tout ». Le verbe devrait être à la 3ᵉ personne du singulier.

TEST: Tout {{reviens}} à ça.
TEST: Tout qui {{deviens}} fou.
TEST: Tout donne envie.
TEST: Tout lui fait peur.
TEST: Tout la fait pleurer
TEST: Tout vient à point.
30740
30741
30742
30743
30744
30745
30746
30747

30748
30749
30750
30751
30752
30753
30754
30747
30748
30749
30750
30751
30752
30753

30754
30755
30756
30757
30758
30759
30760
30761







-
+







TEST: Beaucoup leur donneront du fil à retordre.
TEST: beaucoup d’argent arrive dans nos caisses
TEST: beaucoup est simplement suggéré
TEST: beaucoup prenant leurs aises avec l’argent public
TEST: Beaucoup manger ne nous préservera pas de la famine.


# L’accord par syllepse est obligatoire après /la plupart/, ainsi qu’après /nombre/ et /quantité/ employés sans déterminant. L’accord se fait avec le « pseudo-complément ».
# L’accord par syllepse est obligatoire après /la plupart/, ainsi qu’après /nombre/ et /quantité/ employés sans déterminant. L’accord se fait avec le « pseudo-complément ».
__conj_d_aucuns_la_plupart__
    d’ aucuns   @:V¬:(?:3p|P|Q|G)
    la plupart  @:V¬:(?:3p|P|Q|G)
        <<- /conj/ not morph(<1, ":[VR]")
        -3>> =suggVerb(\3, ":3p")                                       && Conjugaison erronée. Accord avec “\1 \2”. Le verbe devrait être à la 3ᵉ personne du pluriel.

    d’ aucuns   qui  @:V¬:(?:3p|P|G)
30846
30847
30848
30849
30850
30851
30852
30853

30854
30855
30856
30857
30858
30859
30860
30853
30854
30855
30856
30857
30858
30859

30860
30861
30862
30863
30864
30865
30866
30867







-
+









__conj_det_plur_nom__
    [ces|mes|tes|ses|nos|vos|leurs|quelques]  @:[NA].*:[pi]¬:V0  @:V¬:(?:3p|P|Y|G|M|A.*:[pi])
        <<- /conj/ morph(<1, ":Cs|<start>|>,")
            and not( morph(\3, ":3s") and before("(?i)\\b(?:l[ea] |l’|une? |ce(?:tte|t|) |[mts](?:on|a) |[nv]otre ).+ entre .+ et ") ) >>>
        <<- /conj/ not tag(\-1, "_ngn_") and morph(\3, ":A.*:s") or (morph(\3, ":N.*:s") and morph(\2, ":A"))
        -3>> =suggVerb(\3, ":3p", suggPlur)                                                         && Accord avec « \1 \2… » incorrect. Conjugaison erronée ou accord nom/adjectif incorrect.
        -3>> =suggVerb(\3, ":3p", suggPlur)                                                         && Accord avec « \1 \2… » incorrect. Conjugaison erronée ou accord nom/adjectif incorrect.
        <<- /conj/ __else__ -3>> =suggVerb(\3, ":3p")                                               && Conjugaison erronée. Accord avec “\1 \2…”. Le verbe devrait être à la 3ᵉ personne du pluriel.

    [ces|mes|tes|ses|nos|vos|leurs|quelques]  @:[NA].*:[pi]¬:V0  qui  @:V¬:(?:3p|P|Y|G|M|A.*:e:[pi])
        <<- /conj/ morph(<1, ":Cs|<start>|>,")
            and not( morph(\4, ":3s") and before("(?i)\\b(?:l[ea] |l’|une? |ce(?:tte|t|) |[mts](?:on|a) |[nv]otre ).+ entre .+ et ") )
        -4>> =suggVerb(\4, ":3p")                                                                   && Conjugaison erronée. Accord avec “\1 \2 \3…”. Le verbe devrait être à la 3ᵉ personne du pluriel.

31029
31030
31031
31032
31033
31034
31035
31036

31037
31038
31039

31040
31041
31042
31043
31044
31045
31046
31036
31037
31038
31039
31040
31041
31042

31043
31044
31045

31046
31047
31048
31049
31050
31051
31052
31053







-
+


-
+







TEST: La menace d’une guerre nucléaire entre Delhi et Islamabad plane toujours


# on / ont
__conf_ont!6__
    ils  on
    [eux|ceux|elles|celles]  qui  on
        <<- /conf/ --1>> ont                                    && Confusion probable : “on” est un pronom personnel. Pour la conjugaison du verbe “avoir”, écrivez “ont”.
        <<- /conf/ --1>> ont                                    && Confusion probable : “on” est un pronom personnel. Pour la conjugaison du verbe “avoir”, écrivez “ont”.

    [elles|ceux-ci|ceux-là|celles-ci|celles-là]  on
        <<- /conf/ not morph(<1, ":[RV]") -2>> ont              && Confusion probable : “on” est un pronom personnel. Pour la conjugaison du verbe “avoir”, écrivez “ont”.
        <<- /conf/ not morph(<1, ":[RV]") -2>> ont              && Confusion probable : “on” est un pronom personnel. Pour la conjugaison du verbe “avoir”, écrivez “ont”.

TEST: celles-là {{on}} {{vraiment}} un problème avec la religion.
TEST: j’ai, tu as, ils ont, elles {{on}}
TEST: ces gens-là ils {{on}} {{raison}} plus souvent que la plupart des gens.
TEST: Ils soutiennent ceux qui {{on}} {{tant}} de raison d’être en colère.
TEST: Or parmi celles-ci on trouve typiquement d’un côté les structures

31254
31255
31256
31257
31258
31259
31260
31261

31262
31263
31264
31265
31266
31267
31268
31261
31262
31263
31264
31265
31266
31267

31268
31269
31270
31271
31272
31273
31274
31275







-
+







TEST: J’aimerai ces cours-là autant que les autres.
TEST: J’aimerai la danse et la musique, puisque vous l’exigez.
TEST: Je sais que j’aimerai ça, tout comme lui.


__vmode_j_aurais_aimé_que_vinfi__
    j’  aurai  [aimé|souhaité|préféré|voulu|apprécié|désiré|adoré]  [que|qu’|ne|n’|$:Y]
        <<- /vmode/ -2>> aurais|eusse                                                               && Pour un souhait passé, utilisez le conditionnel passé et non le futur antérieur. Exemple pour le futur antérieur : « quand j’aurai fini… »
        <<- /vmode/ -2>> aurais|eusse                                                               && Pour un souhait passé, utilisez le conditionnel passé et non le futur antérieur. Exemple pour le futur antérieur : « quand j’aurai fini… »

TEST: J’{{aurai}} aimé nous offrir ce magnifique cadeau.
TEST: j’{{aurai}} voulu être un artiste.
TEST: j’{{aurai}} préféré ne pas avoir à l’entendre.
TEST: j’{{aurai}} préféré l’entendre un autre jour.
TEST: j’{{aurai}} aimé que vous m’en parliez.
TEST: Quand j’en aurai fini avec eux, vous aurez du mal à les reconnaître.
31400
31401
31402
31403
31404
31405
31406
31407

31408
31409
31410
31411

31412
31413
31414
31415
31416
31417
31418
31419
31420
31421
31422
31423
31424
31425
31426
31427
31428
31429
31430
31431
31432
31433
31434




31435
31436
31437
31438
31439
31440
31441
31407
31408
31409
31410
31411
31412
31413

31414
31415
31416
31417

31418
31419
31420
31421
31422
31423
31424
31425
31426
31427
31428
31429
31430
31431
31432
31433
31434
31435


31436
31437
31438
31439
31440
31441
31442
31443
31444
31445
31446
31447
31448
31449
31450







-
+



-
+

















-
-




+
+
+
+







TEST: j’{{aie}} faim


# Après/dès que + indicatif
__vmode_que_indicatif__
    [après|dès]  [que|qu’]  @:(?:Os|M)  @:V.*:S¬:[GI]
    [après|dès]  [que|qu’]  @:(?:Os|M)  @:V0e.*:S
        <<- /vmode/ -4>> =suggVerbMode(\4, ":I", \3)                    && Après « \1 que », le verbe ne s’emploie pas au subjonctif mais à l’indicatif, si l’action s’est déroulée de façon certaine.
        <<- /vmode/ -4>> =suggVerbMode(\4, ":I", \3)                    && Après « \1 que », le verbe ne s’emploie pas au subjonctif mais à l’indicatif, si l’action s’est déroulée de façon certaine.

    à  mesure    [que|qu’]  @:(?:Os|M)  @:V.*:S¬:[GI]
    à  mesure    [que|qu’]  @:(?:Os|M)  @:V0e.*:S
        <<- /vmode/ -5>> =suggVerbMode(\5, ":I", \4)                    && Après « à mesure que », le verbe ne s’emploie pas au subjonctif mais à l’indicatif.
        <<- /vmode/ -5>> =suggVerbMode(\5, ":I", \4)                    && Après « à mesure que », le verbe ne s’emploie pas au subjonctif mais à l’indicatif.

TEST: Après qu’il {{ait}} allé
TEST: Après que Paul {{ait}} mangé son repas.
TEST: Après qu’il {{soit}} parti, il plut.
TEST: Dès qu’il y {{eût}} pensé, il fit ce qu’il fallait pour résoudre le problème.
TEST: à mesure qu’il {{devienne}} fort


# verbe que + subjonctif
__vmode_verbe_que_subjonctif__
    [>aimer|>approuver|>craindre|>demander|>déplorer|>défendre|>désirer|>exiger|>falloir|>interdire|>ordonner|>permettre|>préférer|>refuser|>regretter|>souhaiter|>suffire|>vouloir]
        || [que|qu’]  @:(?:Os|M)  @:I¬:[GYS]
        <<- /vmode/ morph(\1, ":V", ":N") --1>> =suggVerbMode(\-1, ":S", \-2)                       && Après “\1 que”, ce verbe devrait être au subjonctif.

    >attendre  [que|qu’]  @:(?:Os|M)  @:I¬:[GYS]
        <<- /vmode/ not morph(\1, ":Q") --1>> =suggVerbMode(\-1, ":S", \-2)                         && Après “\1 que”, ce verbe devrait être au subjonctif.

    >avoir      envie           [que|qu’]  @:(?:Os|M)  @:I¬:[GYS]
    >avoir      ?bon¿ espoir    [que|qu’]  @:(?:Os|M)  @:I¬:([GYSK]|If)
    il          >importer       [que|qu’]  @:(?:Os|M)  @:I¬:[GYS]
    >prendre    garde           [que|qu’]  @:(?:Os|M)  @:I¬:[GYS]
        <<- /vmode/ --1>> =suggVerbMode(\-1, ":S", \-2)                                             && Après “\1 \2 que”, ce verbe devrait être au subjonctif.

    >avoir      ?[très|trop]¿   envie      [que|qu’]  @:(?:Os|M)  @:I¬:[GYS]
    >avoir      ?[bon|grand]¿   espoir     [que|qu’]  @:(?:Os|M)  @:I¬:([GYSK]|If)
        <<- /vmode/ --1>> =suggVerbMode(\-1, ":S", \-2)                                             && Après “avoir espoir/envie que”, ce verbe devrait être au subjonctif.

    >étonner   [que|qu’]  @:(?:Os|M)  @:I¬:[GYS]
        <<- /vmode/ tag(\1, "_upron_") --1>> =suggVerbMode(\-1, ":S", \-2)                          && Après “s’étonner que”, le verbe doit être au subjonctif.

    >faire  attention  [à|a]  ce  [que|qu’]  @:(?:Os|M)  @:I¬:[GYS]|>faire/
        <<- /vmode/ --1>> =suggVerbMode(\-1, ":S", \-2)                                             && Après “faire attention à ce que”, le verbe doit être au subjonctif.

    >tenir  [à|a]  ce  [que|qu’]  @:(?:Os|M)  @:I¬:[GYS]
31540
31541
31542
31543
31544
31545
31546
31547

31548
31549
31550

31551
31552
31553
31554
31555
31556

31557
31558
31559
31560
31561
31562
31563
31549
31550
31551
31552
31553
31554
31555

31556
31557
31558

31559
31560
31561
31562
31563
31564

31565
31566
31567
31568
31569
31570
31571
31572







-
+


-
+





-
+







    [<start>|,|(]   en          admettant           [que|qu’]   @:(?:Os|M)  @:I¬:[GYS]
        <<- /vmode/ -6>> =suggVerbMode(\6, ":S", \5)                                                && Si “en admettant que” indique que la suite est une hypothèse, le verbe doit être au subjonctif.

    [<start>|,|(]   en          attendant           [que|qu’]   @:(?:Os|M)  @:I¬:[GYS]
        <<- /vmode/ -6>> =suggVerbMode(\6, ":S", \5)                                                && Après “en attendant que”, le verbe devrait être au subjonctif.

    [<start>|,|(]  bien                             [que|qu’]   @:(?:Os|M)  @:I¬:(?:[GSK]|If|V0a)|>(?:hériter|recevoir|donner|offrir)/
        <<- /vmode/ -5>> =suggVerbMode(\5, ":S", \4)                                                && Après « \2 que », le verbe s’emploie au subjonctif.
        <<- /vmode/ -5>> =suggVerbMode(\5, ":S", \4)                                                && Après \2 que, le verbe s’emploie au subjonctif.

    [<start>|,|(]  bien                             [que|qu’]   @:(?:Os|M)  >avoir  @:[QYG]¬>(?:hériter|recevoir|donner|offrir)/
        <<- /vmode/ morph(\5, ":I", ":S") -5>> =suggVerbMode(\5, ":S", \4)                          && Après « \2 que », le verbe s’emploie au subjonctif.
        <<- /vmode/ morph(\5, ":I", ":S") -5>> =suggVerbMode(\5, ":S", \4)                          && Après \2 que, le verbe s’emploie au subjonctif.

#    [<start>|,|(]   si          bien                [que|qu’]   @:(?:Os|M)  @:I¬:(?:[GYS]|I[qf]|V0)
#        <<- /vmode/ -6>> =suggVerbMode(\6, ":S", \5)                                                && Après “\2 \3 que”, ce verbe devrait être au subjonctif.

    [<start>|,|(]  encore                           [que|qu’]   @:(?:Os|M)  @:I¬:(?:[GSK]|If)
        <<- /vmode/ -5>> =suggVerbMode(\5, ":S", \4)                                                && Après « \2 que », le verbe s’emploie au subjonctif.
        <<- /vmode/ -5>> =suggVerbMode(\5, ":S", \4)                                                && Après \2 que, le verbe s’emploie au subjonctif.

    jusqu’      à           [ce|tant]               [que|qu’]   @:(?:Os|M)  @:I¬:[GYS]
        <<- /vmode/ --1>> =suggVerbMode(\-1, ":S", \-2)                                             && Après “\1 \2 \3 que”, ce verbe devrait être au subjonctif.

TEST: Quoiqu’il {{est}} parti il y a longtemps, on pense encore beaucoup à lui.
TEST: quoi qu’il en {{conclut}}
TEST: Avant que tu {{pars}}, je voudrais qu’on discute.
32682
32683
32684
32685
32686
32687
32688
32689

32690
32691
32692
32693
32694
32695
32696
32691
32692
32693
32694
32695
32696
32697

32698
32699
32700
32701
32702
32703
32704
32705







-
+







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)
## 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
TEST: faire un dessin
34691
34692
34693
34694
34695
34696
34697
34698

34699
34700
34701
34702
34703
34704
34705
34700
34701
34702
34703
34704
34705
34706

34707
34708
34709
34710
34711
34712
34713
34714







-
+







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 :
# 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.
TEST: J’aime ce pays, et j’aime y vivre parce que j’y ai mes racines, ces profondes et délicates racines, qui attachent un homme à la terre où sont nés et morts ses aïeux, qui l’attachent à ce qu’on pense et à ce qu’on mange, aux usages comme aux nourritures, aux locutions locales, aux intonations des paysans, aux odeurs du sol, des villages et de l’air lui-même.
TEST: J’aime ma maison où j’ai grandi.