Index: gc_lang/fr/rules.grx ================================================================== --- gc_lang/fr/rules.grx +++ gc_lang/fr/rules.grx @@ -10229,18 +10229,37 @@ TEST: certains {{prenne}} leur temps TEST: Plusieurs qui {{pense}} que c’est une arnaque se sont quand même trompés. __[i]/conj(conj_det_plur_nom)__ - ([lcmts]es|[nv]os|leurs|quelques|certaine?s|plusieurs) +({w_2}) +(?:qui +|)(?!j’|c’)({w_2}) @@0,w,$ - <<- morph(\2, ":[NAQ].*:[pi]", False) and morphex(\3, ":V", ":(?:[13]p|P|Q|Y|G|A.*:e:[pi])") and morphex(word(-1), ":C", ":[YP]", True) and not checkAgreement(\2, \3) - and not( morph(\3, ":3s", False) and before(r"(?i)\b(?:l[ea] |l’|ce(?:tte|t|) |[mts](?:on|a) ).+ entre .+ et ") ) + ([cmts]es|[nv]os|leurs|quelques) +({w_2}) +({w_2}) @@0,w,$ + <<- morph(\2, ":[NAQ].*:[pi]", False) and morphex(\3, ":V", ":(?:[13]p|P|Q|Y|G|A.*:e:[pi])") and morphex(word(-1), ":C", ":[YP]", True) + and not( morph(\3, ":3s", False) and before(r"(?i)\b(?:l[ea] |l’|une? |ce(?:tte|t|) |[mts](?:on|a) |[nv]otre ).+ entre .+ et ") ) >>> + <<- not checkAgreement(\2, \3) + -3>> =suggVerb(@, ":3p") # Conjugaison erronée. Accord avec « \1 \2… ». Le verbe devrait être à la 3ᵉ personne du pluriel. + <<- isAmbiguousAndWrong(\2, \3, ":p", ":3p") + -3>> =suggVerb(@, ":3p", suggPlur) # Accord avec « \1 \2… » incorrect. Conjugaison erronée ou accord nom/adjectif incorrect. +__[i]/conj(conj_det_plur_nom_qui)__ + ([cmts]es|[nv]os|leurs|quelques) +({w_2}) +qui +({w_2}) @@0,w,$ + <<- morph(\2, ":[NAQ].*:[pi]", False) and morphex(\3, ":V", ":(?:[13]p|P|Q|Y|G|A.*:e:[pi])") and morphex(word(-1), ":C", ":[YP]", True) + and not( morph(\3, ":3s", False) and before(r"(?i)\b(?:l[ea] |l’|une? |ce(?:tte|t|) |[mts](?:on|a) |[nv]otre ).+ entre .+ et ") ) -3>> =suggVerb(@, ":3p") # Conjugaison erronée. Accord avec « \1 \2… ». Le verbe devrait être à la 3ᵉ personne du pluriel. __[i]/conj(conj_det_plur_nom_pronom)__ - ([lcmts]es|[nv]os|leurs|quelques|certaine?s|plusieurs) +({w_2}) +(?:qui +|)> +({w_2}) @@0,w,$ + ([cmts]es|[nv]os|leurs|quelques) +({w_2}) +(?:qui +|)> +({w_2}) @@0,w,$ + <<- morph(\2, ":[NAQ].*:[pi]", False) and morphex(\3, ":V", ":(?:[13]p|P|Y|G)") and morphex(word(-1), ":C", ":[YP]", True) + and not( morph(\3, ":3s", False) and before(r"(?i)\b(?:l[ea] |l’|une? |ce(?:tte|t|) |[mts](?:on|a) |[nv]otre ).+ entre .+ et ") ) + -3>> =suggVerb(@, ":3p") # Conjugaison erronée. Accord avec « \1 \2… ». Le verbe devrait être à la 3ᵉ personne du pluriel. + +__[i]/conj(conj_det_plur_nom_confusion)__ + (les|certaine?s|plusieurs) +({w_2}) +(?:qui +|)({w_2}) @@0,w,$ + <<- morph(\2, ":[NAQ].*:[pi]", False) and morphex(\3, ":V", ":(?:[13]p|P|Q|Y|G|A.*:e:[pi])") and morphex(word(-1), ":C", ":[YP]", True) and not checkAgreement(\2, \3) + and not( morph(\3, ":3s", False) and before(r"(?i)\b(?:l[ea] |l’|une? |ce(?:tte|t|) |[mts](?:on|a) |[nv]otre ).+ entre .+ et ") ) + -3>> =suggVerb(@, ":3p") # Conjugaison erronée. Accord avec « \1 \2… ». Le verbe devrait être à la 3ᵉ personne du pluriel. +__[i]/conj(conj_det_plur_nom_pronom_confusion)__ + (les|certaine?s|plusieurs) +({w_2}) +(?:qui +|)> +({w_2}) @@0,w,$ <<- morph(\2, ":[NAQ].*:[pi]", False) and morphex(\3, ":V", ":(?:[13]p|P|Y|G)") and morphex(word(-1), ":C", ":[YP]", True) - and not( morph(\3, ":3s", False) and before(r"(?i)\b(?:l[ea] |l’|ce(?:tte|t|) |[mts](?:on|a) ).+ entre .+ et ") ) + and not( morph(\3, ":3s", False) and before(r"(?i)\b(?:l[ea] |l’|une? |ce(?:tte|t|) |[mts](?:on|a) |[nv]otre ).+ entre .+ et ") ) -3>> =suggVerb(@, ":3p") # Conjugaison erronée. Accord avec « \1 \2… ». Le verbe devrait être à la 3ᵉ personne du pluriel. TEST: Les abstentions {{est}} présumée manifester un défaut d’opinion marquée TEST: Les cours de culture générale nous {{apporte}} de l’ouverture d’esprit. TEST: Les hommes ne le lui {{pardonnes}} pas. @@ -10250,10 +10269,12 @@ TEST: Les hommes comme celui-là {{mange}} comme deux. TEST: les récompenses distribuées à parts égales {{était}}… TEST: Les États-Unis d’Amérique se {{compose}} de 50 états. TEST: Les enfants en {{manges}}. TEST: Les ombres la {{donnes}} +TEST: mes filles {{passe}} ce matin +TEST: vos filles {{passes}} ce matin TEST: Les grands hommes politiques TEST: les charmantes petites mines de toutes les jeunes filles TEST: Les pauvres petites dames sont folles TEST: Les entrepreneurs ont {{cherchaient}} la reconnaissance sociale TEST: le lien entre les agences de renseignement et ces mêmes entreprises pouvait reposer sur des activités de surveillance à proprement parler. @@ -10272,19 +10293,10 @@ TEST: Des hommes {{arrive}}. TEST: des femmes qui {{conduise}} la marche du monde. # confusions noms/adjectifs/verbes (voir règles DPP) -__[i]/conj(conj_det_plur_nom_ambiguïté)__ - ([cmts]es|[nv]os|leurs|quelques|plusieurs) +({w_2})~ *({w_2}) @@0,w,$ - <<- morphex(word(-1), ":C", ":[YP]", True) and isAmbiguousAndWrong(\2, \3, ":p", ":3p") - -3>> =suggVerb(@, ":3p", suggPlur) # Accord avec « \1 \2… » incorrect. Conjugaison erronée ou accord nom/adjectif incorrect. - -TEST: mes filles {{passe}} ce matin -TEST: vos filles {{passes}} ce matin - - __[i]/conj(conj_les_nom_ambiguïté)__ les +({w_2})~ *({w_2}) @@w,$ <<- morphex(word(-1), ":C", ":[YP]", True) and isVeryAmbiguousAndWrong(\1, \2, ":p", ":3p", isStart()) -2>> =suggVerb(@, ":3p", suggPlur) # Accord avec « les \1… » incorrect. Conjugaison erronée ou accord nom/adjectif incorrect.