Grammalecte  Check-in [4454aae19b]

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

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 2018-11-29 08:21:17
Context
2018-11-29
11:03
[fr] faux positifs check-in: 9b62b575e2 user: olr tags: fr, trunk
08:21
[fr] màj: gn_3m, +faux positif check-in: 4454aae19b user: olr tags: fr, trunk
07:24
[fr] faux positifs check-in: 80209c091a user: olr tags: fr, trunk
Changes

Changes to gc_lang/fr/rules.grx.

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
....
4783
4784
4785
4786
4787
4788
4789

4790
4791
4792
4793
4794
4795
4796
.....
11660
11661
11662
11663
11664
11665
11666
11667




11668
11669
11670

11671

11672
11673
11674
11675
11676
11677
11678
.....
11840
11841
11842
11843
11844
11845
11846




11847

11848
11849
11850
11851
11852
11853
11854

    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)
        <<- not morph(<1, ":R") =>> select(\3, ":(?:[123][sp]|P|Y)")

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

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

    @:M  @:[123]s¬:Q
        <<- \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")
................................................................................
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é.



__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])
................................................................................
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", "*")




        -4>> =suggSing(\4)                                                                  # Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au singulier.

TEST: un gros connard {{pathétiques}}

TEST: le jour venu prises par surprise elles durent s’enfuir.



## Pluriels

__gn_les_1m__
    ,  les  *WORD
        <<- /gn/ ( morph(\3, ":[NA].*:s", "*") and not (value(>1, "|et|ou|") and morph(>2, ":[NA]")) )
................................................................................
__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.





TEST: ces petites sottes {{déjantée}}



## 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.







|


|
|


|
|


|







 







>







 







|
>
>
>
>



>

>







 







>
>
>
>

>







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
....
4783
4784
4785
4786
4787
4788
4789
4790
4791
4792
4793
4794
4795
4796
4797
.....
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
.....
11847
11848
11849
11850
11851
11852
11853
11854
11855
11856
11857
11858
11859
11860
11861
11862
11863
11864
11865
11866

    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)¬:W
        <<- not morph(<1, ":R") =>> select(\3, ":(?:[123][sp]|P|Y)")

    [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]      @:¬:[OXW]
    leur            en                 @:¬:[OXW]
        <<- =>> select(\2, ":(?:[123][sp]|P|Y)")

    @: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")
................................................................................
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])
................................................................................
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/ 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]")) )
................................................................................
__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.