Grammalecte  Diff

Differences From Artifact [9e6cbf051a]:

To Artifact [6a12c81c86]:


6712
6713
6714
6715
6716
6717
6718








6719
6720
6721
6722
6723
6724
6725
6712
6713
6714
6715
6716
6717
6718
6719
6720
6721
6722
6723
6724
6725
6726
6727
6728
6729
6730
6731
6732
6733







+
+
+
+
+
+
+
+







        <<- /conf/ not morph(<1, ":D.*:[me]|>(?:grande|petite)/")
        -1>> par-dessus                                                     # Confusion probable. Un pardessus est un vêtement. Pour la préposition, écrivez “par-dessus”.

TEST: {{Pardessus}} les montagnes.
TEST: Il passa {{pardessus}} les collines.
TEST: Mets ton pardessus ce matin.


# gilet pare-balle
__conf_pare_balle__
    >gilet par >balle
        <<- /conf/ -2:3>> pare-balles                                       # Un gilet pare-balles, c’est-à-dire qui pare les balles.

TEST: Elle a enfilé son gilet {{par balle}}.


# 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 :

    [peux|peut|peu] a [peux|peut|peu]
10205
10206
10207
10208
10209
10210
10211

10212
10213
10214
10215
10216
10217
10218
10213
10214
10215
10216
10217
10218
10219
10220
10221
10222
10223
10224
10225
10226
10227







+







    >faire front commun
    >faire grise mine
    >faire grand [bruit|cas]
    >faire profil bas
    >faire salle comble
    >faire table rase
    >faire ce que bon [me|te|lui|nous|vous|leur] semble
    >foutre en l’ air
    >jouer franc jeu
    >lâcher prise
    >laisser pour compte
    >marcher à rebours
    >mettre à [bas|jour|niveau|nu|plat|terre]
    >mettre l’ [écart|épreuve]
    >mettre au [point|pas]
11490
11491
11492
11493
11494
11495
11496
11497

11498
11499
11500
11501
11502
11503
11504
11499
11500
11501
11502
11503
11504
11505

11506
11507
11508
11509
11510
11511
11512
11513







-
+







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_de_sur_avec_après_2m__
__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>")
11514
11515
11516
11517
11518
11519
11520















11521
11522
11523
11524
11525
11526
11527
11523
11524
11525
11526
11527
11528
11529
11530
11531
11532
11533
11534
11535
11536
11537
11538
11539
11540
11541
11542
11543
11544
11545
11546
11547
11548
11549
11550
11551







+
+
+
+
+
+
+
+
+
+
+
+
+
+
+







__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)  (@:[NA]¬*)
        <<- /gn/ ( (morph(\1, ":m", ":[fe]") and morph(\2, ":f", "*")) or (morph(\1, ":f", ":[me]") and morph(\2, ":m", "*")) )
            and not apposition(\1, \2)
        -2>> =switchGender(\2)                                                                      # Accord de genre erroné avec “\1”.
        <<- /gn/ __also__ and hasFemForm(\1) -1>> =switchGender(\1)                                 # Accord de genre erroné avec “\2”.
        <<- /gn/ ( (morph(\1, ":p", ":[si]") and morph(\2, ":s", "*")) or (morph(\1, ":s", ":[pi]") and morph(\2, ":p", "*")) )
            and not apposition(\1, \2)
        -2>> =switchPlural(\2)                                                                      # Accord de nombre erroné avec “\1”.
        <<- /gn/ __also__ -1>> =switchPlural(\1)                                                    # Accord de nombre erroné avec “\2”.

TEST: en tant que dictionnaire {{personnelle}}.


!!
!!
!!!! Groupe nominal: Accords avec de / des / du                                                   !!
!!
!!

15191
15192
15193
15194
15195
15196
15197
15198
15199
15200
15201
15202
15203
15204
15205
15206
15207
15208
15209
15210
15211
15212
15213
15214
15215
15216
15217
15218
15219
15220
15215
15216
15217
15218
15219
15220
15221
















15222
15223
15224
15225
15226
15227
15228







-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-







    ce  [que|qu’]  [je|j’|tu|il|elle|on|nous|vous|ils|elles|ça|cela|ceci]  ?[ne|n’]¿  ?[lui|leur]¿  >avoir  @:V[0-3]..t.*:Q.*:[fp]¬:(?:G|W|[me]:[si])
        <<- /ppas/ --1>> =suggMasSing(\-1)
        # Accord avec le COD “ce”. Le participe passé devrait être au masculin singulier.|http://fr.wikipedia.org/wiki/Accord_du_participe_pass%C3%A9_en_fran%C3%A7ais

TEST: ce que ça a {{donnée}}
TEST: ce qu’il leur a {{données}}


__ppas_avoir_conf_infi__
    >avoir  ~e[rz]$
        <<- /ppas/ not value(\1, "|A|avions|avoirs|") and morph(\2, ":(?:Y|2p)")
        -2>> =suggVerbPpas(\2, ":m:s")                                              # Incohérence 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 :

TEST: Avoir {{marcher}} toute la journée m’a épuisée.
TEST: Avez-vous {{signez}} le contrat ?
TEST: Ont-ils {{signer}} le contrat ?
TEST: Ai-je déjà {{signez}} le contrat ?
TEST: A-t-il déjà {{signer}} le contrat ?
TEST: Je ne lui ai rien {{demander}}, mais il est venu à notre secours au nom de la justice.
TEST: nous avons vu des avions voler haut dans le ciel.



!!!! 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/ -2>> dû                                      # Participe passé de devoir : “dû”.
15659
15660
15661
15662
15663
15664
15665























15666
15667
15668
15669
15670
15671
15672
15667
15668
15669
15670
15671
15672
15673
15674
15675
15676
15677
15678
15679
15680
15681
15682
15683
15684
15685
15686
15687
15688
15689
15690
15691
15692
15693
15694
15695
15696
15697
15698
15699
15700
15701
15702
15703







+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+







# Autres tests
TEST: Ne rien céder.
TEST: Ne pas manger.
TEST: Ne manquer de rien.
TEST: Ne jamais miser sur ces tocards.
TEST: Ne m’en rien laisser.


#### PARTICIPES PASSÉS APRÈS AVOIR

__ppas_avoir__
    >avoir  ~..e[rz]$
        <<- /ppas/ not value(\1, "|A|avions|avoirs|") and morph(\2, ":(?:Y|2p)")
        -2>> =suggVerbPpas(\2, ":m:s")                                              # Incohérence 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 “à”.

    >avoir  ~..it$
        <<- /ppas/ not value(\1, "|A|avoirs|") and morph(\2, ":Ip.*:3s", ":[NAQ]")
        -2>> =suggVerbPpas(\2, ":m:s")                                              # Incohérence avec “\1” : “\2” n’est pas un participe passé.

TEST: Avoir {{marcher}} toute la journée m’a épuisée.
TEST: Avez-vous {{signez}} le contrat ?
TEST: Ont-ils {{signer}} le contrat ?
TEST: Ai-je déjà {{signez}} le contrat ?
TEST: A-t-il déjà {{signer}} le contrat ?
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: nous avons vu des avions voler haut dans le ciel.



!!!
!!!
!!! Processeur: purge des préverbes                                                               !!
!!!
!!!
16230
16231
16232
16233
16234
16235
16236
16237

16238
16239
16240
16241

16242
16243
16244
16245









16246
16247


16248
16249
16250
16251


16252
16253
16254
16255
16256
16257
16258
16261
16262
16263
16264
16265
16266
16267

16268
16269
16270
16271

16272
16273
16274
16275
16276
16277
16278
16279
16280
16281
16282
16283
16284
16285
16286
16287
16288
16289
16290
16291
16292
16293
16294
16295
16296
16297
16298
16299
16300
16301
16302







-
+



-
+




+
+
+
+
+
+
+
+
+


+
+




+
+







    [par|pour|sans]  ~..(?:ée?s?|ez|ai[st]?)$
        <<- /infi/ morph(\2, ":V1.*:(?:Q|[123][sp])", ":[YN]") -2>> =suggVerbInfi(\2)               # Après la préposition “\1”, le verbe devrait être à l’infinitif.

TEST: pour s’y {{donnait}} le plus souvent.
TEST: Il faut être sans préjugés.


#### PAS D’INFINITIF
#### PARTICIPES PASSÉS APRÈS ÊTRE

__ppas_être__
    >être  ~..er$
        <<- /infi/ morph(\1, ":V", ":Q|>(?:soit)/") and (morph(\2, ":Y", ":[NAQ]") or \2 in aSHOULDBEVERB)
        <<- /ppas/ morph(\1, ":V", ":Q|>(?:soit)/") and (morph(\2, ":Y", ":[NAQ]") or \2 in aSHOULDBEVERB)
            and not morph(<1, ":Y|>ce") and not value(<1, "|c’|")
            and not tag_before(\1, "ce_que") and not tag_before(\1, "suj_vinfi")
        -2>> =suggVerbPpas(\2)                                                                      # Après “être”, le verbe ne devrait pas être à l’infinitif.

    >être  ~..ez$
        <<- /ppas/ morph(\1, ":V", ":Q|>(?:soit)/") and morph(\2, ":2p", ":[NAQ]")
        -2>> =suggVerbPpas(\2)                                                                      # Après “être”, le verbe ne devrait pas être conjuguer à la 2ᵉ personne du pluriel.

    >être  ~..it$
        <<- /ppas/ morph(\1, ":V", ":Q|>(?:soit)/") and morph(\2, ":Ip.*:3s", ":[NAQ]")
            and not tag_before(\1, "ce_que") and not tag_before(\1, "suj_vinfi")
        -2>> =suggVerbPpas(\2)                                                                      # Après “être”, le verbe ne devrait pas être conjuguer à la 3ᵉ personne du singulier.

TEST: ils sont {{tromper}} par tous ces hypocrites.
TEST: Je suis {{emporter}} par la vague.
TEST: Je suis {{emportez}} par la vague.
TEST: il était {{sortit}} avec enthousiasme.
TEST: Jeûner n’est pas seulement cesser de manger.
TEST: Ne pas aimer n’est pas oublier l’autre.
TEST: Dire la vérité, c’eût été manquer à sa parole.
TEST: C’est soit manquer une opportunité, soit arriver à ses fins de manière douteuse.
TEST: Nous nous efforçons de comprendre ce qu’être veut dire, ce qu’être signifie.



!!
!!
!!!! Conjugaison                                                                                  !!
!!
!!
16793
16794
16795
16796
16797
16798
16799
16800

16801
16802
16803

16804
16805
16806
16807
16808
16809
16810
16837
16838
16839
16840
16841
16842
16843

16844
16845
16846

16847
16848
16849
16850
16851
16852
16853
16854







-
+


-
+







TEST: Samantha et Eva leur {{décrive}} une leçon.


# 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 “on”.
        <<- /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 “on”.
        <<- /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

16871
16872
16873
16874
16875
16876
16877
16878

16879
16880
16881
16882
16883
16884
16885
16915
16916
16917
16918
16919
16920
16921

16922
16923
16924
16925
16926
16927
16928
16929







-
+







!!
!!
!!!! Verbes sans sujets                                                                           !!
!!
!!

__conj_que_où_comment_verbe_sans_sujet!3__
    [que|qu’|où|comment|combien|dont|quand|pourquoi|lequel|laquelle|lesquels|lesquelles]  @:[12][sp]¬:(?:G|W|3[sp]|Y|P|Q|N|A|M|VC)
    [que|qu’|où|comment|combien|dont|quand|pourquoi|lequel|laquelle|lesquels|lesquelles|si]  @:[12][sp]¬:(?:G|W|3[sp]|Y|P|Q|N|A|M|VC)
        <<- /conj/ morph(\2, ":[12]s") and not value(>1, "|je|tu|") -2>> =suggVerb(\2, ":3s")                           # Conjugaison erronée. Ce verbe devrait être à la 3ᵉ personne.
        <<- /conj/ __else__ and morph(\2, ":[12]p") and not value(>1, "|nous|vous|") -2>> =suggVerb(\2, ":3p")          # Conjugaison erronée. Ce verbe devrait être à la 3ᵉ personne.

TEST: Qu’est-ce que tu crois que {{deviens}} réellement, immanquablement et subitement cet homme après une telle dérouillée ?
TEST: peu importe ce que tu crois du lieu où l’{{abandonnerais}} ce salopard…
TEST: ces sciences, ces religions, ces philosophies ne sont que contes destinés à nous donner l’illusion de la connaissance.
TEST: Le ministre de l’Intérieur a estimé que Calais avait vécu “un degré de violence jamais connu”.
17227
17228
17229
17230
17231
17232
17233

17234
17235
17236
17237
17238
17239
17240
17271
17272
17273
17274
17275
17276
17277
17278
17279
17280
17281
17282
17283
17284
17285







+







TEST: Ce qu’ils nous ont fait
TEST: Comment vous expliquez ça ?
TEST: Comment vous expliquer ça ?
TEST: le général n’en aura cure
TEST: n’en avoir cure et faire comme si de rien n’était.
TEST: Comme d’habitude, ils ont tout fait à l’arrache.
TEST: tout un système pour justifier que “nous” avons toujours raison et que nous ne pouvons jamais avoir tort.
TEST: Daignez le lui permettre.


!!! Tests historiques                                                                             !!

## Version 0.5.14
TEST: par le léger tissu de rayonne qui les protégeait en ce moment.