Grammalecte  Diff

Differences From Artifact [8bfee5257c]:

To Artifact [5d3a5a243f]:


2101
2102
2103
2104
2105
2106
2107




















2108
2109
2110
2111
2112
2113
2114
....
3125
3126
3127
3128
3129
3130
3131
3132
3133
3134
3135
3136
3137

3138
3139
3140
3141
3142
3143
3144
....
3980
3981
3982
3983
3984
3985
3986
3987
3988
3989
3990
3991
3992
3993
3994
3995
3996
3997
3998
3999
4000
4001
....
4015
4016
4017
4018
4019
4020
4021
4022
4023






4024
4025
4026
4027
4028
4029
4030
4031
4032
4033
4034
4035


4036
4037
4038
4039
4040
4041
4042
....
9318
9319
9320
9321
9322
9323
9324

9325
9326
9327
9328
9329
9330
9331
.....
15886
15887
15888
15889
15890
15891
15892

15893
15894
15895
15896
15897
15898
15899
.....
16427
16428
16429
16430
16431
16432
16433

16434
16435
16436
16437
16438
16439
16440
.....
17296
17297
17298
17299
17300
17301
17302










17303
17304
17305
17306
17307
17308
17309
.....
17982
17983
17984
17985
17986
17987
17988

17989
17990
17991
17992
17993
17994
17995
.....
18043
18044
18045
18046
18047
18048
18049

18050
18051
18052
18053
18054
18055
18056
.....
18144
18145
18146
18147
18148
18149
18150

18151
18152
18153
18154
18155
18156
18157
.....
19710
19711
19712
19713
19714
19715
19716






19717
19718
19719
19720
19721
19722
19723
.....
20377
20378
20379
20380
20381
20382
20383

20384
20385
20386
20387
20388




20389
20390
20391


20392
20393
20394
20395
20396
20397
20398
.....
24207
24208
24209
24210
24211
24212
24213
24214

24215
24216
24217
24218
24219
24220
24221
24222
24223
24224
24225
24226
24227
24228

24229
24230
24231
24232
24233
24234

24235
24236
24237
24238
24239
24240
24241
24242
24243
24244
24245
24246
24247
24248
24249

24250
24251
24252
24253
24254
24255
24256
24257
24258
24259
24260
24261
24262
24263

24264
24265
24266
24267
24268
24269
24270
24271
24272
24273
24274
24275
24276
24277

24278
24279
24280
24281


24282
24283
24284
24285
24286
24287
24288






24289
24290
24291
24292
24293
24294
24295
.....
24325
24326
24327
24328
24329
24330
24331







































24332
24333
24334
24335
24336
24337
24338
.....
24342
24343
24344
24345
24346
24347
24348
24349
24350
24351
24352
24353
24354
24355
24356
24357
24358
24359
24360
24361
24362
24363
24364
24365
24366
24367
24368
24369
24370
24371
24372
24373
24374
24375
24376
24377
24378
24379
24380
24381
24382
24383
24384
24385
24386
24387
24388
24389
24390
24391
.....
24395
24396
24397
24398
24399
24400
24401
24402

24403
24404
24405
24406


24407
24408
24409
24410
24411
24412
24413
24414
24415
24416
24417
.....
33069
33070
33071
33072
33073
33074
33075
33076
33077
33078
33079
33080
33081
33082
33083
    [les|des|aux] adverbes          tels que    [‘|'|’|`]  $:W  [‘|'|’|`]         et  [‘|'|’|`]  $:W  [‘|'|’|`]
    [les|des|aux] adverbes          tels que    ‹          $:W  ›                 et  ‹          $:W  ›
    [les|des|aux] signes            tels que    [“|”|"]    *SIGN  [“|”|"]         et  [“|”|"]    *SIGN  [“|”|"]
    [les|des|aux] signes            tels que    «          *SIGN  »               et  «          *SIGN  »
    [les|des|aux] signes            tels que    [‘|'|’|`]  *SIGN  [‘|'|’|`]       et  [‘|'|’|`]  *SIGN  [‘|'|’|`]
    [les|des|aux] signes            tels que    ‹          *SIGN  ›               et  ‹          *SIGN  ›
        <<- ~3:0>> *





















    [le|un|du|au] participe passé   ?comme¿     [“|”|"]    $:Q  [“|”|"]
    [le|un|du|au] participe passé   ?comme¿     «          $:Q  »
    [le|un|du|au] participe passé   ?comme¿     [‘|'|’|`]  $:Q  [‘|'|’|`]
    [le|un|du|au] participe passé   ?comme¿     ‹          $:Q  ›
    [le|un|du|au] participe passé   tel que     [“|”|"]    $:Q  [“|”|"]
    [le|un|du|au] participe passé   tel que     «          $:Q  »
................................................................................
    [son|ton] ,
        <<- =>> select(\1, ":N")

__da_sans__
    sans [que|qu’]
        <<- =>> select(\1, ":C")



__da_sous_sur__
    sous @:[BD]
        <<- not morph(<1, ":[DA].*:[me]:[pi]") =>> select(\1, ":R")


    sur @:[BD]
        <<- not morph(<1, ":(?:V[0123]e|[DN].*:[me]:[si])") =>> select(\1, ":R")

__da_tout__
    tout
        <<- morph(<1, "<start>|>,") =>> select(\1, "", ":N")

................................................................................
# contre / coutre / contra
__ocr_contre__
    [contra|coutre|coutra]
        <<- /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 ?

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 ?

    [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]
................................................................................
    [>darne|>daine]
        <<- /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 ?

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

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

    dos
        <<- /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à
................................................................................

    [sous|sur] [mon|ton|son|notre|votre|leur] [elle+s]
        <<- /conf/ --1>> aile
        && Confusion probable : “elle” est un pronom personnel féminin. Pour les oiseaux, les avions ou les parties d’un bâtiment ou d’une armée, écrivez “aile”.|https://fr.wiktionary.org/wiki/aile

    [des|mes|tes|ses|ces|nos|vos] ([elle+s])
    les ([elle+s]) [de|des|du|d’]

    [sous|sur] leurs ([elle+s]) [<end>|,|$:R]
        <<- /conf/ -1>> ailes
        && Confusion probable : “elle” est un pronom personnel féminin. Pour les oiseaux, les avions ou les parties d’un bâtiment ou d’une armée, écrivez “aile”.|https://fr.wiktionary.org/wiki/aile

    [elle+s] ?[droite|gauche]¿ du [château|palais|bâtiment|manoir]
    [elle+s] ?[droite|gauche]¿ [de|d’] la [maison|ferme]
        <<- /conf/ morph(<1, "<start>|,|:D") -1>> aile|ailes
................................................................................
    à ?[moins|plus|si|très|trop]¿ haute et intelligible voix
    à heure fixe
    à hue et à dia
    à huis clos
    à juste [raison|titre]
    à l’ [accoutumée|amiable|arrache|arraché|arrachée|avance|avenant|aveuglette|emporte-pièce|envi|évidence|étouffée|improviste|inverse|unanimité|unisson]
    à l’ air libre

    à l’ avenir ?[incertain|prometteur]¿
    à l’ échelon [local|cantonal|départemental|régional|national|européen|américain|africaine|asiatique|continental|international|planétaire|galactique|universel]
    à l’ échelle [locale|cantonale|départementale|régionale|nationale|européenne|américaine|africaine|asiatique|continentale|internationale|planétaire|galactique|universelle]
    à l’ en croire
    à l’ environ
    à l’ état pur
    à l’ exclusion [de|d’] toute autre chose
................................................................................
    en ordre [dispersé|serré]
    en partant [de|d’] zéro
    en partie ou en totalité
    en pente douce
    en ?[assez|si|très|trop]¿ petit nombre
    en place publique
    en plein [air|cœur|essor|marasme|jour|visage]

    en pleine [face|gueule|figure|forme|nuit|poire|tronche]
    en perte [de|d’] vitesse
    en ?[assez|si|très|trop]¿ [piteux|piètre] état
    en ?[assez|si|très|trop]¿ [piteux|piètre] état [de|d’] conservation
    en point [de|d’] [mire|orgue]
    en porte-à-faux
    en position [de|d’] [force|faiblesse]
................................................................................
        <<- not morph(<1, ":Ov|>(?:il|on|elle)|>d’") ~>> *

    entre [moi|toi|lui|elle|nous|vous|eux|elles] et [moi|toi|lui|elle|nous|vous|eux|elles]
        <<- ~>> *

    , entre [tous|toutes] ,
        <<- ~>> *











    juste à temps
        <<- not morph(<1, ":D") ~>> *

    haut [placé+ses]
        <<- not value(<1, "|en|de|d’|") ~1>> *

................................................................................
    >peinture à l’ huile
    >peloton d’ exécution
    >périphérique à bande ?[analogique|magnétique]¿
    >personnage [de|d’] roman
    perspectives d’ avenir
    >perte [de|d’] temps ?précieux¿
    >peur [de|d’] tous les diables

    >piano à queue
    >pièce à conviction
    >pièce [de|d’] [théâtre|monnaie|rechange]
    >pièce [de|d’] *NUM [>euro|>dollar|>centime|>cent|>livre|>shilling]
    >pied [de|d’] biche
    >pile à [combustible|hydrogène]
    >pince à [linge|>ongle]
................................................................................
    puits [de|d’] [carbone|forage|lumière|pétrole|science]
    >puissance [de|d’] feu
    >punaise [de|d’] lit
    QG [de|d’] campagne
    >qualité [de|d’] vie ?[campagnarde|étudiante|urbaine]¿
    >quartier d’ hiver
    quelqu’un d’ autre

    >question [de|d’] vie ou [de|d’] mort
    >rampe d’ accès
    >rampe [de|d’] lancement
    >rapport [de|d’] force
    >rat [de|d’] bibliothèque
    >rayon [de|d’] soleil
    >réaction en [chaîne|chaine]
................................................................................
    >tarte à la crème ?[catalane|fraiche|fraîche|patissière]¿
    taux [de|d’] [abstention|absorption|alcool|alphabétisation|change|cholestérol|cholesterol|conversion|endettement|fécondité|glycémie|inflation|intérêt|imposition|natalité|occupation|ouverture|œstrogène|participation|testostérone|TVA|urbanisation|urée|usure]
    taux [de|d’] mortalité ?[infantile|néonatale]¿
    >témoin à charge
    >tempête [de|d’] neige
    tenants et aboutissants
    >ténor du barreau

    >tenue [de|d’] rechange
    >terrain [de|d’] [atterrissage|chasse|entente|golf]
    >tête à claques
    >tête d’ enterrement
    >tête [de|d’] [linotte|déterré+ses|mule|pont]
    >terrain à découvert
    >terrain [de|d’] jeu
................................................................................
TEST: triompher par la force, l’intelligence la violence ou la ruse
TEST: une table en bois brut
TEST: c’est à devenir fou, à se taper la tête contre les murs
TEST: quitte à en souffrir et fût-ce au prix de sa vie
TEST: – Si fait, je vous connais bien. »
TEST: l’étrangère passive qu’elle était devenue ressemblait aux gravures de mode
TEST: c’est de Monsieur Charles Beaudelaire








@@@@
@@@@
@@@@
@@@@
@@@@END_GRAPH                                                                                      _
................................................................................
    >bite sur le quai
    >bite d’ amarrage
        <<- /conf/ -1>> =\1.replace("ite", "itte")                      && Confusion. Bitte d’amarrage.

    [ma|ta|sa|notre|votre|nos|vos|leur|leurs|grande+s|grosse+s|petite+s|longue+s|>énorme|>minuscule|>sale] >bitte
    >être [une|des] >bitte
    [>aimer|>adorer|>astiquer|>avaler|>bouffer|>branler|>fourrer|>lécher|>mettre|>mordre|>pomper|>sucer] $:D >bitte

        <<- /conf/ --1>> =\-1.replace("itte", "ite")                    && Confusion probable. Si vous parlez de pénis, écrivez “bite” (terme argotique).|https://fr.wiktionary.org/wiki/bite

    >bitte [>circoncis|>dégueulasse|>dur|>mou|>puant|>raide|>répugnant|>sale|vidé+ses]
        <<- /conf/ -1>> =\1.replace("itte", "ite")                      && Confusion probable. Si vous parlez de pénis, écrivez “bite” (terme argotique).|https://fr.wiktionary.org/wiki/bite





TEST: les mouettes sur les {{bites}} d’amarrage.
TEST: on se fout de savoir ce qu’ils font avec leurs {{bittes}}.
TEST: il m’a mis sous le nez une {{bitte}} répugnante.




# bonne et due forme / bonnet difforme / bon uniforme
__conf_en_bonne_et_due_forme__
    en >bon >uniforme
    en >bonnet >difforme
    en >bon et [du+ses] >forme
................................................................................
TEST: ils trouvent ça de plus en plus {{idiots}}              ->> idiot


##  Adjectifs précédents

__gn_seul_e_s_det_substantifs_nombre__
    [<start>|,|(]  [seul|seule]  [ces|des|mes|tes|ses|nos|vos|leurs|quelques|plusieurs|certains|certaines|lesdits|lesdites]  @:[NA].*:[pi]¬:G
    [<start>|,|(]  [seul|seule]  les  @:[NA].*:[pi]¬:(?:G|3s)

        <<- /gn/ -2>> \2s                                                           && Si “\2” se réfère au substantif “\4”, il faut le mettre au pluriel.

    [<start>|,|(]  [seuls|seules]  [ce|cet|cette|mon|ton|son|ma|ta|sa|notre|votre|leur|ledit|ladite]  @:[NA].*:[si]¬:G         [ne|n’|me|m’|te|t’|se|s’]
    [<start>|,|(]  [seuls|seules]  [ce|cet|cette|mon|ton|son|ma|ta|sa|notre|votre|leur|ledit|ladite]  @:[NA].*:[si]¬:G         [le|la|l’|les|en|nous|vous|lui|leur|y]  @:3s¬:G
    [<start>|,|(]  [seuls|seules]  [ce|cet|cette|mon|ton|son|ma|ta|sa|notre|votre|leur|ledit|ladite]  @:[NA].*:[si]¬:G         [nous|vous]     [le|la|l’|les|en|y]     @:3s¬:G
    [<start>|,|(]  [seuls|seules]  [ce|cet|cette|mon|ton|son|ma|ta|sa|notre|votre|leur|ledit|ladite]  @:[NA].*:[si]¬:G         [le|la|l’|les]  [lui|leur|en|y]         @:3s¬:G
    [<start>|,|(]  [seuls|seules]  [ce|cet|cette|mon|ton|son|ma|ta|sa|notre|votre|leur|ledit|ladite]  @:[NA].*:[si]¬:G         [lui|leur|y]    en                      @:3s¬:G
    [<start>|,|(]  [seuls|seules]  [ce|cet|cette|mon|ton|son|ma|ta|sa|notre|votre|leur|ledit|ladite]  @:[NA].*:[si]¬:G         @:3s¬*
    [<start>|,|(]  [seuls|seules]  [le|la|l’]                                                         @:[NA].*:[si]¬:(?:G|3s)  [ne|n’|me|m’|te|t’|se|s’]
    [<start>|,|(]  [seuls|seules]  [le|la|l’]                                                         @:[NA].*:[si]¬:(?:G|3s)  [le|la|l’|les|en|nous|vous|lui|leur|y]  @:3s¬:G
    [<start>|,|(]  [seuls|seules]  [le|la|l’]                                                         @:[NA].*:[si]¬:(?:G|3s)  [nous|vous]     [le|la|l’|les|en|y]     @:3s¬:G
    [<start>|,|(]  [seuls|seules]  [le|la|l’]                                                         @:[NA].*:[si]¬:(?:G|3s)  [le|la|l’|les]  [lui|leur|en|y]         @:3s¬:G
    [<start>|,|(]  [seuls|seules]  [le|la|l’]                                                         @:[NA].*:[si]¬:(?:G|3s)  [lui|leur|y]    en                      @:3s¬:G
    [<start>|,|(]  [seuls|seules]  [le|la|l’]                                                         @:[NA].*:[si]¬:(?:G|3s)  @:3s¬*

        <<- /gn/ -2>> =\2[:-1]                                                      && Si “\2” se réfère au substantif “\4”, il faut le mettre au singulier.

TEST: {{seule}} ces femmes peuvent nous aider
TEST: {{seul}} nos hommes sauront résoudre ce problème
TEST: {{seuls}} ce chien sait détecter cette substance.
TEST: {{seules}} cette chatte sut deviner le piège.



__gn_seul_e_s_det_substantifs_genre__
    [<start>|,|(]  seul  [cette|mon|ton|son|ma|ta|sa|notre|votre|leur|ladite]  @:[NA].*:f:[si]¬:[Gm]        [ne|n’|me|m’|te|t’|se|s’]
    [<start>|,|(]  seul  [cette|mon|ton|son|ma|ta|sa|notre|votre|leur|ladite]  @:[NA].*:f:[si]¬:[Gm]        [le|la|l’|les|en|nous|vous|lui|leur|y]  @:3s¬:G
    [<start>|,|(]  seul  [cette|mon|ton|son|ma|ta|sa|notre|votre|leur|ladite]  @:[NA].*:f:[si]¬:[Gm]        [nous|vous]     [le|la|l’|les|en|y]     @:3s¬:G
    [<start>|,|(]  seul  [cette|mon|ton|son|ma|ta|sa|notre|votre|leur|ladite]  @:[NA].*:f:[si]¬:[Gm]        [le|la|l’|les]  [lui|leur|en|y]         @:3s¬:G
    [<start>|,|(]  seul  [cette|mon|ton|son|ma|ta|sa|notre|votre|leur|ladite]  @:[NA].*:f:[si]¬:[Gm]        [lui|leur|y]    en                      @:3s¬:G
    [<start>|,|(]  seul  [cette|mon|ton|son|ma|ta|sa|notre|votre|leur|ladite]  @:[NA].*:f:[si]¬:[Gm]        @:3s¬*
    [<start>|,|(]  seul  [la|l’]                                               @:[NA].*:f:[si]¬:(?:G|3s|m)  [ne|n’|me|m’|te|t’|se|s’]
    [<start>|,|(]  seul  [la|l’]                                               @:[NA].*:f:[si]¬:(?:G|3s|m)  [le|la|l’|les|en|nous|vous|lui|leur|y]  @:3s¬:G
    [<start>|,|(]  seul  [la|l’]                                               @:[NA].*:f:[si]¬:(?:G|3s|m)  [nous|vous]     [le|la|l’|les|en|y]     @:3s¬:G
    [<start>|,|(]  seul  [la|l’]                                               @:[NA].*:f:[si]¬:(?:G|3s|m)  [le|la|l’|les]  [lui|leur|en|y]         @:3s¬:G
    [<start>|,|(]  seul  [la|l’]                                               @:[NA].*:f:[si]¬:(?:G|3s|m)  [lui|leur|y]    en                      @:3s¬:G
    [<start>|,|(]  seul  [la|l’]                                               @:[NA].*:f:[si]¬:(?:G|3s|m)  @:3s¬*

        <<- /gn/ -2>> seule                                                         && Si “\2” se réfère au substantif féminin “\4”, il faut le mettre au féminin.

    [<start>|,|(]  seule  [ce|cet|mon|ton|son|notre|votre|leur|ledit]  @:[NA].*:m:[si]¬:[Gf]        [ne|n’|me|m’|te|t’|se|s’]
    [<start>|,|(]  seule  [ce|cet|mon|ton|son|notre|votre|leur|ledit]  @:[NA].*:m:[si]¬:[Gf]        [le|la|l’|les|en|nous|vous|lui|leur|y]  @:3s¬:G
    [<start>|,|(]  seule  [ce|cet|mon|ton|son|notre|votre|leur|ledit]  @:[NA].*:m:[si]¬:[Gf]        [nous|vous]     [le|la|l’|les|en|y]     @:3s¬:G
    [<start>|,|(]  seule  [ce|cet|mon|ton|son|notre|votre|leur|ledit]  @:[NA].*:m:[si]¬:[Gf]        [le|la|l’|les]  [lui|leur|en|y]         @:3s¬:G
    [<start>|,|(]  seule  [ce|cet|mon|ton|son|notre|votre|leur|ledit]  @:[NA].*:m:[si]¬:[Gf]        [lui|leur|y]    en                      @:3s¬:G
    [<start>|,|(]  seule  [ce|cet|mon|ton|son|notre|votre|leur|ledit]  @:[NA].*:m:[si]¬:[Gf]        @:3s¬*
    [<start>|,|(]  seule  [le|l’]                                      @:[NA].*:m:[si]¬:(?:G|3s|f)  [ne|n’|me|m’|te|t’|se|s’]
    [<start>|,|(]  seule  [le|l’]                                      @:[NA].*:m:[si]¬:(?:G|3s|f)  [le|la|l’|les|en|nous|vous|lui|leur|y]  @:3s¬:G
    [<start>|,|(]  seule  [le|l’]                                      @:[NA].*:m:[si]¬:(?:G|3s|f)  [nous|vous]     [le|la|l’|les|en|y]     @:3s¬:G
    [<start>|,|(]  seule  [le|l’]                                      @:[NA].*:m:[si]¬:(?:G|3s|f)  [le|la|l’|les]  [lui|leur|en|y]         @:3s¬:G
    [<start>|,|(]  seule  [le|l’]                                      @:[NA].*:m:[si]¬:(?:G|3s|f)  [lui|leur|y]    en                      @:3s¬:G
    [<start>|,|(]  seule  [le|l’]                                      @:[NA].*:m:[si]¬:(?:G|3s|f)  @:3s¬*

        <<- /gn/ -2>> seul                                                          && Si “\2” se réfère au substantif masculin “\4”, il faut le mettre au masculin.

    [<start>|,|(]  seuls  [ces|des|mes|tes|ses|nos|vos|leurs|quelques|plusieurs|certains|certaines|lesdits|lesdites]  @:[NA].*:f:[pi]¬:[Gm]        [ne|n’|me|m’|te|t’|se|s’]
    [<start>|,|(]  seuls  [ces|des|mes|tes|ses|nos|vos|leurs|quelques|plusieurs|certains|certaines|lesdits|lesdites]  @:[NA].*:f:[pi]¬:[Gm]        [le|la|l’|les|en|nous|vous|lui|leur|y]  @:3p¬:G
    [<start>|,|(]  seuls  [ces|des|mes|tes|ses|nos|vos|leurs|quelques|plusieurs|certains|certaines|lesdits|lesdites]  @:[NA].*:f:[pi]¬:[Gm]        [nous|vous]     [le|la|l’|les|en|y]     @:3p¬:G
    [<start>|,|(]  seuls  [ces|des|mes|tes|ses|nos|vos|leurs|quelques|plusieurs|certains|certaines|lesdits|lesdites]  @:[NA].*:f:[pi]¬:[Gm]        [le|la|l’|les]  [lui|leur|en|y]         @:3p¬:G
    [<start>|,|(]  seuls  [ces|des|mes|tes|ses|nos|vos|leurs|quelques|plusieurs|certains|certaines|lesdits|lesdites]  @:[NA].*:f:[pi]¬:[Gm]        [lui|leur|y]    en                      @:3p¬:G
    [<start>|,|(]  seuls  [ces|des|mes|tes|ses|nos|vos|leurs|quelques|plusieurs|certains|certaines|lesdits|lesdites]  @:[NA].*:f:[pi]¬:[Gm]        @:3p¬*
    [<start>|,|(]  seuls  les                                                                                         @:[NA].*:f:[pi]¬:(?:G|3p|m)  [ne|n’|me|m’|te|t’|se|s’]
    [<start>|,|(]  seuls  les                                                                                         @:[NA].*:f:[pi]¬:(?:G|3p|m)  [le|la|l’|les|en|nous|vous|lui|leur|y]  @:3p¬:G
    [<start>|,|(]  seuls  les                                                                                         @:[NA].*:f:[pi]¬:(?:G|3p|m)  [nous|vous]     [le|la|l’|les|en|y]     @:3p¬:G
    [<start>|,|(]  seuls  les                                                                                         @:[NA].*:f:[pi]¬:(?:G|3p|m)  [le|la|l’|les]  [lui|leur|en|y]         @:3p¬:G
    [<start>|,|(]  seuls  les                                                                                         @:[NA].*:f:[pi]¬:(?:G|3p|m)  [lui|leur|y]    en                      @:3p¬:G
    [<start>|,|(]  seuls  les                                                                                         @:[NA].*:f:[pi]¬:(?:G|3p|m)  @:3p¬*

        <<- /gn/ -2>> seules                                                        && Si “\2” se réfère au substantif féminin “\4”, il faut le mettre au féminin.

    [<start>|,|(]  seules  [ces|des|mes|tes|ses|nos|vos|leurs|quelques|plusieurs|certains|certaines|lesdits|lesdites]  @:[NA].*:m:[pi]¬:[Gf]
    [<start>|,|(]  seules  les  @:[NA].*:m:[pi]¬:(?:G|3p|f)


        <<- /gn/ -2>> seuls                                                         && Si “\2” se réfère au substantif masculin “\4”, il faut le mettre au masculin.

TEST: {{seul}} cette partie peut nous aider                         ->> seule
TEST: {{seule}} notre ordinateur serait assez puissant pour ça      ->> seul
TEST: {{seuls}} vos forces suffirent                                ->> seules
TEST: {{seules}} nos tests réussirent à la convaincre.              ->> seuls









!!
!!
!!!! Groupe nominal (sans déterminant)                                                            !!
!!
!!
................................................................................
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
TEST: Bon schéma cinématique
TEST: nécessité fait loi









































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

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 ».
        <<- /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 ».

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 ».
        <<- /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 ».

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 ».
        <<- /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 ».
................................................................................
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


__gn_de_manière_façon_1m__
    de  [manière|façon]  @:A.*:(?:m|f:p)¬:[GM]

        <<- /gn/ -3>> =suggFemSing(\3)                                                              && Accord erroné avec “\2” : l’adjectif devrait être au féminin singulier.

TEST: il fit cela tans de fois et avec brio de manière {{élégant}}.
TEST: elle s’y prit avec cet individu de façon {{charmant}}.




## Conjonctions
__gn_pfx_conj_2m__
    [que|qu’|lorsque|lorsqu’|puisque|puisqu’|quoique|quoiqu’]  @:[NA]¬:(?:Y|V0|W|G)  @:[NA]¬*
        <<- /gn/ \3.islower() >>>
        <<- /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”.
        <<- /gn/ ( (morph(\2, ":p", ":[si]") and morph(\3, ":s", "*")) or (morph(\2, ":s", ":[pi]") and morph(\3, ":p", "*")) )
................................................................................
TEST: si l’un ou l’autre s’était trouvé en sa présence, ça aurait bardé.
TEST: ni l’un ni l’autre n’osait parler.
TEST: Ne pense pas à ce sur quoi tu poses les pieds et tout ira bien
TEST: les nerfs du vieux Paul lâchent
TEST: Il sortit de sa léthargie, épuisé et trempé
TEST: Les étrangers étaient à ce point dévisagés qu’ils en devenaient invisibles.
TEST: Si Leila Khaled est surtout connue pour des détournements ayant eu lieu il y a plus de 40 ans.
TEST: Seuls le patron et le vieux Félix disposent d’une crèche individuelle
TEST: Il ou elle ne conçoivent même plus qu’on veuille empiéter sur la liberté des choix.
TEST: La fusion entre eux et les Espagnols arabisés affaiblit
TEST: Le mépris dans sa voix et ses yeux le poignarda.
TEST: J’envoyai l’un des gardiens chercher le dossier de l’incarcéré
TEST: La distinction entre les défaillances normales et les défaillances fautives peut se fonder sur…
TEST: Ils sont là pour se faire l’écho des questions posées.
TEST: Le directeur de cabinet de Madame la rectrice était également présent.







>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>







 







<
<
|



>







 







<
<
<
<
<
<
<
<







 







|

>
>
>
>
>
>












>
>







 







>







 







>







 







>







 







>
>
>
>
>
>
>
>
>
>







 







>







 







>







 







>







 







>
>
>
>
>
>







 







>





>
>
>
>
|
|
|
>
>







 







|
>
|

<
<
<
<
<
|
<
<
<
<
<
|
>
|

|
|
|
|
>



<
<
<
<
<
|
<
<
<
<
<
|
>
|

<
<
<
<
<
|
<
<
<
<
<
|
>
|

<
<
<
<
<
|
<
<
<
<
<
|
>
|

|
<
>
>
|

|
|
|
|
<
>
>
>
>
>
>







 







>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>







 







|













|











|








|







 







|
>




>
>



|







 







<







2101
2102
2103
2104
2105
2106
2107
2108
2109
2110
2111
2112
2113
2114
2115
2116
2117
2118
2119
2120
2121
2122
2123
2124
2125
2126
2127
2128
2129
2130
2131
2132
2133
2134
....
3145
3146
3147
3148
3149
3150
3151


3152
3153
3154
3155
3156
3157
3158
3159
3160
3161
3162
3163
....
3999
4000
4001
4002
4003
4004
4005








4006
4007
4008
4009
4010
4011
4012
....
4026
4027
4028
4029
4030
4031
4032
4033
4034
4035
4036
4037
4038
4039
4040
4041
4042
4043
4044
4045
4046
4047
4048
4049
4050
4051
4052
4053
4054
4055
4056
4057
4058
4059
4060
4061
....
9337
9338
9339
9340
9341
9342
9343
9344
9345
9346
9347
9348
9349
9350
9351
.....
15906
15907
15908
15909
15910
15911
15912
15913
15914
15915
15916
15917
15918
15919
15920
.....
16448
16449
16450
16451
16452
16453
16454
16455
16456
16457
16458
16459
16460
16461
16462
.....
17318
17319
17320
17321
17322
17323
17324
17325
17326
17327
17328
17329
17330
17331
17332
17333
17334
17335
17336
17337
17338
17339
17340
17341
.....
18014
18015
18016
18017
18018
18019
18020
18021
18022
18023
18024
18025
18026
18027
18028
.....
18076
18077
18078
18079
18080
18081
18082
18083
18084
18085
18086
18087
18088
18089
18090
.....
18178
18179
18180
18181
18182
18183
18184
18185
18186
18187
18188
18189
18190
18191
18192
.....
19745
19746
19747
19748
19749
19750
19751
19752
19753
19754
19755
19756
19757
19758
19759
19760
19761
19762
19763
19764
.....
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
20445
20446
.....
24255
24256
24257
24258
24259
24260
24261
24262
24263
24264
24265





24266





24267
24268
24269
24270
24271
24272
24273
24274
24275
24276
24277
24278





24279





24280
24281
24282
24283





24284





24285
24286
24287
24288





24289





24290
24291
24292
24293
24294

24295
24296
24297
24298
24299
24300
24301
24302

24303
24304
24305
24306
24307
24308
24309
24310
24311
24312
24313
24314
24315
.....
24345
24346
24347
24348
24349
24350
24351
24352
24353
24354
24355
24356
24357
24358
24359
24360
24361
24362
24363
24364
24365
24366
24367
24368
24369
24370
24371
24372
24373
24374
24375
24376
24377
24378
24379
24380
24381
24382
24383
24384
24385
24386
24387
24388
24389
24390
24391
24392
24393
24394
24395
24396
24397
.....
24401
24402
24403
24404
24405
24406
24407
24408
24409
24410
24411
24412
24413
24414
24415
24416
24417
24418
24419
24420
24421
24422
24423
24424
24425
24426
24427
24428
24429
24430
24431
24432
24433
24434
24435
24436
24437
24438
24439
24440
24441
24442
24443
24444
24445
24446
24447
24448
24449
24450
.....
24454
24455
24456
24457
24458
24459
24460
24461
24462
24463
24464
24465
24466
24467
24468
24469
24470
24471
24472
24473
24474
24475
24476
24477
24478
24479
.....
33131
33132
33133
33134
33135
33136
33137

33138
33139
33140
33141
33142
33143
33144
    [les|des|aux] adverbes          tels que    [‘|'|’|`]  $:W  [‘|'|’|`]         et  [‘|'|’|`]  $:W  [‘|'|’|`]
    [les|des|aux] adverbes          tels que    ‹          $:W  ›                 et  ‹          $:W  ›
    [les|des|aux] signes            tels que    [“|”|"]    *SIGN  [“|”|"]         et  [“|”|"]    *SIGN  [“|”|"]
    [les|des|aux] signes            tels que    «          *SIGN  »               et  «          *SIGN  »
    [les|des|aux] signes            tels que    [‘|'|’|`]  *SIGN  [‘|'|’|`]       et  [‘|'|’|`]  *SIGN  [‘|'|’|`]
    [les|des|aux] signes            tels que    ‹          *SIGN  ›               et  ‹          *SIGN  ›
        <<- ~3:0>> *

    [la|une] lettre                 ?comme¿     [“|”|"]    *WORD  [“|”|"]
    [la|une] lettre                 ?comme¿     «          *WORD  »
    [la|une] lettre                 ?comme¿     [‘|'|’|`]  *WORD  [‘|'|’|`]
    [la|une] lettre                 ?comme¿     ‹          *WORD  ›
    [la|une] lettre                 telle que   [“|”|"]    *WORD  [“|”|"]
    [la|une] lettre                 telle que   «          *WORD  »
    [la|une] lettre                 telle que   [‘|'|’|`]  *WORD  [‘|'|’|`]
    [la|une] lettre                 telle que   ‹          *WORD  ›
        <<- \-2.__len__() == 1 ~3:0>> *

    [les|des|aux] lettres           ?comme¿     [“|”|"]    *WORD  [“|”|"]    et  [“|”|"]    *WORD  [“|”|"]
    [les|des|aux] lettres           ?comme¿     «          *WORD  »          et  «          *WORD  »
    [les|des|aux] lettres           ?comme¿     [‘|'|’|`]  *WORD  [‘|'|’|`]  et  [‘|'|’|`]  *WORD  [‘|'|’|`]
    [les|des|aux] lettres           ?comme¿     ‹          *WORD  ›          et  ‹          *WORD  ›
    [les|des|aux] lettres           telles que  [“|”|"]    *WORD  [“|”|"]    et  [“|”|"]    *WORD  [“|”|"]
    [les|des|aux] lettres           telles que  «          *WORD  »          et  «          *WORD  »
    [les|des|aux] lettres           telles que  [‘|'|’|`]  *WORD  [‘|'|’|`]  et  [‘|'|’|`]  *WORD  [‘|'|’|`]
    [les|des|aux] lettres           telles que  ‹          *WORD  ›          et  ‹          *WORD  ›
        <<- \-2.__len__() == 1 and \-6.__len__() == 1 ~3:0>> *

    [le|un|du|au] participe passé   ?comme¿     [“|”|"]    $:Q  [“|”|"]
    [le|un|du|au] participe passé   ?comme¿     «          $:Q  »
    [le|un|du|au] participe passé   ?comme¿     [‘|'|’|`]  $:Q  [‘|'|’|`]
    [le|un|du|au] participe passé   ?comme¿     ‹          $:Q  ›
    [le|un|du|au] participe passé   tel que     [“|”|"]    $:Q  [“|”|"]
    [le|un|du|au] participe passé   tel que     «          $:Q  »
................................................................................
    [son|ton] ,
        <<- =>> select(\1, ":N")

__da_sans__
    sans [que|qu’]
        <<- =>> select(\1, ":C")



__da_sous__
    sous @:[BD]
        <<- not morph(<1, ":[DA].*:[me]:[pi]") =>> select(\1, ":R")

__da_sur__
    sur @:[BD]
        <<- not morph(<1, ":(?:V[0123]e|[DN].*:[me]:[si])") =>> select(\1, ":R")

__da_tout__
    tout
        <<- morph(<1, "<start>|>,") =>> select(\1, "", ":N")

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

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










# dans / bans / clans
__ocr_dans__
    bans
        <<- /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]
................................................................................
    [>darne|>daine]
        <<- /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.


# de / dé / da / dés / des / dès / dos / das
__ocr_de_des__
    da
        <<- /ocr/ ->> de                                                                            && Erreur de numérisation ?

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

    dé
        <<- /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 ?

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

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

TEST: __ocr__ Le nombre {{da}} personnes endettées augmente sans cesse.
TEST: __ocr__ le nombre {{das}} ennemis semblait croître chaque minute
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à
................................................................................

    [sous|sur] [mon|ton|son|notre|votre|leur] [elle+s]
        <<- /conf/ --1>> aile
        && Confusion probable : “elle” est un pronom personnel féminin. Pour les oiseaux, les avions ou les parties d’un bâtiment ou d’une armée, écrivez “aile”.|https://fr.wiktionary.org/wiki/aile

    [des|mes|tes|ses|ces|nos|vos] ([elle+s])
    les ([elle+s]) [de|des|du|d’]
    >brûler [les|leurs] ([elle+s])
    [sous|sur] leurs ([elle+s]) [<end>|,|$:R]
        <<- /conf/ -1>> ailes
        && Confusion probable : “elle” est un pronom personnel féminin. Pour les oiseaux, les avions ou les parties d’un bâtiment ou d’une armée, écrivez “aile”.|https://fr.wiktionary.org/wiki/aile

    [elle+s] ?[droite|gauche]¿ du [château|palais|bâtiment|manoir]
    [elle+s] ?[droite|gauche]¿ [de|d’] la [maison|ferme]
        <<- /conf/ morph(<1, "<start>|,|:D") -1>> aile|ailes
................................................................................
    à ?[moins|plus|si|très|trop]¿ haute et intelligible voix
    à heure fixe
    à hue et à dia
    à huis clos
    à juste [raison|titre]
    à l’ [accoutumée|amiable|arrache|arraché|arrachée|avance|avenant|aveuglette|emporte-pièce|envi|évidence|étouffée|improviste|inverse|unanimité|unisson]
    à l’ air libre
    à l’ autre bout du fil
    à l’ avenir ?[incertain|prometteur]¿
    à l’ échelon [local|cantonal|départemental|régional|national|européen|américain|africaine|asiatique|continental|international|planétaire|galactique|universel]
    à l’ échelle [locale|cantonale|départementale|régionale|nationale|européenne|américaine|africaine|asiatique|continentale|internationale|planétaire|galactique|universelle]
    à l’ en croire
    à l’ environ
    à l’ état pur
    à l’ exclusion [de|d’] toute autre chose
................................................................................
    en ordre [dispersé|serré]
    en partant [de|d’] zéro
    en partie ou en totalité
    en pente douce
    en ?[assez|si|très|trop]¿ petit nombre
    en place publique
    en plein [air|cœur|essor|marasme|jour|visage]
    en plein dans le mille
    en pleine [face|gueule|figure|forme|nuit|poire|tronche]
    en perte [de|d’] vitesse
    en ?[assez|si|très|trop]¿ [piteux|piètre] état
    en ?[assez|si|très|trop]¿ [piteux|piètre] état [de|d’] conservation
    en point [de|d’] [mire|orgue]
    en porte-à-faux
    en position [de|d’] [force|faiblesse]
................................................................................
        <<- not morph(<1, ":Ov|>(?:il|on|elle)|>d’") ~>> *

    entre [moi|toi|lui|elle|nous|vous|eux|elles] et [moi|toi|lui|elle|nous|vous|eux|elles]
        <<- ~>> *

    , entre [tous|toutes] ,
        <<- ~>> *

    jusqu’ à ce que         je                  @:V[123]_i_.*:S.*:1s
    jusqu’ à ce que         tu                  @:V[123]_i_.*:S.*:2s
    jusqu’ à ce qu’         [il|elle|on|iel]    @:V[123]_i_.*:S.*:3s
    jusqu’ à ce [que|qu’]   $:M                 @:V[123]_i_.*:S.*:3s
    jusqu’ à ce que         nous                @:V[123]_i_.*:S.*:1p
    jusqu’ à ce que         vous                @:V[123]_i_.*:S.*:2p
    jusqu’ à ce qu’         [ils|elles|iels]    @:V[123]_i_.*:S.*:3p
    jusqu’ à ce [que|qu’]   $:M  et  $:M        @:V[123]_i_.*:S.*:3p
        <<- ~>> *

    juste à temps
        <<- not morph(<1, ":D") ~>> *

    haut [placé+ses]
        <<- not value(<1, "|en|de|d’|") ~1>> *

................................................................................
    >peinture à l’ huile
    >peloton d’ exécution
    >périphérique à bande ?[analogique|magnétique]¿
    >personnage [de|d’] roman
    perspectives d’ avenir
    >perte [de|d’] temps ?précieux¿
    >peur [de|d’] tous les diables
    >phase [I|II|III|IV|V|VI|VII|VIII|IX|X|XI|XII|XIII|XIV|XV|XVI|XVII|XVIII|XIX|XX|XXI|XXII|XXIII|XXIV|XXV|XXVI|XXVII|XXVIII|XXIX|XXX]
    >piano à queue
    >pièce à conviction
    >pièce [de|d’] [théâtre|monnaie|rechange]
    >pièce [de|d’] *NUM [>euro|>dollar|>centime|>cent|>livre|>shilling]
    >pied [de|d’] biche
    >pile à [combustible|hydrogène]
    >pince à [linge|>ongle]
................................................................................
    puits [de|d’] [carbone|forage|lumière|pétrole|science]
    >puissance [de|d’] feu
    >punaise [de|d’] lit
    QG [de|d’] campagne
    >qualité [de|d’] vie ?[campagnarde|étudiante|urbaine]¿
    >quartier d’ hiver
    quelqu’un d’ autre
    quelqu’un [de|d’] confiance
    >question [de|d’] vie ou [de|d’] mort
    >rampe d’ accès
    >rampe [de|d’] lancement
    >rapport [de|d’] force
    >rat [de|d’] bibliothèque
    >rayon [de|d’] soleil
    >réaction en [chaîne|chaine]
................................................................................
    >tarte à la crème ?[catalane|fraiche|fraîche|patissière]¿
    taux [de|d’] [abstention|absorption|alcool|alphabétisation|change|cholestérol|cholesterol|conversion|endettement|fécondité|glycémie|inflation|intérêt|imposition|natalité|occupation|ouverture|œstrogène|participation|testostérone|TVA|urbanisation|urée|usure]
    taux [de|d’] mortalité ?[infantile|néonatale]¿
    >témoin à charge
    >tempête [de|d’] neige
    tenants et aboutissants
    >ténor du barreau
    >tentative [de|d’] suicide
    >tenue [de|d’] rechange
    >terrain [de|d’] [atterrissage|chasse|entente|golf]
    >tête à claques
    >tête d’ enterrement
    >tête [de|d’] [linotte|déterré+ses|mule|pont]
    >terrain à découvert
    >terrain [de|d’] jeu
................................................................................
TEST: triompher par la force, l’intelligence la violence ou la ruse
TEST: une table en bois brut
TEST: c’est à devenir fou, à se taper la tête contre les murs
TEST: quitte à en souffrir et fût-ce au prix de sa vie
TEST: – Si fait, je vous connais bien. »
TEST: l’étrangère passive qu’elle était devenue ressemblait aux gravures de mode
TEST: c’est de Monsieur Charles Beaudelaire
TEST: nous avons tous nos limites
TEST: on a tous nos limites
TEST: on a tous une envie inassouvie
TEST: on a tous le rythme dans la peau
TEST: on a tous la haine



@@@@
@@@@
@@@@
@@@@
@@@@END_GRAPH                                                                                      _
................................................................................
    >bite sur le quai
    >bite d’ amarrage
        <<- /conf/ -1>> =\1.replace("ite", "itte")                      && Confusion. Bitte d’amarrage.

    [ma|ta|sa|notre|votre|nos|vos|leur|leurs|grande+s|grosse+s|petite+s|longue+s|>énorme|>minuscule|>sale] >bitte
    >être [une|des] >bitte
    [>aimer|>adorer|>astiquer|>avaler|>bouffer|>branler|>fourrer|>lécher|>mettre|>mordre|>pomper|>sucer] $:D >bitte
    >faire >chier la >bitte
        <<- /conf/ --1>> =\-1.replace("itte", "ite")                    && Confusion probable. Si vous parlez de pénis, écrivez “bite” (terme argotique).|https://fr.wiktionary.org/wiki/bite

    >bitte [>circoncis|>dégueulasse|>dur|>mou|>puant|>raide|>répugnant|>sale|vidé+ses]
        <<- /conf/ -1>> =\1.replace("itte", "ite")                      && Confusion probable. Si vous parlez de pénis, écrivez “bite” (terme argotique).|https://fr.wiktionary.org/wiki/bite

    !! la bite [à|a] l’ air ¡¡
    [la|là] [>bitte|bite+s] [a|à|as] l’ [air+s|>ère|>hère|erre+s|>aire]
        <<- /loc/ ->> la bite à l’air                                   && Confusion. Locution “la bite à l’air”.

TEST: les mouettes sur les {{bites}} d’amarrage.                        ->> bittes
TEST: on se fout de savoir ce qu’ils font avec leurs {{bittes}}.        ->> bites
TEST: il m’a mis sous le nez une {{bitte}} répugnante.                  ->> bite
TEST: {{la bitte a l’ère}}                                              ->> la bite à l’air
TEST: il s’avança, la bite à l’air, inconscient de sa nudité.


# bonne et due forme / bonnet difforme / bon uniforme
__conf_en_bonne_et_due_forme__
    en >bon >uniforme
    en >bonnet >difforme
    en >bon et [du+ses] >forme
................................................................................
TEST: ils trouvent ça de plus en plus {{idiots}}              ->> idiot


##  Adjectifs précédents

__gn_seul_e_s_det_substantifs_nombre__
    [<start>|,|(]  [seul|seule]  [ces|des|mes|tes|ses|nos|vos|leurs|quelques|plusieurs|certains|certaines|lesdits|lesdites]  @:[NA].*:[pi]¬:G
    [<start>|,|(]  [seul|seule]  les                                                                                         @:[NA].*:[pi]¬:(?:G|3s)
        <<- /gn/ not morph(\-1, ">(?:matin|matinée|après-midi|soir|soirée|nuit|jour|journée|semaine|mois|trimestre|semestre|année|décennie|siècle|millénaire)/")
        -2>> \2s                                                                    && Si “\2” se réfère au substantif “\4”, il faut le mettre au pluriel.






    [<start>|,|(]  [seuls|seules]  [un|du|ce|cet|cette|mon|ton|son|ma|ta|sa|notre|votre|leur|ledit|ladite]  @:[NA].*:[si]¬:G





    [<start>|,|(]  [seuls|seules]  [le|la|l’]                                                               @:[NA].*:[si]¬:(?:G|3s)
        <<- /gn/ not morph(\-1, ">(?:matin|matinée|après-midi|soir|soirée|nuit|jour|journée|semaine|mois|trimestre|semestre|année|décennie|siècle|millénaire)/") and not after(" et ")
        -2>> =\2[:-1]                                                      && Si “\2” se réfère au substantif “\4”, il faut le mettre au singulier.

TEST: {{seule}} ces femmes peuvent nous aider                                                       ->> seules
TEST: {{seul}} nos hommes sauront résoudre ce problème                                              ->> seuls
TEST: {{seuls}} ce chien sait détecter cette substance.                                             ->> seul
TEST: {{seules}} cette chatte sut deviner le piège.                                                 ->> seule
TEST: Seuls le patron et le vieux Félix disposent d’une crèche individuelle


__gn_seul_e_s_det_substantifs_genre__





    [<start>|,|(]  seul  [une|cette|mon|ton|son|ma|ta|sa|notre|votre|leur|ladite]  @:[NA].*:f:[si]¬:[Gm]





    [<start>|,|(]  seul  [la|l’]                                                   @:[NA].*:f:[si]¬:(?:G|3s|m)
        <<- /gn/ not morph(\-1, ">(?:matin|matinée|après-midi|soir|soirée|nuit|jour|journée|semaine|mois|trimestre|semestre|année|décennie|siècle|millénaire)/")
        -2>> seule                                                         && Si “\2” se réfère au substantif féminin “\4”, il faut le mettre au féminin.






    [<start>|,|(]  seule  [un|du|ce|cet|mon|ton|son|notre|votre|leur|ledit]  @:[NA].*:m:[si]¬:[Gf]





    [<start>|,|(]  seule  [le|l’]                                            @:[NA].*:m:[si]¬:(?:G|3s|f)
        <<- /gn/ not morph(\-1, ">(?:matin|matinée|après-midi|soir|soirée|nuit|jour|journée|semaine|mois|trimestre|semestre|année|décennie|siècle|millénaire)/")
        -2>> seul                                                          && Si “\2” se réfère au substantif masculin “\4”, il faut le mettre au masculin.






    [<start>|,|(]  seuls  [des|ces|mes|tes|ses|nos|vos|leurs|quelques|plusieurs|certaines|lesdites]  @:[NA].*:f:[pi]¬:[Gm]





    [<start>|,|(]  seuls  les                                                                        @:[NA].*:f:[pi]¬:(?:G|3p|m)
        <<- /gn/ not morph(\-1, ">(?:matin|matinée|après-midi|soir|soirée|nuit|jour|journée|semaine|mois|trimestre|semestre|année|décennie|siècle|millénaire)/") and not after(" et ")
        -2>> seules                                                        && Si “\2” se réfère au substantif féminin “\4”, il faut le mettre au féminin.

    [<start>|,|(]  seules [des|ces|mes|tes|ses|nos|vos|leurs|quelques|plusieurs|certains|lesdits]    @:[NA].*:m:[pi]¬:[Gf]

    [<start>|,|(]  seules les                                                                        @:[NA].*:m:[pi]¬:(?:G|3p|f)
        <<- /gn/ not morph(\-1, ">(?:matin|matinée|après-midi|soir|soirée|nuit|jour|journée|semaine|mois|trimestre|semestre|année|décennie|siècle|millénaire)/")
        -2>> seuls                                                         && Si “\2” se réfère au substantif masculin “\4”, il faut le mettre au masculin.

TEST: {{seul}} cette partie peut nous aider                                                         ->> seule
TEST: {{seule}} notre ordinateur serait assez puissant pour ça                                      ->> seul
TEST: {{seuls}} vos forces suffirent                                                                ->> seules
TEST: {{seules}} nos tests réussirent à la convaincre.                                              ->> seuls

TEST: {{seules}} des hommes et des ados costauds peuvent y parvenir                                 ->> seuls
TEST: Jusqu’ici, {{seuls}} des informations industrielles ou commerciales avaient fuité
TEST: seules des jours entiers, elles n’en pouvaient plus
TEST: seule du matin au soir
TEST: seuls le jour de Noël, c’est difficile
TEST: seul la matinée du 13 à l’école, il ne pouvait être à l’autre bout de la ville


!!
!!
!!!! Groupe nominal (sans déterminant)                                                            !!
!!
!!
................................................................................
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
TEST: Bon schéma cinématique
TEST: nécessité fait loi


__gn_start_3m_et__
    <start> *WORD et *WORD  @:N.*:m:s¬*
        <<- /gn/ morph(\2, ":A", ":G") and morph(\4, ":A", ":G") >>>
        <<- /gn/ morph(\2, ":A", ":(?:A.*:[me]:[si]|G|W)|;C") -2>> =suggMasSing(\2, True)           && Cet adjectif n’est pas accordé avec le nom “\-1”.
        <<- /gn/ morph(\4, ":A", ":(?:A.*:[me]:[si]|G|W)|;C") -4>> =suggMasSing(\4, True)           && Cet adjectif n’est pas accordé avec le nom “\-1”.

    <start> *WORD et *WORD  @:N.*:f:s¬*
        <<- /gn/ morph(\2, ":A", ":G") and morph(\4, ":A", ":G") >>>
        <<- /gn/ morph(\2, ":A", ":(?:A.*:[fe]:[si]|G|W)|;C") -2>> =suggFemSing(\2, True)           && Cet adjectif n’est pas accordé avec le nom “\-1”.
        <<- /gn/ morph(\4, ":A", ":(?:A.*:[fe]:[si]|G|W)|;C") -4>> =suggFemSing(\4, True)           && Cet adjectif n’est pas accordé avec le nom “\-1”.

    <start> *WORD et *WORD  @:N.*:e:s¬*
        <<- /gn/ morph(\2, ":A", ":G") and morph(\4, ":A", ":G") >>>
        <<- /gn/ morph(\2, ":A", ":(?:A.*:[si]|G|W)|;C") -2>> =suggSing(\2, True)                  && Cet adjectif n’est pas accordé avec le nom “\-1”.
        <<- /gn/ morph(\4, ":A", ":(?:A.*:[si]|G|W)|;C") -4>> =suggSing(\4, True)                  && Cet adjectif n’est pas accordé avec le nom “\-1”.

    <start> *WORD et *WORD  @:N.*:m:p¬*
        <<- /gn/ morph(\2, ":A", ":G") and morph(\4, ":A", ":G") >>>
        <<- /gn/ morph(\2, ":A", ":(?:A.*:[me]:[pi]|G|W)|;C") -2>> =suggMasPlur(\2, True)           && Cet adjectif n’est pas accordé avec le nom “\-1”.
        <<- /gn/ morph(\4, ":A", ":(?:A.*:[me]:[pi]|G|W)|;C") -4>> =suggMasPlur(\4, True)           && Cet adjectif n’est pas accordé avec le nom “\-1”.

    <start> *WORD et *WORD  @:N.*:f:p¬*
        <<- /gn/ morph(\2, ":A", ":G") and morph(\4, ":A", ":G") >>>
        <<- /gn/ morph(\2, ":A", ":(?:A.*:[fe]:[pi]|G|W)|;C") -2>> =suggFemPlur(\2, True)           && Cet adjectif n’est pas accordé avec le nom “\-1”.
        <<- /gn/ morph(\4, ":A", ":(?:A.*:[fe]:[pi]|G|W)|;C") -4>> =suggFemPlur(\4, True)           && Cet adjectif n’est pas accordé avec le nom “\-1”.

    <start> *WORD et *WORD  @:N.*:e:p¬*
        <<- /gn/ morph(\2, ":A", ":G") and morph(\4, ":A", ":G") >>>
        <<- /gn/ morph(\2, ":A", ":(?:A.*:[pi]|G|W)|;C") -2>> =suggPlur(\2, True)                   && Cet adjectif n’est pas accordé avec le nom “\-1”.
        <<- /gn/ morph(\4, ":A", ":(?:A.*:[pi]|G|W)|;C") -4>> =suggPlur(\4, True)                   && Cet adjectif n’est pas accordé avec le nom “\-1”.

TEST: {{petite}} et {{grande}} homme                            ->> petit|||grand
TEST: {{bel}} et {{grand}} nation                               ->> belle|||grande
TEST: {{stupides}} et {{intellectuels}} psychologue             ->> stupide|||intellectuel
TEST: {{petite}} et {{grande}} hommes                           ->> petits|||grands
TEST: {{bel}} et {{grand}} nations                              ->> belles|||grandes
TEST: {{stupide}} et {{intellectuel}} psychologues              ->> stupides|||intellectuels


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

TEST: en homme {{courtoise}}
TEST: en {{grande}} {{avocat}}
TEST: en {{femme}} {{cultivées}}


__gn_pfx_à_par_pour_sans_2m__
    [à|par|pour|sans]  @:[NA]¬:[YG]  @:[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 ».
        <<- /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 ».

TEST: à {{grande}} {{enjambées}}
TEST: pour {{belle}} {{appartement}}
TEST: une femme sans a priori


__gn_pfx_de_2m__
    [de|d’]  @:[NA]¬:[YG]  @:[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 ».
        <<- /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 ».

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|G)  @:[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 ».
        <<- /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 ».
................................................................................
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


__gn_de_manière_façon_1m__
    [de|d’]  [manière|façon]  @:A.*:(?:m|f:p)¬:[GM]
        <<- !2>>
        <<- /gn/ -3>> =suggFemSing(\3)                                                              && Accord erroné avec “\2” : l’adjectif devrait être au féminin singulier.

TEST: il fit cela tans de fois et avec brio de manière {{élégant}}.
TEST: elle s’y prit avec cet individu de façon {{charmant}}.
TEST: de manière {{élégant}}
TEST: de façon {{idiot}}


## Conjonctions
__gn_nom_adj_2m__
    [que|qu’|lorsque|lorsqu’|puisque|puisqu’|quoique|quoiqu’]  @:[NA]¬:(?:Y|V0|W|G)  @:[NA]¬*
        <<- /gn/ \3.islower() >>>
        <<- /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”.
        <<- /gn/ ( (morph(\2, ":p", ":[si]") and morph(\3, ":s", "*")) or (morph(\2, ":s", ":[pi]") and morph(\3, ":p", "*")) )
................................................................................
TEST: si l’un ou l’autre s’était trouvé en sa présence, ça aurait bardé.
TEST: ni l’un ni l’autre n’osait parler.
TEST: Ne pense pas à ce sur quoi tu poses les pieds et tout ira bien
TEST: les nerfs du vieux Paul lâchent
TEST: Il sortit de sa léthargie, épuisé et trempé
TEST: Les étrangers étaient à ce point dévisagés qu’ils en devenaient invisibles.
TEST: Si Leila Khaled est surtout connue pour des détournements ayant eu lieu il y a plus de 40 ans.

TEST: Il ou elle ne conçoivent même plus qu’on veuille empiéter sur la liberté des choix.
TEST: La fusion entre eux et les Espagnols arabisés affaiblit
TEST: Le mépris dans sa voix et ses yeux le poignarda.
TEST: J’envoyai l’un des gardiens chercher le dossier de l’incarcéré
TEST: La distinction entre les défaillances normales et les défaillances fautives peut se fonder sur…
TEST: Ils sont là pour se faire l’écho des questions posées.
TEST: Le directeur de cabinet de Madame la rectrice était également présent.