Grammalecte  Check-in [4454aae19b]

Overview
Comment:[fr] màj: gn_3m, +faux positif
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk | fr
Files: files | file ages | folders
SHA3-256: 4454aae19bcb2a6d4bbeb8bcf9dcffaf85cb8dc8dc5d4506d6e209ea8b5c3d01
User & Date: olr on 2018-11-29 08:21:17
Other Links: manifest | tags
Context
2018-11-29
11:03
[fr] faux positifs check-in: 9b62b575e2 user: olr tags: trunk, fr
08:21
[fr] màj: gn_3m, +faux positif check-in: 4454aae19b user: olr tags: trunk, fr
07:24
[fr] faux positifs check-in: 80209c091a user: olr tags: trunk, fr
Changes

Modified gc_lang/fr/rules.grx from [4901779a6a] to [6fd1e033bb].

1724
1725
1726
1727
1728
1729
1730
1731

1732
1733
1734
1735


1736
1737
1738
1739


1740
1741
1742

1743
1744
1745
1746
1747
1748
1749
1724
1725
1726
1727
1728
1729
1730

1731
1732
1733


1734
1735
1736
1737


1738
1739
1740
1741

1742
1743
1744
1745
1746
1747
1748
1749







-
+


-
-
+
+


-
-
+
+


-
+








    tu  ?[le|la|l’|les|en|nous|vous|lui|leur|y]¿  @:¬:[OX]
    tu  [nous|vous]   [le|la|l’|les|en|y]         @:¬:[OX]
    tu  [le|la|l’|les]  [lui|leur|en|y]           @:¬:[OX]
    tu  [lui|leur]      en                        @:¬:[OX]
        <<- not morph(<1, ":V0") =>> select(\-1, ":[123][sp]")

    lui  [la|le|l’|les]  @:(?:[123][sp]|P|Y)
    lui  [la|le|l’|les]  @:(?:[123][sp]|P|Y)¬:W
        <<- not morph(<1, ":R") =>> select(\3, ":(?:[123][sp]|P|Y)")

    [nous|vous]     [le|la|l’|les|en]  @:¬:[OX]
    lui             en                 @:¬:[OX]
    [nous|vous]     [le|la|l’|les|en]  @:¬:[OXW]
    lui             en                 @:¬:[OXW]
        <<- not morph(<1, ":R") =>> select(\3, ":(?:[123][sp]|P|Y)")

    [le|la|l’|les]  [lui|leur|en]      @:¬:[OX]
    leur            en                 @:¬:[OX]
    [le|la|l’|les]  [lui|leur|en]      @:¬:[OXW]
    leur            en                 @:¬:[OXW]
        <<- =>> select(\2, ":(?:[123][sp]|P|Y)")

    @:M  @:[123]s¬:Q
    @:M  @:[123]s¬:[QW]
        <<- \2.islower() and morph(<1, ":Cs|<start>") =>> select(\2, ":[123][sp]")

    <start> @:M  @:(?:[123]s|Oo)|>ne/¬:A
        <<- =>> =select(\2, ":M")

    [que|qu’|combien|pourquoi]  ?[en|y]¿  *WORD
        <<- =>> exclude(\-1, ":E")
4783
4784
4785
4786
4787
4788
4789

4790
4791
4792
4793
4794
4795
4796
4783
4784
4785
4786
4787
4788
4789
4790
4791
4792
4793
4794
4795
4796
4797







+







TEST: ceux-là, dans tous les cas de figure et dans tous les coups ratés, {{comprenais}} mal pourquoi on leur en voulait.
TEST: {{j'}}ai signalé que {{j'}}essayais de regrouper les paragraphes. (Tests avec apostrophe droite.)
TEST: je me questionne, {{exiges}} des réponses mais n’en obtiens pas…
TEST: lorsque deux sujets politiques voisins se présentent sur le marché, l’un plus flou et l’autre plus caricatural
TEST: dans tous les cas de figure imaginés par cette bande de nuls, il n’y en a pas un qui les sauvera.
TEST: ces gens qui vont par monts et par vaux.
TEST: pour ne justement pas donner l’impression de s’être trompé.
TEST: C’était lui le plus jeune président.


__conj_peux_veux_vaux_équivaux_prévaux_sans_sujet!3__
    [se|s’]  ?[en|y|le|la|l’|les]¿  ([peux|veux|vaux|équivaux|prévaux])
        <<- /conj/ -1>> =suggVerb(\1, ":3s")                                                        # Incohérence. Le sujet de cette forme verbale est introuvable.

    [ne|n’]  ?[le|la|l’|les|en|me|m’|te|t’|nous|vous|lui|leur|y]¿  ([peux|veux|vaux|équivaux|prévaux])
11660
11661
11662
11663
11664
11665
11666
11667





11668
11669
11670

11671

11672
11673
11674
11675
11676
11677
11678
11661
11662
11663
11664
11665
11666
11667

11668
11669
11670
11671
11672
11673
11674
11675
11676
11677
11678
11679
11680
11681
11682
11683
11684
11685







-
+
+
+
+
+



+

+







TEST: chaque élément {{terrestres}}
TEST: ils viennent de chaque coin {{ignorée}} du pays.
TEST: Quelque chose tombé dans le puits a souillé l’eau.


__gn_det_sing_3m__
    [ledit|ladite|un|une|ce|cet|cette|mon|ton|son|ma|ta|sa|notre|votre|au|quel|quelle|dudit]  *WORD  *WORD  *WORD
        <<- /gn/ morph(\2, ":[NA].*:[si]") and morph(\3, ":[NA].*:[si]", ":(?:[123][sp]|G)") and morph(\4, ":[NA].*:p", "*")
        <<- /gn/ not value(<1, "|et|ou|") and morph(\2, ":[NA].*:[si]") and morph(\3, ":[NA].*:[si]", ":(?:[123][sp]|G)") and morph(\4, ":[NA].*:p", "*")
        -4>> =suggSing(\4)                                                                  # Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au singulier.

    [le|la|leur]  *WORD  *WORD  *WORD
        <<- /gn/ not value(<1, "|et|ou|") and morph(\2, ":[NA].*:[si]", ":[123][sp]") and morph(\3, ":[NA].*:[si]", ":(?:[123][sp]|G)") and morph(\4, ":[NA].*:p", "*")
        -4>> =suggSing(\4)                                                                  # Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au singulier.

TEST: un gros connard {{pathétiques}}
TEST: La petite fille {{devenues}} infirmière.
TEST: le jour venu prises par surprise elles durent s’enfuir.
TEST: servi pas un style et une exigence historique remarquables


## Pluriels

__gn_les_1m__
    ,  les  *WORD
        <<- /gn/ ( morph(\3, ":[NA].*:s", "*") and not (value(>1, "|et|ou|") and morph(>2, ":[NA]")) )
11840
11841
11842
11843
11844
11845
11846




11847

11848
11849
11850
11851
11852
11853
11854
11847
11848
11849
11850
11851
11852
11853
11854
11855
11856
11857
11858
11859
11860
11861
11862
11863
11864
11865
11866







+
+
+
+

+







__gn_det_plur_3m__
    [ces|mes|tes|ses|nos|vos|leurs|quels|quelles|aux]       *WORD  *WORD  *WORD
    [plusieurs|quelques|certains|certaines|moult]           *WORD  *WORD  *WORD
    [lesdits|lesdites|desdits|desdites|auxdits|auxdites]    *WORD  *WORD  *WORD
        <<- /gn/ morph(\2, ":[NA].*:[pi]") and morph(\3, ":[NA].*:[pi]", ":(?:[123][sp]|G)") and morph(\4, ":[NA].*:s", "*") and not before("(?i)\\bune? de +$")
        -4>> =suggPlur(\4)                                                                  # Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au pluriel.

    [les|leurs]    *WORD  *WORD  *WORD
        <<- /gn/ morph(\2, ":[NA].*:[pi]", "[123][sp]") and morph(\3, ":[NA].*:[pi]", ":(?:[123][sp]|G)") and morph(\4, ":[NA].*:s", "*") and not before("(?i)\\bune? de +$")
        -4>> =suggPlur(\4)                                                                  # Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au pluriel.

TEST: ces petites sottes {{déjantée}}
TEST: Les grandes volontés {{dépassée}} par les évènements


## certains / certaines
__gn_certains_1m__
    certains  *WORD
        <<- /gn/ morph(\2, ":[NA].*:f", ":[emGWP]") -1>> certaines                          # Accord de genre erroné : « \2 » est féminin.
        <<- /gn/ __also__ and hasMasForm(\2) -2>> =suggMasPlur(\2, True)                    # Accord de genre erroné : « \1 » est un déterminant masculin.