Grammalecte  Check-in [72adbb23b9]

Overview
Comment:[fr] faux positifs: <ils faut> + faux positifs: <avoir été chez>
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk | fr
Files: files | file ages | folders
SHA3-256: 72adbb23b9b8cd7deb2cb3f2b30c7b626a795f7c79bdbdc59bd81c2cc580ff0f
User & Date: olr on 2017-11-16 10:43:18
Other Links: manifest | tags
Context
2017-11-16
11:02
[fx] context menu: analyze page available everywhere check-in: 3566b36f74 user: olr tags: trunk, fx
10:43
[fr] faux positifs: <ils faut> + faux positifs: <avoir été chez> check-in: 72adbb23b9 user: olr tags: trunk, fr
10:16
[fr] pt: d’un commun accord + faux positif: l’a peu près check-in: 044fbefa17 user: olr tags: trunk, fr
Changes

Modified gc_lang/fr/rules.grx from [9643c2be6d] to [d829889fdc].

416
417
418
419
420
421
422
423
424




425
426
427
428
429
430
431
416
417
418
419
420
421
422


423
424
425
426
427
428
429
430
431
432
433







-
-
+
+
+
+







    versions? ([0-9]+(?:[.][0-9]+[a-z]?)*) @@$ <<- ~1>> *

# sigles
__<s>(p_sigle1)__
    ([A-Z][.][A-Z][.](?:[A-Z][.])*) +[A-ZÉÀÂÊÎÈÔ]  @@0  <<- ~1>> =\1.replace(".", "")+"."
__[s>(p_sigle2)__
    [a-zA-Z][.][a-zA-Z][.](?:[a-zA-Z][.])*
    <<- not re.search(r"(?i)^(?:i\.e\.|s\.[tv]\.p\.|e\.g\.|a\.k\.a\.|c\.q\.f\.d\.|b\.a\.|n\.b\.)$", \0) ->> =\0.replace(".", "").upper()
    # Sigle. Il est recommandé d’ôter les points pour les sigles.|https://fr.wikipedia.org/wiki/Sigle#Typographie
    <<- not re.search(r"(?i)^(?:i\.e\.|s\.[tv]\.p\.|e\.g\.|a\.k\.a\.|c\.q\.f\.d\.|b\.a\.|n\.b\.)$", \0) >>>
    <<- \0.__len__() == 4 ->> =\0.replace(".", "").upper() + "|" + \0[0:2] + " " + \0[2:4]
    # Sigle. Il est recommandé d’ôter les points pour les sigles. (S’il s’agit d’un prénom et d’un nom, mettez un espace.)|https://fr.wikipedia.org/wiki/Sigle#Typographie
    <<- __else__ ->> =\0.replace(".", "").upper()                                                   # Sigle. Il est recommandé d’ôter les points pour les sigles.|https://fr.wikipedia.org/wiki/Sigle#Typographie
    <<- \0 != "b.a." ~>> =\0.replace(".", "_")
__[s>(p_sigle3)__
    J[.]-[A-Z][.] <<- ~>> =\0.replace(".", "").replace("-","")

# Ne pas scinder la phrase si les points de suspension sont suivis d’une minuscule
__<s>(p_points_suspension)__
    ({w1})(…)(?= [a-zéèêàâîô])  @@0,$ <<- not re.search("(?i)^etc", \1) ~2>> ,
485
486
487
488
489
490
491
492

493
494
495
496
497
498
499
487
488
489
490
491
492
493

494
495
496
497
498
499
500
501







-
+







# Divers
__[i](p_FranceTV)__
    France ([23450O]) @@$ <<- ~>> France_\1
__[u](p_CAC40)__
    cac 40 <<- ~>> CAC40



TEST: par {{O.R.}}                                          ->> OR|O. R.
TEST: l’{{A.N.P.E.}} n’existe plus
TEST: ce chien […] ne {{semblez}} pas perdu.
TEST: ce chat {{(…)}} ne {{semblez}} pas perdu.
TEST: les tests de la version 3.17.8 {{commence}} demain.
TEST: ce nouveau moteur de recherche (http://www.cherche-moi-ça.fr/home.php&lang=fr) fonctionne pas mal.
TEST: l’A.M. Turing Award 2015
TEST: Retrouvez-nous sur le Monde.fr
2672
2673
2674
2675
2676
2677
2678
2679

2680
2681
2682
2683

2684
2685
2686
2687
2688
2689
2690
2674
2675
2676
2677
2678
2679
2680

2681
2682
2683
2684
2685
2686
2687
2688
2689
2690
2691
2692
2693







-
+




+








TEST: {{En}} Avignon
TEST: {{En}} Agen


# avoir été
__[i]/bs(bs_avoir_été_chez)__
    ({avoir}) été chez  @@0
    (?<!l’)({avoir}) été chez  @@0
    <<- not re.search("(?i)^avoir$", \1) and morph(\1, ">avoir ", False)
    ->> _                                                                                           # Tournure familière. Utilisez « être allé ».

TEST: J’{{ai été chez}} le coiffeur.
TEST: Chez les intellectuels, le mot utopie n’a jamais été synonyme de folie, mais il l’a été pour l’homme de la rue.


# abyme / abîme
__[i]/bs(bs_mise_en_abyme)__
    mis\w+ en (ab[îi]mes?) @@$ <<- -1>> abyme
    # Classiquement, on écrit plutôt « abyme » dans cette expression.|https://fr.wiktionary.org/wiki/mise_en_abyme

3698
3699
3700
3701
3702
3703
3704
3705

3706
3707
3708
3709
3710
3711
3712
3701
3702
3703
3704
3705
3706
3707

3708
3709
3710
3711
3712
3713
3714
3715







-
+







TEST: et bien manger, c’est important.
TEST: il a été vaincu, et bien vaincu.


# faut / faux
__[i]/conf(conf_faux)__
    faut
    <<- not morph(word(-1), ">(?:il|ne|en|y|leur|lui|nous|vous|[mtsl]e|la|les) ", False, True) and morphex(word(1), ":",  ":(?:Y|Oo|X|M)", True)
    <<- not morph(word(-1), ">(?:ils?|ne|en|y|leur|lui|nous|vous|[mtsl]e|la|les) ", False, True) and morphex(word(1), ":",  ":(?:Y|Oo|X|M)", True)
    ->> faux                                                # Confusion probable : “faut” est une conjugaison de “falloir”. Pour indiquer la fausseté d’une chose, écrivez :

TEST: un homme {{faut}}
TEST: c’est {{faut}}
TEST: il m’en faut plus.
TEST: il faut réussir.
TEST: bien sûr, faut y arriver.
11296
11297
11298
11299
11300
11301
11302

11303
11304
11305
11306
11307
11308
11309
11299
11300
11301
11302
11303
11304
11305
11306
11307
11308
11309
11310
11311
11312
11313







+







#    (ils) +> +({w_2})  @@0,$
#    <<- morphex(\2, ":V", ":(?:3p|P|G)") -2>> =suggVerb(@, ":3p")   # Conjugaison erronée. Accord avec « \1 ». Le verbe devrait être à la 3ᵉ personne du pluriel.
#    <<- __also__ and morph(\2, ":3s", False) -1>> il                # Accord avec « \2 ».

TEST: {{Ils}} {{vienne}} souvent.
TEST: Ils ne m’{{attends}} pas.
TEST: {{Ils}} vous le {{donne}}.
TEST: {{Ils}} {{faut}} venir.


__[i]/conj(conj_ceux_celles_qui)__
    (ce(?:ux|lles) +qui) +({w_1})  @@0,$
    <<- morphex(\2, ":V", ":(?:3p|P|Q|G)")
    -2>> =suggVerb(@, ":3p")                                # Conjugaison erronée. Accord avec « \1 ». Le verbe devrait être à la 3ᵉ personne du singulier.