Grammalecte  Check-in [7c946f5b98]

Overview
Comment:[fr] conversion: ajustements
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | fr | rg
Files: files | file ages | folders
SHA3-256: 7c946f5b98fb2e476b3a7b8f4a578afa67a78764e4ab9909252fe66d0004cb34
User & Date: olr on 2018-08-27 13:19:57
Other Links: branch diff | manifest | tags
Context
2018-08-28
07:33
[fr] ajustements check-in: 27f293e034 user: olr tags: fr, rg
2018-08-27
13:19
[fr] conversion: ajustements check-in: 7c946f5b98 user: olr tags: fr, rg
2018-08-26
21:28
[fr] conversion: regex rules -> graph rules + ajustements check-in: da78f6c060 user: olr tags: fr, rg
Changes

Modified gc_lang/fr/rules.grx from [51cb314285] to [16f9cd9626].

1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1373
1374
1375
1376
1377
1378
1379

1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396


1397
1398
1399
1400
1401
1402
1403







-

















-
-







        and not (re.search("^(?:est|une?)$", \1) and before("[’']$"))
        and not (\1 == "mieux" and before("(?i)qui +$"))
    ->> \1   # Doublon.

TEST: Il y a un {{doublon doublon}}.



### Traits d’union douteux
__[i]/tu(tu_trait_union_douteux)__
    ({w1})(?:--|—|–)({w1})  @@0,$
    <<- spell(\1+"-"+\2) and analyse(\1+"-"+\2, ":", False) ->> \1-\2                               # Trait d’union : un tiret simple suffit.

TEST: Nous préparons une {{contre–attaque}}.


!!!! Nombres: typographie                                                                         !!

#(\d\d\d\d)-(\d\d\d\d)   <<- ->> \1–\2                              # Ne pas séparer deux dates par un trait d’union, mais par un tiret demi-cadratin.

__[s]/num(num_lettre_O_zéro1)__  [\dO]+[O][\dO]+ <<- not option("ocr") ->> =\0.replace("O", "0")    # S’il s’agit d’un nombre, utilisez le chiffre « 0 » plutôt que la lettre « O ».
__[s]/num(num_lettre_O_zéro2)__  [1-9]O <<- not option("ocr") ->> =\0.replace("O", "0")             # S’il s’agit d’un nombre, utilisez le chiffre « 0 » plutôt que la lettre « O ».

TEST: année {{2O11}}                                                      ->> 2011
TEST: {{3O}} (chiffre avec un O).                                         ->> 30




!!!! Écritures épicènes invariables                                                               !!

__[i](d_typo_écriture_épicène_pluriel)__
    ({w_1}[éuitsrn])_(?:[nt]|)e_s  @@0
    <<- morphex(\1, ":[NAQ]", ":G") =>> define(\1, [":N:A:Q:e:p"])
1528
1529
1530
1531
1532
1533
1534
1535

1536
1537
1538
1539
1540
1541
1542
1543
1544
1545

1546
1547
1548
1549
1550
1551
1552
1525
1526
1527
1528
1529
1530
1531

1532
1533
1534
1535
1536
1537
1538
1539
1540
1541

1542
1543
1544
1545
1546
1547
1548
1549







-
+









-
+







!!
!!!! Élisions                                                                                     !!
!!
!!

# presque : élision
__[i>/typo(typo_presque)__
    (presqu[’'])(?![îi]le)
    (presqu[’'])(?![îi]le)  @@0
        <<- -1>> "presque "                                             # Pas d’élision autorisée sur “presque”, sauf avec “presqu’île”.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=1745

TEST: {{Presqu’}}exclusivement bâtie en pierre.
TEST: C’est une presqu’île.
TEST: Cette presqu’ile est particulièrement venteuse.


# quelque : élision
__[i>/typo(typo_quelque)__
    (quelqu[’'])(?!une?)
    (quelqu[’'])(?!une?)  @@0
        <<- -1>> "quelque "                                             # Pas d’élision autorisée sur “quelque”, sauf avec “quelqu’un” ou “quelqu’une”.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=1745

TEST: {{Quelqu’}}absurde que ce soit, il faut y céder.
TEST: quelqu’un vient.
TEST: elle s’en est allée avec quelqu’une…


1668
1669
1670
1671
1672
1673
1674

1675
1676
1677
1678

1679
1680
1681
1682
1683





1684
1685
1686
1687
1688
1689
1690
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694







+




+





+
+
+
+
+







        <<- \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")


__da_été__
    >avoir été
        <<- =>> select(\2, ":Q")


__da_dans__
    dans
        <<- not morph(<1, ":D.*:p|>[a-z]+ième/") =>> select(\1, ":R")


__da_puis__
    puis
        <<- not value(<1, "|je|ne|n’|le|la|l’|les|lui|nous|vous|leur|") =>> =exclude(\1, ":V")


__da_son_ton__
    [le|ce|cet|ces|mon|ton|son|quel|quelque|quelques|notre|votre|un|leur|ledit|dudit]  [son|ton]
        <<- =>> exclude(\2, ":D")


__da_quelque_chose__
4334
4335
4336
4337
4338
4339
4340
4341
4342


4343
4344
4345
4346
4347
4348
4349
4338
4339
4340
4341
4342
4343
4344


4345
4346
4347
4348
4349
4350
4351
4352
4353







-
-
+
+








TEST: on {{remué}} beaucoup.
TEST: on {{refuses}} tout cela
TEST: on ne se {{bougent}} pas suffisamment


__conj_ce__
    ce  @>(?:devoir|devenir|pouvoir|vouloir|savoir)/:V¬:(?:N|A|3s|P|Q|G)
    ce  [ne|n’]  @>(?:devoir|devenir|pouvoir|vouloir|savoir)/:V¬:(?:3s|P|G)
    [ce|c’]  @>(?:devoir|devenir|pouvoir|vouloir|savoir)/:V¬:(?:N|A|3s|P|Q|G)
    [ce|c’]  [ne|n’]  @>(?:devoir|devenir|pouvoir|vouloir|savoir)/:V¬:(?:3s|P|G)
        <<- /conj/ --1>> =suggVerb(\-1, ":3s")                              # Conjugaison erronée. Accord avec “\1”. Le verbe devrait être à la 3ᵉ personne du singulier.

    [ce|c’]  @>être/:V¬:(?:N|A|3[sp]|P|Q|G)
    [ce|c’]  [le|l’|en]  @>être/:V¬:(?:N|A|3s|P|Q|G)
    [ce|c’]  [ne|n’]  ?[le|l’|en]¿  @>être/:V¬:(?:3[sp]|P|Q|G)
        <<- /conj/ --1>> =suggVerb(\-1, ":3s")                              # Conjugaison erronée. Accord avec “\1”. Le verbe devrait être à la 3ᵉ personne du singulier.

4360
4361
4362
4363
4364
4365
4366
4367

4368
4369
4370
4371
4372
4373
4374
4375
4376
4377
4378

4379
4380
4381
4382

























4383
4384
4385
4386
4387
4388
4389
4364
4365
4366
4367
4368
4369
4370

4371
4372






4373



4374
4375
4376
4377
4378
4379
4380
4381
4382
4383
4384
4385
4386
4387
4388
4389
4390
4391
4392
4393
4394
4395
4396
4397
4398
4399
4400
4401
4402
4403
4404
4405
4406
4407
4408
4409
4410







-
+

-
-
-
-
-
-

-
-
-
+




+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+









__conj_c_en!6__
    c’ en  *WORD
        <<- /conj/ morph(\3, ">(?:être|devoir|devenir|pouvoir|vouloir|savoir)/:V", ":3s")
        -3>> =suggVerb(\3, ":3s")                                               # Conjugaison erronée. Accord avec “c’en”. Le verbe devrait être à la 3ᵉ personne du singulier.
        <<- /conf/ morph(\3, ":[YP]") or morph(\3, ":V", ">(?:être|devoir|devenir|pouvoir|vouloir|savoir)/")
        -1:2>> s’en                                                             # Confusion : “c’en” est la forme élidée de “ça en”. Pour la forme pronominale “se”, écrivez “s’en”.
        -1>> s’                                                                 # Confusion : “c’en” est la forme élidée de “ça en”. Pour la forme pronominale “se”, écrivez “s’en”.

    [il|ils|on]  c’
        <<- /conj/ -2>> s’                                                      # Confusion. Le pronom personnel objet s’écrit “se”.

    [<start>|,]  [elle|elles]  c’
        <<- /conj/ -3>> s’                                                      # Confusion. Le pronom personnel objet s’écrit “se”.

TEST: tu vois, c’en {{étais}} trop pour elles.
TEST: cet homme, perdu dans ses pensées, allait {{c’en}} faire du souci.
TEST: il {{c’}}accoutumait à sa nouvelle fonction.
TEST: elle {{c’}}anime dès qu’on fait du bruit.
TEST: {{c’}}en prendre.
TEST: C’en était malsain.
TEST: C’en devenait trop.
TEST: C’en pouvait être effrayant.


__conf_c_s_verbe__
    [il|ils|on|ne|n’]  c’
        <<- /conj/ -2>> s’                                                      # Confusion. Le pronom personnel objet s’écrit “se”, la graphie élidée “s’”.

    [<start>|,]  [elle|elles|lui|eux]  c’
        <<- /conj/ -3>> s’                                                      # Confusion. Le pronom personnel objet s’écrit “se”, la graphie élidée “s’”.

    c’ y
    c’ @:V¬>(?:avoir|être|devoir|devenir|pouvoir|vouloir|savoir)/.*:3[sp]
        <<- /conj/ -1>> s’                                                      # Confusion. Le pronom personnel objet s’écrit “se”, la graphie élidée “s’”.

    s’ >avoir
        <<- /conf/ -1>> c’|ç’                                                   # Confusion. Avec “\2” (du verbe “avoir”), le pronom personnel sujet est “ce” ou “ça” dont les graphies élidées sont “c’” et “ç’”.

TEST: {{S’en}} était vraiment trop !
TEST: Car {{s’en}} était vraiment fini !
TEST: il {{c’}}en est vite lassé.
TEST: elle {{c’}}en était trop vanté
TEST: cet homme, perdu dans ses pensées, allait {{c’}}en faire du souci.
TEST: il {{c’}}accoutumait à sa nouvelle fonction.
TEST: elle {{c’}}anime dès qu’on fait du bruit.
TEST: {{s’}}{{avait}} fonctionné
TEST: c’était merveilleux.


__conj_mieux_vaut__
    mieux  ?[ne|n’]¿  [vaux|valais|valus|vaudras|vaudrais]
        <<- /conj/ --1>> =\-1[:-1]+"t"                                          # Conjugaison erronée. Accord avec “mieux” : utilisez la 3ᵉ personne du singulier.

TEST: avec toi qui ne sais rien de rien, mieux {{vaux}} ne rien dire.
TEST: Mais là-bas mieux {{valais}} ouvrir sa gueule que se taire.
6911
6912
6913
6914
6915
6916
6917
6918
6919


6920
6921
6922
6923
6924
6925
6926
6927
6928
6929
6930
6931
6932
6933
6934
6935
6936
6937
6938
6939
6940
6941
6942
6943
6944
6945
6932
6933
6934
6935
6936
6937
6938


6939
6940




6941
6942
6943
6944
6945



6946
6947
6948
6949
6950
6951

6952
6953
6954
6955
6956
6957
6958







-
-
+
+
-
-
-
-





-
-
-






-







    ne [pas|plus|jamais|guère] être sans >ignorer
        <<- /conf/ -5>> savoir          # Confusion probable : vous écrivez l’inverse de ce que vous voulez dire.|http://fr.wiktionary.org/wiki/vous_n%E2%80%99%C3%AAtes_pas_sans_savoir

TEST: Vous n’êtes pas sans {{ignorer}} que…
TEST: ne pas être sans {{ignorer}} la cause de ces phénomènes.


# s’en / sens / cens / cent / sans / sang
__conf_s_en_sens_sans_cent_cens__
# sens / cens / cent / sans / sang
__conf_sens_sans_cent_cens__
    [<start>|,]  [il|ils|on]    [c’|ç’]  en                     @:V
    [<start>|,]  [elle|elles]   [c’|ç’]  en                     @:V¬:V0e
        <<- /conf/ -3:4>> s’en                                                                      # Confusion probable.

    [<start>|,]  [il|ils|on]    [sans|sang|sangs|cens|cent]     @:V
    [<start>|,]  [elle|elles]   [sang|sangs|cens|cent]          @:V
    [<start>|,]  [elle|elles]   sans                            @:V¬:(?:[NYDA]|Oo)|>(?:y|en)
        <<- /conf/ -3>> s’en                                                                        # Confusion probable.

TEST: il {{c’en}} est vite lassé.
TEST: {{S’en}} était vraiment trop !
TEST: Car {{s’en}} était vraiment fini !
TEST: elle {{sang}} était voulu
TEST: elle sans y penser
TEST: elle sans vergogne
TEST: elle sans la condamner
TEST: elles sans un sou en poche
TEST: elles sans grandes convictions
TEST: elle c’en était trop (TODO : proposer une virgule)


# s’ensuivre
__conf_s_ensuivre__
    s’ en >suivre
        <<- /conf/ ->> s’en\3                                                                       # Verbe “s’ensuivre”.

13605
13606
13607
13608
13609
13610
13611
13612
13613


13614
13615

13616

13617
13618
13619
13620
13621



13622
13623
13624
13625
13626
13627

13628
13629
13630
13631
13632
13633
13634

13635
13636
13637
13638
13639
13640
13641
13618
13619
13620
13621
13622
13623
13624


13625
13626
13627
13628
13629

13630
13631
13632



13633
13634
13635
13636
13637
13638
13639
13640

13641
13642
13643
13644
13645
13646
13647

13648
13649
13650
13651
13652
13653
13654
13655







-
-
+
+


+
-
+


-
-
-
+
+
+





-
+






-
+







!!
!!!! Quel(le) que soit / quel(le)s que soient                                                     !!
!!
!!

# singulier
__conj_quel_quelle_que_3sg__
    [quel|quelle]  [que|qu’]  >être  [le|la|l’|ce|cet|cette|mon|ton|son|ma|ta|sa|notre|votre|leur]
        <<- /conj/ morph(\3, ":V0e", ":3s") -3>> =suggVerb(\3, ":3s")               # Conjugaison erronée. Accord avec “\1”. Mettez “être” à la 3ᵉ personne du singulier.
    [quel|quelle]  [que|qu’]  >être  [le|la|l’|ce|cet|cette|mon|ton|son|ma|ta|sa|notre|votre|leur]  *WORD
        <<- /conj/ morph(\3, ":V0e", ":3s") -3>> =suggVerb(\3, ":3s")                       # Conjugaison erronée. Accord avec “\4 \5”. Mettez “être” à la 3ᵉ personne du singulier.

    [quels|quelles]  [que|qu’]  >être  [le|la|l’|ce|cet|cette|mon|ton|son|ma|ta|sa|notre|votre|leur]  *WORD
        <<- /conj/ not (morph(\3, ":3p") and value(>1, "|et|")) -3>> =suggVerb(\3, ":3s")   # Conjugaison erronée. Accord avec “\4 \5”. Mettez “être” à la 3ᵉ personne du singulier.
        <<- /conj/ not (morph(\3, ":V0e", ":3p") and value(>1, "|et|")) -1>> =\1[:-1]   # Accord avec “\4 \5”. Utilisez le singulier.
        <<- /conj/ __also__ -1>> =\1[:-1]                                                   # Accord avec “\4 \5”. Utilisez le singulier.

TEST: Quel que {{sois}} son passe-temps, il y consacre trop de temps.
TEST: Quels que {{soient}} le feu utilisé.
TEST: {{Quels}} que soit leur problème, ça n’en finit jamais.
TEST: {{Quelles}} que soit leur voiture, elle tombe constamment en panne.
TEST: {{Quels}} que {{soient}} le feu utilisé.
TEST: {{Quels}} que {{soit}} leur problème, ça n’en finit jamais.
TEST: {{Quelles}} que {{soit}} leur voiture, elle tombe constamment en panne.
TEST: Quelles que soient la vitesse et l’efficacité de cette méthode, ça me semble moins abouti que notre solution maison.


# pluriel
__conj_quels_quelles_que_3pl__
    [quels|quelles]  que  >être  [les|ces|mes|tes|ses|nos|vos|leurs]
    [quels|quelles|quel|quelle]  que  >être  [les|ces|mes|tes|ses|nos|vos|leurs]
        <<- /conj/ morph(\3, ":V0e", ":3p") -3>> =suggVerb(\3, ":3p")               # Conjugaison erronée. Mettez “être” à la 3ᵉ personne du pluriel.

    [quel|quelle]  que  >être  [les|ces|mes|tes|ses|nos|vos|leurs]  *WORD
        <<- /conj/ -1>> \1s                                                         # Accord avec “\4 \5”. Utilisez le pluriel.

TEST: Quels que {{soit}} les salopards qui ont fait ça.
TEST: Quels que {{sois}} les chaussures que je mets, elles me font mal aux pieds.
TEST: Quelles que {{sois}} les chaussures que je mets, elles me font mal aux pieds.
TEST: {{Quel}} que soient les avantages reçus, ce n’est pas assez.
TEST: {{Quelle}} que soient nos problèmes, on en parle toujours trop.



!!
!!
15618
15619
15620
15621
15622
15623
15624
15625

15626
15627
15628
15629
15630
15631
15632
15632
15633
15634
15635
15636
15637
15638

15639
15640
15641
15642
15643
15644
15645
15646







-
+







!!
!!!! Infinitif                                                                                    !!
!!
!!

__infi_devoir_pouvoir_vouloir__
    [>devoir|>pouvoir|>vouloir]  ~..(?:ée?s?|ez)$
        <<- /infi/ morph(\2, ":V", ":M") and not (morph(\1, ":N") and morph(<1, ":D"))
        <<- /infi/ not value(\1, "|puis|") and morph(\2, ":V", ":M") and not (morph(\1, ":N") and morph(<1, ":D"))
        -2>> =suggVerbInfi(\2)                                                                      # S’il s’agit d’une action à accomplir, le verbe devrait être à l’infinitif.

TEST: il devait {{utilisé}} son temps à bon escient.
TEST: tu dois {{mangé}}
TEST: on va devoir {{mangé}} tout ça.
TEST: Le devoir transcendé par l’amour de son pays.
TEST: un devoir corrigé par plusieurs professeurs.
15779
15780
15781
15782
15783
15784
15785
15786

15787
15788
15789
15790
15791
15792
15793
15793
15794
15795
15796
15797
15798
15799

15800
15801
15802
15803
15804
15805
15806
15807







-
+







    elle  @:V¬:(?:3s|P|G)
        <<- /conj/ not morph(<1, ":R|>(?:et|ou)") and not (morph(\2, ":Q") and morph(<1, ":V0.*:3s"))
        -2>> =suggVerb(\2, ":3s")                               # Conjugaison erronée. Accord avec “\1”. Le verbe devrait être à la 3ᵉ personne du singulier.
        <<- __also__ and morph(\2, ":3p") -1>> elles            # Accord avec “\2”.

    elle  qui  @:V¬:(?:3s|P|G)
        <<- /conj/ not morph(<1, ":R|>(?:et|ou)")
        -3>> =suggVerb(\2, ":3s")                               # Conjugaison erronée. Accord avec “\1”. Le verbe devrait être à la 3ᵉ personne du singulier.
        -3>> =suggVerb(\3, ":3s")                               # Conjugaison erronée. Accord avec “\1”. Le verbe devrait être à la 3ᵉ personne du singulier.
        <<- __also__ and morph(\3, ":3p") -1>> elles            # Accord avec “\3”.

TEST: Elle {{conquis}}.
TEST: Elle {{finis}}.
TEST: Elle {{pâlis}}.
TEST: {{Elles}} {{donne}} des leçons.
TEST: {{Elle}} ne nous {{croient}} jamais.
15921
15922
15923
15924
15925
15926
15927
15928

15929
15930
15931
15932
15933
15934
15935
15935
15936
15937
15938
15939
15940
15941

15942
15943
15944
15945
15946
15947
15948
15949







-
+







TEST: nulle femme ne {{saurais}} le faire
TEST: nul homme ne {{sauras}} s’y prendre
TEST: nulle partie du corps ne peut être considérée comme le siège de l’âme.


__conj_vinfi_suj__
    [<start>|,]  @:Y  @:V¬:(?:3s|P|Q.*:[me]:[si]|Y|3p!)
        <<- /conj/ not (value(\2, "|être|") and morph(\3, ":A"))
        <<- /conj/ not (value(\2, "|être|devenir|redevenir|voir|sembler|paraître|paraitre|") and morph(\3, ":A"))
        -3>> =suggVerb(\3, ":3s")                                       # Conjugaison erronée. Accord avec “\1”. Le verbe devrait être à la 3ᵉ personne du singulier.

TEST: manger {{fais}} grossir.
TEST: boire immodérément {{nuis}} à la santé
TEST: Manger salé, c’est mauvais pour la santé.


16397
16398
16399
16400
16401
16402
16403
16404
16405
16406
16407
16408
16409
16410
16411
16411
16412
16413
16414
16415
16416
16417

16418
16419
16420
16421
16422
16423
16424







-







!!
!!
!!!! Modes verbaux                                                                                !!
!!
!!

# conditionnel / futur

__vmode_j_aimerais_vinfi__
    [<start>|,]  [je|j’]  [aimerai|préférerai|préfèrerai|apprécierai|voudrai|souhaiterai|désirerai|adorerai]  @:[YX]|>(?:y|ne|qu[e’])/¬:R
        <<- /vmode/ -3>> \1s                                                                        # Si vous exprimez un souhait, utilisez le conditionnel et non le futur.

TEST: J’{{aimerai}} savoir ce dont il retourne.
TEST: dans tous les cas j’{{aimerai}} ne rien savoir
TEST: Je {{voudrai}} qu’il soit déjà là.