Grammalecte  Check-in [111afef718]

Overview
Comment:[fr] ajustements
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk | fr
Files: files | file ages | folders
SHA3-256: 111afef7181517c0101b207143e1026d6dae56983071389d1ad958d385eb2b1e
User & Date: olr on 2021-02-06 01:52:57
Other Links: manifest | tags
Context
2021-02-06
18:17
[fr] ajustements check-in: 7830f4d1c0 user: olr tags: trunk, fr
01:52
[fr] ajustements check-in: 111afef718 user: olr tags: trunk, fr
2021-02-05
21:07
[build][core][lo][fx][fr] change data structure for conjugation tool check-in: a56f46447a user: olr tags: trunk, fr, core, build, major_change, fx, lo
Changes

Modified gc_lang/fr/rules.grx from [70dea3980f] to [c40affd524].

8405
8406
8407
8408
8409
8410
8411
8412

8413
8414
8415
8416
8417
8418

8419
8420
8421
8422
8423

8424
8425
8426



8427
8428
8429
8430
8431
8432
8433




8434
8435


8436
8437
8438
8439
8440
8441
8442
8405
8406
8407
8408
8409
8410
8411

8412
8413
8414
8415
8416
8417

8418
8419
8420
8421
8422

8423
8424
8425
8426
8427
8428
8429
8430
8431
8432
8433
8434
8435
8436
8437
8438
8439
8440
8441
8442
8443
8444
8445
8446
8447
8448
8449
8450
8451







-
+





-
+




-
+



+
+
+







+
+
+
+


+
+







TEST: comme des nuages ou des coteaux se reflétant dans l’eau (ligature fl)
TEST: ces hommes qui avaient abusé de lui enfant.


__conf_en_participes_présents__
    en   [ne|me|m’|te|t’|s’]  @:[123][sp]¬:[PY]
        <<- /conf/ not \1.isupper() >>>
        <<- /conf/ morph(\3, ":3p") -3>> =suggVerbTense(\3, ":P", ":P")                             && Incohérence : « en \1 \2 »… Vouliez-vous écrire le verbe au participe présent ?
        <<- /conf/ morph(\3, ":3p") -3>> =suggVerbTense(\3, ":P", ":P")                             && Incohérence : « \1 \2 \3 »… Vouliez-vous écrire le verbe au participe présent ?
        <<- /conf/ value(\2, "|m’|t’|s’|") -1:2>> "\2en "                                           && Incohérence : vouliez-vous écrire « \2en » ?
        <<- /conf/ __else__ -1:2>> =\2[0:1] + "’en"                                                 && Incohérence.

    en   se  @:[123][sp]¬:[PY]
        <<- /conf/ not \1.isupper() >>>
        <<- /conf/ morph(\3, ":3p") -3>> =suggVerbTense(\3, ":P", ":P")                             && Incohérence : « en \1 \2 »… Vouliez-vous écrire le verbe au participe présent ?
        <<- /conf/ morph(\3, ":3p") -3>> =suggVerbTense(\3, ":P", ":P")                             && Incohérence : « \1 \2 \3 »… Vouliez-vous écrire le verbe au participe présent ?
        <<- /conf/ not morph(\3, ":[NA]") -1:2>> "s’en"                                             && Incohérence : vouliez-vous écrire « s’en » ?

    en   n’  @:[123][sp]¬:[PY]
        <<- /conf/ not \1.isupper() and not value(\3, "|importe|") >>>
        <<- /conf/ morph(\3, ":3p") -3>> =suggVerbTense(\3, ":P", ":P")                             && Incohérence : « en \1 \2 »… Vouliez-vous écrire le verbe au participe présent ?
        <<- /conf/ morph(\3, ":3p") -3>> =suggVerbTense(\3, ":P", ":P")                             && Incohérence : « \1 \2 \3 »… Vouliez-vous écrire le verbe au participe présent ?
        <<- /conf/ not value(<1, "|n’|") -1:2>> "n’en "                                             && Incohérence : vouliez-vous écrire « n’en » ?
        <<- /conf/ __else__ -1:2>> "en "                                                            && Double négation : “n’” est une graphie élidée de “ne”. Il est inutile de la mettre deux fois. L’accord euphonique se fait en prononçant le “n” de “en” avec la première voyelle de “\3”.

    en [m’|t’|leur] [en|y] @[123][sp]¬:P
        <<- not \1.isupper() and not value(<1, "|l’|") --1>> =suggVerbTense(\-1, ":P", ":P")        && Incohérence : « \1 \2 \3 »… Vouliez-vous écrire le verbe au participe présent ?

TEST: {{en t’}}ait donné tant.                                              ->> "t’en "
TEST: il {{en me}} donne beaucoup.                                          ->> m’en
TEST: elle n’{{en n’}}avait plus pour longtemps.                            ->> "en "
TEST: {{en m’}}{{apportent}} des gâteaux                                    ->> m’en |||apportant
TEST: {{en se}} {{contentent}}                                              ->> s’en|||contentant
TEST: {{en n’}}{{abordent}} la côte, nous vîmes le désastre.                ->> n’en |||abordant
TEST: {{en n’}}{{envoient}} que peu.                                        ->> n’en |||envoyant
TEST: en t’y {{adonne}}                                                     ->> adonnant
TEST: avec ce qu’il y a en nous en donner serait pure folie
TEST: en vous y avait des tumeurs
TEST: des raisons de se plaindre, l’EN nous en donne souvent
TEST: en ne prenant que des talents réputés,
TEST: toute chose pourrait finalement advenir indifféremment en n’importe quel point du globe
TEST: en m’en donnant des tonnes



#### Divers
__ppas_lui_verbe__
    lui ?aussi¿ ~é(?:es?|s)$
        <<- /ppas/ morph(\-1, ":Q") and not morph(<1, ":(?:V0a|R)") --1>> =suggVerbPpas(\-1, ":m:s")+"|"+suggVerbInfi(\-1)+"|"+suggVerbTense(\-1, ":Iq", ":3s")
        && Incohérence probable. Après “lui”, il faut un participe passé masculin singulier, l’infinitif ou une forme verbale (3ᵉ personne du singulier).
18077
18078
18079
18080
18081
18082
18083

18084
18085
18086
18087
18088
18089
18090
18086
18087
18088
18089
18090
18091
18092
18093
18094
18095
18096
18097
18098
18099
18100







+







    >assistant [de|d’] gestion administrative
    >attaché [de|d’] presse
    >attaque à main armée
    >attestation sur l’ honneur
    >atteinte aux bonnes mœurs
    >auberge [de|d’] jeunesse
    >avion à [>hélice|réaction]
    >avion [de|d’] [chasse|tourisme]
    ayants droit
    >bac à légumes
    >bain [de|d’] sang
    >balle [de|d’] [tennis|ping-pong]
    >ballon [de|d’] [foot|football|rubgy]
    >banc [de|d’] touche
    >bandit [de|d’] grand chemin
18155
18156
18157
18158
18159
18160
18161

18162
18163
18164
18165
18166
18167
18168
18165
18166
18167
18168
18169
18170
18171
18172
18173
18174
18175
18176
18177
18178
18179







+







    >certificat [de|d’] scolarité ?[maternelle|primaire|secondaire]¿
    >chair à [pâté|>canon]
    >chair [de|d’] poule
    >chalet d’ alpage
    >chambre à [coucher|gaz]
    >chambre [de|d’] [agriculture|hôte|hôtel|hôtes|commerce|compensation|décompression|dégrisement]
    >champion du monde
    >chance [de|d’] [succès|réussite]
    >changement [de|d’] cap
    >chanteur [de|d’] cabaret
    >chantier [de|d’] construction
    [>chariot|>charriot] à [bagages|roulettes]
    >chasse à courre
    >chasse à l’ homme
    >chasse d’ eau
18935
18936
18937
18938
18939
18940
18941
18942

18943
18944
18945
18946
18947
18948
18949
18946
18947
18948
18949
18950
18951
18952

18953
18954
18955
18956
18957
18958
18959
18960







-
+








    une bonne chose [de|d’] réglée
        <<- ~-2:0>> *

    [le|la|l’|les]  $:N  d’ alors
        <<- ~-2:0>> *

    [>homme|>femme|>garçon|>garçonnet|>fille|>fillette|>gonzesse|>mec|>meuf|>vieillard]                 [de|d’] grand talent
    [>homme|>femme|>garçon|>garçonnet|>fille|>fillette|>gonze|>mec|>meuf|>vieillard]                    [de|d’] grand talent
    [>acteur|>architecte|>artiste|>auteur|>chef|>cinéaste|>cuisinier|>dessinateur|>écrivain|>graphiste] [de|d’] grand talent
    [>ingénieur|>joueur|>musicien|>peintre|>photographe|>réalisateur]                                   [de|d’] grand talent
        <<- ~2:0>> *


__purge_syntagmes_nominaux_matière__
    *WORD  en  acier  ?[galvanisé|inoxydable|trempé]¿       ?[clair|foncé|rouge|vert|brun|marron|jaune|orange|bleu|gris|rose|noir|blanc]¿
25733
25734
25735
25736
25737
25738
25739
25740

25741
25742
25743
25744
25745
25746
25747
25748




25749
25750
25751

25752
25753
25754
25755
25756

25757
25758
25759
25760
25761
25762


25763
25764
25765
25766
25767
25768
25769
25744
25745
25746
25747
25748
25749
25750

25751
25752
25753
25754
25755




25756
25757
25758
25759
25760
25761

25762
25763
25764
25765
25766

25767
25768
25769
25770
25771


25772
25773
25774
25775
25776
25777
25778
25779
25780







-
+




-
-
-
-
+
+
+
+


-
+




-
+




-
-
+
+








!!
!!
!!!! Groupe nominal: Accords avec de / des / du                                                   !!
!!
!!

__gn_devinette__
__gn_det_nom_de_det_nom_adj__
    [la|ma|ta|sa|une|cette]  *WORD  [de|d’]  [la|ma|ta|sa|cette|une]  *WORD  *WORD
        <<- /gn/ morph(\6, ":[NA].*:(?:m|f:p)", ":(?:G|P|[fe]:[is]|V0|3[sp])") and morph(\5, ":[NA].*:[fe]") and not apposition(\5, \6)
        -6>> =suggFemSing(\6, True)                                                         && Accord erroné : « \6 » devrait être au féminin singulier.

    [le|un|ce|cet]  *WORD  [de|d’]  [ce|cet|un]  (*WORD)  (*WORD)
    [le|un|ce|cet]  *WORD  du  (*WORD)  (*WORD)
        <<- /gn/ morph(\2, ":[NA].*:(?:f|m:p)", ":(?:G|P|[me]:[is]|V0|3[sp])") and morph(\1, ":[NA].*:[me]") and not apposition(\1, \2)
        -2>> =suggMasSing(\2, True)                                                         && Accord erroné : « \2 » devrait être au masculin singulier.
    [le|un|ce|cet]  *WORD  [de|d’]  [ce|cet|un]  *WORD  *WORD
    [le|un|ce|cet]  *WORD  du  *WORD  *WORD
        <<- /gn/ morph(\-1, ":[NA].*:(?:f|m:p)", ":(?:G|P|[me]:[is]|V0|3[sp])") and morph(\-2, ":[NA].*:[me]") and not apposition(\-2, \-1)
        --1>> =suggMasSing(\-1, True)                                                       && Accord erroné : « \-1 » devrait être au masculin singulier.

    [le|un|ce|cet]  *WORD  de  [mon|ton|son]  *WORD  *WORD
        <<- /gn/ morph(\5, ":", ":[NA].*:f|>[aéeiou].*:e") and morph(\6, ":[NA].*:(?:f|m:p)", ":(?:G|P|m:[is]|V0|3[sp])") and not apposition(\5, \6)
        <<- /gn/ morph(\5, ":", ":[NA].*:f|>[aâeéèêiîou].*:e") and morph(\6, ":[NA].*:(?:f|m:p)", ":(?:G|P|m:[is]|V0|3[sp])") and not apposition(\5, \6)
        -6>> =suggMasSing(\6, True)                                                         && Accord erroné : « \6 » devrait être au masculin singulier.

    [mon|ton|son]  *WORD  [de|d’]  [ce|cet|un]  *WORD  *WORD
    [mon|ton|son]  *WORD  du  *WORD  *WORD
        <<- /gn/ morph(\2, ":[NA].*:m", ":G|>[aéeiou].*:[ef]")
        <<- /gn/ morph(\2, ":[NA].*:m", ":G|>[aâeéèêiîou].*:[ef]")
            and morph(\-1, ":[NA].*:(?:f|m:p)", ":(?:G|P|[me]:[is]|V0|3[sp])") and not apposition(\-2, \-1)
        --1>> =suggMasSing(\-1, True)                                                       && Accord erroné : « \-1 » devrait être au masculin singulier.

    [mon|ton|son]  *WORD  de [mon|ton|son]  *WORD  *WORD
        <<- /gn/ morph(\2, ":[NA].*:m", ":G|>[aéeiou].*:[ef]")
            and not morph(\-2, ":[NA].*:f|>[aéeiou].*:e") and morph(\-1, ":[NA].*:(?:f|m:p)", ":(?:G|P|[me]:[is]|V0|3[sp])") and not apposition(\-2, \-1)
        <<- /gn/ morph(\2, ":[NA].*:m", ":G|>[aâeéèêiîou].*:[ef]")
            and not morph(\-2, ":[NA].*:f|>[aâeéèêiîou].*:e") and morph(\-1, ":[NA].*:(?:f|m:p)", ":(?:G|P|[me]:[is]|V0|3[sp])") and not apposition(\-2, \-1)
        --1>> =suggMasSing(\-1, True)                                                       && Accord erroné : « \-1 » devrait être au masculin singulier.

    [les|ces|mes|tes|ses|nos|vos|leurs|quelques]  *WORD  de [ces|mes|tes|ses|nos|vos|leurs]  *WORD  *WORD
    [les|ces|mes|tes|ses|nos|vos|leurs|quelques]  *WORD  des  *WORD  *WORD
        <<- /gn/ morph(\-1, ":[NA].*:s", ":(?:G|P|[me]:[ip]|V0|3[sp])") and morph(\-2, ":[NA].*:[pi]") and not apposition(\-2, \-1)
            and not (value(>1, "|et|ou|") and morph(>2, ":A.*:[si]"))
        --1>> =suggPlur(\-1)                                                                && Accord erroné : « \-1 » devrait être au pluriel.
27071
27072
27073
27074
27075
27076
27077
27078
27079
27080
27081




27082
27083
27084


27085
27086
27087


27088
27089
27090


27091
27092
27093


27094
27095
27096


27097
27098
27099


27100
27101
27102


27103
27104
27105


27106
27107
27108


27109
27110
27111


27112
27113
27114


27115
27116
27117


27118
27119
27120


27121
27122
27123


27124
27125
27126


27127



27128
27129


27130
27131
27132


27133
27134
27135


27136
27137
27138


27139
27140
27141


27142
27143
27144


27145
27146
27147


27148
27149
27150


27151
27152
27153


27154
27155
27156


27157
27158
27159


27160
27161
27162
27163



27164
27165
27166
27167



27168
27169
27170


27171
27172
27173


27174
27175
27176
27177


27178
27179
27180


27181
27182
27183


27184
27185
27186


27187
27188
27189


27190
27191
27192


27193
27194
27195


27196
27197
27198
27199


27200
27201
27202


27203
27204
27205


27206
27207
27208


27209
27210
27211
27212
27213
27214
27215
27216
27217

27218
27219
27220
27221
27222
27223
27224
27082
27083
27084
27085
27086
27087
27088




27089
27090
27091
27092
27093


27094
27095
27096


27097
27098
27099


27100
27101
27102


27103
27104
27105


27106
27107
27108


27109
27110
27111


27112
27113
27114


27115
27116
27117


27118
27119
27120


27121
27122
27123


27124
27125
27126


27127
27128
27129


27130
27131
27132


27133
27134
27135


27136
27137
27138
27139
27140
27141


27142
27143
27144


27145
27146
27147


27148
27149
27150


27151
27152
27153


27154
27155
27156


27157
27158
27159


27160
27161
27162


27163
27164
27165


27166
27167
27168


27169
27170
27171


27172
27173
27174



27175
27176
27177
27178



27179
27180
27181
27182


27183
27184
27185


27186
27187
27188
27189


27190
27191
27192


27193
27194
27195


27196
27197
27198


27199
27200
27201


27202
27203
27204


27205
27206
27207


27208
27209
27210
27211


27212
27213
27214


27215
27216
27217


27218
27219
27220


27221
27222
27223
27224
27225
27226
27227
27228
27229
27230
27231
27232
27233
27234
27235
27236
27237
27238
27239







-
-
-
-
+
+
+
+

-
-
+
+

-
-
+
+

-
-
+
+

-
-
+
+

-
-
+
+

-
-
+
+

-
-
+
+

-
-
+
+

-
-
+
+

-
-
+
+

-
-
+
+

-
-
+
+

-
-
+
+

-
-
+
+

-
-
+
+

+
+
+
-
-
+
+

-
-
+
+

-
-
+
+

-
-
+
+

-
-
+
+

-
-
+
+

-
-
+
+

-
-
+
+

-
-
+
+

-
-
+
+

-
-
+
+

-
-
-
+
+
+

-
-
-
+
+
+

-
-
+
+

-
-
+
+


-
-
+
+

-
-
+
+

-
-
+
+

-
-
+
+

-
-
+
+

-
-
+
+

-
-
+
+


-
-
+
+

-
-
+
+

-
-
+
+

-
-
+
+









+







TEST: il suffit de {{mangé}} sain pour aller mieux.                                         ->> manger
TEST: il ne suffit pas de pensées positives pour calmer son anxiété.
TEST: il suffit de cela.
TEST: il suffit de le lire.


__infi_qqch_de__
    afin                                        [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..ée?s?$
    avant ?même¿                                [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..ée?s?$
    marre                                       [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..ée?s?$
        <<- /infi/ morph0(\-1, ":Q", ":M") --1>> =suggVerbInfi(\-1)                                 && Après “\1 de”, le verbe devrait être à l’infinitif.
    afin                                        [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..(?:ée?s?|ez)$
    avant ?même¿                                [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..(?:ée?s?|ez)$
    marre                                       [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..(?:ée?s?|ez)$
        <<- /infi/ morph0(\-1, ":(?:Q|2p)", ":M") --1>> =suggVerbInfi(\-1)                          && Après “\1 de”, le verbe devrait être à l’infinitif.

    à [condition|défaut|dessein|fin|force|même] [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..ée?s?$
        <<- /infi/ morph0(\-1, ":Q", ":M") --1>> =suggVerbInfi(\-1)                                 && Après “à \2 de”, le verbe devrait être à l’infinitif.
    à [condition|défaut|dessein|fin|force|même] [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..(?:ée?s?|ez)$
        <<- /infi/ morph0(\-1, ":(?:Q|2p)", ":M") --1>> =suggVerbInfi(\-1)                          && Après “à \2 de”, le verbe devrait être à l’infinitif.

    à deux doigts                               [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..ée?s?$
        <<- /infi/ morph0(\-1, ":Q", ":M") --1>> =suggVerbInfi(\-1)                                 && Après “à deux doigts de”, le verbe devrait être à l’infinitif.
    à deux doigts                               [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..(?:ée?s?|ez)$
        <<- /infi/ morph0(\-1, ":(?:Q|2p)", ":M") --1>> =suggVerbInfi(\-1)                          && Après “à deux doigts de”, le verbe devrait être à l’infinitif.

    à >seul >fin                                [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..ée?s?$
        <<- /infi/ morph0(\-1, ":Q", ":M") --1>> =suggVerbInfi(\-1)                                 && Après “à seule fin de”, le verbe devrait être à l’infinitif.
    à >seul >fin                                [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..(?:ée?s?|ez)$
        <<- /infi/ morph0(\-1, ":(?:Q|2p)", ":M") --1>> =suggVerbInfi(\-1)                          && Après “à seule fin de”, le verbe devrait être à l’infinitif.

    au␣lieu                                     [de|d’]  ?[le|les|nous|vous|lui]¿  ~..ée?s?$
        <<- /infi/ morph0(\-1, ":Q", ":M") --1>> =suggVerbInfi(\-1)                                 && Après “au lieu de”, le verbe devrait être à l’infinitif.
    au␣lieu                                     [de|d’]  ?[le|les|nous|vous|lui]¿             ~..(?:ée?s?|ez)$
        <<- /infi/ morph0(\-1, ":(?:Q|2p)", ":M") --1>> =suggVerbInfi(\-1)                          && Après “au lieu de”, le verbe devrait être à l’infinitif.

    au␣lieu                                     [de|d’]  [l’|la|leur]              ~..ée?s?$
        <<- /infi/ morph0(\-1, ":Q", ":[MN]") --1>> =suggVerbInfi(\-1)                              && Après “au lieu de”, le verbe devrait être à l’infinitif.
    au␣lieu                                     [de|d’]  [l’|la|leur]                         ~..(?:ée?s?|ez)$
        <<- /infi/ morph0(\-1, ":(?:Q|2p)", ":[MN]") --1>> =suggVerbInfi(\-1)                       && Après “au lieu de”, le verbe devrait être à l’infinitif.

    >avoir l’ air                               [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..ée?s?$
        <<- /infi/ morph0(\-1, ":Q", ":M") --1>> =suggVerbInfi(\-1)                                 && Après “avoir l’air de”, le verbe devrait être à l’infinitif.
    >avoir l’ air                               [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..(?:ée?s?|ez)$
        <<- /infi/ morph0(\-1, ":(?:Q|2p)", ":M") --1>> =suggVerbInfi(\-1)                          && Après “avoir l’air de”, le verbe devrait être à l’infinitif.

    >avoir la chance                            [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..ée?s?$
        <<- /infi/ morph0(\-1, ":Q", ":M") --1>> =suggVerbInfi(\-1)                                 && Après “avoir la chance de”, le verbe devrait être à l’infinitif.
    >avoir la chance                            [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..(?:ée?s?|ez)$
        <<- /infi/ morph0(\-1, ":(?:Q|2p)", ":M") --1>> =suggVerbInfi(\-1)                          && Après “avoir la chance de”, le verbe devrait être à l’infinitif.

    >avoir le droit                             [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..ée?s?$
        <<- /infi/ morph0(\-1, ":Q", ":M") --1>> =suggVerbInfi(\-1)                                 && Après “avoir le droit de”, le verbe devrait être à l’infinitif.
    >avoir le droit                             [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..(?:ée?s?|ez)$
        <<- /infi/ morph0(\-1, ":(?:Q|2p)", ":M") --1>> =suggVerbInfi(\-1)                          && Après “avoir le droit de”, le verbe devrait être à l’infinitif.

    >avoir ?toute¿ hâte                         [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..ée?s?$
        <<- /infi/ morph0(\-1, ":Q", ":M") --1>> =suggVerbInfi(\-1)                                 && Après “avoir hâte de”, le verbe devrait être à l’infinitif.
    >avoir ?toute¿ hâte                         [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..(?:ée?s?|ez)$
        <<- /infi/ morph0(\-1, ":(?:Q|2p)", ":M") --1>> =suggVerbInfi(\-1)                          && Après “avoir hâte de”, le verbe devrait être à l’infinitif.

    >avoir ?tout¿ lieu                          [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..ée?s?$
        <<- /infi/ morph0(\-1, ":Q", ":M") --1>> =suggVerbInfi(\-1)                                 && Après “avoir lieu de”, le verbe devrait être à l’infinitif.
    >avoir ?tout¿ lieu                          [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..(?:ée?s?|ez)$
        <<- /infi/ morph0(\-1, ":(?:Q|2p)", ":M") --1>> =suggVerbInfi(\-1)                          && Après “avoir lieu de”, le verbe devrait être à l’infinitif.

    >avoir ?tout¿ loisir                        [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..ée?s?$
        <<- /infi/ morph0(\-1, ":Q", ":M") --1>> =suggVerbInfi(\-1)                                 && Après “avoir loisir de”, le verbe devrait être à l’infinitif.
    >avoir ?tout¿ loisir                        [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..(?:ée?s?|ez)$
        <<- /infi/ morph0(\-1, ":(?:Q|2p)", ":M") --1>> =suggVerbInfi(\-1)                          && Après “avoir loisir de”, le verbe devrait être à l’infinitif.

    >avoir tôt fait                             [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..ée?s?$
        <<- /infi/ morph0(\-1, ":Q", ":M") --1>> =suggVerbInfi(\-1)                                 && Après “avoir tôt fait de”, le verbe devrait être à l’infinitif.|https://fr.wiktionary.org/wiki/avoir_t%C3%B4t_fait_de
    >avoir tôt fait                             [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..(?:ée?s?|ez)$
        <<- /infi/ morph0(\-1, ":(?:Q|2p)", ":M") --1>> =suggVerbInfi(\-1)                          && Après “avoir tôt fait de”, le verbe devrait être à l’infinitif.|https://fr.wiktionary.org/wiki/avoir_t%C3%B4t_fait_de

    >avoir besoin                               [de|d’]  [le|les|nous|vous|lui]    ~..ée?s?$
        <<- /infi/ morph0(\-1, ":Q", ":M") --1>> =suggVerbInfi(\-1)                                 && Après “avoir besoin de”, le verbe devrait être à l’infinitif.
    >avoir besoin                               [de|d’]  [le|les|nous|vous|lui]               ~..(?:ée?s?|ez)$
        <<- /infi/ morph0(\-1, ":(?:Q|2p)", ":M") --1>> =suggVerbInfi(\-1)                          && Après “avoir besoin de”, le verbe devrait être à l’infinitif.

    >avoir besoin                               [de|d’]  ?[l’|la|leur]¿            ~..ée?s?$
        <<- /infi/ morph0(\-1, ":Q", ":[MN]") --1>> =suggVerbInfi(\-1)                              && Après “avoir besoin de”, le verbe devrait être à l’infinitif.
    >avoir besoin                               [de|d’]  ?[l’|la|leur]¿                       ~..(?:ée?s?|ez)$
        <<- /infi/ morph0(\-1, ":(?:Q|2p)", ":[MN]") --1>> =suggVerbInfi(\-1)                       && Après “avoir besoin de”, le verbe devrait être à l’infinitif.

    >avoir d’ >autre choix [que|qu’]            ?[de|d’]¿  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..ée?s?$
        <<- /infi/ morph0(\-1, ":Q", ":M") --1>> =suggVerbInfi(\-1)                                 && Après “avoir d’autre choix que”, le verbe devrait être à l’infinitif.
    >avoir coutume                              [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..(?:ée?s?|ez)$
        <<- /infi/ morph0(\-1, ":(?:Q|2p)", ":M") --1>> =suggVerbInfi(\-1)                          && Après “avoir coutume de”, le verbe devrait être à l’infinitif.

    >avoir d’ >autre choix [que|qu’]            ?[de|d’]¿  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..(?:ée?s?|ez)$
        <<- /infi/ morph0(\-1, ":(?:Q|2p)", ":M") --1>> =suggVerbInfi(\-1)                          && Après “avoir d’autre choix que”, le verbe devrait être à l’infinitif.

    >avoir la présence d’ esprit                [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..ée?s?$
        <<- /infi/ morph0(\-1, ":Q", ":M") --1>> =suggVerbInfi(\-1)                                 && Après “avoir vite fait de”, le verbe devrait être à l’infinitif.
    >avoir la présence d’ esprit                [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..(?:ée?s?|ez)$
        <<- /infi/ morph0(\-1, ":(?:Q|2p)", ":M") --1>> =suggVerbInfi(\-1)                          && Après “avoir vite fait de”, le verbe devrait être à l’infinitif.

    >avoir [peur|raison]                        [de|d’]  ?[le|les|nous|vous|lui]¿  ~..ée?s?$
        <<- /infi/ morph0(\-1, ":Q", ":M") --1>> =suggVerbInfi(\-1)                                 && Après “avoir \2 de”, le verbe devrait être à l’infinitif.
    >avoir [peur|raison]                        [de|d’]  ?[le|les|nous|vous|lui]¿             ~..(?:ée?s?|ez)$
        <<- /infi/ morph0(\-1, ":(?:Q|2p)", ":M") --1>> =suggVerbInfi(\-1)                          && Après “avoir \2 de”, le verbe devrait être à l’infinitif.

    >avoir [peur|raison]                        [de|d’]  [l’|la|leur]              ~..ée?s?$
        <<- /infi/ morph0(\-1, ":Q", ":[MN]") --1>> =suggVerbInfi(\-1)                              && Après “avoir \2 de”, le verbe devrait être à l’infinitif.
    >avoir [peur|raison]                        [de|d’]  [l’|la|leur]                         ~..(?:ée?s?|ez)$
        <<- /infi/ morph0(\-1, ":(?:Q|2p)", ":[MN]") --1>> =suggVerbInfi(\-1)                       && Après “avoir \2 de”, le verbe devrait être à l’infinitif.

    point [ne|n’] >être besoin                  [de|d’]  ?[le|les|nous|vous|lui]¿  ~..ée?s?$
        <<- /infi/ morph0(\-1, ":Q", ":M") --1>> =suggVerbInfi(\-1)                                 && Après “point n’est besoin de”, le verbe devrait être à l’infinitif.
    point [ne|n’] >être besoin                  [de|d’]  ?[le|les|nous|vous|lui]¿             ~..(?:ée?s?|ez)$
        <<- /infi/ morph0(\-1, ":(?:Q|2p)", ":M") --1>> =suggVerbInfi(\-1)                          && Après “point n’est besoin de”, le verbe devrait être à l’infinitif.

    point [ne|n’] >être besoin                  [de|d’]  [l’|la|leur]              ~..ée?s?$
        <<- /infi/ morph0(\-1, ":Q", ":[MN]") --1>> =suggVerbInfi(\-1)                              && Après “point n’est besoin de”, le verbe devrait être à l’infinitif.
    point [ne|n’] >être besoin                  [de|d’]  [l’|la|leur]                         ~..(?:ée?s?|ez)$
        <<- /infi/ morph0(\-1, ":(?:Q|2p)", ":[MN]") --1>> =suggVerbInfi(\-1)                       && Après “point n’est besoin de”, le verbe devrait être à l’infinitif.

    >avoir vite fait                            [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..ée?s?$
        <<- /infi/ morph0(\-1, ":Q", ":M") --1>> =suggVerbInfi(\-1)                                 && Après “avoir vite fait de”, le verbe devrait être à l’infinitif.
    >avoir vite fait                            [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..(?:ée?s?|ez)$
        <<- /infi/ morph0(\-1, ":(?:Q|2p)", ":M") --1>> =suggVerbInfi(\-1)                          && Après “avoir vite fait de”, le verbe devrait être à l’infinitif.

    n’ >avoir de cesse                          [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..ée?s?$
        <<- /infi/ morph0(\-1, ":Q", ":M") --1>> =suggVerbInfi(\-1)                                 && Après “n’avoir de cesse de”, le verbe devrait être à l’infinitif.|https://fr.wiktionary.org/wiki/n%E2%80%99avoir_de_cesse
    n’ >avoir de cesse                          [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..(?:ée?s?|ez)$
        <<- /infi/ morph0(\-1, ":(?:Q|2p)", ":M") --1>> =suggVerbInfi(\-1)                          && Après “n’avoir de cesse de”, le verbe devrait être à l’infinitif.|https://fr.wiktionary.org/wiki/n%E2%80%99avoir_de_cesse

    [de|d’]  crainte                            [de|d’]  ?[le|les|nous|vous|lui]¿  ~..ée?s?$
        <<- /infi/ morph0(\-1, ":Q", ":M") --1>> =suggVerbInfi(\-1)                                 && Après “de crainte de”, le verbe devrait être à l’infinitif.
    [de|d’]  crainte                            [de|d’]  ?[le|les|nous|vous|lui]¿             ~..(?:ée?s?|ez)$
        <<- /infi/ morph0(\-1, ":(?:Q|2p)", ":M") --1>> =suggVerbInfi(\-1)                          && Après “de crainte de”, le verbe devrait être à l’infinitif.

    [de|d’]  crainte                            [de|d’]  [l’|la|leur]              ~..ée?s?$
        <<- /infi/ morph0(\-1, ":Q", ":[MN]") --1>> =suggVerbInfi(\-1)                              && Après “de crainte de”, le verbe devrait être à l’infinitif.
    [de|d’]  crainte                            [de|d’]  [l’|la|leur]                         ~..(?:ée?s?|ez)$
        <<- /infi/ morph0(\-1, ":(?:Q|2p)", ":[MN]") --1>> =suggVerbInfi(\-1)                       && Après “de crainte de”, le verbe devrait être à l’infinitif.

    en  [droit|état|mesure|train|vue]           [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..ée?s?$
        <<- /infi/ morph0(\-1, ":Q", ":M") --1>> =suggVerbInfi(\-1)                                 && Après “\1 \2 de”, le verbe devrait être à l’infinitif.
    en  [droit|état|mesure|train|vue]           [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..(?:ée?s?|ez)$
        <<- /infi/ morph0(\-1, ":(?:Q|2p)", ":M") --1>> =suggVerbInfi(\-1)                          && Après “\1 \2 de”, le verbe devrait être à l’infinitif.

    >faire  [exprès|semblant|mine]              [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..ée?s?$
        <<- /infi/ morph0(\-1, ":Q", ":M") --1>> =suggVerbInfi(\-1)                                 && Après “faire \2 de”, le verbe devrait être à l’infinitif.
    >faire  [exprès|semblant|mine]              [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..(?:ée?s?|ez)$
        <<- /infi/ morph0(\-1, ":(?:Q|2p)", ":M") --1>> =suggVerbInfi(\-1)                          && Après “faire \2 de”, le verbe devrait être à l’infinitif.

    >faire  fort                                [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..ée?s?$
        <<- /infi/ morph0(\-1, ":Q", ":M") and (value(<1, "|me|m’|te|t’|se|s’|") or (value(<1, "|nous|") and value(<2, "|nous|")) or (value(<1, "|vous|") and value(<2, "|vous|")))
        --1>> =suggVerbInfi(\-1)                                                                     && Après “se faire fort de”, le verbe devrait être à l’infinitif.
    >faire  fort                                [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..(?:ée?s?|ez)$
        <<- /infi/ morph0(\-1, ":(?:Q|2p)", ":M") and (value(<1, "|me|m’|te|t’|se|s’|") or (value(<1, "|nous|") and value(<2, "|nous|")) or (value(<1, "|vous|") and value(<2, "|vous|")))
        --1>> =suggVerbInfi(\-1)                                                                    && Après “se faire fort de”, le verbe devrait être à l’infinitif.

    [>façon|>manière]                           [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..ée?s?$
    [>intention|>volonté]                       [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..ée?s?$
        <<- /infi/ morph0(\-1, ":Q", ":M") --1>> =suggVerbInfi(\-1)                                 && Après “\1 de”, le verbe devrait être à l’infinitif s’il s’agit bien de décrire une action.
    [>façon|>manière]                           [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..(?:ée?s?|ez)$
    [>intention|>volonté]                       [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..(?:ée?s?|ez)$
        <<- /infi/ morph0(\-1, ":(?:Q|2p)", ":M") --1>> =suggVerbInfi(\-1)                          && Après “\1 de”, le verbe devrait être à l’infinitif s’il s’agit bien de décrire une action.

    hors d’ état                                [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..ée?s?$
        <<- /infi/ morph0(\-1, ":Q", ":M") --1>> =suggVerbInfi(\-1)                                 && Après “hors d’état de”, le verbe devrait être à l’infinitif.
    hors d’ état                                [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..(?:ée?s?|ez)$
        <<- /infi/ morph0(\-1, ":(?:Q|2p)", ":M") --1>> =suggVerbInfi(\-1)                          && Après “hors d’état de”, le verbe devrait être à l’infinitif.

    hors de question                            [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..ée?s?$
        <<- /infi/ morph0(\-1, ":Q", ":M") --1>> =suggVerbInfi(\-1)                                 && Après “hors de question de”, le verbe devrait être à l’infinitif.
    hors de question                            [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..(?:ée?s?|ez)$
        <<- /infi/ morph0(\-1, ":(?:Q|2p)", ":M") --1>> =suggVerbInfi(\-1)                          && Après “hors de question de”, le verbe devrait être à l’infinitif.

    il >être [temps|admissible|inadmissible|absurde|contraignant|libérateur|difficile|facile|impossible|indispensable|nécessaire|possible|utile|inutile]
        || [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..ée?s?$
        <<- /infi/ morph0(\-1, ":Q", ":M") --1>> =suggVerbInfi(\-1)                                 && Après “il est \3 de”, le verbe devrait être à l’infinitif.
        || [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿                                       ~..(?:ée?s?|ez)$
        <<- /infi/ morph0(\-1, ":(?:Q|2p)", ":M") --1>> =suggVerbInfi(\-1)                          && Après “il est \3 de”, le verbe devrait être à l’infinitif.

    il ?n’¿ >être question                      [de|d’]  ?[le|les|nous|vous|lui]¿  ~..ée?s?$
        <<- /infi/ morph0(\-1, ":Q", ":M") --1>> =suggVerbInfi(\-1)                                 && Après “il (n’)est (pas) question de”, le verbe devrait être à l’infinitif.
    il ?n’¿ >être question                      [de|d’]  ?[le|les|nous|vous|lui]¿             ~..(?:ée?s?|ez)$
        <<- /infi/ morph0(\-1, ":(?:Q|2p)", ":M") --1>> =suggVerbInfi(\-1)                          && Après “il (n’)est (pas) question de”, le verbe devrait être à l’infinitif.

    il ?n’¿ >être question                      [de|d’]  [l’|la|leur]              ~..ée?s?$
        <<- /infi/ morph0(\-1, ":Q", ":[MN]") --1>> =suggVerbInfi(\-1)                              && Après “il (n’)est (pas) question de”, le verbe devrait être à l’infinitif.
    il ?n’¿ >être question                      [de|d’]  [l’|la|leur]                         ~..(?:ée?s?|ez)$
        <<- /infi/ morph0(\-1, ":(?:Q|2p)", ":[MN]") --1>> =suggVerbInfi(\-1)                       && Après “il (n’)est (pas) question de”, le verbe devrait être à l’infinitif.

    pas question                                [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..ée?s?$
        <<- /infi/ morph0(\-1, ":Q", ":M") --1>> =suggVerbInfi(\-1)                                 && Après “pas question de”, le verbe devrait être à l’infinitif.
    pas question                                [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..(?:ée?s?|ez)$
        <<- /infi/ morph0(\-1, ":(?:Q|2p)", ":M") --1>> =suggVerbInfi(\-1)                          && Après “pas question de”, le verbe devrait être à l’infinitif.

    [<start>|,|(] [>capable|>incapable|impossible|inutile|>libre]  [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..ée?s?$
        <<- /infi/ morph0(\-1, ":Q", ":M") --1>> =suggVerbInfi(\-1)                                 && Après “\2 de”, le verbe devrait être à l’infinitif.
    [<start>|,|(] [>capable|>incapable|impossible|inutile|>libre]  [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..(?:ée?s?|ez)$
        <<- /infi/ morph0(\-1, ":(?:Q|2p)", ":M") --1>> =suggVerbInfi(\-1)                          && Après “\2 de”, le verbe devrait être à l’infinitif.

    [<start>|,|(] >libre  à [moi|toi|lui|elle|soi|nous|vous|eux|elles]  [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..ée?s?$
        <<- /infi/ morph0(\-1, ":Q", ":M") --1>> =suggVerbInfi(\-1)                                 && Après “\2 de”, le verbe devrait être à l’infinitif.
    [<start>|,|(] >libre  à [moi|toi|lui|elle|iel|soi|nous|vous|eux|elles|iels]  [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..(?:ée?s?|ez)$
        <<- /infi/ morph0(\-1, ":(?:Q|2p)", ":M") --1>> =suggVerbInfi(\-1)                          && Après “\2 de”, le verbe devrait être à l’infinitif.

    force [est|était|fut|serait|sera]           [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..ée?s?$
        <<- /infi/ not value(<1, "|une|la|cette|ma|ta|sa|notre|votre|leur|quelle|de|d’|") and morph0(\-1, ":Q", ":M")
    force [est|était|fut|serait|sera]           [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..(?:ée?s?|ez)$
        <<- /infi/ not value(<1, "|une|la|cette|ma|ta|sa|notre|votre|leur|quelle|de|d’|") and morph0(\-1, ":(?:Q|2p)", ":M")
        --1>> =suggVerbInfi(\-1)                                                                    && Après “force est de”, le verbe devrait être à l’infinitif.

    non >content                                [de|d’]  ?[le|les|nous|vous|lui]¿  ~..ée?s?$
        <<- /infi/ morph0(\-1, ":Q", ":M") --1>> =suggVerbInfi(\-1)                                 && Après “non content de”, le verbe devrait être à l’infinitif.
    non >content                                [de|d’]  ?[le|les|nous|vous|lui]¿             ~..(?:ée?s?|ez)$
        <<- /infi/ morph0(\-1, ":(?:Q|2p)", ":M") --1>> =suggVerbInfi(\-1)                          && Après “non content de”, le verbe devrait être à l’infinitif.

    non >content                                [de|d’]  [l’|la|leur]              ~..ée?s?$
        <<- /infi/ morph0(\-1, ":Q", ":[MN]") --1>> =suggVerbInfi(\-1)                              && Après “non content de”, le verbe devrait être à l’infinitif.
    non >content                                [de|d’]  [l’|la|leur]                         ~..(?:ée?s?|ez)$
        <<- /infi/ morph0(\-1, ":(?:Q|2p)", ":[MN]") --1>> =suggVerbInfi(\-1)                       && Après “non content de”, le verbe devrait être à l’infinitif.

    >prendre garde                              [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..ée?s?$
        <<- /infi/ morph0(\-1, ":Q", ":M") --1>> =suggVerbInfi(\-1)                                 && Après “prendre garde de”, le verbe devrait être à l’infinitif.
    >prendre garde                              [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..(?:ée?s?|ez)$
        <<- /infi/ morph0(\-1, ":(?:Q|2p)", ":M") --1>> =suggVerbInfi(\-1)                          && Après “prendre garde de”, le verbe devrait être à l’infinitif.

    sous peine                                  [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..ée?s?$
        <<- /infi/ morph0(\-1, ":Q", ":M") --1>> =suggVerbInfi(\-1)                                 && Après “sous peine de”, le verbe devrait être à l’infinitif.
    sous peine                                  [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..(?:ée?s?|ez)$
        <<- /infi/ morph0(\-1, ":(?:Q|2p)", ":M") --1>> =suggVerbInfi(\-1)                          && Après “sous peine de”, le verbe devrait être à l’infinitif.

TEST: à deux doigts de la {{dénoncée}} aux autorités                                                ->> dénoncer
TEST: afin de leur {{percée}} une ouverture                                                         ->> percer
TEST: en train de {{percées}}                                                                       ->> percer
TEST: au lieu de la {{travaillée}}, elle restait les bras ballants                                  ->> travailler
TEST: au lieu de nous {{données}} du travail, il bavassait sans cesse                               ->> donner
TEST: elle tricha à seule fin d’{{allée}} à l’université                                            ->> aller
TEST: ils sont à même de {{trouvé}} la bonne réponse                                                ->> trouver
TEST: ces explications sont plus à même de les {{touchés}}                                          ->> toucher
TEST: nous avions coutume de la {{suppliée}}                                                        ->> supplier
TEST: Nous étions en train de {{trouvé}} une solution à ces soucis récurrents.                      ->> trouver
TEST: il a l’air de {{pensée}} qu’on est des crétins                                                ->> penser
TEST: tu avais raison de {{pensée}} ça                                                              ->> penser
TEST: point n’était besoin de {{données}} sans cesse des nouvelles                                  ->> donner
TEST: avoir besoin de nous {{donné}} du temps                                                       ->> donner
TEST: avoir besoin de la {{trouvée}} vite                                                           ->> trouver
TEST: je n’ai pas d’autre choix que de leur {{donnée}} raison                                       ->> donner