15906
15907
15908
15909
15910
15911
15912
15913
15914
15915
15916
15917
15918
15919
15920
15921
15922
15923
15924
15925
15926
15927
15928
15929
15930
15931
15932
15933
15934
15935
15936
15937
15938
15939
15940
15941
15942
15943
15944
15945
15946
15947
15948
15949
15950
15951
15952
15953
15954
15955
15956
15957
15958
15959
15960
15961
15962
15963
15964
15965
15966
15967
15968
15969
15970
15971
15972
15973
15974
15975
15976
15977
15978
15979
15980
15981
15982
15983
15984
15985
15986
15987
15988
15989
15990
15991
15992
15993
15994
15995
15996
15997
15998
15999
16000
16001
16002
16003
16004
16005
16006
16007
16008
16009
16010
16011
16012
16013
16014
16015
16016
16017
16018
16019
16020
16021
16022
16023
16024
16025
16026
16027
16028
16029
16030
16031
16032
16033
16034
16035
|
15915
15916
15917
15918
15919
15920
15921
15922
15923
15924
15925
15926
15927
15928
15929
15930
15931
15932
15933
15934
15935
15936
15937
15938
15939
15940
15941
15942
15943
15944
15945
15946
15947
15948
15949
15950
15951
15952
15953
15954
15955
15956
15957
15958
15959
15960
15961
15962
15963
15964
15965
15966
15967
15968
15969
15970
15971
15972
15973
15974
15975
15976
15977
15978
15979
15980
15981
15982
15983
15984
15985
15986
15987
15988
15989
15990
15991
15992
15993
15994
15995
15996
15997
15998
15999
16000
16001
16002
16003
16004
16005
16006
16007
16008
16009
16010
16011
16012
16013
16014
16015
16016
16017
16018
16019
16020
16021
16022
16023
16024
16025
16026
16027
16028
16029
16030
16031
16032
16033
16034
16035
16036
16037
16038
|
-
+
-
-
-
-
-
-
-
-
-
-
+
-
-
+
+
-
-
-
+
-
-
-
+
-
-
-
-
-
+
-
-
-
-
-
+
+
-
-
+
-
-
-
+
+
-
-
-
-
+
+
+
+
+
-
-
-
-
+
+
+
+
+
-
-
+
+
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
-
+
-
-
-
+
+
+
-
-
-
-
-
+
+
+
+
-
-
-
-
+
+
+
+
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
|
<<- /conj/ not morph(<1, ":[VR]|>de") -2>> =suggVerb(\2, ":3p") # Conjugaison erronée. Accord avec “\1”. Le verbe devrait être à la 3ᵉ personne du pluriel.
TEST: lesquels {{devienne}} des ennuyeux incomparables.
TEST: Mais parmi les millions de causes à défendre, lesquelles choisir ?
TEST: les failles par lesquelles entrait l’eau étaient impossibles à boucher.
# L’accord par syllepse est obligatoire après /la plupart/, ainsi qu’après /nombre/ et /quantité/ employés sans déterminant. L’accord se fait avec le « pseudo-complément ».
@@@@
@@@@
@@@@
@@@@
@@@@END_GRAPH _
@@@@
@@@@
@@@@
@@@@
__conj_beaucoup_d_aucuns_la_plupart__
# on / ont
__[i]/conf(conf_ont1)__
beaucoup @:V¬:(?:3p|P|Q|G)
<<- /conj/ not morph(<1, ":[VR]|>de/")
(?:ils|c?eux +qui|c?elles +qui) +(on) @@$
<<- -1>> ont # Incohérence : « on » est un pronom personnel, « ont » est une conjugaison du verbe avoir.
-2>> =suggVerb(\2, ":3p") # Conjugaison erronée. Accord avec “\1”. Le verbe devrait être à la 3ᵉ personne du pluriel.
TEST: ces gens-là ils {{on}} {{raison}} plus souvent que la plupart des gens.
TEST: Ils soutiennent ceux qui {{on}} {{tant}} de raison d’être en colère.
d’ aucuns @:V¬:(?:3p|P|Q|G)
__[i]/conf(conf_ont2)!6__
(?<![dD]’)(?:elles|ceux-(?:ci|là)|celles-(?:ci|là)) +(on) @@$
<<- not before(r"(?i)\b(?:à|avec|sur|chez|par|dans|parmi|contre|ni|de|pour|sous) +$")
-1>> ont # Incohérence : « on » est un pronom personnel, « ont » est une conjugaison du verbe avoir.
la plupart @:V¬:(?:3p|P|Q|G)
TEST: celles-là {{on}} {{vraiment}} un problème avec la religion.
TEST: j’ai, tu as, ils ont, elles {{on}}
TEST: Or parmi celles-ci on trouve typiquement d’un côté les structures
<<- /conj/ not morph(<1, ":[VR]|>de/")
-3>> =suggVerb(\3, ":3p") # Conjugaison erronée. Accord avec “\1 \2”. Le verbe devrait être à la 3ᵉ personne du pluriel.
# L’accord par syllepse est obligatoire après /la plupart/, ainsi qu’après /nombre/ et /quantité/ employés sans déterminant. L’accord se fait avec le « pseudo-complément ».
__[i]/conj(conj_beaucoup_d_aucuns_la_plupart)__
beaucoup qui @:V¬:(?:3p|P|G)
(beaucoup|d’aucuns|la plupart) +({w_2}) @@0,$
<<- morphex(\2, ":V", ":(?:3p|P|Q|G)") and not morph(word(-1), ":[VR]|>de/", False, False)
-2>> =suggVerb(@, ":3p") # Conjugaison erronée. Accord avec « \1 ». Le verbe devrait être à la 3ᵉ personne du pluriel.
<<- /conj/ not morph(<1, ":[VR]|>de/")
-3>> =suggVerb(\3, ":3p") # Conjugaison erronée. Accord avec “\1”. Le verbe devrait être à la 3ᵉ personne du pluriel.
__[i]/conj(conj_beaucoup_d_aucuns_la_plupart_qui)__
(beaucoup|d’aucuns|la plupart) +qui +({w_2}) @@0,$
<<- morphex(\2, ":V", ":(?:3p|P|Q|G)") and not morph(word(-1), ":[VR]", False, False)
-2>> =suggVerb(@, ":3p") # Conjugaison erronée. Accord avec « \1 ». Le verbe devrait être à la 3ᵉ personne du pluriel.
d’ aucuns qui @:V¬:(?:3p|P|G)
la plupart qui @:V¬:(?:3p|P|G)
<<- /conj/ not morph(<1, ":[VR]|>de/")
-3>> =suggVerb(\3, ":3p") # Conjugaison erronée. Accord avec “\1 \2 \3”. Le verbe devrait être à la 3ᵉ personne du pluriel.
TEST: la plupart des hommes {{vienne}}
TEST: La plupart {{admet}}
TEST: beaucoup {{vienne}}
TEST: d’aucuns {{pense}} que c’est faux
TEST: beaucoup qui ne {{pense}} jamais à rien, mais qui ont quand même des avis sur tout.
TEST: beaucoup entre la peste et le choléra.
TEST: Beaucoup avait été accompli
__[i]/conj(conj_certains_tous_plusieurs)__
(?<!de )(certaine?s|tou(?:te|)s|plusieurs) +(?:qui +|)({w_2}) @@0,$
<<- morphex(\2, ":V", ":(?:G|N|A|3p|P|Q)") and not morph(word(-1), ":[VR]", False, False)
-2>> =suggVerb(@, ":3p") # Conjugaison erronée. Accord avec « \1 ». Le verbe devrait être à la 3ᵉ personne du pluriel.
__conj_certains_tous_plusieurs__
[certains|certaines|tous|toutes|plusieurs] @:V¬:(?:G|N|A|3p|P|Q)
[certains|certaines|tous|toutes|plusieurs] qui @:V¬:(?:G|3p|P)
<<- /conj/ not morph(<1, ":[VR]|>de/")
--1>> =suggVerb(\-1, ":3p") # Conjugaison erronée. Accord avec “\1”. Le verbe devrait être à la 3ᵉ personne du pluriel.
TEST: certains {{prenne}} leur temps
TEST: Plusieurs qui {{pense}} que c’est une arnaque se sont quand même trompés.
__[i]/conj(conj_certains_certaines)__
(certaine?) +({w_2}) @@0,$
__conj_certains_certaines__
[<start>|,] [certain|certaine] @:V.*:[123]p¬:[GWMNA]
<<- isStart() >>>
<<- morphex(\2, ":V.*:[123]p", ":[GWM]") -1>> \1s # Accord de conjugaison avec “\2”. Mettez au pluriel “\1” si vous désignez plusieurs personnes.
<<- \1.endswith("n") and morphex(\2, ":V.*:[123]s", ":(?:V0e.*:3s|N.*:[me]:[si])")
-2>> =suggVerb(@, ":3p") # Conjuguez “\2” à la troisième personne du pluriel, si “\1” est un pronom censé désigner plusieurs personnes.
<<- __also__ -1>> \1s # Mettez au pluriel “\1” si vous désignez plusieurs personnes.
<<- __else__ and \1.endswith("e") and morphex(\2, ":V.*:[123]s", ":(?:V0e.*:3s|N.*:[fe]:[si])")
-2>> =suggVerb(@, ":3p") # Conjuguez “\2” à la troisième personne du pluriel, si “\1” est un pronom censé désigner plusieurs personnes.
<<- __also__ -1>> \1s # Mettez au pluriel “\1” si vous désignez plusieurs personnes.
<<- /conj/ -2>> \1s # Mettez au pluriel “\2” si vous désignez plusieurs personnes.
<<- /conj/ morph(\3, ":[12]p") ->> =suggVerb(\3, ":3p") # Conjuguez “\3” à la troisième personne du pluriel, si “\2” est un pronom censé désigner plusieurs personnes.
[<start>|,] certain @:V.*:[123]s¬>(?:être|demeurer|rester|devenir|redevenir).*:3s|:N.*:[me]:[si]
<<- /conj/ -3>> =suggVerb(\3, ":3p") # Conjuguez “\3” à la troisième personne du pluriel, si “\2” est un pronom censé désigner plusieurs personnes.
<<- /conj/ -2>> \1s # Mettez au pluriel “\2” si vous désignez plusieurs personnes.
[<start>|,] certaine @:V.*:[123]s¬>(?:être|demeurer|rester|devenir|redevenir).*:3s|:N.*:[fe]:[si]
<<- /conj/ -3>> =suggVerb(\3, ":3p") # Conjuguez “\3” à la troisième personne du pluriel, si “\2” est un pronom censé désigner plusieurs personnes.
<<- /conj/ -2>> \1s # Mettez au pluriel “\2” si vous désignez plusieurs personnes.
TEST: {{certain}} deviennent idiots à cette seule pensée.
TEST: mais c’est exact, {{certaine}} perdent leur calme souvent dans les méandres de l’administration.
TEST: {{certain}} {{donne}} beaucoup.
TEST: certaine est la défaite.
TEST: si tu persévères, certaine deviendra la réussite.
__[i]/conj(conj_det_plur_nom)__
__conj_det_plur_nom__
([cmts]es|[nv]os|leurs|quelques) +({w_2}) +({w_2}) @@0,w,$
<<- morph(\2, ":[NAQ].*:[pi]", False) and morphex(\3, ":V", ":(?:[13]p|P|Y|G|A.*:e:[pi])") and morphex(word(-1), ":C", ":[YP]", True)
and not( morph(\3, ":3s", False) and before(r"(?i)\b(?:l[ea] |l’|une? |ce(?:tte|t|) |[mts](?:on|a) |[nv]otre ).+ entre .+ et ") ) >>>
[ces|mes|tes|ses|nos|vos|leurs|quelques] @:[NA].*:[pi] @:V¬:(?:[13]p|P|Y|G|A.*:e:[pi])
<<- /conj/ morph(<1, ":C|<start>|>,")
and not( morph(\3, ":3s") and before(r"(?i)\b(?:l[ea] |l’|une? |ce(?:tte|t|) |[mts](?:on|a) |[nv]otre ).+ entre .+ et ") ) >>>
<<- not checkAgreement(\2, \3)
-3>> =suggVerb(@, ":3p") # Conjugaison erronée. Accord avec « \1 \2… ». Le verbe devrait être à la 3ᵉ personne du pluriel.
<<- __else__ and isAmbiguousAndWrong(\2, \3, ":p", ":3p")
-3>> =suggVerb(@, ":3p", suggPlur) # Accord avec « \1 \2… » incorrect. Conjugaison erronée ou accord nom/adjectif incorrect.
__[i]/conj(conj_det_plur_nom_qui)__
<<- /conj/ not checkAgreement(\2, \3) -3>> =suggVerb(\3, ":3p") # Conjugaison erronée. Accord avec “\1 \2…”. Le verbe devrait être à la 3ᵉ personne du pluriel.
<<- /conj/ __else__ and isAmbiguousAndWrong(\2, \3, ":p", ":3p")
-3>> =suggVerb(\3, ":3p", suggPlur) # Accord avec « \1 \2… » incorrect. Conjugaison erronée ou accord nom/adjectif incorrect.
([cmts]es|[nv]os|leurs|quelques) +({w_2}) +qui +({w_2}) @@0,w,$
<<- morph(\2, ":[NAQ].*:[pi]", False) and morphex(\3, ":V", ":(?:[13]p|P|Y|G|A.*:e:[pi])") and morphex(word(-1), ":C", ":[YP]", True)
and not( morph(\3, ":3s", False) and before(r"(?i)\b(?:l[ea] |l’|une? |ce(?:tte|t|) |[mts](?:on|a) |[nv]otre ).+ entre .+ et ") )
-3>> =suggVerb(@, ":3p") # Conjugaison erronée. Accord avec « \1 \2… ». Le verbe devrait être à la 3ᵉ personne du pluriel.
[ces|mes|tes|ses|nos|vos|leurs|quelques] @:[NA].*:[pi] qui @:V¬:(?:[13]p|P|Y|G|A.*:e:[pi])
<<- /conj/ morph(<1, ":C|<start>|>,")
and not( morph(\4, ":3s") and before(r"(?i)\b(?:l[ea] |l’|une? |ce(?:tte|t|) |[mts](?:on|a) |[nv]otre ).+ entre .+ et ") )
-4>> =suggVerb(\4, ":3p") # Conjugaison erronée. Accord avec “\1 \2 \3…”. Le verbe devrait être à la 3ᵉ personne du pluriel.
TEST: Ses « chiens » {{coure}} sur ma pelouse.
TEST: mes filles {{passe}} ce matin
TEST: vos filles {{passes}} ce matin
TEST: ces travaux qui {{demande}} tant d’efforts.
TEST: vos questions ne {{réclame}} aucune réflexion.
TEST: le lien entre les agences de renseignement et ces mêmes entreprises pouvait reposer sur des activités de surveillance à proprement parler.
__[i]/conj(conj_det_plur_nom_confusion)__
__conj_det_plur_nom_confusion__
(les|certaine?s|plusieurs) +({w_2}) +({w_2}) @@0,w,$
<<- morph(\2, ":[NAQ].*:[pi]", False) and morphex(\3, ":V", ":(?:[13]p|P|Y|G|A.*:e:[pi])") and morphex(word(-1), ":C", ":[YP]", True)
and not( morph(\3, ":3s", False) and before(r"(?i)\b(?:l[ea] |l’|une? |ce(?:tte|t|) |[mts](?:on|a) |[nv]otre ).+ entre .+ et ") ) >>>
<<- not checkAgreement(\2, \3)
-3>> =suggVerb(@, ":3p") # Conjugaison erronée. Accord avec « \1 \2… ». Le verbe devrait être à la 3ᵉ personne du pluriel.
<<- __else__ and (\1 == "les" or \1 == "Les") and isVeryAmbiguousAndWrong(\2, \3, ":p", ":3p", isStart())
-3>> =suggVerb(@, ":3p", suggPlur) # Accord avec « les \2… » incorrect. Conjugaison erronée ou accord nom/adjectif incorrect.
<<- __else__ and (\1 == "certains" or \1 == "Certains") and isVeryAmbiguousAndWrong(\2, \3, ":m:p", ":3p", isStart())
-3>> =suggVerb(@, ":3p", suggMasPlur) # Accord avec « certains \2… » incorrect. Conjugaison erronée ou accord nom/adjectif incorrect.
<<- __else__ and (\1 == "certaines" or \1 == "Certaines") and isVeryAmbiguousAndWrong(\2, \3, ":f:p", ":3p", isStart())
-3>> =suggVerb(@, ":3p", suggFemPlur) # Accord avec « certaines \2… » incorrect. Conjugaison erronée ou accord nom/adjectif incorrect.
__[i]/conj(conj_det_plur_nom_qui_confusion)__
(les|certaine?s|plusieurs) +({w_2}) +qui +({w_2}) @@0,w,$
<<- morph(\2, ":[NAQ].*:[pi]", False) and morphex(\3, ":V", ":(?:[13]p|P|Q|Y|G|A.*:e:[pi])") and morphex(word(-1), ":C", ":[YP]", True)
and not( morph(\3, ":3s", False) and before(r"(?i)\b(?:l[ea] |l’|une? |ce(?:tte|t|) |[mts](?:on|a) |[nv]otre ).+ entre .+ et ") )
-3>> =suggVerb(@, ":3p") # Conjugaison erronée. Accord avec « \1 \2… ». Le verbe devrait être à la 3ᵉ personne du pluriel.
les @:[NA].*:[pi] @:V¬:(?:3p|P|Y|G|A.*:e:[pi])
<<- /conj/ morph(<1, ":C|<start>|>,")
and not( morph(\3, ":3s") and before(r"(?i)\b(?:l[ea] |l’|une? |ce(?:tte|t|) |[mts](?:on|a) |[nv]otre ).+ entre .+ et ") ) >>>
<<- /conj/ not checkAgreement(\2, \3)
-3>> =suggVerb(\3, ":3p") # Conjugaison erronée. Accord avec “\1 \2…”. Le verbe devrait être à la 3ᵉ personne du pluriel.
<<- /conj/ __else__ and isVeryAmbiguousAndWrong(\2, \3, ":p", ":3p", value(<1, "|<start>|,|"))
-3>> =suggVerb(\3, ":3p", suggPlur) # Accord avec “\1 \2…” incorrect. Conjugaison erronée ou accord nom/adjectif incorrect.
[certains|certaines] @:[NA].*:[pi] @:V¬:(?:3p|P|Y|G|A.*:e:[pi])
<<- /conj/ morph(<1, ":C|<start>|>,")
and not( morph(\3, ":3s") and before(r"(?i)\b(?:l[ea] |l’|une? |ce(?:tte|t|) |[mts](?:on|a) |[nv]otre ).+ entre .+ et ") ) >>>
<<- /conj/ not checkAgreement(\2, \3)
-3>> =suggVerb(\3, ":3p") # Conjugaison erronée. Accord avec “\1 \2…”. Le verbe devrait être à la 3ᵉ personne du pluriel.
<<- /conj/ __else__ and isVeryAmbiguousAndWrong(\2, \3, ":m:p", ":3p", value(<1, "|<start>|,|"))
-3>> =suggVerb(\3, ":3p", suggMasPlur) # Accord avec “\1 \2…” incorrect. Conjugaison erronée ou accord nom/adjectif incorrect.
<<- /conj/ __else__ and isVeryAmbiguousAndWrong(\2, \3, ":f:p", ":3p", value(<1, "|<start>|,|"))
-3>> =suggVerb(\3, ":3p", suggFemPlur) # Accord avec “\1 \2…” incorrect. Conjugaison erronée ou accord nom/adjectif incorrect.
plusieurs @:[NA].*:[pi] @:V¬:(?:3p|P|Y|G|A.*:e:[pi])
<<- /conj/ morph(<1, ":C|<start>|>,")
and not( morph(\3, ":3s") and before(r"(?i)\b(?:l[ea] |l’|une? |ce(?:tte|t|) |[mts](?:on|a) |[nv]otre ).+ entre .+ et ") )
and not checkAgreement(\2, \3)
-3>> =suggVerb(\3, ":3p") # Conjugaison erronée. Accord avec “\1 \2…”. Le verbe devrait être à la 3ᵉ personne du pluriel.
[les|certains|certaines|plusieurs] @:[NA].*:[pi] qui @:V¬:(?:[13]p|P|Y|G)
<<- /conj/ morph(<1, ":C|<start>|>,")
and not( morph(\4, ":3s") and before(r"(?i)\b(?:l[ea] |l’|une? |ce(?:tte|t|) |[mts](?:on|a) |[nv]otre ).+ entre .+ et ") )
-4>> =suggVerb(\4, ":3p") # Conjugaison erronée. Accord avec “\1 \2 \3…”. Le verbe devrait être à la 3ᵉ personne du pluriel.
TEST: Les abstentions {{est}} présumée manifester un défaut d’opinion marquée
TEST: Les cours de culture générale nous {{apporte}} de l’ouverture d’esprit.
TEST: Les hommes ne le lui {{pardonnes}} pas.
TEST: Les infirmières à mi-temps ne {{travaille}} pas dans cette aile.
TEST: les données, en quantité plus que suffisante, {{indique}} que…
TEST: Les hommes comme celui-là {{mange}} comme deux.
|
16057
16058
16059
16060
16061
16062
16063
16064
16065
16066
16067
16068
16069
16070
16071
16072
16073
16074
16075
16076
16077
16078
16079
16080
16081
16082
16083
16084
16085
16086
16087
16088
16089
16090
16091
16092
16093
16094
16095
16096
16097
16098
16099
16100
16101
16102
16103
16104
16105
16106
16107
16108
16109
16110
16111
16112
16113
16114
16115
16116
16117
16118
16119
16120
16121
16122
16123
16124
16125
16126
16127
16128
16129
16130
16131
16132
16133
16134
16135
16136
16137
16138
16139
16140
16141
16142
16143
16144
16145
16146
16147
16148
16149
16150
16151
16152
16153
16154
16155
16156
16157
16158
16159
16160
16161
16162
16163
16164
16165
16166
16167
16168
16169
16170
16171
16172
16173
16174
16175
16176
16177
16178
16179
16180
16181
16182
16183
16184
16185
16186
16187
16188
16189
16190
16191
16192
16193
16194
16195
16196
16197
16198
16199
16200
16201
16202
16203
16204
16205
16206
16207
16208
16209
16210
|
16060
16061
16062
16063
16064
16065
16066
16067
16068
16069
16070
16071
16072
16073
16074
16075
16076
16077
16078
16079
16080
16081
16082
16083
16084
16085
16086
16087
16088
16089
16090
16091
16092
16093
16094
16095
16096
16097
16098
16099
16100
16101
16102
16103
16104
16105
16106
16107
16108
16109
16110
16111
16112
16113
16114
16115
16116
16117
16118
16119
16120
16121
16122
16123
16124
16125
16126
16127
16128
16129
16130
16131
16132
16133
16134
16135
16136
16137
16138
16139
16140
16141
16142
16143
16144
16145
16146
16147
16148
16149
16150
16151
16152
16153
16154
16155
16156
16157
16158
16159
16160
16161
16162
16163
16164
16165
16166
16167
16168
16169
16170
16171
16172
16173
16174
16175
16176
16177
16178
16179
16180
16181
16182
16183
16184
16185
16186
16187
16188
16189
16190
16191
16192
16193
16194
16195
16196
16197
16198
16199
16200
16201
16202
16203
16204
16205
16206
16207
16208
16209
16210
16211
16212
16213
16214
16215
|
-
-
-
-
-
-
+
+
+
+
+
+
-
-
-
+
+
-
-
-
-
-
+
+
+
+
+
-
-
+
-
-
-
+
+
+
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
+
+
+
+
-
-
+
+
+
-
-
-
+
-
-
-
+
+
+
-
-
+
+
-
-
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
+
+
+
+
+
-
-
-
+
+
+
+
+
-
-
+
+
-
-
-
-
-
-
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
|
TEST: les chattes {{danse}}
TEST: certains hommes {{marchandes}} sans cesse
TEST: certaines femmes {{danse}} beaucoup
TEST: Sauf que l’un comme l’autre avaient dû y renoncer.
TEST: L’un comme l’autre devaient y renoncer.
__[i]/conj(conj_des_nom1)__
^ *des +({w_2}) +({w_2}) @@w,$
<<- morph(\1, ":[NAQ].*:[pi]", False) and morphex(\2, ":V", ":(?:[13]p|P|G|Q|A.*:[pi])") and morph(word(1), ":(?:R|D.*:p)|>au/", False, True) >>>
<<- not morph(\2, ":[NA]", False) -2>> =suggVerb(@, ":3p") # Conjugaison erronée. Accord avec « des \1… ». Le verbe devrait être à la 3ᵉ personne du pluriel.
<<- __else__ and not checkAgreement(\1, \2) -2>> =suggVerb(@, ":3p", suggPlur) # Conjugaison erronée. Accord avec « des \1… ». Le verbe devrait être à la 3ᵉ personne du pluriel.
__[i]/conj(conj_des_nom_qui)__
__conj_des_nom__
[<start>|,] des @:[NA].*:[pi] @:V¬:(?:3p|P|G|Q|A.*:[pi])
<<- /conj/ morph(>1, ":(?:R|D.*:p)|>au/|<end>|>,") >>>
<<- /conj/ not morph(\4, ":[NA]") -4>> =suggVerb(\4, ":3p") # Conjugaison erronée. Accord avec “\2 \3…”. Le verbe devrait être à la 3ᵉ personne du pluriel.
<<- /conj/ __else__ and not checkAgreement(\3, \4) -4>> =suggVerb(\4, ":3p", suggPlur) # Conjugaison erronée. Accord avec “\2 \3…”. Le verbe devrait être à la 3ᵉ personne du pluriel.
^ *des +({w_2}) +qui +({w_2}) @@w,$
<<- morph(\1, ":[NAQ].*:[pi]", False) and morphex(\2, ":V", ":(?:[13]p|P|G)")
-2>> =suggVerb(@, ":3p") # Conjugaison erronée. Accord avec « des \1… ». Le verbe devrait être à la 3ᵉ personne du pluriel.
[<start>|,] des @:[NA].*:[pi] qui @:V¬:(?:3p|P|G)
<<- /conj/ -5>> =suggVerb(\5, ":3p") # Conjugaison erronée. Accord avec “\2 \3 \4…”. Le verbe devrait être à la 3ᵉ personne du pluriel.
TEST: Des hommes {{arrive}}.
TEST: Des femmes ne {{demande}} rien.
TEST: des femmes qui {{conduise}} la marche du monde.
#### NOMS PROPRES
# 3sg
__[s]/conj(conj_nom_propre)__
([A-ZÉÈ][\w-]+) +({w_1}) @@0,$
<<- not before(r"\b(?:et |ou |[dD][eu] |ni |[dD]e l’) *$") and morph(\1, ":M", False) and morphex(\2, ":[123][sp]", ":(?:G|3s|3p!|P|M|[AQ].*:[si]|N.*:m:s)")
and not morph(word(-1), ":[VRD]", False, False) and not before(r"([A-ZÉÈ][\w-]+), +([A-ZÉÈ][\w-]+), +$")
and not (morph(\2, ":3p", False) and word(-1))
__conj_nom_propre__
~^[A-ZÉÈ] @:[123][sp]¬:(?:G|3s|3p!|P|M|A.*:[si]|N.*:m:s)
<<- /conj/ not before(r"\b[dD]e l’ *$") and morph(\1, ":M")
and not morph(<1, ":[VRD]|>(?:ni|et|ou)/") and not before(r"([A-ZÉÈ][\w-]+), +([A-ZÉÈ][\w-]+), +$")
and not ( morph(\2, ":3p") and before(r"\w") )
-2>> =suggVerb(@, ":3s")
# Conjugaison erronée. Accord avec « \1 ». Le verbe devrait être à la 3ᵉ personne du singulier.
-2>> =suggVerb(\2, ":3s") # Conjugaison erronée. Accord avec “\1”. Le verbe devrait être à la 3ᵉ personne du singulier.
TEST: Marc {{arrives}} demain.
TEST: Paul ne {{viens}} pas demain.
TEST: Marc Aurèle {{étaient}} l’empereur des Romains. (Pas de trait d’union sur Marc Aurèle.)
TEST: Arthur D. parvient à…
TEST: Les fondateurs pionniers de l’Internet n’avaient pas prévu
TEST: les compteurs Geiger ne détectent pas le polonium
TEST: Des femmes de l’administration Obama y racontent qu’elles ont constaté qu’il leur arrivait régulièrement de ne pas être invitées
TEST: Macron président, c’est…
# 3pl
__[s]/conj(conj_nom_propre_et_nom_propre)__
(?<!et |ou |[dD][eu] |ni )([A-ZÉÈ][\w-]+) et ([A-ZÉÈ][\w-]+) +({w_1}) @@0,w,$
<<- morph(\1, ":M", False) and morph(\2, ":M", False)
__conj_nom_propre_et_nom_propre__
~^[A-ZÉÈ] et ~^[A-ZÉÈ] @:[123][sp]¬:(?:G|3p|P|Q.*:[pi])
<<- /conj/ morph(\1, ":M") and morph(\3, ":M") and not morph(<1, ":R|>(?:des?|du|et|ou|ni)/")
and morphex(\3, ":[123][sp]", ":(?:G|3p|P|Q.*:[pi])") and not morph(word(-1), ":R", False, False)
-3>> =suggVerb(@, ":3p")
# Conjugaison erronée. Accord avec « \1 et \2 ». Le verbe devrait être à la 3ᵉ personne du pluriel.
-4>> =suggVerb(\4, ":3p") # Conjugaison erronée. Accord avec “\1 et \2”. Le verbe devrait être à la 3ᵉ personne du pluriel.
TEST: Samantha et Eva {{viennes}} demain.
TEST: Samantha et Eva leur {{décrive}} une leçon.
# on / ont
__conf_ont!6__
ils on
[eux|ceux|elles|celles] qui on
<<- /conf/ --1>> ont # Confusion probable : “on” est un pronom personnel. Pour la conjugaison du verbe “avoir”, écrivez “on”.
[elles|ceux-ci|ceux-là|celles-ci|celles-là] on
<<- not morph(<1, ":[RV]|>de/") -2>> ont # Confusion probable : “on” est un pronom personnel. Pour la conjugaison du verbe “avoir”, écrivez “on”.
TEST: celles-là {{on}} {{vraiment}} un problème avec la religion.
TEST: j’ai, tu as, ils ont, elles {{on}}
TEST: ces gens-là ils {{on}} {{raison}} plus souvent que la plupart des gens.
TEST: Ils soutiennent ceux qui {{on}} {{tant}} de raison d’être en colère.
TEST: Or parmi celles-ci on trouve typiquement d’un côté les structures
!!
!!
!!!! Inversion verbe sujet !!
!!
!!
__[i]/conj(conj_que_où_comment_verbe_sujet_sing)__
(?:que?|où|comment|combien|dont|quand|pourquoi) +({w1}) (l(?:e(?:ur | )|a |’)|[mts](?:on|a) |ce(?:t|tte|) |[nv]otre |du ) *(?!plupart|majorité)({w1}) @@w,w,$
<<- morphex(\1, ":(?:[12]s|3p)", ":(?:3s|G|W|3p!)") and not after("^ +(?:et|ou) (?:l(?:es? |a |’|eurs? )|[mts](?:a|on|es) |ce(?:tte|ts|) |[nv]o(?:s|tre) |d(?:u|es) )")
-1>> =suggVerb(@, ":3s") # Conjugaison erronée. Accord avec « \2 \3… ». Le verbe devrait être à la 3ᵉ personne du singulier.
__conj_que_où_comment_verbe_sujet_sing__
[que|qu’|qu|où|comment|combien|dont|quand|pourquoi] @:[123][sp]¬:(?:3s|G|W|3p!) [le|la|l’|un|une|ce|cet|cette|mon|ton|son|ma|ta|sa|notre|votre|leur] *WORD
<<- /conj/ not value(\4, "|plupart|majorité|groupe|") and not (value(>1, "|et|ou|") and morph(>2, ":D"))
-2>> =suggVerb(\2, ":3s") # Conjugaison erronée. Accord avec “\3 \4…”. Le verbe devrait être à la 3ᵉ personne du singulier.
TEST: les possibilités qu’{{offrent}} le chien
TEST: les possibilités que {{donnent}} le chien.
TEST: Où {{vas}} l’homme ?
TEST: l’histoire dont {{bénéficient}} notre langue.
TEST: de la même façon que survivent le swing ou le latin.
TEST: en proportion des efforts que requièrent son entretien et son exploitation
TEST: une crainte aussi que renforcent son éloignement et le protocole compliqué
TEST: à l’époque de Mansur que grandissent la place et le rôle de…
TEST: où vivent la majorité des immigrés et des enfants d’immigrés
__[i]/conj(conj_lxquel_verbe_sujet_sing)__
(?:l[ea]s?quel(?:le|)s?) +({w1}) (l(?:e(?:ur | )|a |’)|[mts](?:on|a) |ce(?:t|tte|) |[nv]otre |du ) *(?!plupart|majorité)({w1}) @@w,w,$
__conj_lxquel_verbe_sujet_sing__
[lequel|laquelle|lesquels|lesquelles] @:[123][sp]¬:(?:3s|G|W|3p!) [le|la|l’|un|une|ce|cet|cette|mon|ton|son|ma|ta|sa|notre|votre|leur] *WORD
<<- /conj/ morph(<1, ":R") and not value(\4, "|plupart|majorité|groupe|") and not (value(>1, "|et|ou|") and morph(>2, ":D"))
<<- morphex(\1, ":(?:[12]s|3p)", ":(?:3s|G|W|3p!)") and not after("^ +(?:et|ou) (?:l(?:es? |a |’|eurs? )|[mts](?:a|on|es) |ce(?:tte|ts|) |[nv]o(?:s|tre) |d(?:u|es) )")
and morph(word(-1), ":R", False, False)
-1>> =suggVerb(@, ":3s") # Conjugaison erronée. Accord avec « \2 \3… ». Le verbe devrait être à la 3ᵉ personne du singulier.
-2>> =suggVerb(\2, ":3s") # Conjugaison erronée. Accord avec “\3 \4…”. Le verbe devrait être à la 3ᵉ personne du singulier.
TEST: une muraille contre laquelle {{venaient}} la masse armée et vociférante.
__[i]/conj(conj_que_où_comment_verbe_sujet_pluriel)__
(?:que?|où|comment|combien|dont|quand|pourquoi) +({w_3}) ([ldcmts]es|quelques|certaine?s|plusieurs|[nv]os|leurs) ({w1}) @@w,w,$
<<- morphex(\1, ":[123]s", ":(?:3p|G|W)") -1>> =suggVerb(@, ":3p") # Conjugaison erronée. Accord avec « \2 \3… ». Le verbe devrait être à la 3ᵉ personne du pluriel.
__conj_que_où_comment_verbe_sujet_pluriel__
[que|qu’|qu|où|comment|combien|dont|quand|pourquoi] @:[123][sp]¬:(?:3p|G|W) [les|des|ces|mes|tes|ses|nos|vos|leurs|quelques|certains|certaines|plusieurs|maints|maintes] *WORD
<<- /conj/ -2>> =suggVerb(\2, ":3p") # Conjugaison erronée. Accord avec “\3 \4…”. Le verbe devrait être à la 3ᵉ personne du pluriel.
TEST: D’où {{vienne}} les hommes ?
TEST: Comment {{danse}} les femmes ?
TEST: les idioties qu’{{aime}} les hommes, j’en ai marre.
TEST: l’amour dont {{parle}} les femmes
__[i]/conj(conj_lxquel_verbe_sujet_pluriel)__
(?:l[ea]s?quel(?:le|)s?) +({w_3}) ([ldcmts]es|quelques|certaine?s|plusieurs|[nv]os|leurs) ({w1}) @@w,w,$
__conj_lxquel_verbe_sujet_pluriel__
[lequel|laquelle|lesquels|lesquelles] @:[123][sp]¬:(?:3p|G|W) [les|des|ces|mes|tes|ses|nos|vos|leurs|quelques|certains|certaines|plusieurs|maints|maintes] *WORD
<<- morphex(\1, ":[123]s", ":(?:3p|G|W)") and morph(word(-1), ":R", False, False)
-1>> =suggVerb(@, ":3p") # Conjugaison erronée. Accord avec « \2 \3… ». Le verbe devrait être à la 3ᵉ personne du pluriel.
<<- /conj/ morph(<1, ":R") -2>> =suggVerb(\2, ":3p") # Conjugaison erronée. Accord avec “\3 \4…”. Le verbe devrait être à la 3ᵉ personne du pluriel.
TEST: les amusements pour lesquels {{vienne}} les invités.
TEST: financé par le Qatar, lequel dépense des millions de dollars pour soutenir le mouvement
__[i]/conj(conj_que_où_comment_verbe_sujet)__
(?:que?|où|comment|combien|dont|quand|pourquoi|l[ea]s?quel(?:le|)s?) +({w_1}[es])(?! je| tu| vous) @@$
<<- morphex(\1, ":[12][sp]", ":(?:G|W|3[sp]|Y|P|Q|N|A|M|VC)") -1>> =suggVerb(@, ":3s") # Conjugaison erronée. Ce verbe devrait être à la 3ᵉ personne.
__conj_puisse__
[<start>|,] puisse @:D.*:p
<<- /conj/ -2>> puissent # Conjugaison erronée. Ce verbe devrait s’accorder au substantif qui le suit.
TEST: Qu’est-ce que tu crois que {{deviens}} réellement, immanquablement et subitement cet homme après une telle dérouillée ?
TEST: ces sciences, ces religions, ces philosophies ne sont que contes destinés à nous donner l’illusion de la connaissance.
TEST: Le ministre de l’Intérieur a estimé que Calais avait vécu “un degré de violence jamais connu”.
TEST: à des règles aussi absurdes que précises
TEST: {{puisse}} les hommes enfin comprendre leurs erreurs. ->> puissent
TEST: {{puisses}} notre ennemi trembler de peur devant notre courage. ->> puisse
!!
!!
!!!! Verbes sans sujets !!
!!
!!
#__[i]/conj(conj_que_où_verbe_sujet_3sg)__
# (?:que?|où|comment|combien|dont|quand|pourquoi|l[ea]s?quel(?:le|)s?) +({w_1})(?! [jJ]e| [tT]u| [nNvV]ous| [eE]t ) @@$
# <<- morphex(\1, ":[12][sp]", ":(?:G|W|N|3[sp])") -1>> =suggVerb(@, ":3s") # Conjugaison erronée. Ce verbe devrait être à la 3ᵉ personne.
__conj_que_où_comment_verbe_sans_sujet!3__
[que|qu’|qu|où|comment|combien|dont|quand|pourquoi|lequel|laquelle|lesquels|lesquelles] @:[12][sp]¬:(?:G|W|3[sp]|Y|P|Q|N|A|M|VC)
<<- /conj/ morph(\2, ":[12]s") and not value(>1, "|je|tu|") -2>> =suggVerb(\2, ":3s") # Conjugaison erronée. Ce verbe devrait être à la 3ᵉ personne.
<<- /conj/ __else__ and morph(\2, ":[12]p") and not value(>1, "|nous|vous|") -2>> =suggVerb(\2, ":3p") # Conjugaison erronée. Ce verbe devrait être à la 3ᵉ personne.
TEST: Qu’est-ce que tu crois que {{deviens}} réellement, immanquablement et subitement cet homme après une telle dérouillée ?
TEST: peu importe ce que tu crois du lieu où l’{{abandonnerais}} ce salopard…
TEST: ces sciences, ces religions, ces philosophies ne sont que contes destinés à nous donner l’illusion de la connaissance.
TEST: Le ministre de l’Intérieur a estimé que Calais avait vécu “un degré de violence jamais connu”.
__[i]/conj(conj_puisse)__
(puisses?) ({w_2}) @@0,$
<<- isStart() >>>
<<- morph(\2, ":D.*:p", False) -1>> puissent # Conjugaison erronée. Ce verbe devrait s’accorder au substantif qui le suit.
<<- __else__ and \1.endswith("s") and \2 != "tu" and not before(r"(?i)\btu ")
-1>> puisse # Conjugaison erronée. Sujet “tu” introuvable.
TEST: à des règles aussi absurdes que précises
TEST: {{puisse}} les hommes enfin comprendre leurs erreurs. ->> puissent
TEST: {{puisses}} notre ennemi trembler de peur devant notre courage. ->> puisse
@@@@
@@@@
@@@@
@@@@
@@@@GRAPH: last_graph _
@@@@
@@@@
@@@@
@@@@
!!
!!
!!!! Verbe auxiliaire !!
!!
!!
__conf_auxiliaire_avoir_être__
[/-je|/-tu|/-il|/-on] @:V.......e_.*:Q
<<- /conf/ analyse(\1, ">avoir/", "", 0, -3) -1>> _ # Incohérence. La forme verbale “\2” ne peut pas être utilisé avec l’auxiliaire “avoir”, seulement avec l’auxiliaire “être”.
/-ils @:V.......e_.*:Q
<<- /conf/ analyse(\1, ">avoir/", "", 0, -4) -1>> _ # Incohérence. La forme verbale “\2” ne peut pas être utilisé avec l’auxiliaire “avoir”, seulement avec l’auxiliaire “être”.
|