Grammalecte  Diff

Differences From Artifact [6feac788e5]:

To Artifact [f8fdf0f604]:


 22978  22978       des  *WORD  *WORD
 22979  22979           <<- /gn/ (morph(<1, ":(?:[VRBXÉ]|Cs)|>comme/|<start>|>,", "*") or morph(\3, ":N", ":[AQ]")) and not morph(\3, ">(?:seul|minimum|maximum)/") >>>
 22980  22980           <<- /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)
 22981  22981           -3>> =switchGender(\3, True)                                                                && Accord de genre erroné avec « \2 ».
 22982  22982           <<- /gn/ __also__ and hasFemForm(\2) -2>> =switchGender(\2)                                 && Accord de genre erroné avec « \3 ».
 22983  22983           <<- /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"))
 22984  22984           -3>> =suggPlur(\3)                                                                          && Accord de nombre erroné avec « \1 \2 » : « \3 » devrait être au pluriel.
 22985         -        <<- not morph(\3, ":G|>a/") and checkAgreement(\2, \3) =>> =exclude(\3, ":V")
        22985  +        <<- not morph(\3, ":G|>a/") and agreement(\2, \3) =>> =exclude(\3, ":V")
 22986  22986   
 22987  22987   TEST: faire table rase des passions {{inutile}}               ->> inutiles
 22988  22988   TEST: à bonne distance des {{chiens}} {{méchante}}
 22989  22989   TEST: des hommes {{attaquée}}
 22990  22990   TEST: des femmes {{agressé}}
 22991  22991   TEST: des hommes très mal {{renseigné}}                       ->> renseignés
 22992  22992   TEST: des dépenses non {{nécessaire}}                         ->> nécessaires
................................................................................
 27876  27876           || [être|devenir|redevenir|rester|paraître|paraitre|sembler]                                *WORD
 27877  27877       *WORD  [que|qu’]  [un|le|ce|cet|une|la|ma|ta|sa|cette|l’|mon|ton|son|notre|votre|leur|les|ces|mes|tes|ses|nos|vos|leurs|quelques|plusieurs|$:B]  *WORD  ?[ne|n’]¿  ?[en|y]¿
 27878  27878           || ([>affirmer|>croire|>déclarer|>désirer|>détester|>dire|>estimer|>imaginer|>penser|>préférer|>savoir|>souhaiter|>vouloir])
 27879  27879           || être [devenu+e|redevenu+e|resté+e|demeuré+e]                                             *WORD
 27880  27880       *WORD  [que|qu’]  [un|le|ce|cet|une|la|ma|ta|sa|cette|l’|mon|ton|son|notre|votre|leur|les|ces|mes|tes|ses|nos|vos|leurs|quelques|plusieurs|$:B]  *WORD  ?[ne|n’]¿  ?[en|y]¿
 27881  27881           || ([>affirmer|>croire|>déclarer|>désirer|>détester|>dire|>estimer|>imaginer|>penser|>préférer|>savoir|>souhaiter|>vouloir])
 27882  27882           || avoir [été|semblé|paru]                                                                  *WORD
 27883         -        <<- /ppas/ checkAgreement(\1, \-1) !-1>>
        27883  +        <<- /ppas/ agreement(\1, \-1) !-1>>
 27884  27884   
 27885  27885       *WORD  [que|qu’]  $:M  ?[ne|n’]¿
 27886  27886           || ([>affirmer|>croire|>déclarer|>désirer|>détester|>dire|>estimer|>imaginer|>penser|>préférer|>savoir|>souhaiter|>vouloir])
 27887  27887           || [être|devenir|redevenir|rester|paraître|paraitre|sembler]                                *WORD
 27888  27888       *WORD  [que|qu’]  $:M  ?[ne|n’]¿
 27889  27889           || ([>affirmer|>croire|>déclarer|>désirer|>détester|>dire|>estimer|>imaginer|>penser|>préférer|>savoir|>souhaiter|>vouloir])
 27890  27890           || être [devenu+e|redevenu+e|resté+e|demeuré+e]                                             *WORD
 27891  27891       *WORD  [que|qu’]  $:M  ?[ne|n’]¿
 27892  27892           || ([>affirmer|>croire|>déclarer|>désirer|>détester|>dire|>estimer|>imaginer|>penser|>préférer|>savoir|>souhaiter|>vouloir])
 27893  27893           || avoir [été|semblé|paru]                                                                  *WORD
 27894         -        <<- /ppas/ checkAgreement(\1, \-1) !-1>>
        27894  +        <<- /ppas/ agreement(\1, \-1) !-1>>
 27895  27895   
 27896  27896   
 27897  27897   __ppas_sujet_être_accord_singulier__
 27898  27898       [<start>|,|(|/_start_]  [un|le|ce|cet]  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿          (/_VE_)                                                @:[AQ]¬:(?:[GWM]|[me]:[si])
 27899  27899       [<start>|,|(|/_start_]  [un|le|ce|cet]  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿          (/_LVED_) ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ ?/_LVE_¿ /_LVEF_  @:[AQ]¬:(?:[GWM]|[me]:[si])
 27900  27900       [<start>|,|(|/_start_]  [un|le|ce|cet]  (*WORD)  ?qui¿  ?[ne|n’]¿  [se|s’] ?[en|y]¿  (/_VEP_)                                               @:[AQ]¬:(?:[GWM]|[me]:[si])
 27901  27901       [<start>|,|(|/_start_]  [un|le|ce|cet]  (*WORD)  ?qui¿  ?[ne|n’]¿  [se|s’] ?[en|y]¿  (/_LVEPD_) ?/_LVEP_¿ ?/_LVEP_¿ ?/_LVEP_¿ /_LVEPF_      @:[AQ]¬:(?:[GWM]|[me]:[si])
................................................................................
 30889  30889   TEST: y être sans ma femme ni les enfants fait monter en moi une certaine nervosité.
 30890  30890   
 30891  30891   
 30892  30892   __conj_le_la_leur_nom__
 30893  30893       [le|la|l’|leur]  *WORD  @:V¬:(?:3s|P|Q|Y|3p!|G|M)
 30894  30894           <<- /conj/ not tag(\2, "_enum_") and morph(<1, ":C|<start>|>,", ":[YP]") and morph(\2, ":[NA].*:[si]", ":G")
 30895  30895               and not ( (value(\2, "|dizaine|douzaine|quinzaine|vingtaine|trentaine|quarantaine|cinquantaine|soixantaine|centaine|majorité|minorité|millier|partie|poignée|tas|paquet|moitié|")
 30896         -                        or tag_before(\1, "_ni_") or value(<1, "|et|ou|")) and morph(\3, ":3?p") ) and not checkAgreement(\2, \3)
        30896  +                        or tag_before(\1, "_ni_") or value(<1, "|et|ou|")) and morph(\3, ":3?p") ) and not agreement(\2, \3)
 30897  30897               and not ( morph(\2, "(?:[123][sp]|P)") and not value(<1, "|<start>|,|") ) >>>
 30898  30898           <<- /conj/ not tag(\-1, "_ngn_") and morph(\3, ":A.*:p") or (morph(\3, ":N.*:p") and morph(\2, ":A"))
 30899  30899           -3>> =suggVerb(\3, ":3s", suggSing)                                                         && Accord avec “\1 \2…” incorrect. Conjugaison erronée ou accord nom/adjectif incorrect.
 30900  30900           <<- /conj/ __else__ -3>> =suggVerb(\3, ":3s")                                               && Conjugaison erronée. Accord avec “\1 \2…”. Le verbe devrait être à la 3ᵉ personne du singulier.
 30901  30901   
 30902  30902       [le|la|l’|leur]  *WORD  qui  @:V¬:(?:3s|P|3p!|G|M)
 30903  30903           <<- /conj/ not tag(\2, "_enum_") and morph(<1, ":C|<start>|>,", ":[YP]") and morph(\2, ":[NA].*:[si]", ":G")
................................................................................
 30938  30938   TEST: un grand nombre avaient été humiliés par ces pratiques délétères
 30939  30939   
 30940  30940   
 30941  30941   __conj_det_sing_nom__
 30942  30942       [un|ce|cet|mon|ton|son|notre|votre]  *WORD  @:[123][sp]¬:(?:3s|P|Y|3p!|G|M)
 30943  30943           <<- /conj/ not tag(\2, "_enum_") and morph(<1, ":C|<start>|>,", ":[YP]") and morph(\2, ":[NA].*:[me]:[si]", ":G")
 30944  30944               and not ( (value(\2, "|dizaine|douzaine|quinzaine|vingtaine|trentaine|quarantaine|cinquantaine|soixantaine|centaine|majorité|minorité|millier|partie|poignée|tas|paquet|moitié|nombre|")
 30945         -                        or tag_before(\1, "_ni_") or value(<1, "|et|ou|")) and morph(\3, ":3?p") ) and not checkAgreement(\2, \3) >>>
        30945  +                        or tag_before(\1, "_ni_") or value(<1, "|et|ou|")) and morph(\3, ":3?p") ) and not agreement(\2, \3) >>>
 30946  30946           <<- /conj/ not tag(\-1, "_ngn_") and morph(\3, ":A.*:p") or (morph(\3, ":N.*:p") and morph(\2, ":A"))
 30947  30947           -3>> =suggVerb(\3, ":3s", suggSing)                                                         && Accord avec “\1 \2…” incorrect. Conjugaison erronée ou accord nom/adjectif incorrect.
 30948  30948           <<- /conj/ __else__ -3>> =suggVerb(\3, ":3s")                                               && Conjugaison erronée. Accord avec “\1 \2…”. Le verbe devrait être à la 3ᵉ personne du singulier.
 30949  30949   
 30950  30950       [une|cette|mon|ton|son|ma|ta|sa|notre|votre]  *WORD  @:[123][sp]¬:(?:3s|P|Y|3p!|G|M)
 30951  30951           <<- /conj/ not tag(\2, "_enum_") and morph(<1, ":C|<start>|>,", ":[YP]") and morph(\2, ":[NA].*:[fe]:[si]", ":G")
 30952  30952               and not ( (value(\2, "|dizaine|douzaine|quinzaine|vingtaine|trentaine|quarantaine|cinquantaine|soixantaine|centaine|majorité|minorité|millier|partie|poignée|tas|paquet|moitié|")
 30953         -                        or tag_before(\1, "_ni_") or value(<1, "|et|ou|")) and morph(\3, ":3?p") ) and not checkAgreement(\2, \3) >>>
        30953  +                        or tag_before(\1, "_ni_") or value(<1, "|et|ou|")) and morph(\3, ":3?p") ) and not agreement(\2, \3) >>>
 30954  30954           <<- /conj/ not tag(\-1, "_ngn_") and morph(\3, ":A.*:p") or (morph(\3, ":N.*:p") and morph(\2, ":A"))
 30955  30955           -3>> =suggVerb(\3, ":3s", suggSing)                                                         && Accord avec “\1 \2…” incorrect. Conjugaison erronée ou accord nom/adjectif incorrect.
 30956  30956           <<- /conj/ __else__ -3>> =suggVerb(\3, ":3s")                                               && Conjugaison erronée. Accord avec “\1 \2…”. Le verbe devrait être à la 3ᵉ personne du singulier.
 30957  30957   
 30958  30958       [un|une|ce|cet|cette|mon|ton|son|ma|ta|sa|notre|votre]  *WORD  qui  @:V¬:(?:3s|P|3p!|G|M)
 30959  30959           <<- /conj/ not tag(\2, "_enum_") and morph(<1, ":C|<start>|>,", ":[YP]") and morph(\2, ":[NA].*:[si]", ":G")
 30960  30960               and not ( (value(\2, "|dizaine|douzaine|quinzaine|vingtaine|trentaine|quarantaine|cinquantaine|soixantaine|centaine|majorité|minorité|millier|partie|poignée|tas|paquet|moitié|")
................................................................................
 31292  31292   TEST: Tu penses que quelqu’un qui frappe sa femme et ses enfants est un bon père ?
 31293  31293   
 31294  31294   
 31295  31295   __conj_les_nom__
 31296  31296       les  @:[NA].*:[pi]¬:V0  @:V¬:(?:3p|P|Y|G|M)
 31297  31297           <<- /conj/ morph(<1, ":Cs|<start>|>,")
 31298  31298               and not ( morph(\3, ":3s") and before("(?i)\\b(?:l[ea] |l’|une? |ce(?:tte|t|) |[mts](?:on|a) |[nv]otre ).+ entre .+ et ") )
 31299         -            and not checkAgreement(\2, \3)
        31299  +            and not agreement(\2, \3)
 31300  31300               and not ( morph(\2, "(?:[123][sp]|P)") and not value(<1, "|<start>|,|") ) >>>
 31301  31301           <<- /conj/ not tag(\-1, "_ngn_") and morph(\3, ":A.*:s") or (morph(\3, ":N.*:s") and morph(\2, ":A"))
 31302  31302           -3>> =suggVerb(\3, ":3p", suggPlur)                                                         && Accord avec “\1 \2…” incorrect. Conjugaison erronée ou accord nom/adjectif incorrect.
 31303  31303           <<- /conj/ __else__ -3>> =suggVerb(\3, ":3p")                                               && Conjugaison erronée. Accord avec “\1 \2…”. Le verbe devrait être à la 3ᵉ personne du pluriel.
 31304  31304   
 31305  31305       les  @:[NA].*:[pi]  qui  @:V¬:(?:3p|P|Y|G|M)
 31306  31306           <<- /conj/ morph(<1, ":Cs|<start>|>,")
................................................................................
 31346  31346   TEST: les souris enceintes
 31347  31347   
 31348  31348   
 31349  31349   __conj_certains_certaines_plusieurs_nom__
 31350  31350       [certains|maints]  @:[NA].*:[pi]  @:V¬:(?:3p|P|Y|G|M)
 31351  31351           <<- /conj/ morph(<1, ":Cs|<start>|>,")
 31352  31352               and not( morph(\3, ":3s") and before("(?i)\\b(?:l[ea] |l’|une? |ce(?:tte|t|) |[mts](?:on|a) |[nv]otre ).+ entre .+ et ") )
 31353         -            and not checkAgreement(\2, \3)
        31353  +            and not agreement(\2, \3)
 31354  31354               and not ( morph(\2, "(?:[123][sp]|P)") and not value(<1, "|<start>|,|") ) >>>
 31355  31355           <<- /conj/ not tag(\-1, "_ngn_") and morph(\3, ":A.*:s") or (morph(\3, ":N.*:s") and morph(\2, ":A"))
 31356  31356           -3>> =suggVerb(\3, ":3p", suggMasPlur)                                                      && Accord avec “\1 \2…” incorrect. Conjugaison erronée ou accord nom/adjectif incorrect.
 31357  31357           <<- /conj/ __else__ -3>> =suggVerb(\3, ":3p")                                               && Conjugaison erronée. Accord avec “\1 \2…”. Le verbe devrait être à la 3ᵉ personne du pluriel.
 31358  31358   
 31359  31359       [certaines|maintes]  @:[NA].*:[pi]  @:V¬:(?:3p|P|Y|G|M)
 31360  31360           <<- /conj/ morph(<1, ":Cs|<start>|>,")
 31361  31361               and not( morph(\3, ":3s") and before("(?i)\\b(?:l[ea] |l’|une? |ce(?:tte|t|) |[mts](?:on|a) |[nv]otre ).+ entre .+ et ") )
 31362         -            and not checkAgreement(\2, \3)
        31362  +            and not agreement(\2, \3)
 31363  31363               and not ( morph(\2, "(?:[123][sp]|P)") and not value(<1, "|<start>|,|") ) >>>
 31364  31364           <<- /conj/ not tag(\-1, "_ngn_") and morph(\3, ":A.*:s") or (morph(\3, ":N.*:s") and morph(\2, ":A"))
 31365  31365           -3>> =suggVerb(\3, ":3p", suggFemPlur)                                                      && Accord avec “\1 \2…” incorrect. Conjugaison erronée ou accord nom/adjectif incorrect.
 31366  31366           <<- /conj/ __else__ -3>> =suggVerb(\3, ":3p")                                               && Conjugaison erronée. Accord avec “\1 \2…”. Le verbe devrait être à la 3ᵉ personne du pluriel.
 31367  31367   
 31368  31368       plusieurs  @:[NA].*:[pi]  @:V¬:(?:3p|P|Y|G|M)
 31369  31369           <<- /conj/ morph(<1, ":Cs|<start>|>,")
 31370  31370               and not( morph(\3, ":3s") and before("(?i)\\b(?:l[ea] |l’|une? |ce(?:tte|t|) |[mts](?:on|a) |[nv]otre ).+ entre .+ et ") )
 31371         -            and not checkAgreement(\2, \3)
        31371  +            and not agreement(\2, \3)
 31372  31372               and not ( morph(\2, "(?:[123][sp]|P)") and not value(<1, "|<start>|,|") ) >>>
 31373  31373           <<- /conj/ not tag(\-1, "_ngn_") and morph(\3, ":A.*:s") or (morph(\3, ":N.*:s") and morph(\2, ":A"))
 31374  31374           -3>> =suggVerb(\3, ":3p", suggPlur)                                                         && Accord avec “\1 \2…” incorrect. Conjugaison erronée ou accord nom/adjectif incorrect.
 31375  31375           <<- /conj/ __else__ -3>> =suggVerb(\3, ":3p")                                               && Conjugaison erronée. Accord avec “\1 \2…”. Le verbe devrait être à la 3ᵉ personne du pluriel.
 31376  31376   
 31377  31377       [certains|certaines|plusieurs|maints|maintes]  @:[NA].*:[pi]  qui  @:V¬:(?:3p|P|Y|G|M)
 31378  31378           <<- /conj/ morph(<1, ":Cs|<start>|>,")
................................................................................
 31395  31395   TEST: certains imbéciles passés à l’ennemi feraient mieux de se taire.
 31396  31396   
 31397  31397   
 31398  31398   __conj_des_nom__
 31399  31399       [<start>|,|(]  des  @:[NA].*:[pi]  @:V¬:(?:3p|P|G|Q|Y|A.*:[pi]|V[23].*:Y)
 31400  31400           <<- /conj/ morph(>1, ":(?:R|D.*:p)|>au/|<end>|>,") >>>
 31401  31401           <<- /conj/ not morph(\4, ":[NA]") -4>> =suggVerb(\4, ":3p")                                 && Conjugaison erronée. Accord avec “\2 \3…”. Le verbe devrait être à la 3ᵉ personne du pluriel.
 31402         -        <<- /conj/ __else__ and not checkAgreement(\3, \4) -4>> =suggVerb(\4, ":3p", suggPlur)      && Conjugaison erronée. Accord avec “\2 \3…”. Le verbe devrait être à la 3ᵉ personne du pluriel.
        31402  +        <<- /conj/ __else__ and not agreement(\3, \4) -4>> =suggVerb(\4, ":3p", suggPlur)           && Conjugaison erronée. Accord avec “\2 \3…”. Le verbe devrait être à la 3ᵉ personne du pluriel.
 31403  31403   
 31404  31404       [<start>|,|(]  des  @:[NA].*:[pi]  qui  @:V¬:(?:3p|P|G)
 31405  31405           <<- /conj/ -5>> =suggVerb(\5, ":3p")                                                        && Conjugaison erronée. Accord avec “\2 \3 \4…”. Le verbe devrait être à la 3ᵉ personne du pluriel.
 31406  31406   
 31407  31407       *WORD  des  @:[NA].*:[pi]  qui  @:V¬:(?:3p|P|G)
 31408  31408           <<- /conj/ morph(\1, ":[VR]", ":[NA]") --1>> =suggVerb(\-1, ":3p")                          && Conjugaison erronée. Accord avec “\2 \3 \4…”. Le verbe devrait être à la 3ᵉ personne du pluriel.
 31409  31409