Grammalecte  Check-in [bca4eef82d]

Overview
Comment:[fr] ajustements
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | fr | rg
Files: files | file ages | folders
SHA3-256: bca4eef82dc506103e84227df76b6369aeb426361379cb45a9be059aa3a7c3b1
User & Date: olr on 2018-09-01 19:44:46
Other Links: branch diff | manifest | tags
Context
2018-09-02
12:07
[core] small code simplification (about PropertyValues in LO) check-in: 0395f1f7bf user: olr tags: core, rg
2018-09-01
19:44
[fr] ajustements check-in: bca4eef82d user: olr tags: fr, rg
08:16
[core] gc engine: option as error type and [bug] wrong variable name check-in: 8893db2923 user: olr tags: core, rg
Changes

Modified gc_lang/fr/rules.grx from [6ac6005fbf] to [7234f89950].

2382
2383
2384
2385
2386
2387
2388



2389
2390
2391
2392
2393
2394
2395
2382
2383
2384
2385
2386
2387
2388
2389
2390
2391
2392
2393
2394
2395
2396
2397
2398







+
+
+







__ocr_le_la_les__
    >lé
        <<- ->> =\1.replace("é", "e").replace("É", "E")                                             # Erreur de numérisation ?

    [lai|lei]
        <<- ->> lui|les                                                                             # Erreur de numérisation ?

    los
        <<- ->> les                                                                                 # Erreur de numérisation ?

    lu
        <<- not morph(<1, ":(?:V0|N.*:m:[si])") ->> tu|le|la                                        # Erreur de numérisation ?

TEST: __ocr__ il s’agit de {{lés}} observer.
TEST: __ocr__ {{lai}} gros sont mal vus.
TEST: __ocr__ {{lu}} as si bien réussi

7013
7014
7015
7016
7017
7018
7019
7020
7021
7022




7023
7024
7025
7026
7027
7028
7029
7016
7017
7018
7019
7020
7021
7022



7023
7024
7025
7026
7027
7028
7029
7030
7031
7032
7033







-
-
-
+
+
+
+








TEST: Méfiez-vous de cette {{soi-disante}} sorcière.
TEST: Méfiez-vous de cette {{soit-disant}} sorcière.
TEST: Méfiez-vous de cette {{soi disant}} sorcière.


__conf_soi_soit_soie__
    [chez|sur|avec|pour] (soit)
    don de (soit)
        <<- /conf/ not after(" soit ") -1>> soi                                                     # Confusion probable.
    [chez|sur|avec|pour] soit
    don de soit
    estime de soit
        <<- /conf/ not after(" soit ") --1>> soi                                                    # Confusion probable.

    en soit
        <<- /conf/ morph(>1, ":[GY]|<end>") and not value(<1, "|il|on|elle|n’|m’|t’|s’|") and not before("(?i)quel(?:s|les?|) qu[’ ]$") and not after(" soit ")
        -2>> soi                                                                                    # Confusion probable.

    [soi|sois|soit|>soie]  >même
        <<- /conf/ morph(<1, ":[YQ]|>(?:avec|contre|par|pour|sur)/|<start>") ->> soi-même           # Confusion probable : moi-même, toi-même, lui-même, elle-même, soi-même, elles-mêmes, eux-mêmes.
13487
13488
13489
13490
13491
13492
13493
13494
13495
13496
13497
13498
13499
13500
13501
13502
13491
13492
13493
13494
13495
13496
13497


13498
13499
13500
13501
13502
13503
13504







-
-








    [<start>|,] nul doute [que|qu’]
        <<- ~2:0>> *

    y compris
        <<- not value(<1, "|j’|n’|tu|il|on|") ~>> *

    [me|te|se|nous|vous]  >douter  [que|qu’]
        <<- /3>> no_subj


@@@@
@@@@
@@@@
@@@@
@@@@GRAPH: purge_ponctuations2                                                                     _
14936
14937
14938
14939
14940
14941
14942
14943

14944
14945
14946
14947
14948
14949
14950
14938
14939
14940
14941
14942
14943
14944

14945
14946
14947
14948
14949
14950
14951
14952







-
+







TEST: L’homme qu’ils ont beaucoup {{aidée}}.
TEST: L’homme que nous avons un peu {{aidée}}.
TEST: le flacon qu’ils ont réussi à acquérir


__ppas_det_fem_sing_COD_que_avoir__
    [une|la|l’|cette|ma|ta|sa|mon|ton|son]  *WORD  [que|qu’]  [je|j’|tu|il|elle|on|nous|vous|ils|elles]  ?[ne|n’]¿  ?[lui|leur]¿  >avoir  @:V[0-3]..t.*:Q.*:[mp]¬:(?:G|W|[fe]:[si])
        <<- /ppas/ morph(\2, ":[NA].*:f") and not morph(>1, ":(?:Y|Oo|D)|>que") and not value(>1, "|m’|t’|s’|l’|")
        <<- /ppas/ morph(\2, ":[NA].*:f") and not morph(>1, ":(?:Y|Oo|D)|>qu[e’]/") and not value(>1, "|m’|t’|s’|l’|")
            and not ((value(\-1, "|décidé|essayé|tenté|oublié|imaginé|supplié|") and value(>1, "|de|d’|")) or (value(\-1, "|réussi|pensé|") and value(>1, "|à|")))
        --1>> =suggFemSing(\-1)
        # Si “\1 \2…” est bien le COD du participe passé “\-1”, celui-ci devrait être au féminin singulier.|http://fr.wikipedia.org/wiki/Accord_du_participe_pass%C3%A9_en_fran%C3%A7ais

TEST: La femme que j’ai {{aidé}}.
TEST: La femme que j’ai beaucoup {{aidé}}.
TEST: La femme que j’ai un peu {{aidé}}.
15046
15047
15048
15049
15050
15051
15052
15053

15054
15055
15056




15057

15058
15059
15060
15061

15062
15063
15064
15065
15066
15067
15068
15048
15049
15050
15051
15052
15053
15054

15055
15056
15057
15058
15059
15060
15061
15062

15063
15064
15065
15066

15067
15068
15069
15070
15071
15072
15073
15074







-
+



+
+
+
+
-
+



-
+







!!!! Impératif !                                                                                  !!
!!
!!

# Confusions
__imp_confusion_2e_pers_pluriel__
    [<start>|,]  *WORD  moi
        <<- /imp/ space_after(\2, 1, 1) and morph(\2, ":(?:V1.*:[YQ]|Iq.*:3s)")
        <<- /imp/ space_after(\2, 1, 1) and morph(\2, ":(?:V1.*:[YQ]|Iq.*:[123]s)")
        -2:3>> =suggVerbTense(\2, ":E", ":2p") + "-moi"                                             # Confusion probable. Pour l’impératif, écrivez :

    [<start>|,]  *WORD  [les|la|leur]  *WORD
        <<- /imp/ space_after(\2, 1, 1) and morph(\2, ":(?:V1.*:[YQ]|Iq.*:[123]s)") and morph(\4, ":[ORC]", ":[NA]")
        -2:3>> =suggVerbTense(\2, ":E", ":2p") + "-" + \3                                           # Confusion probable. Pour l’impératif, écrivez :

    [<start>|,]  *WORD  [lui|nous|vous]  *WORD
        <<- /imp/ space_after(\2, 1, 1) and morph(\2, ":(?:V1.*:[YQ]|Iq.*:3s)") and morph(\4, ":[OR]", ":[NA]")
        <<- /imp/ space_after(\2, 1, 1) and morph(\2, ":(?:V1.*:[YQ]|Iq.*:[123]s)") and morph(\4, ":[ORCD]", ":Y")
        -2:3>> =suggVerbTense(\2, ":E", ":2p") + "-" + \3                                           # Confusion probable. Pour l’impératif, écrivez :

    [<start>|,]  *WORD  [les|la|lui|nous|vous|leur]  [<end>|,]
        <<- /imp/ space_after(\2, 1, 1) and morph(\2, ":(?:V1.*:[YQ]|Iq.*:3s)")
        <<- /imp/ space_after(\2, 1, 1) and morph(\2, ":(?:V1.*:[YQ]|Iq.*:[123]s)")
        -2:3>> =suggVerbTense(\2, ":E", ":2p") + "-" + \3                                           # Confusion probable. Pour l’impératif, écrivez :

TEST: {{Donner moi}} une chance                         ->> Donnez-moi
TEST: je vous en prie, {{prenais moi}} avec vous.       ->> prenez-moi
TEST: {{avançait moi}} de l’argent                      ->> avancez-moi
TEST: {{filé moi}} du fric, bon sang !                  ->> filez-moi
TEST: {{Données lui}} ça.                               ->> Donnez-lui
15219
15220
15221
15222
15223
15224
15225
15226

15227
15228
15229
15230
15231
15232
15233
15234
15235
15236

15237
15238
15239
15240
15241
15242
15243











15244
15245
15246
15247
15248
15249
15250
15251
15252
15253
15254

15255
15256
15257
15258
15259
15260
15261
15262
15263
15264
15265
15266
15267
15268

15269
15270
15271
15272
15273
15274
15275
15225
15226
15227
15228
15229
15230
15231

15232
15233
15234
15235
15236
15237
15238
15239
15240
15241

15242
15243
15244
15245
15246
15247


15248
15249
15250
15251
15252
15253
15254
15255
15256
15257
15258
15259
15260
15261
15262
15263
15264
15265
15266
15267
15268

15269
15270
15271
15272
15273
15274
15275
15276
15277
15278
15279
15280
15281
15282

15283
15284
15285
15286
15287
15288
15289
15290







-
+









-
+





-
-
+
+
+
+
+
+
+
+
+
+
+










-
+













-
+







!!!! Impératif : traits d’union manquants                                                         !!
!!
!!

__imp_union_moi__
    *WORD  moi
        <<- /imp/ space_after(\1, 1, 1)
            and morph(\1, ":E", ":[GM]") and not value(<1, "|de|d’|le|la|les|l’|me|te|se|nous|vous|lui|leur|")
            and morph(\1, ":E", ":[GM]|>(?:venir|aller|partir)") and not value(<1, "|de|d’|le|la|les|l’|me|te|se|nous|vous|lui|leur|")
        ->> \1-\2                                       # S’il s’agit d’un impératif, mettez un trait d’union.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4206

TEST: {{Apportez moi}} ce dictionnaire
TEST: Viens moi je m’ennuie.


__imp_union_toi__
    *WORD  toi
        <<- /imp/ space_after(\1, 1, 1)
            and morph(\1, ":E:2s", ":[GM]") and not value(<1, "|de|d’|le|la|les|l’|me|te|se|nous|vous|lui|leur|")
            and morph(\1, ":E:2s", ":[GM]|>(?:venir|aller|partir)") and not value(<1, "|de|d’|le|la|les|l’|me|te|se|nous|vous|lui|leur|")
        ->> \1-\2                                       # S’il s’agit d’un impératif, mettez un trait d’union.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4206

TEST: {{Donne toi}} du temps.


__imp_union_nous_vous_lui_y__
    *WORD  [nous|vous|lui|y]
__imp_union_nous_vous_lui__
    *WORD  [nous|vous|lui]
        <<- /imp/ space_after(\1, 1, 1)
            and morph(\1, ":E", ":[GM]|>(?:venir|aller|partir)") and morph(>1, ":|<end>", ":(?:Y|3[sp]|Oo)|>(?:en|y)") and morph(<1, ":Cc|<start>|>,")
        ->> \1-\2                                       # S’il s’agit d’un impératif, mettez un trait d’union.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4206

TEST: {{Donne nous}} du café.


__imp_union_y__
    *WORD  y
        <<- /imp/ space_after(\1, 1, 1)
            and morph(\1, ":E", ":[GM]") and morph(>1, ":|<end>", ":(?:Y|3[sp]|Oo)|>(?:en|y)") and morph(<1, ":Cc|<start>|>,")
        ->> \1-\2                                       # S’il s’agit d’un impératif, mettez un trait d’union.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4206

TEST: {{Donne nous}} du café.


__imp_union_les__
    *WORD  les
        <<- /imp/ space_after(\1, 1, 1)
            and morph(\1, ":E", ":[GM]") and morph(>1, ":|<end>|>,", ":(?:N|A|Y|B|3[sp]|>(?:pour|plus|moins|mieux|peu|trop|très|en|y))") and morph(<1, ":Cc|<start>|>,")
            and morph(\1, ":E", ":[GM]|>(?:venir|aller|partir)") and morph(>1, ":|<end>|>,", ":(?:N|A|Y|B|3[sp]|>(?:pour|plus|moins|mieux|peu|trop|très|en|y))") and morph(<1, ":Cc|<start>|>,")
        ->> \1-les                                      # S’il s’agit d’un impératif, mettez un trait d’union.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4206

TEST: {{chante les}} avec conviction
TEST: Veut les en convaincre.
TEST: Invite les plus intelligents…
TEST: Prenez les 5 ou 6 revues les plus connues.
TEST: Allez les chercher.
TEST: Soyez les plus gentils qu’on puisse imaginer.


__imp_union_le_la_leur__
    *WORD  [le|la|leur|en]
        <<- /imp/ space_after(\1, 1, 1)
            and morph(\1, ":E", ":[GM]") and morph(>1, ":|<end>|>,", ":(?:N|A|Q|Y|MP|H|T)|>(?:pour|plus|moins|mieux|peu|plupart|trop|très|une?)/") and morph(<1, ":Cc|<start>|>,")
            and morph(\1, ":E", ":[GM]|>(?:venir|aller|partir)") and morph(>1, ":|<end>|>,", ":(?:N|A|Q|Y|MP|H|T)|>(?:pour|plus|moins|mieux|peu|plupart|trop|très|une?)/") and morph(<1, ":Cc|<start>|>,")
        ->> \1-\2                                       # S’il s’agit d’un impératif, mettez un trait d’union.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4206

TEST: {{Prends le}} avec toi.
TEST: {{Dites leur}} que nous sommes là.
TEST: {{restons en}} là.
TEST: un sujet si extrêmement politique et polémique lui a donné un accès
TEST: Les États d’ores et déjà très affaiblis le seraient encore plus
15588
15589
15590
15591
15592
15593
15594
15595
15596
15597
15598












15599
15600
15601
15602
15603
15604
15605
15603
15604
15605
15606
15607
15608
15609




15610
15611
15612
15613
15614
15615
15616
15617
15618
15619
15620
15621
15622
15623
15624
15625
15626
15627
15628







-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+







    [<start>|,]  [ne|n’]  ?[en|y]¿ ?presque¿ [pas|rien|guère|point|jamais|plus]
    [<start>|,]  [ne|n’]  @:Y
    [<start>|,]  @:Y
        <<- /2>> suj_vinfi


__se_douter__
    [me|te|se]  >douter  [que|qu’]
    nous nous  >douter  [que|qu’]
    vous vous  >douter  [que|qu’]
        <<- /-1>> no_subj
    [me|te|se]  >douter
    nous nous  >douter
    vous vous  >douter
        <<- /-1>> upron


__se_vouloir__
    [me|te|se]  >vouloir
    nous nous >vouloir
    vous vous >vouloir
        <<- /-1>> upron



@@@@
@@@@
@@@@
@@@@
@@@@GRAPH: verbes2                                                                                 _
15676
15677
15678
15679
15680
15681
15682
15683





15684
15685
15686




15687
15688
15689
15690
15691
15692
15693
15699
15700
15701
15702
15703
15704
15705

15706
15707
15708
15709
15710
15711
15712
15713
15714
15715
15716
15717
15718
15719
15720
15721
15722
15723
15724







-
+
+
+
+
+



+
+
+
+







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

__infi_devoir_pouvoir_vouloir__
    [>devoir|>pouvoir|>vouloir]  ~..(?:ée?s?|ez)$
    >devoir  ~..(?:ée?s?|ez)$
        <<- /infi/ 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.

    >pouvoir  ~..(?:ée?s?|ez)$
        <<- /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.

    >vouloir  ~..(?:ée?s?|ez)$
        <<- /infi/ not tag(\1, "upron") 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.


16512
16513
16514
16515
16516
16517
16518
16519

16520
16521
16522
16523
16524
16525
16526
16543
16544
16545
16546
16547
16548
16549

16550
16551
16552
16553
16554
16555
16556
16557







-
+







# verbe que + subjonctif
__vmode_qqch_que_subjonctif1__
    [>permettre|>falloir|>vouloir|>ordonner|>exiger|>désirer|>préférer|>suffire]  [que|qu’]  @:(?:Os|M)  @:I¬:[GYS]
    [afin|avant|pour|quoi|sans]  [que|qu’]  @:(?:Os|M)  @:I¬:[GYS]
        <<- /vmode/ -4>> =suggVerbMode(\4, ":S", \3)                                                # Après “\1 que”, ce verbe devrait être au subjonctif.

    >douter  [que|qu’]  @:(?:Os|M)  @:I¬:(?:[GYSK]|If)
        <<- /vmode/ not tag(\2, "no_subj") and morph(\1, ":V", ":N")
        <<- /vmode/ not tag(\1, "upron") and morph(\1, ":V", ":N")
        -4>> =suggVerbMode(\4, ":S", \3)                                                            # Après “\1 que”, ce verbe devrait être au subjonctif.

    il est possible  [que|qu’]  @:(?:Os|M)  @:I¬:[GYS]
        <<- /vmode/ -6>> =suggVerbMode(\6, ":S", \5)                                                # Après “\1 \2 \3”, ce verbe devrait être au subjonctif.

TEST: Il suffit qu’il {{court}} plus
TEST: Je veux qu’il {{finit}} son repas.