Grammalecte  Check-in [b53e5995ba]

Overview
Comment:[fr] faux positif et ajustements
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk | fr
Files: files | file ages | folders
SHA3-256: b53e5995ba29f9bce0e5249f2b18dc75996ca48c6dbe510438ac1828af7ab216
User & Date: olr on 2020-10-02 15:41:04
Other Links: manifest | tags
Context
2020-10-02
15:41
[graphspell][fr] lexicographer: update tags check-in: 0ecad478b9 user: olr tags: trunk, fr, graphspell
15:41
[fr] faux positif et ajustements check-in: b53e5995ba user: olr tags: trunk, fr
10:16
[fr] faux positif check-in: 5b778ceb26 user: olr tags: trunk, fr
Changes

Modified gc_lang/fr/rules.grx from [e7a8c94fba] to [6ba2b8ca45].

1677
1678
1679
1680
1681
1682
1683
1684

1685
1686
1687
1688
1689
1690
1691
1677
1678
1679
1680
1681
1682
1683

1684
1685
1686
1687
1688
1689
1690
1691







-
+










@@@@
@@@@
@@@@
@@@@
@@@@GRAPH: graphe0|g0                                                                       _
@@@@GRAPH: graphe0|g0                                                                              _
@@@@
@@@@
@@@@
@@@@

!!!
!!!
2014
2015
2016
2017
2018
2019
2020
2021

2022
2023
2024

2025
2026
2027
2028
2029
2030
2031
2014
2015
2016
2017
2018
2019
2020

2021
2022
2023

2024
2025
2026
2027
2028
2029
2030
2031







-
+


-
+







        <<- morph(<1, ":A.*:[me]:[si]") =>> add_morph(\1, ">nombre/:G:D")
        <<- __else__ =>> define(\1, ">nombre/:G:D")

    par  *WORD
        <<- =>> exclude(\2, ":[123][sp]")

    plein  [de|d’]  @:[AN]
        <<- not morph(<1, ":D.*:m|>(?:être|(?:re|)devenir|rester|demeurer|sembler|para[iî]tre)/") =>> =define(\1, ":G")
        <<- not morph(<1, ":(?:D.*:m|V[0-3]e)") =>> =define(\1, ":G")

    source [de|d’]
        <<- morph(<1, ">(?:être|(?:re|)devenir|rester|demeurer|sembler|para[iî]tre)/") =>> define(\1, ":LV")
        <<- morph(<1, ":V[0-3]e") =>> define(\1, ":ÉV")

    très  *WORD
        <<- =>> exclude(\2, ":[123][sp]")


__da_groupe_nominal__cas_particuliers__
    [au|aux] alentour
2039
2040
2041
2042
2043
2044
2045
2046

2047
2048
2049
2050

2051
2052
2053
2054
2055
2056
2057
2039
2040
2041
2042
2043
2044
2045

2046
2047
2048
2049

2050
2051
2052
2053
2054
2055
2056
2057







-
+



-
+








    bac + ~^\d\d?$
        <<- ~>> ␣
        <<- =>> define(\1, ":N:e:i")

    l’ un comme l’ autre
        <<- ~>> ␣
        <<- =>> define(\1, ":LN:m:p")
        <<- =>> define(\1, ":GN:m:p")

    l’ une comme l’ autre
        <<- ~>> ␣
        <<- =>> define(\1, ":LN:f:p")
        <<- =>> define(\1, ":GN:f:p")

    en peine
        <<- not value(<1, "|ne|n’|j’|on|il|elle|iel|") =>> exclude(\2, ":V")

    m’ [dame|sieur]
        <<- ~>> ␣

2327
2328
2329
2330
2331
2332
2333
2334
2335




2336
2337
2338
2339
2340
2341
2342
2327
2328
2329
2330
2331
2332
2333


2334
2335
2336
2337
2338
2339
2340
2341
2342
2343
2344







-
-
+
+
+
+







TEST: elles sont cul et chemise
TEST: ils sont frère et sœur
TEST: iels étaient mari et femme


__fusions_noms_communs_séparés_slah__
    *WORD  /  *WORD
        <<- space_after(\1, 0, 0) and space_after(\2, 0, 0) and morph(\1, ":N") and morph(\-1, ":N") ~>> ␣
        <<- =>> define(\1, ":N:e:i")
        <<- space_after(\1, 0, 0) and space_after(\2, 0, 0) and morph(\1, ":N") and morph(\-1, ":N") and not (morph(\1, "[123][sp]") and morph(<1, ":O[vs]")) ~>> ␣
        <<- __also__ =>> define(\1, ":N:e:i")

TEST: Elle peut se cacher / rendre visible par le petit “+” au-dessus.


__fusions_noms_propres__
    d’ Alembert
    d’ Estaing
    de Gaulle
    de Broglie
2357
2358
2359
2360
2361
2362
2363
2364

2365
2366
2367
2368
2369
2370
2371
2372
2373
2374

2375
2376
2377
2378

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


2399
2400
2401
2402
2403
2404
2405
2359
2360
2361
2362
2363
2364
2365

2366
2367
2368
2369
2370
2371
2372
2373
2374
2375

2376
2377
2378
2379

2380
2381
2382
2383





2384
2385
2386
2387
2388
2389
2390
2391
2392
2393


2394
2395
2396
2397
2398
2399
2400
2401
2402







-
+









-
+



-
+



-
-
-
-
-










-
-
+
+








    Peugeot  ~^\d0\d\d?$
        <<- ~>> ␣
        <<- =>> define(\1, ":N:e:i")

    Mai 68
        <<- ~>> ␣
        <<- =>> define(\1, ":N:m:i")
        <<- =>> define(\1, ":MP:m:i")

    ~^[A-ZÀÂÉÈÊÎÔ].  ~^[A-ZÀÂÉÈÊÎÔ].
        <<- analyse_with_next(\1, " ", ":") ~>> ␣
        <<- __else__ and morph(\1, ":M") and morph(\2, ":V", ":[GM]") =>> define(\2, ":M2")

    Me  ~^[A-ZÀÂÉÈÊÎÔ].
        <<- =>> define(\1, ":T")
        <<- ~1>> *

    [la|cette]  ~^[A-ZÀÂÉÈÊÎÔ].  ?~^[A-ZÀÂÉÈÊÎÔ].¿  ?~^[A-ZÀÂÉÈÊÎÔ].¿  [Administration|Area|Army|Assocation|Avenue|Chamber|Church|City|Community|Court|Company|Corporation|Cup|Enterprise|Foundation|Fraternity|Gallery|Highway|House|Initiative|League|Library|Mansion|Nation|Navy|Organization|Reserve|Road|River|Sea|Society|Station|Sorority|Tavern|Tower|University|Valley]
    [la|cette|the]  ~^[A-ZÀÂÉÈÊÎÔ].  ?~^[A-ZÀÂÉÈÊÎÔ].¿  ?~^[A-ZÀÂÉÈÊÎÔ].¿  [Administration|Area|Army|Assocation|Avenue|Chamber|Church|City|Community|Court|Company|Corporation|Cup|Enterprise|Foundation|Fraternity|Gallery|Highway|House|Initiative|League|Library|Mansion|Nation|Navy|Organization|Reserve|Road|River|Sea|Society|Station|Sorority|Tavern|Tower|University|Valley]
        <<- ~2:0>> ␣
        <<- =>> define(\2, ":MP:f:s")

    [le|au|du|ce]  ~^[A-ZÀÂÉÈÊÎÔ].  ?~^[A-ZÀÂÉÈÊÎÔ].¿  ?~^[A-ZÀÂÉÈÊÎÔ].¿  [Act|Building|Bureau|Casino|Castle|Center|Challenge|Championship|Chronicle|Club|College|Comity|Consortium|Cottage|Covent|Day|Desert|Forum|Hall|Garden|Hospital|Hostel|Institute|Magazine|Manor|Monastery|Mount|Museum|News|Newspaper|Ocean|Office|Opera|Park|Party|Palace|Post|Restaurant|State|Theatre|Tournament]
    [le|au|du|ce|the]  ~^[A-ZÀÂÉÈÊÎÔ].  ?~^[A-ZÀÂÉÈÊÎÔ].¿  ?~^[A-ZÀÂÉÈÊÎÔ].¿  [Act|Building|Bureau|Casino|Castle|Center|Challenge|Championship|Chronicle|Club|College|Comity|Consortium|Cottage|Covent|Day|Desert|Forum|Hall|Garden|Hospital|Hostel|Institute|Magazine|Manor|Monastery|Mount|Museum|News|Newspaper|Ocean|Office|Opera|Park|Party|Palace|Post|Restaurant|State|Theatre|Tournament]
        <<- ~2:0>> ␣
        <<- =>> define(\2, ":MP:m:s")

    the  ~^[A-ZÀÂÉÈÊÎÔ].  ?~^[A-ZÀÂÉÈÊÎÔ].¿  ?~^[A-ZÀÂÉÈÊÎÔ].¿  [Administration|Area|Army|Assocation|Avenue|Chamber|Church|City|Community|Court|Company|Corporation|Cup|Enterprise|Foundation|Fraternity|Gallery|Highway|House|Initiative|League|Library|Mansion|Nation|Navy|Organization|Reserve|Road|River|Sea|Society|Station|Sorority|Tavern|Tower|University|Valley]
    the  ~^[A-ZÀÂÉÈÊÎÔ].  ?~^[A-ZÀÂÉÈÊÎÔ].¿  ?~^[A-ZÀÂÉÈÊÎÔ].¿  [Act|Building|Bureau|Casino|Castle|Center|Challenge|Championship|Chronicle|Club|College|Comity|Consortium|Cottage|Covent|Day|Desert|Forum|Hall|Garden|Hospital|Hostel|Institute|Magazine|Manor|Monastery|Mount|Museum|News|Newspaper|Ocean|Office|Opera|Park|Party|Palace|Post|Restaurant|State|Theatre|Tournament]
        <<- ~2:0>> ␣
        <<- =>> define(\2, ":MP:e:s")

    ~^[A-ZÀÂÉÈÊÎÔ]. Airways
        <<- ~>> ␣
        <<- =>> define(\2, ":MP:e:i")


__écritures_épicènes_invariables__
    [tous|tou]  ·  tes
    [tous|tou]  ·  te  ·  s
        <<- ~>> ␣

    c · [eu|eux]  ·  [elles|celles]
    [ceu|ceux]  ·  [elles|celles]
    c · [eu|eux]  ·  [les|lles|elles|celles]
    [ceu|ceux]  ·  [les|lles|elles|celles]
        <<- ~>> ␣

    *WORD  ·  e  ·  s
    *WORD  ·  [ce|rice|drice|price|trice]   ·  s
    *WORD  ·  [fe|ffe] ·  s
    *WORD  ·  [le|ale|bale|cale|dale|male|nale|pale|tale]  ·  s
    *WORD  ·  [ne|ane|ène|ine|nne|enne]  ·  s
15705
15706
15707
15708
15709
15710
15711
15712

15713
15714
15715
15716
15717
15718
15719
15702
15703
15704
15705
15706
15707
15708

15709
15710
15711
15712
15713
15714
15715
15716







-
+








    l’ étrange impression [que|qu’]
    la [nette|bizarre] impression [que|qu’]
        <<- ~2:3>> _

    le pour et le contre
        <<- ~>> ␣
        <<- =>> define(\1, ":LN:m:p")
        <<- =>> define(\1, ":GN:m:p")

    le [pressentiment|sentiment] [que|qu’]
        <<- ~1>> _

    ou bien
        <<- ~2>> *

17018
17019
17020
17021
17022
17023
17024
17025

17026
17027
17028
17029
17030
17031
17032
17033
17034
17035
17036
17037

17038
17039
17040
17041
17042
17043
17044
17015
17016
17017
17018
17019
17020
17021

17022
17023
17024
17025
17026
17027
17028
17029
17030
17031
17032
17033

17034
17035
17036
17037
17038
17039
17040
17041







-
+











-
+







    [>être|>devenir|>rester] mission impossible
    [>être|>devenir|>rester] monnaie courante
    [>être|>devenir|>rester] partie [intégrante|prenante]
    [>être|>devenir|>rester] peine perdue
    [>être|>devenir|>rester] pieds et poings liés
    [>être|>devenir|>rester] pieds nus
        <<- ~2:0>> ␣
        <<- =>> define(\2, ":LV")
        <<- =>> define(\2, ":ÉV")

    [>être|>devenir|>rester] [pas|jamais|plus|guère|point] [bon|meilleur] marché
    [>être|>devenir|>rester] [pas|jamais|plus|guère|point] de passage
    [>être|>devenir|>rester] [pas|jamais|plus|guère|point] mission impossible
    [>être|>devenir|>rester] [pas|jamais|plus|guère|point] monnaie courante
    [>être|>devenir|>rester] [pas|jamais|plus|guère|point] partie [intégrante|prenante]
    [>être|>devenir|>rester] [pas|jamais|plus|guère|point] peine perdue
    [>être|>devenir|>rester] [pas|jamais|plus|guère|point] pieds et poings liés
    [>être|>devenir|>rester] [pas|jamais|plus|guère|point] pieds nus
        <<- ~2>> *
        <<- ~3:0>> ␣
        <<- =>> define(\3, ":LV")
        <<- =>> define(\3, ":ÉV")

    [>être|>devenir|>rester] ?[pas|jamais|plus|guère|point]¿ avant tout
    [>être|>devenir|>rester] ?[pas|jamais|plus|guère|point]¿ du moins
    [>être|>devenir|>rester] ?[pas|jamais|plus|guère|point]¿ en partie
    [>être|>devenir|>rester] ?[pas|jamais|plus|guère|point]¿ somme toute
    [>être|>devenir|>rester] ?[pas|jamais|plus|guère|point]¿ sous peu
    [>être|>devenir|>rester] ?[pas|jamais|plus|guère|point]¿ [tous|toutes] [deux|trois]
17057
17058
17059
17060
17061
17062
17063
17064

17065
17066
17067
17068
17069
17070
17071
17072
17073
17074
17075
17076

17077
17078
17079
17080
17081
17082
17083
17054
17055
17056
17057
17058
17059
17060

17061
17062
17063
17064
17065
17066
17067
17068
17069
17070
17071
17072

17073
17074
17075
17076
17077
17078
17079
17080







-
+











-
+







    /_VCint_ papa et maman
    /_VCint_ partie [intégrante|prenante]
    /_VCint_ peine perdue
    /_VCint_ pieds et poings liés
    /_VCint_ pieds nus
    /_VCint_ père et mère
        <<- morphVC(\1, ">(?:être|devenir|rester)/") ~2:0>> ␣
        <<- __also__ =>> define(\2, ":LV")
        <<- __also__ =>> define(\2, ":ÉV")

    /_VCint_ [pas|jamais|plus|guère|point] [bon|meilleur] marché
    /_VCint_ [pas|jamais|plus|guère|point] de passage
    /_VCint_ [pas|jamais|plus|guère|point] mission impossible
    /_VCint_ [pas|jamais|plus|guère|point] monnaie courante
    /_VCint_ [pas|jamais|plus|guère|point] partie [intégrante|prenante]
    /_VCint_ [pas|jamais|plus|guère|point] peine perdue
    /_VCint_ [pas|jamais|plus|guère|point] pieds et poings liés
    /_VCint_ [pas|jamais|plus|guère|point] pieds nus
        <<- morphVC(\1, ">(?:être|devenir|rester)/") ~2>> *
        <<- __also__ ~3:0>> ␣
        <<- __also__ =>> define(\3, ":LV")
        <<- __also__ =>> define(\3, ":ÉV")

    /_VCint_ ?[pas|jamais|plus|guère|point]¿ avant tout
    /_VCint_ ?[pas|jamais|plus|guère|point]¿ du moins
    /_VCint_ ?[pas|jamais|plus|guère|point]¿ en partie
    /_VCint_ ?[pas|jamais|plus|guère|point]¿ somme toute
    /_VCint_ ?[pas|jamais|plus|guère|point]¿ sous peu
    /_VCint_ ?[pas|jamais|plus|guère|point]¿ [tous|toutes] [deux|trois]
17138
17139
17140
17141
17142
17143
17144
17145

17146
17147
17148
17149
17150
17151
17152
17153
17154
17155
17156
17157

17158
17159
17160
17161
17162
17163
17164
17135
17136
17137
17138
17139
17140
17141

17142
17143
17144
17145
17146
17147
17148
17149
17150
17151
17152
17153

17154
17155
17156
17157
17158
17159
17160
17161







-
+











-
+







    >avoir  bon [dos|fond]
    >avoir  bon pied ?,¿ bon œil
    >avoir  carte blanche
    >avoir  forme [humaine|animale]
    >avoir  partie [gagnée|liée]
    >avoir  voix au chapitre
        <<- ~2:0>> ␣
        <<- =>> define(\2, ":LV")
        <<- =>> define(\2, ":ÉV")

    >avoir  [pas|jamais|plus|guère|point]  [besoin|confiance|connaissance|conscience|crainte|envie|faim|honte|peur|peine|pitié|soif|vent]
    >avoir  [pas|jamais|plus|guère|point]  bon [dos|fond]
    >avoir  [pas|jamais|plus|guère|point]  bon pied ?,¿ bon œil
    >avoir  [pas|jamais|plus|guère|point]  carte blanche
    >avoir  [pas|jamais|plus|guère|point]  forme [humaine|animale]
    >avoir  [pas|jamais|plus|guère|point]  gain de cause
    >avoir  [pas|jamais|plus|guère|point]  partie [gagnée|liée]
    >avoir  [pas|jamais|plus|guère|point]  quartier libre
    >avoir  [pas|jamais|plus|guère|point]  voix au chapitre
        <<- ~3:0>> ␣
        <<- =>> define(\3, ":LV")
        <<- =>> define(\3, ":ÉV")

    >avoir  ?[pas|jamais|plus|guère|point]¿  [tous|toutes] les $:B:e:p  [besoin|confiance|connaissance|conscience|crainte|envie|faim|honte|peur|peine|pitié|soif|vent]
    >avoir  ?[pas|jamais|plus|guère|point]¿  [tous|toutes] les $:B:e:p  @:(?:Q|V1.*:Y)
        <<- ~2:-2>> *

    n’  >avoir  que  $:Q
        <<- ~3>> *
17192
17193
17194
17195
17196
17197
17198
17199

17200
17201
17202
17203
17204
17205
17206
17207
17208
17209
17210
17211

17212
17213
17214
17215
17216
17217
17218
17189
17190
17191
17192
17193
17194
17195

17196
17197
17198
17199
17200
17201
17202
17203
17204
17205
17206
17207

17208
17209
17210
17211
17212
17213
17214
17215







-
+











-
+







    /_VCint_  bon [dos|fond]
    /_VCint_  bon pied ?,¿ bon œil
    /_VCint_  carte blanche
    /_VCint_  forme [humaine|animale]
    /_VCint_  partie [gagnée|liée]
    /_VCint_  voix au chapitre
        <<- morphVC(\1, ":V0a") ~2:0>> ␣
        <<- __also__ =>> define(\2, ":LV")
        <<- __also__ =>> define(\2, ":ÉV")

    /_VCint_  [pas|jamais|plus|guère|point]  [besoin|confiance|connaissance|conscience|crainte|envie|faim|honte|peur|peine|pitié|soif|vent]
    /_VCint_  [pas|jamais|plus|guère|point]  bon [dos|fond]
    /_VCint_  [pas|jamais|plus|guère|point]  bon pied ?,¿ bon œil
    /_VCint_  [pas|jamais|plus|guère|point]  carte blanche
    /_VCint_  [pas|jamais|plus|guère|point]  forme [humaine|animale]
    /_VCint_  [pas|jamais|plus|guère|point]  gain de cause
    /_VCint_  [pas|jamais|plus|guère|point]  partie [gagnée|liée]
    /_VCint_  [pas|jamais|plus|guère|point]  quartier libre
    /_VCint_  [pas|jamais|plus|guère|point]  voix au chapitre
        <<- morphVC(\1, ":V0a") ~3:0>> ␣
        <<- __also__ =>> define(\3, ":LV")
        <<- __also__ =>> define(\3, ":ÉV")

    /_VCint_  ?[pas|jamais|plus|guère|point]¿  [tous|toutes] les $:B:e:p  [besoin|confiance|connaissance|conscience|crainte|envie|faim|honte|peur|peine|pitié|soif|vent]
    /_VCint_  ?[pas|jamais|plus|guère|point]¿  [tous|toutes] les $:B:e:p  @:(?:Q|V1.*:Y)
        <<- morphVC(\1, ":V0a") ~2:-2>> *


__purge_après_verbe__
17964
17965
17966
17967
17968
17969
17970
17971

17972
17973
17974
17975
17976
17977
17978
17961
17962
17963
17964
17965
17966
17967

17968
17969
17970
17971
17972
17973
17974
17975







-
+







    >trier sur le volet
    >trouver refuge
    >vendre à perte
    >venir à bout
    [>venir|>revenir] je [ne|n’] sais ?pas¿ ?trop¿ d’ où
    [>venir|>revenir] on [ne|n’] sait ?pas¿ ?trop¿ d’ où
        <<- ~2:0>> ␣
        <<- =>> define(\2, ":LV")
        <<- =>> define(\2, ":ÉV")


__passer_temps_adj__
    >passer ?toute¿ [la|cette|ma|ta|sa] [journée|semaine]                       @:A¬:A.*:[fe]:[si]
    >passer ?toute¿ [l’|cette|mon|ton|son] [heure|année]                        @:A¬:A.*:[fe]:[si]
    >passer ?toutes¿ [ces|ses|nos|vos|leurs] [heures|journées|semaines|années]  @:A¬:A.*:[fe]:p
        <<- ~2:-2>> *
21780
21781
21782
21783
21784
21785
21786
21787

21788
21789
21790
21791
21792
21793
21794
21777
21778
21779
21780
21781
21782
21783

21784
21785
21786
21787
21788
21789
21790
21791







-
+







TEST: vivre une situation hors du commun à deux a aussi pesé dans la balance.
TEST: deux jours minimum
TEST: ils disent finalement tous les deux la même chose


__gn_des_2m__
    des  *WORD  *WORD
        <<- /gn/ (morph(<1, ":(?:[VRBX]|Cs|LV)|>comme/|<start>|>,", "*") or morph(\3, ":N", ":[AQ]")) and not morph(\3, ">(?:seul|minimum|maximum)/") >>>
        <<- /gn/ (morph(<1, ":(?:[VRBXÉ]|Cs)|>comme/|<start>|>,", "*") or morph(\3, ":N", ":[AQ]")) and not morph(\3, ">(?:seul|minimum|maximum)/") >>>
        <<- /gn/ ( (morph(\2, ":[NA].*:m", ":[fe]") and morph(\3, ":[NA].*:f", "*")) or (morph(\2, ":[NA].*:f", ":[me]") and morph(\3, ":[NA].*:m", "*")) ) and not apposition(\2, \3)
        -3>> =switchGender(\3, True)                                                                && Accord de genre erroné avec « \2 ».
        <<- /gn/ __also__ and hasFemForm(\2) -2>> =switchGender(\2)                                 && Accord de genre erroné avec « \3 ».
        <<- /gn/ morph(\2, ":[NA].*:[pi]", ":G") and morph(\3, ":[NA].*:s", "*") and not apposition(\2, \3) and not (value(>1, "|et|,|") and morph(>2, ":A"))
        -3>> =suggPlur(\3)                                                                          && Accord de nombre erroné avec « \1 \2 » : « \3 » devrait être au pluriel.
        <<- not morph(\3, ":G|>a/") and checkAgreement(\2, \3) =>> =exclude(\3, ":V")

27309
27310
27311
27312
27313
27314
27315
27316

27317
27318
27319
27320
27321
27322
27323
27306
27307
27308
27309
27310
27311
27312

27313
27314
27315
27316
27317
27318
27319
27320







-
+







!!
!!!! Participes passés: COD précédant que                                                         !!
!!
!!

__ppas_det_plur_COD_que_avoir__
    [les|des|ces|mes|tes|ses|nos|vos|leurs|quelques|plusieurs]  *WORD  [que|qu’]  [je|j’|tu|il|elle|on|nous|vous|ils|elles|iel|iels]  ?[ne|n’]¿  ?[lui|leur]¿  >avoir  @:V[0-3]..t.*:Q.*:s¬:[GWpi]
        <<- /ppas/ morph(\2, ":[NA]") and not morph(>1, ":(?:Y|Ov|D|LV)")
        <<- /ppas/ morph(\2, ":[NA]") and not morph(>1, ":(?:Y|Ov|D|LV|ÉV)")
            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>> =suggPlur(\-1, \2)
        && Si “\1 \2…” est bien le COD du participe passé “\-1”, celui-ci devrait être au pluriel (et accordé en genre).|http://fr.wikipedia.org/wiki/Accord_du_participe_pass%C3%A9_en_fran%C3%A7ais

TEST: Les documents qu’ils ont {{acheté}}.
TEST: les flacons qu’ils ont réussi à acquérir
TEST: ça faisait des années que j’avais délaissé ce lieu