6887
6888
6889
6890
6891
6892
6893
6894
6895
6896
6897
6898
6899
6900
6901
6902
6903
6904
6905
6906
6907
6908
6909
6910
6911
6912
6913
6914
6915
|
6887
6888
6889
6890
6891
6892
6893
6894
6895
6896
6897
6898
6899
6900
6901
6902
6903
6904
6905
6906
6907
6908
6909
6910
6911
6912
6913
6914
6915
|
-
+
-
+
|
__[i]/gn(gn_2m_les)__
(?<!et |ou )(les) +({w_2}) +({w_2}) @@0,w,$
<<- morph(\1, ":D", False) >>>
<<- \2 != "fois" and not \3.startswith("seul")
and ((morphex(\2, ":[NAQ].*:m", ":(?:B|e|G|V0|f)") and morph(\3, ":[NAQ].*:f")) or (morphex(\2, ":[NAQ].*:f", ":(?:B|e|G|V0|m)") and morph(\3, ":[NAQ].*:m")))
and not apposition(\2, \3) and not before(r"\b(?:et|ou|de) +$")
-3>> =switchGender(@, True) # Accord de genre erroné entre « \2 » et « \3 ».
<<- __also__ and hasFemForm(\2) -1>> =switchGender(@, True) # Accord de genre erroné avec « \3 ».
<<- __also__ and hasFemForm(\2) -2>> =switchGender(@, True) # Accord de genre erroné avec « \3 ».
<<- \2 != "fois" and not \3.startswith("seul")
and morph(\2, ":[NAQ].*:[pi]", False) and morph(\3, ":[NAQ].*:s")
and not apposition(\2, \3) and not (after_chk1(r"^ +et +(\w[\w-]+)", ":A") or after_chk1(r"^ *, +(\w[\w-]+)", ":A.*:[si]"))
and not before(r"(?i)\bune? de ")
-3>> =suggPlur(@) # Accord de nombre erroné avec « \2 » : « \3 » devrait être au pluriel.
__[i]/gn(gn_2m_les_après_et_ou_de)__
(?:et|ou) +(les) +({w_2}) +({w_2}) @@w,w,$
<<- morph(\1, ":D", False) >>>
<<- \2 != "fois" and not \3.startswith("seul")
and ((morphex(\2, ":[NAQ].*:m", ":(?:B|e|G|V0|f)") and morph(\3, ":[NAQ].*:f")) or (morphex(\2, ":[NAQ].*:f", ":(?:B|e|G|V0|m)") and morph(\3, ":[NAQ].*:m")))
and not apposition(\2, \3)
and not morph(word(-1), ":[NAQ]|>(?:et|ou) ", False, False)
-3>> =switchGender(@, True) # Accord de genre erroné entre « \2 » et « \3 ».
<<- __also__ and hasFemForm(\2) -1>> =switchGender(@, True) # Accord de genre erroné avec « \3 ».
<<- __also__ and hasFemForm(\2) -2>> =switchGender(@, True) # Accord de genre erroné avec « \3 ».
<<- \2 != "fois" and not \3.startswith("seul")
and morph(\2, ":[NAQ].*:[pi]", False) and morph(\3, ":[NAQ].*:s")
and not apposition(\2, \3) and not (after_chk1(r"^ +et +(\w[\w-]+)", ":A") or after_chk1(r"^ *, +(\w[\w-]+)", ":A.*:[si]"))
and not ( before(r"(?i)\bune? de ") or (\0.startswith("de") and before(r"(?i)\bune? +$")) )
-3>> =suggPlur(@) # Accord de nombre erroné avec « \2 » : « \3 » devrait être au pluriel.
TEST: les pitres {{imbécile}}
|