Grammalecte  Check-in [0070400a96]

Overview
Comment:[fr] gn2m: mauvais positionnement de l’erreur
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk | fr
Files: files | file ages | folders
SHA3-256: 0070400a96f6687832cef588365373e2640ced67c7caa7c067055a2a5f7483aa
User & Date: olr on 2018-04-21 18:06:23
Other Links: manifest | tags
Context
2018-04-22
15:00
[fr] màj: accentuation des majuscules check-in: 85da41f799 user: olr tags: trunk, fr
2018-04-21
18:06
[fr] gn2m: mauvais positionnement de l’erreur check-in: 0070400a96 user: olr tags: trunk, fr
07:40
[lo] dictionary options: update label about spelling suggestions check-in: 58bcefb7a6 user: olr tags: trunk, lo
Changes

Modified gc_lang/fr/rules.grx from [25c3e9ff1a] to [6fd4c8895b].

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}}