Grammalecte  Check-in [afed5163f0]

Overview
Comment:merge trunk
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | tbso
Files: files | file ages | folders
SHA3-256: afed5163f03d13edcce114ec38f634bd9d75a50a674465b5c7a2d4f013bc5561
User & Date: olr on 2020-01-20 10:16:07
Other Links: branch diff | manifest | tags
Context
2020-01-20
12:20
[tb] dictionaries: spelling option check-in: 97d7e3a4f3 user: olr tags: tb, tbso
10:16
merge trunk check-in: afed5163f0 user: olr tags: tbso
10:09
[fr] faux positif et ajustements check-in: d740296469 user: olr tags: fr, trunk
2020-01-02
09:37
[tb] option for spelling selection check-in: 13c026add9 user: olr tags: tb, tbso
Changes

Modified gc_lang/fr/build_data.py from [c256239800] to [c910fde1c7].

5
6
7
8
9
10
11

12
13
14
15
16
17
18
..
52
53
54
55
56
57
58

59


60
61
62
63
64
65
66
...
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225

226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
# by Olivier R.
# License: MPL 2

import json
import os
import itertools
import traceback


import graphspell.ibdawg as ibdawg
from graphspell.echo import echo
from graphspell.str_transform import defineSuffixCode
import graphspell.tokenizer as tkz


................................................................................
            oDict = ibdawg.IBDAWG("fr-allvars.bdic")
        except:
            traceback.print_exc()


def makeDictionaries (sp, sVersion):
    with cd(sp+"/dictionnaire"):

        os.system("genfrdic.py -s -gl -v "+sVersion)




def makeConj (sp, bJS=False):
    print("> Conjugaisons ", end="")
    print("(Python et JavaScript)"  if bJS  else "(Python seulement)")
    dVerb = {}
    lVinfo = []; dVinfo = {}; nVinfo = 0
................................................................................
            hDst.write('    "dVerbNames": ' + json.dumps(dVerbNames, ensure_ascii=False) + "\n")
            hDst.write("}\n")


def makeMfsp (sp, bJS=False):
    print("> Pluriel/singulier/masculin/féminin ", end="")
    print("(Python et JavaScript)"  if bJS  else "(Python seulement)")
    aPlurS = set()
    dTag = {}
    lTagMasForm = []
    lTagMiscPlur = []
    dMiscPlur = {}
    dMasForm = {}
    lTag = []
    lTagMasPl = []
    for n, sLine in enumerate(readFile(sp+"/data/dictDecl.txt")):
        nTab = sLine.count("\t")
        if nTab == 1:
            # new entry
            lTag.clear()
            lTagMasPl.clear()
            sLemma, sFlags = sLine.split("\t")
            if sFlags.startswith("S"):
                cType = "s"
            elif sFlags.startswith("X"):
                cType = "p"
            elif sFlags.startswith("A"):
                cType = "p"
            elif sFlags.startswith("I"):
                cType = "p"
            elif sFlags.startswith("F"):
                cType = "m"
            elif sFlags.startswith("W"):
                cType = "m"
            else:
                cType = "?"
                print(" > inconnu : " + sFlags)
        elif nTab == 2:
            if cType == "s":

                continue
            _, sFlexTags, sFlex = sLine.split("\t")
            if cType == "p":
                if sFlexTags.endswith("pl"):
                    lTag.append(defineSuffixCode(sLemma, sFlex))
            elif cType == "m":
                if sFlexTags.endswith("mas sg") or sFlexTags.endswith("mas inv"):
                    lTag.append(defineSuffixCode(sLemma, sFlex))
                if sFlexTags.endswith("mas pl"):
                    lTagMasPl.append(defineSuffixCode(sLemma, sFlex))
            else:
                print("erreur: " + cType)
        elif sLine == "$":
            if cType == "s":
                aPlurS.add(sLemma)
            elif cType == "p":
                sTag = "|".join(lTag)
                if sTag not in dTag:
                    dTag[sTag] = len(lTagMiscPlur)
                    lTagMiscPlur.append(sTag)
                dMiscPlur[sLemma] = dTag[sTag]
            elif cType == "m":
                sTag = "|".join(lTag)
                if lTagMasPl:
                    sTag += "/" + "|".join(lTagMasPl)
                if sTag not in dTag:
                    dTag[sTag] = len(lTagMasForm)
                    lTagMasForm.append(sTag)
                dMasForm[sLemma] = dTag[sTag]
            else:
                print("unknown tag: " + ctype)
        else:
            print("# Error - unknown line #", n)

    ## write file for Python
    sCode = "# generated data (do not edit)\n\n" + \
            "# list of affix codes\n" + \
            "lTagMiscPlur = " + str(lTagMiscPlur) + "\n" + \
            "lTagMasForm = " + str(lTagMasForm) + "\n\n" + \
            "# dictionary of words with uncommon plurals (-x, -ux, english, latin and italian plurals) and tags to generate them\n" + \
            "dMiscPlur = " + str(dMiscPlur) + "\n\n" + \
            "# dictionary of feminine forms and tags to generate masculine forms (singular and plural)\n" + \
            "dMasForm = " + str(dMasForm) + "\n"
    open(sp+"/modules/mfsp_data.py", "w", encoding="utf-8", newline="\n").write(sCode)

    if bJS:
        ## write file for JavaScript
        sCode = '{\n' + \
                '    "lTagMiscPlur": ' +  json.dumps(lTagMiscPlur, ensure_ascii=False) + ",\n" + \
                '    "lTagMasForm": ' +  json.dumps(lTagMasForm, ensure_ascii=False) + ",\n" + \
                '    "dMiscPlur": ' +  json.dumps(dMiscPlur, ensure_ascii=False) + ",\n" + \
                '    "dMasForm": ' +  json.dumps(dMasForm, ensure_ascii=False) + "\n}"
        open(sp+"/modules-js/mfsp_data.json", "w", encoding="utf-8", newline="\n").write(sCode)


def makePhonetTable (sp, bJS=False):
    print("> Correspondances phonétiques ", end="")







>







 







>
|
>
>







 







|

|
|



|





|


|

|

|

|

|

|




|
>


|


|
|

|
|



|

|





|
|
<
<

|
|










|










|







5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
..
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
...
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253


254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
# by Olivier R.
# License: MPL 2

import json
import os
import itertools
import traceback
import platform

import graphspell.ibdawg as ibdawg
from graphspell.echo import echo
from graphspell.str_transform import defineSuffixCode
import graphspell.tokenizer as tkz


................................................................................
            oDict = ibdawg.IBDAWG("fr-allvars.bdic")
        except:
            traceback.print_exc()


def makeDictionaries (sp, sVersion):
    with cd(sp+"/dictionnaire"):
        if platform.system() == "Windows":
            os.system("genfrdic.py -s -gl -v "+sVersion)
        else:
            os.system("python3 ./genfrdic.py -s -gl -v "+sVersion)


def makeConj (sp, bJS=False):
    print("> Conjugaisons ", end="")
    print("(Python et JavaScript)"  if bJS  else "(Python seulement)")
    dVerb = {}
    lVinfo = []; dVinfo = {}; nVinfo = 0
................................................................................
            hDst.write('    "dVerbNames": ' + json.dumps(dVerbNames, ensure_ascii=False) + "\n")
            hDst.write("}\n")


def makeMfsp (sp, bJS=False):
    print("> Pluriel/singulier/masculin/féminin ", end="")
    print("(Python et JavaScript)"  if bJS  else "(Python seulement)")
    aPlurS = set()      # pluriels en -s
    dTag = {}
    lTagFemForm = []
    lTagMiscPlur = []   # pluriels spéciaux
    dMiscPlur = {}
    dMasForm = {}
    lTag = []
    lTagFemPl = []
    for n, sLine in enumerate(readFile(sp+"/data/dictDecl.txt")):
        nTab = sLine.count("\t")
        if nTab == 1:
            # new entry
            lTag.clear()
            lTagFemPl.clear()
            sLemma, sFlags = sLine.split("\t")
            if sFlags.startswith("S"):
                cType = "sg"
            elif sFlags.startswith("X"):
                cType = "pl"
            elif sFlags.startswith("A"):
                cType = "pl"
            elif sFlags.startswith("I"):
                cType = "pl"
            elif sFlags.startswith("F"):
                cType = "mf"
            elif sFlags.startswith("W"):
                cType = "mf"
            else:
                cType = "?"
                print(" > inconnu : " + sFlags)
        elif nTab == 2:
            if cType == "sg":
                # nothing to do
                continue
            _, sFlexTags, sFlex = sLine.split("\t")
            if cType == "pl":
                if sFlexTags.endswith("pl"):
                    lTag.append(defineSuffixCode(sLemma, sFlex))
            elif cType == "mf":
                if sFlexTags.endswith("fem sg"):
                    lTag.append(defineSuffixCode(sLemma, sFlex))
                if sFlexTags.endswith("fem pl"):
                    lTagFemPl.append(defineSuffixCode(sLemma, sFlex))
            else:
                print("erreur: " + cType)
        elif sLine == "$":
            if cType == "sg":
                aPlurS.add(sLemma)
            elif cType == "pl":
                sTag = "|".join(lTag)
                if sTag not in dTag:
                    dTag[sTag] = len(lTagMiscPlur)
                    lTagMiscPlur.append(sTag)
                dMiscPlur[sLemma] = dTag[sTag]
            elif cType == "mf":
                sTag = "|".join(lTag) + "/" + "|".join(lTagFemPl)


                if sTag not in dTag:
                    dTag[sTag] = len(lTagFemForm)
                    lTagFemForm.append(sTag)
                dMasForm[sLemma] = dTag[sTag]
            else:
                print("unknown tag: " + ctype)
        else:
            print("# Error - unknown line #", n)

    ## write file for Python
    sCode = "# generated data (do not edit)\n\n" + \
            "# list of affix codes\n" + \
            "lTagMiscPlur = " + str(lTagMiscPlur) + "\n" + \
            "lTagFemForm = " + str(lTagFemForm) + "\n\n" + \
            "# dictionary of words with uncommon plurals (-x, -ux, english, latin and italian plurals) and tags to generate them\n" + \
            "dMiscPlur = " + str(dMiscPlur) + "\n\n" + \
            "# dictionary of feminine forms and tags to generate masculine forms (singular and plural)\n" + \
            "dMasForm = " + str(dMasForm) + "\n"
    open(sp+"/modules/mfsp_data.py", "w", encoding="utf-8", newline="\n").write(sCode)

    if bJS:
        ## write file for JavaScript
        sCode = '{\n' + \
                '    "lTagMiscPlur": ' +  json.dumps(lTagMiscPlur, ensure_ascii=False) + ",\n" + \
                '    "lTagFemForm": ' +  json.dumps(lTagFemForm, ensure_ascii=False) + ",\n" + \
                '    "dMiscPlur": ' +  json.dumps(dMiscPlur, ensure_ascii=False) + ",\n" + \
                '    "dMasForm": ' +  json.dumps(dMasForm, ensure_ascii=False) + "\n}"
        open(sp+"/modules-js/mfsp_data.json", "w", encoding="utf-8", newline="\n").write(sCode)


def makePhonetTable (sp, bJS=False):
    print("> Correspondances phonétiques ", end="")

Modified gc_lang/fr/config.ini from [d285c114a4] to [04ab83d779].

35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
# Finite state automaton compression: 1, 2 (experimental) or 3 (experimental)
fsa_method = 1
# stemming method: S for suffixes only, A for prefixes and suffixes
stemming_method = S

# LibreOffice
unopkg = C:/Program Files/LibreOffice/program/unopkg.com
oxt_version = 6.5.1
oxt_identifier = French.linguistic.resources.from.Dicollecte.by.OlivierR
oxt_update_info_URL = https://grammalecte.net/grammalecte/oxt/grammalecte.update.xml

# Firefox
fx_identifier = French-GC@grammalecte.net
fx_name = Grammalecte [fr]








|







35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
# Finite state automaton compression: 1, 2 (experimental) or 3 (experimental)
fsa_method = 1
# stemming method: S for suffixes only, A for prefixes and suffixes
stemming_method = S

# LibreOffice
unopkg = C:/Program Files/LibreOffice/program/unopkg.com
oxt_version = 7.0
oxt_identifier = French.linguistic.resources.from.Dicollecte.by.OlivierR
oxt_update_info_URL = https://grammalecte.net/grammalecte/oxt/grammalecte.update.xml

# Firefox
fx_identifier = French-GC@grammalecte.net
fx_name = Grammalecte [fr]

Modified gc_lang/fr/data/dictConj.txt from [b270799f57] to [db37673e30].

10269
10270
10271
10272
10273
10274
10275
10276
10277
10278
10279
10280
10281
10282
10283
.....
94183
94184
94185
94186
94187
94188
94189
94190
94191
94192
94193
94194
94195
94196
94197
......
210978
210979
210980
210981
210982
210983
210984
210985
210986
210987
210988
210989
210990
210991
210992
_	impe 1pl	agendons
_	impe 2pl	agendez
_	ppas mas sg	agendé
_	ppas mas pl	agendés
_	ppas fem sg	agendée
_	ppas fem pl	agendées
$
agenouiller	1____p_e_
_	infi	agenouiller
_	ppre	agenouillant
_	ipre 1sg	agenouille
_	ipre 3sg	agenouille
_	spre 1sg	agenouille
_	spre 3sg	agenouille
_	ipre 1isg	agenouillè
................................................................................
_	simp 2pl	créchassiez
_	simp 3pl	créchassent
_	impe 2sg	crèche
_	impe 1pl	créchons
_	impe 2pl	créchez
_	ppas epi inv	créché
$
crédibiliser	1__t___zz
_	infi	crédibiliser
_	ppre	crédibilisant
_	ipre 1sg	crédibilise
_	ipre 3sg	crédibilise
_	spre 1sg	crédibilise
_	spre 3sg	crédibilise
_	ipre 1isg	crédibilisè
................................................................................
_	impe 1pl	fâchons
_	impe 2pl	fâchez
_	ppas mas sg	fâché
_	ppas mas pl	fâchés
_	ppas fem sg	fâchée
_	ppas fem pl	fâchées
$
faciliter	1__t_q_zz
_	infi	faciliter
_	ppre	facilitant
_	ipre 1sg	facilite
_	ipre 3sg	facilite
_	spre 1sg	facilite
_	spre 3sg	facilite
_	ipre 1isg	facilitè







|







 







|







 







|







10269
10270
10271
10272
10273
10274
10275
10276
10277
10278
10279
10280
10281
10282
10283
.....
94183
94184
94185
94186
94187
94188
94189
94190
94191
94192
94193
94194
94195
94196
94197
......
210978
210979
210980
210981
210982
210983
210984
210985
210986
210987
210988
210989
210990
210991
210992
_	impe 1pl	agendons
_	impe 2pl	agendez
_	ppas mas sg	agendé
_	ppas mas pl	agendés
_	ppas fem sg	agendée
_	ppas fem pl	agendées
$
agenouiller	1__t_q_ea
_	infi	agenouiller
_	ppre	agenouillant
_	ipre 1sg	agenouille
_	ipre 3sg	agenouille
_	spre 1sg	agenouille
_	spre 3sg	agenouille
_	ipre 1isg	agenouillè
................................................................................
_	simp 2pl	créchassiez
_	simp 3pl	créchassent
_	impe 2sg	crèche
_	impe 1pl	créchons
_	impe 2pl	créchez
_	ppas epi inv	créché
$
crédibiliser	1__t_q__a
_	infi	crédibiliser
_	ppre	crédibilisant
_	ipre 1sg	crédibilise
_	ipre 3sg	crédibilise
_	spre 1sg	crédibilise
_	spre 3sg	crédibilise
_	ipre 1isg	crédibilisè
................................................................................
_	impe 1pl	fâchons
_	impe 2pl	fâchez
_	ppas mas sg	fâché
_	ppas mas pl	fâchés
_	ppas fem sg	fâchée
_	ppas fem pl	fâchées
$
faciliter	1__t_q__a
_	infi	faciliter
_	ppre	facilitant
_	ipre 1sg	facilite
_	ipre 3sg	facilite
_	spre 1sg	facilite
_	spre 3sg	facilite
_	ipre 1isg	facilitè

Modified gc_lang/fr/data/dictDecl.txt from [79ad5a7d2e] to [e56b63ba18].

more than 10,000 changes

Modified gc_lang/fr/dictionnaire/genfrdic.py from [a9947d27ac] to [dee99d1546].

816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
            sErr += 'drapeau inutile'
        if self.iz == '' and re.match(r"[SXAI](?!=)", self.flags) and self.po:
            sErr += '[is] vide'
        if re.match(r"pl|sg|inv", self.iz):
            sErr += '[is] incomplet'
        if re.match(r"[FW]", self.flags) and re.search(r"epi|mas|fem|inv|sg|pl", self.iz):
            sErr += '[is] incohérent'
        if re.match(r"[FW]", self.flags) and re.search(r"[^eë]$", self.lemma):
            sErr += "fin de lemme inapproprié"
        if re.match(r".\*", self.flags) and re.match(r"[bcdfgjklmnpqrstvwxz]", self.lemma):
            sErr += 'drapeau pour lemme commençant par une voyelle'
        if re.search(r"pl|sg|inv", self.iz) and re.match(r"[SXAIFW](?!=)", self.flags):
            sErr += '[is] incohérent'
        if re.search(r"nom|adj", self.po) and re.match(r"(?i)[aâàäáeéèêëiîïíìoôöóòuûüúù]", self.lemma) and re.match("[SFWXAI][.]", self.flags) \
           and "pel" not in self.lx:
            sErr += 'le drapeau derait finir avec *'







<
<







816
817
818
819
820
821
822


823
824
825
826
827
828
829
            sErr += 'drapeau inutile'
        if self.iz == '' and re.match(r"[SXAI](?!=)", self.flags) and self.po:
            sErr += '[is] vide'
        if re.match(r"pl|sg|inv", self.iz):
            sErr += '[is] incomplet'
        if re.match(r"[FW]", self.flags) and re.search(r"epi|mas|fem|inv|sg|pl", self.iz):
            sErr += '[is] incohérent'


        if re.match(r".\*", self.flags) and re.match(r"[bcdfgjklmnpqrstvwxz]", self.lemma):
            sErr += 'drapeau pour lemme commençant par une voyelle'
        if re.search(r"pl|sg|inv", self.iz) and re.match(r"[SXAIFW](?!=)", self.flags):
            sErr += '[is] incohérent'
        if re.search(r"nom|adj", self.po) and re.match(r"(?i)[aâàäáeéèêëiîïíìoôöóòuûüúù]", self.lemma) and re.match("[SFWXAI][.]", self.flags) \
           and "pel" not in self.lx:
            sErr += 'le drapeau derait finir avec *'

Modified gc_lang/fr/dictionnaire/orthographe/FRANCAIS.dic from [49af9c5541] to [314e14d7d5].

1
2
3
4
5
6
7
8
....
1855
1856
1857
1858
1859
1860
1861
1862
1863
1864
1865
1866
1867
1868
1869
1870
....
4862
4863
4864
4865
4866
4867
4868
4869
4870
4871
4872
4873
4874
4875
4876
.....
27158
27159
27160
27161
27162
27163
27164
27165
27166
27167
27168
27169
27170
27171
27172
.....
36106
36107
36108
36109
36110
36111
36112

36113
36114
36115
36116
36117
36118
36119
.....
60311
60312
60313
60314
60315
60316
60317
60318

60319
60320
60321
60322
60323
60324
60325
85651
×	po:sign	se:math	di:*	id:233045
Ω/U.||--	po:nom	is:mas	is:inv	lx:symb	se:élec	di:*	fq:0	id:201049
_	po:div	di:*	fq:0	id:231410
-	po:ponc	po:sign	se:@	di:*	id:233042
,	po:ponc	se:@	di:*	id:233025
;	po:ponc	se:@	di:*	id:233027
:	po:ponc	se:@	di:*	id:233028
................................................................................
agressivement/D'Q'	po:adv	di:*	fq:5	id:127095
agressivité/S*()	po:nom	is:fem	di:*	fq:6	id:127096
agreste/S*()	po:nom	po:adj	is:epi	di:*	fq:6	id:127098
agricher/a2p+()	po:v1__t___zz	di:*	fq:1	id:127099
agricole/S*()	po:adj	is:epi	se:agri	di:*	fq:8	id:127100
agriculteur/Fi()	po:nom	se:agri	di:*	fq:7	id:127101
agriculture/S*()	po:nom	is:fem	se:agri	di:*	fq:7	id:127102
agrienvironnemental/W.()	po:adj	di:X	fq:4	id:227960
agri-environnemental/W.()	po:adj	di:X	fq:2	id:227954
agriffer/a3p+()	po:v1____p_e_	di:*	fq:3	id:127103
agrile/S*()	po:nom	is:mas	di:*	fq:3	id:127104
agrion/S*()	po:nom	is:mas	di:*	fq:3	id:127105
agriote/S*()	po:nom	is:mas	se:zool	et:lat	di:*	fq:3	id:127106
agripaume/S*()	po:nom	is:fem	di:*	fq:3	id:127107
agrippant/F*()	po:adj	di:*	fq:3	id:211526
agrippement/S*()	po:nom	is:mas	di:*	fq:4	id:203503
................................................................................
apostropher/a4p+()	po:v1__t_q_zz	di:*	fq:5	id:128662
apothécie/S*()	po:nom	is:fem	se:bot	di:*	fq:4	id:216574
apothème/S*()	po:nom	is:mas	di:*	fq:4	id:128666
apothéose/S*()	po:nom	is:fem	di:*	fq:6	id:128667
apothéotique/S*()	po:adj	is:epi	di:*	fq:3	id:222089
apothicaire/S*()	po:nom	is:epi	di:*	fq:6	id:128665
apothicairerie/S*()	po:nom	is:fem	lx:vx	se:pharma	di:*	fq:5	id:225302
apôtre/S*()	po:nom	se:chris	di:*	fq:7	id:128868
apotropaïque/S*()	po:adj	is:epi	se:occult	et:grec	di:*	fq:4	id:222194
appairage/S*()	po:nom	is:mas	se:@	se:info	se:hitech	di:*	fq:3	id:210318
appairer/a2p+()	po:v1__t___zz	di:*	fq:3	id:128668
Appalaches	po:nom	is:fem	is:pl	se:mont	di:*	fq:5	id:206850
appalachien/F+()	po:adj	di:*	fq:5	id:128670
appaméen/F+()	po:nom	po:adj	se:gent	di:X	fq:3	id:227761
apparaitre/wQq+()	po:v3_i_n__e_	di:R	fq:6	id:128671
................................................................................
écocitoyenneté/S*()	po:nom	is:fem	di:*	fq:3	id:204180
écoconception/S*()	po:nom	is:fem	lx:néo	se:écolo	di:*	fq:3	id:217353
éco-conception/S*()	po:nom	is:fem	lx:néo	se:écolo	di:C	fq:2	id:217352
écoconduite/S*()	po:nom	is:fem	lx:néo	se:écolo	di:*	fq:2	id:229102
écoconstruction/S*()	po:nom	is:fem	lx:néo	di:*	fq:3	id:215343
éco-construction/S*()	po:nom	is:fem	se:écolo	se:constr	di:C	fq:2	id:227974
écoemballage/S*()	po:nom	is:mas	lx:néo	di:*	fq:0	id:216353
éco-environnemental/W.()	po:adj	di:X	fq:1	id:227832
écœurant/F*()	po:adj	di:*	fq:5	id:181043
écœurement/S*()	po:nom	is:mas	di:*	fq:5	id:181044
écœurer/a2p+()	po:v1_it___zz	di:*	fq:5	id:181045
écogeste/S*()	po:nom	is:mas	lx:néo	se:écolo	di:*	fq:1	id:223972
éco-gestion/S*()	po:nom	is:fem	lx:abr	di:*	fq:1	id:232361
écohabitat/S*()	po:nom	is:mas	lx:néo	di:*	fq:1	id:205518
écoinçon/S*()	po:nom	is:mas	di:*	fq:5	id:206475
................................................................................
géophage/S.()	po:nom	po:adj	is:epi	di:*	fq:4	id:150000
géophagie/S.()	po:nom	is:fem	di:*	fq:4	id:206881
géophile/S.()	po:nom	is:mas	di:*	fq:3	id:150001
géophone/S.()	po:nom	is:mas	di:*	fq:4	id:200765
géophysicien/F,()	po:nom	di:*	fq:5	id:150002
géophysique/S.()	po:nom	is:fem	di:*	fq:5	id:212041
géophysique/S.()	po:adj	is:epi	di:*	fq:5	id:150003

géopoliticien/F,()	po:nom	di:*	fq:4	id:207147
géopolitique/S.()	po:nom	is:fem	di:*	fq:6	id:212042
géopolitique/S.()	po:adj	is:epi	di:*	fq:6	id:150004
géopolitiquement	po:adv	se:polit	di:*	fq:4	id:221484
géopolitologue/S.()	po:nom	is:epi	di:*	fq:3	id:206283
géopotentiel/F,()	po:adj	di:*	fq:4	id:215780
géoréférencement/S.()	po:nom	is:mas	di:X	fq:3	id:232044
................................................................................
personne/S.()	po:nom	is:fem	di:*	fq:8	id:163241
personne	po:mg	po:proneg	is:mas	is:sg	se:@	di:*	fq:8	id:163242
personnel/F,()	po:adj	di:*	fq:8	id:163243
personnel/S.()	po:nom	is:mas	di:*	fq:7	id:213340
personnellement	po:adv	di:*	fq:7	id:163244
personnification/S.()	po:nom	is:fem	di:*	fq:6	id:163245
personnifier/a0p+()	po:v1__t___zz	di:*	fq:6	id:163246
perspectif/F.()	po:nom	po:adj	di:*	fq:7	id:163248

perspectivement	po:adv	di:*	fq:4	id:163249
perspectivisme/S.()	po:nom	is:mas	di:*	fq:4	id:163250
perspicace/S.()	po:nom	po:adj	is:epi	di:*	fq:6	id:163251
perspicacement	po:adv	lx:rare	di:*	fq:3	id:209907
perspicacité/S.()	po:nom	is:fem	di:*	fq:6	id:163252
perspirant/F.()	po:adj	di:*	fq:1	id:231686
perspiration/S.()	po:nom	is:fem	di:*	fq:5	id:163253
|







 







|
|







 







|







 







|







 







>







 







|
>







1
2
3
4
5
6
7
8
....
1855
1856
1857
1858
1859
1860
1861
1862
1863
1864
1865
1866
1867
1868
1869
1870
....
4862
4863
4864
4865
4866
4867
4868
4869
4870
4871
4872
4873
4874
4875
4876
.....
27158
27159
27160
27161
27162
27163
27164
27165
27166
27167
27168
27169
27170
27171
27172
.....
36106
36107
36108
36109
36110
36111
36112
36113
36114
36115
36116
36117
36118
36119
36120
.....
60312
60313
60314
60315
60316
60317
60318
60319
60320
60321
60322
60323
60324
60325
60326
60327
85653
×	po:sign	se:math	di:*	id:233045
Ω/U.||--	po:nom	is:mas	is:inv	lx:symb	se:élec	di:*	fq:0	id:201049
_	po:div	di:*	fq:0	id:231410
-	po:ponc	po:sign	se:@	di:*	id:233042
,	po:ponc	se:@	di:*	id:233025
;	po:ponc	se:@	di:*	id:233027
:	po:ponc	se:@	di:*	id:233028
................................................................................
agressivement/D'Q'	po:adv	di:*	fq:5	id:127095
agressivité/S*()	po:nom	is:fem	di:*	fq:6	id:127096
agreste/S*()	po:nom	po:adj	is:epi	di:*	fq:6	id:127098
agricher/a2p+()	po:v1__t___zz	di:*	fq:1	id:127099
agricole/S*()	po:adj	is:epi	se:agri	di:*	fq:8	id:127100
agriculteur/Fi()	po:nom	se:agri	di:*	fq:7	id:127101
agriculture/S*()	po:nom	is:fem	se:agri	di:*	fq:7	id:127102
agrienvironnemental/W*()	po:adj	di:X	fq:4	id:227960
agri-environnemental/W*()	po:adj	di:X	fq:2	id:227954
agriffer/a3p+()	po:v1____p_e_	di:*	fq:3	id:127103
agrile/S*()	po:nom	is:mas	di:*	fq:3	id:127104
agrion/S*()	po:nom	is:mas	di:*	fq:3	id:127105
agriote/S*()	po:nom	is:mas	se:zool	et:lat	di:*	fq:3	id:127106
agripaume/S*()	po:nom	is:fem	di:*	fq:3	id:127107
agrippant/F*()	po:adj	di:*	fq:3	id:211526
agrippement/S*()	po:nom	is:mas	di:*	fq:4	id:203503
................................................................................
apostropher/a4p+()	po:v1__t_q_zz	di:*	fq:5	id:128662
apothécie/S*()	po:nom	is:fem	se:bot	di:*	fq:4	id:216574
apothème/S*()	po:nom	is:mas	di:*	fq:4	id:128666
apothéose/S*()	po:nom	is:fem	di:*	fq:6	id:128667
apothéotique/S*()	po:adj	is:epi	di:*	fq:3	id:222089
apothicaire/S*()	po:nom	is:epi	di:*	fq:6	id:128665
apothicairerie/S*()	po:nom	is:fem	lx:vx	se:pharma	di:*	fq:5	id:225302
apôtre/S*()	po:nom	is:epi	se:chris	di:*	fq:7	id:128868
apotropaïque/S*()	po:adj	is:epi	se:occult	et:grec	di:*	fq:4	id:222194
appairage/S*()	po:nom	is:mas	se:@	se:info	se:hitech	di:*	fq:3	id:210318
appairer/a2p+()	po:v1__t___zz	di:*	fq:3	id:128668
Appalaches	po:nom	is:fem	is:pl	se:mont	di:*	fq:5	id:206850
appalachien/F+()	po:adj	di:*	fq:5	id:128670
appaméen/F+()	po:nom	po:adj	se:gent	di:X	fq:3	id:227761
apparaitre/wQq+()	po:v3_i_n__e_	di:R	fq:6	id:128671
................................................................................
écocitoyenneté/S*()	po:nom	is:fem	di:*	fq:3	id:204180
écoconception/S*()	po:nom	is:fem	lx:néo	se:écolo	di:*	fq:3	id:217353
éco-conception/S*()	po:nom	is:fem	lx:néo	se:écolo	di:C	fq:2	id:217352
écoconduite/S*()	po:nom	is:fem	lx:néo	se:écolo	di:*	fq:2	id:229102
écoconstruction/S*()	po:nom	is:fem	lx:néo	di:*	fq:3	id:215343
éco-construction/S*()	po:nom	is:fem	se:écolo	se:constr	di:C	fq:2	id:227974
écoemballage/S*()	po:nom	is:mas	lx:néo	di:*	fq:0	id:216353
éco-environnemental/W*()	po:adj	di:X	fq:1	id:227832
écœurant/F*()	po:adj	di:*	fq:5	id:181043
écœurement/S*()	po:nom	is:mas	di:*	fq:5	id:181044
écœurer/a2p+()	po:v1_it___zz	di:*	fq:5	id:181045
écogeste/S*()	po:nom	is:mas	lx:néo	se:écolo	di:*	fq:1	id:223972
éco-gestion/S*()	po:nom	is:fem	lx:abr	di:*	fq:1	id:232361
écohabitat/S*()	po:nom	is:mas	lx:néo	di:*	fq:1	id:205518
écoinçon/S*()	po:nom	is:mas	di:*	fq:5	id:206475
................................................................................
géophage/S.()	po:nom	po:adj	is:epi	di:*	fq:4	id:150000
géophagie/S.()	po:nom	is:fem	di:*	fq:4	id:206881
géophile/S.()	po:nom	is:mas	di:*	fq:3	id:150001
géophone/S.()	po:nom	is:mas	di:*	fq:4	id:200765
géophysicien/F,()	po:nom	di:*	fq:5	id:150002
géophysique/S.()	po:nom	is:fem	di:*	fq:5	id:212041
géophysique/S.()	po:adj	is:epi	di:*	fq:5	id:150003
géophyte/S.()	po:adj	is:epi	se:bot	di:*	id:235009
géopoliticien/F,()	po:nom	di:*	fq:4	id:207147
géopolitique/S.()	po:nom	is:fem	di:*	fq:6	id:212042
géopolitique/S.()	po:adj	is:epi	di:*	fq:6	id:150004
géopolitiquement	po:adv	se:polit	di:*	fq:4	id:221484
géopolitologue/S.()	po:nom	is:epi	di:*	fq:3	id:206283
géopotentiel/F,()	po:adj	di:*	fq:4	id:215780
géoréférencement/S.()	po:nom	is:mas	di:X	fq:3	id:232044
................................................................................
personne/S.()	po:nom	is:fem	di:*	fq:8	id:163241
personne	po:mg	po:proneg	is:mas	is:sg	se:@	di:*	fq:8	id:163242
personnel/F,()	po:adj	di:*	fq:8	id:163243
personnel/S.()	po:nom	is:mas	di:*	fq:7	id:213340
personnellement	po:adv	di:*	fq:7	id:163244
personnification/S.()	po:nom	is:fem	di:*	fq:6	id:163245
personnifier/a0p+()	po:v1__t___zz	di:*	fq:6	id:163246
perspectif/F.()	po:adj	di:*	fq:7	id:163248
perspective/S.()	po:nom	is:fem	di:*	id:235008
perspectivement	po:adv	di:*	fq:4	id:163249
perspectivisme/S.()	po:nom	is:mas	di:*	fq:4	id:163250
perspicace/S.()	po:nom	po:adj	is:epi	di:*	fq:6	id:163251
perspicacement	po:adv	lx:rare	di:*	fq:3	id:209907
perspicacité/S.()	po:nom	is:fem	di:*	fq:6	id:163252
perspirant/F.()	po:adj	di:*	fq:1	id:231686
perspiration/S.()	po:nom	is:fem	di:*	fq:5	id:163253

Modified gc_lang/fr/dictionnaire/orthographe/FRANCAIS_5.aff from [ffd94ca04c] to [72dbf0e245].

635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
...
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
...
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
SFX I.   e          i                   e                   is:pl           di:C
SFX I.   en         ina                 en                  is:pl           di:C
SFX I.   o          i                   o                   is:pl           di:C
SFX I.   um         a                   um                  is:pl           di:C
SFX I.   us         i                   us                  is:pl           di:C

# graphies féminines, pluriels en -s (sans doublement de consonnes)
SFX F. N 31
SFX F.   0          0                   [^sxz]              is:mas is:sg
SFX F.   0          s                   [^sxz]              is:mas is:pl
SFX F.   0          0                   [sxz]               is:mas is:inv
SFX F.   0          e                   [éiïudhklsz]        is:fem is:sg
SFX F.   0          es                  [éiïudhklsz]        is:fem is:pl
SFX F.   0          e                   [^e][nr]            is:fem is:sg
SFX F.   0          es                  [^e][nr]            is:fem is:pl
SFX F.   0          e                   [aionuc]t           is:fem is:sg
SFX F.   0          es                  [aionuc]t           is:fem is:pl
SFX F.   ec         èche                sec                 is:fem is:sg
SFX F.   ec         èches               sec                 is:fem is:pl
SFX F.   ef         ève                 ef                  is:fem is:sg
SFX F.   ef         èves                ef                  is:fem is:pl
SFX F.   f          ve                  [iïu]f              is:fem is:sg
SFX F.   f          ves                 [iïu]f              is:fem is:pl
SFX F.   0          e                   of                  is:fem is:sg
................................................................................
SFX Fx   is         iches               frais               is:fem is:pl        di:R
SFX Fx   0          0                   pignouf             is:mas is:sg
SFX Fx   0          s                   pignouf             is:mas is:pl
SFX Fx   0          e                   pignouf             is:fem is:sg
SFX Fx   0          es                  pignouf             is:fem is:pl
SFX Fx   0          0                   in                  is:mas is:sg
SFX Fx   0          s                   in                  is:mas is:pl
SFX Fx   in         igne                in                  is:mas is:sg
SFX Fx   in         ignes               in                  is:mas is:pl
SFX Fx   0          e                   malin               is:mas is:sg
SFX Fx   0          es                  malin               is:mas is:pl
SFX Fx   0          0                   gu                  is:mas is:sg
SFX Fx   0          s                   gu                  is:mas is:pl
SFX Fx   0          ë                   gu                  is:fem is:sg        di:M
SFX Fx   0          ës                  gu                  is:fem is:pl        di:M
SFX Fx   u          üe                  gu                  is:fem is:sg        di:R
SFX Fx   u          ües                 gu                  is:fem is:pl        di:R

................................................................................
SFX I*   o          i/D'Q'              o                   is:pl           di:C
SFX I*   um         um/D'L'Q'           um                  is:sg
SFX I*   um         ums/D'Q'            um                  is:pl
SFX I*   um         a/D'Q'              um                  is:pl           di:C
SFX I*   us         us/D'L'Q'           us                  is:inv
SFX I*   us         i/D'Q'              us                  is:pl           di:C

SFX F* Y 33
SFX F*   0          0/L'D'Q'            [^sxz]              is:mas is:sg
SFX F*   0          s/D'Q'              [^sxz]              is:mas is:pl
SFX F*   0          0/L'D'Q'            [sxz]               is:mas is:inv
SFX F*   0          e/L'D'Q'            [éiïudhlsz]         is:fem is:sg
SFX F*   0          es/D'Q'             [éiïudhlsz]         is:fem is:pl
SFX F*   0          e/L'D'Q'            [^e][knr]           is:fem is:sg
SFX F*   0          es/D'Q'             [^e][knr]           is:fem is:pl
SFX F*   0          e/L'D'Q'            [aionuc]t           is:fem is:sg
SFX F*   0          es/D'Q'             [aionuc]t           is:fem is:pl
SFX F*   ec         èche/L'D'Q'         sec                 is:fem is:sg
SFX F*   ec         èches/D'Q'          sec                 is:fem is:pl
SFX F*   ef         ève/L'D'Q'          ef                  is:fem is:sg
SFX F*   ef         èves/D'Q'           ef                  is:fem is:pl
SFX F*   f          ve/L'D'Q'           [iïu]f              is:fem is:sg
SFX F*   f          ves/D'Q'            [iïu]f              is:fem is:pl
SFX F*   0          e/L'D'Q'            of                  is:fem is:sg







|



|
|
|
|
<
<







 







|
|
|
|







 







|





|
|
<
<







635
636
637
638
639
640
641
642
643
644
645
646
647
648
649


650
651
652
653
654
655
656
...
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
...
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840


841
842
843
844
845
846
847
SFX I.   e          i                   e                   is:pl           di:C
SFX I.   en         ina                 en                  is:pl           di:C
SFX I.   o          i                   o                   is:pl           di:C
SFX I.   um         a                   um                  is:pl           di:C
SFX I.   us         i                   us                  is:pl           di:C

# graphies féminines, pluriels en -s (sans doublement de consonnes)
SFX F. N 29
SFX F.   0          0                   [^sxz]              is:mas is:sg
SFX F.   0          s                   [^sxz]              is:mas is:pl
SFX F.   0          0                   [sxz]               is:mas is:inv
SFX F.   0          e                   [éiïudhlsz]         is:fem is:sg
SFX F.   0          es                  [éiïudhlsz]         is:fem is:pl
SFX F.   0          e                   [^e][knrt]          is:fem is:sg
SFX F.   0          es                  [^e][knrt]          is:fem is:pl


SFX F.   ec         èche                sec                 is:fem is:sg
SFX F.   ec         èches               sec                 is:fem is:pl
SFX F.   ef         ève                 ef                  is:fem is:sg
SFX F.   ef         èves                ef                  is:fem is:pl
SFX F.   f          ve                  [iïu]f              is:fem is:sg
SFX F.   f          ves                 [iïu]f              is:fem is:pl
SFX F.   0          e                   of                  is:fem is:sg
................................................................................
SFX Fx   is         iches               frais               is:fem is:pl        di:R
SFX Fx   0          0                   pignouf             is:mas is:sg
SFX Fx   0          s                   pignouf             is:mas is:pl
SFX Fx   0          e                   pignouf             is:fem is:sg
SFX Fx   0          es                  pignouf             is:fem is:pl
SFX Fx   0          0                   in                  is:mas is:sg
SFX Fx   0          s                   in                  is:mas is:pl
SFX Fx   in         igne                in                  is:fem is:sg
SFX Fx   in         ignes               in                  is:fem is:pl
SFX Fx   0          e                   malin               is:fem is:sg
SFX Fx   0          es                  malin               is:fem is:pl
SFX Fx   0          0                   gu                  is:mas is:sg
SFX Fx   0          s                   gu                  is:mas is:pl
SFX Fx   0          ë                   gu                  is:fem is:sg        di:M
SFX Fx   0          ës                  gu                  is:fem is:pl        di:M
SFX Fx   u          üe                  gu                  is:fem is:sg        di:R
SFX Fx   u          ües                 gu                  is:fem is:pl        di:R

................................................................................
SFX I*   o          i/D'Q'              o                   is:pl           di:C
SFX I*   um         um/D'L'Q'           um                  is:sg
SFX I*   um         ums/D'Q'            um                  is:pl
SFX I*   um         a/D'Q'              um                  is:pl           di:C
SFX I*   us         us/D'L'Q'           us                  is:inv
SFX I*   us         i/D'Q'              us                  is:pl           di:C

SFX F* Y 31
SFX F*   0          0/L'D'Q'            [^sxz]              is:mas is:sg
SFX F*   0          s/D'Q'              [^sxz]              is:mas is:pl
SFX F*   0          0/L'D'Q'            [sxz]               is:mas is:inv
SFX F*   0          e/L'D'Q'            [éiïudhlsz]         is:fem is:sg
SFX F*   0          es/D'Q'             [éiïudhlsz]         is:fem is:pl
SFX F*   0          e/L'D'Q'            [^e][knrt]          is:fem is:sg
SFX F*   0          es/D'Q'             [^e][knrt]          is:fem is:pl


SFX F*   ec         èche/L'D'Q'         sec                 is:fem is:sg
SFX F*   ec         èches/D'Q'          sec                 is:fem is:pl
SFX F*   ef         ève/L'D'Q'          ef                  is:fem is:sg
SFX F*   ef         èves/D'Q'           ef                  is:fem is:pl
SFX F*   f          ve/L'D'Q'           [iïu]f              is:fem is:sg
SFX F*   f          ves/D'Q'            [iïu]f              is:fem is:pl
SFX F*   0          e/L'D'Q'            of                  is:fem is:sg

Modified gc_lang/fr/modules-js/conj_data.json from [23d05ae7de] to [9d9cc27685].

cannot compute difference between binary files

Modified gc_lang/fr/modules-js/gce_suggestions.js from [bf19a122b8] to [15ad3aeb1e].

312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
...
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
...
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
...
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
...
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
    for (let sMorph of _oSpellChecker.getMorph(sFlex)) {
        if (!sMorph.includes(":V")) {
            // not a verb
            if (sMorph.includes(":m") || sMorph.includes(":e")) {
                aSugg.add(suggSing(sFlex));
            } else {
                let sStem = cregex.getLemmaOfMorph(sMorph);
                if (mfsp.isFemForm(sStem)) {
                    mfsp.getMasForm(sStem, false).forEach(function(x) { aSugg.add(x); });
                }
            }
        } else {
            // a verb
            let sVerb = cregex.getLemmaOfMorph(sMorph);
            if (conj.hasConj(sVerb, ":PQ", ":Q1") && conj.hasConj(sVerb, ":PQ", ":Q3")) {
                // We also check if the verb has a feminine form.
................................................................................
    for (let sMorph of _oSpellChecker.getMorph(sFlex)) {
        if (!sMorph.includes(":V")) {
            // not a verb
            if (sMorph.includes(":m") || sMorph.includes(":e")) {
                aSugg.add(suggPlur(sFlex));
            } else {
                let sStem = cregex.getLemmaOfMorph(sMorph);
                if (mfsp.isFemForm(sStem)) {
                    mfsp.getMasForm(sStem, true).forEach(function(x) { aSugg.add(x); });
                }
            }
        } else {
            // a verb
            let sVerb = cregex.getLemmaOfMorph(sMorph);
            if (conj.hasConj(sVerb, ":PQ", ":Q2")) {
                aSugg.add(conj.getConj(sVerb, ":PQ", ":Q2"));
................................................................................
    for (let sMorph of _oSpellChecker.getMorph(sFlex)) {
        if (!sMorph.includes(":V")) {
            // not a verb
            if (sMorph.includes(":f") || sMorph.includes(":e")) {
                aSugg.add(suggSing(sFlex));
            } else {
                let sStem = cregex.getLemmaOfMorph(sMorph);
                if (mfsp.isFemForm(sStem)) {
                    aSugg.add(sStem);
                }
            }
        } else {
            // a verb
            let sVerb = cregex.getLemmaOfMorph(sMorph);
            if (conj.hasConj(sVerb, ":PQ", ":Q3")) {
                aSugg.add(conj.getConj(sVerb, ":PQ", ":Q3"));
................................................................................
    for (let sMorph of _oSpellChecker.getMorph(sFlex)) {
        if (!sMorph.includes(":V")) {
            // not a verb
            if (sMorph.includes(":f") || sMorph.includes(":e")) {
                aSugg.add(suggPlur(sFlex));
            } else {
                let sStem = cregex.getLemmaOfMorph(sMorph);
                if (mfsp.isFemForm(sStem)) {
                    aSugg.add(sStem+"s");
                }
            }
        } else {
            // a verb
            let sVerb = cregex.getLemmaOfMorph(sMorph);
            if (conj.hasConj(sVerb, ":PQ", ":Q4")) {
                aSugg.add(conj.getConj(sVerb, ":PQ", ":Q4"));
................................................................................
        return Array.from(aSugg).join("|");
    }
    return "";
}

function hasFemForm (sFlex) {
    for (let sStem of _oSpellChecker.getLemma(sFlex)) {
        if (mfsp.isFemForm(sStem) || conj.hasConj(sStem, ":PQ", ":Q3")) {
            return true;
        }
    }
    if (phonet.hasSimil(sFlex, ":f")) {
        return true;
    }
    return false;
}

function hasMasForm (sFlex) {
    for (let sStem of _oSpellChecker.getLemma(sFlex)) {
        if (mfsp.isFemForm(sStem) || conj.hasConj(sStem, ":PQ", ":Q1")) {
            // what has a feminine form also has a masculine form
            return true;
        }
    }
    if (phonet.hasSimil(sFlex, ":m")) {
        return true;
    }







|
|







 







|
|







 







|
|







 







|
|







 







|











|







312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
...
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
...
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
...
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
...
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
    for (let sMorph of _oSpellChecker.getMorph(sFlex)) {
        if (!sMorph.includes(":V")) {
            // not a verb
            if (sMorph.includes(":m") || sMorph.includes(":e")) {
                aSugg.add(suggSing(sFlex));
            } else {
                let sStem = cregex.getLemmaOfMorph(sMorph);
                if (mfsp.isMasForm(sStem)) {
                    aSugg.add(sStem);
                }
            }
        } else {
            // a verb
            let sVerb = cregex.getLemmaOfMorph(sMorph);
            if (conj.hasConj(sVerb, ":PQ", ":Q1") && conj.hasConj(sVerb, ":PQ", ":Q3")) {
                // We also check if the verb has a feminine form.
................................................................................
    for (let sMorph of _oSpellChecker.getMorph(sFlex)) {
        if (!sMorph.includes(":V")) {
            // not a verb
            if (sMorph.includes(":m") || sMorph.includes(":e")) {
                aSugg.add(suggPlur(sFlex));
            } else {
                let sStem = cregex.getLemmaOfMorph(sMorph);
                if (mfsp.isMasForm(sStem)) {
                    aSugg.add(suggPlur(sStem));
                }
            }
        } else {
            // a verb
            let sVerb = cregex.getLemmaOfMorph(sMorph);
            if (conj.hasConj(sVerb, ":PQ", ":Q2")) {
                aSugg.add(conj.getConj(sVerb, ":PQ", ":Q2"));
................................................................................
    for (let sMorph of _oSpellChecker.getMorph(sFlex)) {
        if (!sMorph.includes(":V")) {
            // not a verb
            if (sMorph.includes(":f") || sMorph.includes(":e")) {
                aSugg.add(suggSing(sFlex));
            } else {
                let sStem = cregex.getLemmaOfMorph(sMorph);
                if (mfsp.isMasForm(sStem)) {
                    mfsp.getFemForm(sStem, false).forEach(function(x) { aSugg.add(x); });
                }
            }
        } else {
            // a verb
            let sVerb = cregex.getLemmaOfMorph(sMorph);
            if (conj.hasConj(sVerb, ":PQ", ":Q3")) {
                aSugg.add(conj.getConj(sVerb, ":PQ", ":Q3"));
................................................................................
    for (let sMorph of _oSpellChecker.getMorph(sFlex)) {
        if (!sMorph.includes(":V")) {
            // not a verb
            if (sMorph.includes(":f") || sMorph.includes(":e")) {
                aSugg.add(suggPlur(sFlex));
            } else {
                let sStem = cregex.getLemmaOfMorph(sMorph);
                if (mfsp.isMasForm(sStem)) {
                    mfsp.getFemForm(sStem, true).forEach(function(x) { aSugg.add(x); });
                }
            }
        } else {
            // a verb
            let sVerb = cregex.getLemmaOfMorph(sMorph);
            if (conj.hasConj(sVerb, ":PQ", ":Q4")) {
                aSugg.add(conj.getConj(sVerb, ":PQ", ":Q4"));
................................................................................
        return Array.from(aSugg).join("|");
    }
    return "";
}

function hasFemForm (sFlex) {
    for (let sStem of _oSpellChecker.getLemma(sFlex)) {
        if (mfsp.isMasForm(sStem) || conj.hasConj(sStem, ":PQ", ":Q3")) {
            return true;
        }
    }
    if (phonet.hasSimil(sFlex, ":f")) {
        return true;
    }
    return false;
}

function hasMasForm (sFlex) {
    for (let sStem of _oSpellChecker.getLemma(sFlex)) {
        if (mfsp.isMasForm(sStem) || conj.hasConj(sStem, ":PQ", ":Q1")) {
            // what has a feminine form also has a masculine form
            return true;
        }
    }
    if (phonet.hasSimil(sFlex, ":m")) {
        return true;
    }

Modified gc_lang/fr/modules-js/lexicographe.js from [f01ccf515f] to [ff079a1504].

203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
...
271
272
273
274
275
276
277



































278
279
280
281
282
283
284
...
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
    [':', "deux-points"],
    [';', "point-virgule"],
    [',', "virgule"],
    ['?', "point d’interrogation"],
    ['!', "point d’exclamation"],
    ['(', "parenthèse ouvrante"],
    [')', "parenthèse fermante"],
    ['[', "crochet ouvrante"],
    [']', "crochet fermante"],
    ['{', "accolade ouvrante"],
    ['}', "accolade fermante"],
    ['-', "tiret"],
    ['—', "tiret cadratin"],
    ['–', "tiret demi-cadratin"],
    ['«', "guillemet ouvrant (chevrons)"],
    ['»', "guillemet fermant (chevrons)"],
................................................................................
                    break;
                case 'LINK':
                    return {
                        sType: oToken.sType,
                        sValue: oToken.sValue.slice(0, 40) + "…",
                        aLabel: ["hyperlien"]
                    };



































                    break;
                case 'WORD_ELIDED':
                    let sTemp = oToken.sValue.replace("’", "").replace("'", "").replace("`", "").toLowerCase();
                    return {
                        sType: oToken.sType,
                        sValue: oToken.sValue,
                        aLabel: [_dElidedPrefix.gl_get(sTemp, "préfixe élidé inconnu")]
................................................................................
                            sValue: oToken.sValue,
                            aLabel: ["mot inconnu du dictionnaire"]
                        };
                    }
                    break;
                default:
                    return {
                        sType: "NO_TYPE",
                        sValue: oToken.sValue,
                        aLabel: ["token inconnu"]
                    }
            }
        } catch (e) {
            console.error(e);
        }







|
|







 







>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>







 







|







203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
...
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
...
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
    [':', "deux-points"],
    [';', "point-virgule"],
    [',', "virgule"],
    ['?', "point d’interrogation"],
    ['!', "point d’exclamation"],
    ['(', "parenthèse ouvrante"],
    [')', "parenthèse fermante"],
    ['[', "crochet ouvrant"],
    [']', "crochet fermant"],
    ['{', "accolade ouvrante"],
    ['}', "accolade fermante"],
    ['-', "tiret"],
    ['—', "tiret cadratin"],
    ['–', "tiret demi-cadratin"],
    ['«', "guillemet ouvrant (chevrons)"],
    ['»', "guillemet fermant (chevrons)"],
................................................................................
                    break;
                case 'LINK':
                    return {
                        sType: oToken.sType,
                        sValue: oToken.sValue.slice(0, 40) + "…",
                        aLabel: ["hyperlien"]
                    };
                    break;
                case 'TAG':
                    return {
                        sType: oToken.sType,
                        sValue: oToken.sValue,
                        aLabel: ["étiquette (hashtag)"]
                    };
                    break;
                case 'HTML':
                    return {
                        sType: oToken.sType,
                        sValue: oToken.sValue.slice(0, 40) + "…",
                        aLabel: ["balise HTML"]
                    };
                    break;
                case 'PSEUDOHTML':
                    return {
                        sType: oToken.sType,
                        sValue: oToken.sValue,
                        aLabel: ["balise pseudo-HTML"]
                    };
                    break;
                case 'HTMLENTITY':
                    return {
                        sType: oToken.sType,
                        sValue: oToken.sValue,
                        aLabel: ["entité caractère XML/HTML"]
                    };
                    break;
                case 'HOUR':
                    return {
                        sType: oToken.sType,
                        sValue: oToken.sValue,
                        aLabel: ["heure"]
                    };
                    break;
                case 'WORD_ELIDED':
                    let sTemp = oToken.sValue.replace("’", "").replace("'", "").replace("`", "").toLowerCase();
                    return {
                        sType: oToken.sType,
                        sValue: oToken.sValue,
                        aLabel: [_dElidedPrefix.gl_get(sTemp, "préfixe élidé inconnu")]
................................................................................
                            sValue: oToken.sValue,
                            aLabel: ["mot inconnu du dictionnaire"]
                        };
                    }
                    break;
                default:
                    return {
                        sType: oToken.sType,
                        sValue: oToken.sValue,
                        aLabel: ["token inconnu"]
                    }
            }
        } catch (e) {
            console.error(e);
        }

Modified gc_lang/fr/modules-js/mfsp.js from [7cfc8c21b3] to [74f770c1bb].

13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
...
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
    var helpers = require("resource://grammalecte/graphspell/helpers.js");
}


var mfsp = {
    // list of affix codes
    _lTagMiscPlur: [],
    _lTagMasForm: [],
    // dictionary of words with uncommon plurals (-x, -ux, english, latin and italian plurals) and tags to generate them
    _dMiscPlur: new Map(),
    // dictionary of feminine forms and tags to generate masculine forms (singular and plural)
    _dMasForm: new Map(),

    bInit: false,
    init: function (sJSONData) {
        try {
            let _oData = JSON.parse(sJSONData);
            this._lTagMiscPlur = _oData.lTagMiscPlur;
            this._lTagMasForm = _oData.lTagMasForm;
            this._dMiscPlur = helpers.objectToMap(_oData.dMiscPlur);
            this._dMasForm = helpers.objectToMap(_oData.dMasForm);
            this.bInit = true;
        }
        catch (e) {
            console.error(e);
        }
    },

    isFemForm: function (sWord) {
        // returns True if sWord exists in this._dMasForm
        return this._dMasForm.has(sWord);
    },

    getMasForm: function (sWord, bPlur) {
        // returns masculine form with feminine form
        if (this._dMasForm.has(sWord)) {
            let aMasForm = [];
            for (let sTag of this._whatSuffixCode(sWord, bPlur)){
                aMasForm.push( this._modifyStringWithSuffixCode(sWord, sTag) );
            }
            return aMasForm;
        }
        return [];
    },

    hasMiscPlural: function (sWord) {
        // returns True if sWord exists in dMiscPlur
        return this._dMiscPlur.has(sWord);
    },

    getMiscPlural: function (sWord) {
        // returns plural form with singular form
        if (this._dMiscPlur.has(sWord)) {
            let aMiscPlural = [];
            for (let sTag of this._lTagMiscPlur[this._dMiscPlur.get(sWord)].split("|")){
                aMiscPlural.push( this._modifyStringWithSuffixCode(sWord, sTag) );
            }
            return aMiscPlural;
        }
        return [];
    },

    _whatSuffixCode: function (sWord, bPlur) {
        // necessary only for dMasFW
        let sSfx = this._lTagMasForm[this._dMasForm.get(sWord)];
        if (sSfx.includes("/")) {
            if (bPlur) {
                return sSfx.slice(sSfx.indexOf("/")+1).split("|");
            }
            return sSfx.slice(0, sSfx.indexOf("/")).split("|");
        }
        return sSfx.split("|");
    },

    _modifyStringWithSuffixCode: function (sWord, sSfx) {
        // returns sWord modified by sSfx
        if (!sWord) {
            return "";
        }
................................................................................
} else {
    //console.log("Module mfsp non initialisé");
}


if (typeof(exports) !== 'undefined') {
    exports._lTagMiscPlur = mfsp._lTagMiscPlur;
    exports._lTagMasForm = mfsp._lTagMasForm;
    exports._dMiscPlur = mfsp._dMiscPlur;
    exports._dMasForm = mfsp._dMasForm;
    exports.init = mfsp.init;
    exports.isFemForm = mfsp.isFemForm;
    exports.getMasForm = mfsp.getMasForm;
    exports.hasMiscPlural = mfsp.hasMiscPlural;
    exports.getMiscPlural = mfsp.getMiscPlural;
    exports._whatSuffixCode = mfsp._whatSuffixCode;
    exports._modifyStringWithSuffixCode = mfsp._modifyStringWithSuffixCode;
}







|










|









|




|


|
|
|

|













|









|
<
|
|
|
|
<
<







 







|










13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77

78
79
80
81


82
83
84
85
86
87
88
...
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
    var helpers = require("resource://grammalecte/graphspell/helpers.js");
}


var mfsp = {
    // list of affix codes
    _lTagMiscPlur: [],
    _lTagFemForm: [],
    // dictionary of words with uncommon plurals (-x, -ux, english, latin and italian plurals) and tags to generate them
    _dMiscPlur: new Map(),
    // dictionary of feminine forms and tags to generate masculine forms (singular and plural)
    _dMasForm: new Map(),

    bInit: false,
    init: function (sJSONData) {
        try {
            let _oData = JSON.parse(sJSONData);
            this._lTagMiscPlur = _oData.lTagMiscPlur;
            this._lTagFemForm = _oData.lTagFemForm;
            this._dMiscPlur = helpers.objectToMap(_oData.dMiscPlur);
            this._dMasForm = helpers.objectToMap(_oData.dMasForm);
            this.bInit = true;
        }
        catch (e) {
            console.error(e);
        }
    },

    isMasForm: function (sWord) {
        // returns True if sWord exists in this._dMasForm
        return this._dMasForm.has(sWord);
    },

    getFemForm: function (sWord, bPlur) {
        // returns masculine form with feminine form
        if (this._dMasForm.has(sWord)) {
            let aFemForm = [];
            for (let sTag of this._whatSuffixCode(sWord, bPlur)) {
                aFemForm.push( this._modifyStringWithSuffixCode(sWord, sTag) );
            }
            return aFemForm;
        }
        return [];
    },

    hasMiscPlural: function (sWord) {
        // returns True if sWord exists in dMiscPlur
        return this._dMiscPlur.has(sWord);
    },

    getMiscPlural: function (sWord) {
        // returns plural form with singular form
        if (this._dMiscPlur.has(sWord)) {
            let aMiscPlural = [];
            for (let sTag of this._lTagMiscPlur[this._dMiscPlur.get(sWord)].split("|")) {
                aMiscPlural.push( this._modifyStringWithSuffixCode(sWord, sTag) );
            }
            return aMiscPlural;
        }
        return [];
    },

    _whatSuffixCode: function (sWord, bPlur) {
        // necessary only for dMasFW
        let sSfx = this._lTagFemForm[this._dMasForm.get(sWord)];

        if (bPlur) {
            return sSfx.slice(sSfx.indexOf("/")+1).split("|");
        }
        return sSfx.slice(0, sSfx.indexOf("/")).split("|");


    },

    _modifyStringWithSuffixCode: function (sWord, sSfx) {
        // returns sWord modified by sSfx
        if (!sWord) {
            return "";
        }
................................................................................
} else {
    //console.log("Module mfsp non initialisé");
}


if (typeof(exports) !== 'undefined') {
    exports._lTagMiscPlur = mfsp._lTagMiscPlur;
    exports._lTagFemForm = mfsp._lTagFemForm;
    exports._dMiscPlur = mfsp._dMiscPlur;
    exports._dMasForm = mfsp._dMasForm;
    exports.init = mfsp.init;
    exports.isFemForm = mfsp.isFemForm;
    exports.getMasForm = mfsp.getMasForm;
    exports.hasMiscPlural = mfsp.hasMiscPlural;
    exports.getMiscPlural = mfsp.getMiscPlural;
    exports._whatSuffixCode = mfsp._whatSuffixCode;
    exports._modifyStringWithSuffixCode = mfsp._modifyStringWithSuffixCode;
}

Modified gc_lang/fr/modules-js/mfsp_data.json from [3e45c9bd1b] to [24bb849778].

cannot compute difference between binary files

Modified gc_lang/fr/modules-js/phonet_data.json from [bf989aa618] to [084baa3d41].

cannot compute difference between binary files

Modified gc_lang/fr/modules/conj_data.py from [b1c31be91d] to [d4656c4b8b].

cannot compute difference between binary files

Modified gc_lang/fr/modules/gce_suggestions.py from [ea32074c34] to [fa34b4b458].

235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
...
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
...
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
...
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
...
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
    for sMorph in _oSpellChecker.getMorph(sFlex):
        if not ":V" in sMorph:
            # not a verb
            if ":m" in sMorph or ":e" in sMorph:
                aSugg.add(suggSing(sFlex))
            else:
                sStem = cr.getLemmaOfMorph(sMorph)
                if mfsp.isFemForm(sStem):
                    aSugg.update(mfsp.getMasForm(sStem, False))
        else:
            # a verb
            sVerb = cr.getLemmaOfMorph(sMorph)
            if conj.hasConj(sVerb, ":PQ", ":Q1") and conj.hasConj(sVerb, ":PQ", ":Q3"):
                # We also check if the verb has a feminine form.
                # If not, we consider it’s better to not suggest the masculine one, as it can be considered invariable.
                aSugg.add(conj.getConj(sVerb, ":PQ", ":Q1"))
................................................................................
    for sMorph in _oSpellChecker.getMorph(sFlex):
        if not ":V" in sMorph:
            # not a verb
            if ":m" in sMorph or ":e" in sMorph:
                aSugg.add(suggPlur(sFlex))
            else:
                sStem = cr.getLemmaOfMorph(sMorph)
                if mfsp.isFemForm(sStem):
                    aSugg.update(mfsp.getMasForm(sStem, True))
        else:
            # a verb
            sVerb = cr.getLemmaOfMorph(sMorph)
            if conj.hasConj(sVerb, ":PQ", ":Q2"):
                aSugg.add(conj.getConj(sVerb, ":PQ", ":Q2"))
            elif conj.hasConj(sVerb, ":PQ", ":Q1"):
                sSugg = conj.getConj(sVerb, ":PQ", ":Q1")
................................................................................
    for sMorph in _oSpellChecker.getMorph(sFlex):
        if not ":V" in sMorph:
            # not a verb
            if ":f" in sMorph or ":e" in sMorph:
                aSugg.add(suggSing(sFlex))
            else:
                sStem = cr.getLemmaOfMorph(sMorph)
                if mfsp.isFemForm(sStem):
                    aSugg.add(sStem)
        else:
            # a verb
            sVerb = cr.getLemmaOfMorph(sMorph)
            if conj.hasConj(sVerb, ":PQ", ":Q3"):
                aSugg.add(conj.getConj(sVerb, ":PQ", ":Q3"))
    if bSuggSimil:
        for e in phonet.selectSimil(sFlex, ":f:[si]"):
................................................................................
    for sMorph in _oSpellChecker.getMorph(sFlex):
        if not ":V" in sMorph:
            # not a verb
            if ":f" in sMorph or ":e" in sMorph:
                aSugg.add(suggPlur(sFlex))
            else:
                sStem = cr.getLemmaOfMorph(sMorph)
                if mfsp.isFemForm(sStem):
                    aSugg.add(sStem+"s")
        else:
            # a verb
            sVerb = cr.getLemmaOfMorph(sMorph)
            if conj.hasConj(sVerb, ":PQ", ":Q4"):
                aSugg.add(conj.getConj(sVerb, ":PQ", ":Q4"))
    if bSuggSimil:
        for e in phonet.selectSimil(sFlex, ":f:[pi]"):
................................................................................
        return "|".join(aSugg)
    return ""


def hasFemForm (sFlex):
    "return True if there is a feminine form of <sFlex>"
    for sStem in _oSpellChecker.getLemma(sFlex):
        if mfsp.isFemForm(sStem) or conj.hasConj(sStem, ":PQ", ":Q3"):
            return True
    if phonet.hasSimil(sFlex, ":f"):
        return True
    return False


def hasMasForm (sFlex):
    "return True if there is a masculine form of <sFlex>"
    for sStem in _oSpellChecker.getLemma(sFlex):
        if mfsp.isFemForm(sStem) or conj.hasConj(sStem, ":PQ", ":Q1"):
            # what has a feminine form also has a masculine form
            return True
    if phonet.hasSimil(sFlex, ":m"):
        return True
    return False









|
|







 







|
|







 







|
|







 







|
|







 







|









|







235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
...
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
...
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
...
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
...
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
    for sMorph in _oSpellChecker.getMorph(sFlex):
        if not ":V" in sMorph:
            # not a verb
            if ":m" in sMorph or ":e" in sMorph:
                aSugg.add(suggSing(sFlex))
            else:
                sStem = cr.getLemmaOfMorph(sMorph)
                if mfsp.isMasForm(sStem):
                    aSugg.add(sStem)
        else:
            # a verb
            sVerb = cr.getLemmaOfMorph(sMorph)
            if conj.hasConj(sVerb, ":PQ", ":Q1") and conj.hasConj(sVerb, ":PQ", ":Q3"):
                # We also check if the verb has a feminine form.
                # If not, we consider it’s better to not suggest the masculine one, as it can be considered invariable.
                aSugg.add(conj.getConj(sVerb, ":PQ", ":Q1"))
................................................................................
    for sMorph in _oSpellChecker.getMorph(sFlex):
        if not ":V" in sMorph:
            # not a verb
            if ":m" in sMorph or ":e" in sMorph:
                aSugg.add(suggPlur(sFlex))
            else:
                sStem = cr.getLemmaOfMorph(sMorph)
                if mfsp.isMasForm(sStem):
                    aSugg.add(suggPlur(sStem))
        else:
            # a verb
            sVerb = cr.getLemmaOfMorph(sMorph)
            if conj.hasConj(sVerb, ":PQ", ":Q2"):
                aSugg.add(conj.getConj(sVerb, ":PQ", ":Q2"))
            elif conj.hasConj(sVerb, ":PQ", ":Q1"):
                sSugg = conj.getConj(sVerb, ":PQ", ":Q1")
................................................................................
    for sMorph in _oSpellChecker.getMorph(sFlex):
        if not ":V" in sMorph:
            # not a verb
            if ":f" in sMorph or ":e" in sMorph:
                aSugg.add(suggSing(sFlex))
            else:
                sStem = cr.getLemmaOfMorph(sMorph)
                if mfsp.isMasForm(sStem):
                    aSugg.update(mfsp.getFemForm(sStem, False))
        else:
            # a verb
            sVerb = cr.getLemmaOfMorph(sMorph)
            if conj.hasConj(sVerb, ":PQ", ":Q3"):
                aSugg.add(conj.getConj(sVerb, ":PQ", ":Q3"))
    if bSuggSimil:
        for e in phonet.selectSimil(sFlex, ":f:[si]"):
................................................................................
    for sMorph in _oSpellChecker.getMorph(sFlex):
        if not ":V" in sMorph:
            # not a verb
            if ":f" in sMorph or ":e" in sMorph:
                aSugg.add(suggPlur(sFlex))
            else:
                sStem = cr.getLemmaOfMorph(sMorph)
                if mfsp.isMasForm(sStem):
                    aSugg.update(mfsp.getFemForm(sStem, True))
        else:
            # a verb
            sVerb = cr.getLemmaOfMorph(sMorph)
            if conj.hasConj(sVerb, ":PQ", ":Q4"):
                aSugg.add(conj.getConj(sVerb, ":PQ", ":Q4"))
    if bSuggSimil:
        for e in phonet.selectSimil(sFlex, ":f:[pi]"):
................................................................................
        return "|".join(aSugg)
    return ""


def hasFemForm (sFlex):
    "return True if there is a feminine form of <sFlex>"
    for sStem in _oSpellChecker.getLemma(sFlex):
        if mfsp.isMasForm(sStem) or conj.hasConj(sStem, ":PQ", ":Q3"):
            return True
    if phonet.hasSimil(sFlex, ":f"):
        return True
    return False


def hasMasForm (sFlex):
    "return True if there is a masculine form of <sFlex>"
    for sStem in _oSpellChecker.getLemma(sFlex):
        if mfsp.isMasForm(sStem) or conj.hasConj(sStem, ":PQ", ":Q1"):
            # what has a feminine form also has a masculine form
            return True
    if phonet.hasSimil(sFlex, ":m"):
        return True
    return False


Modified gc_lang/fr/modules/mfsp.py from [9096dedca9] to [0c985b17cb].

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16

17
18
19

20
21
22
23

24
25
26
27
28
29

30
31
32
33
34
35
36
37
38

39
40
41
42
43
44
45
46
47
48
49
"""
Masculins, féminins, singuliers et pluriels
"""

from .mfsp_data import lTagMiscPlur as _lTagMiscPlur
from .mfsp_data import lTagMasForm as _lTagMasForm
from .mfsp_data import dMiscPlur as _dMiscPlur
from .mfsp_data import dMasForm as _dMasForm


def isFemForm (sWord):
    "returns True if sWord exists in _dMasForm"
    return sWord in _dMasForm

def getMasForm (sWord, bPlur):
    "returns masculine form with feminine form"

    if sWord in _dMasForm:
        return [ _modifyStringWithSuffixCode(sWord, sTag)  for sTag in _whatSuffixCodes(sWord, bPlur) ]
    return []


def hasMiscPlural (sWord):
    "returns True if sWord exists in dPlurMisc"
    return sWord in _dMiscPlur


def getMiscPlural (sWord):
    "returns plural form with singular form"
    if sWord in _dMiscPlur:
        return [ _modifyStringWithSuffixCode(sWord, sTag)  for sTag in _lTagMiscPlur[_dMiscPlur[sWord]].split("|") ]
    return []


def _whatSuffixCodes (sWord, bPlur):
    "necessary only for dMasFrom"
    sSfx = _lTagMasForm[_dMasForm[sWord]]
    if "/" in sSfx:
        if bPlur:
            return sSfx[sSfx.find("/")+1:].split("|")
        return sSfx[:sSfx.find("/")].split("|")
    return sSfx.split("|")


def _modifyStringWithSuffixCode (sWord, sSfx):
    "returns sWord modified by sSfx"
    if not sSfx:
        return ""
    if sSfx == "0":
        return sWord
    try:
        return sWord[:-(ord(sSfx[0])-48)] + sSfx[1:]  if sSfx[0] != '0'  else  sWord + sSfx[1:]  # 48 is the ASCII code for "0"
    except (IndexError, TypeError):
        return "## erreur, code : " + str(sSfx) + " ##"





|




|



|
|
>



>




>






>



|
<
|
|
|
<
>











1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37

38
39
40

41
42
43
44
45
46
47
48
49
50
51
52
"""
Masculins, féminins, singuliers et pluriels
"""

from .mfsp_data import lTagMiscPlur as _lTagMiscPlur
from .mfsp_data import lTagFemForm as _lTagFemForm
from .mfsp_data import dMiscPlur as _dMiscPlur
from .mfsp_data import dMasForm as _dMasForm


def isMasForm (sWord):
    "returns True if sWord exists in _dMasForm"
    return sWord in _dMasForm


def getFemForm (sWord, bPlur):
    "returns feminine forms with masculine form"
    if sWord in _dMasForm:
        return [ _modifyStringWithSuffixCode(sWord, sTag)  for sTag in _whatSuffixCodes(sWord, bPlur) ]
    return []


def hasMiscPlural (sWord):
    "returns True if sWord exists in dPlurMisc"
    return sWord in _dMiscPlur


def getMiscPlural (sWord):
    "returns plural form with singular form"
    if sWord in _dMiscPlur:
        return [ _modifyStringWithSuffixCode(sWord, sTag)  for sTag in _lTagMiscPlur[_dMiscPlur[sWord]].split("|") ]
    return []


def _whatSuffixCodes (sWord, bPlur):
    "necessary only for dMasFrom"
    sSfx = _lTagFemForm[_dMasForm[sWord]]

    if bPlur:
        return sSfx[sSfx.find("/")+1:].split("|")
    return sSfx[:sSfx.find("/")].split("|")



def _modifyStringWithSuffixCode (sWord, sSfx):
    "returns sWord modified by sSfx"
    if not sSfx:
        return ""
    if sSfx == "0":
        return sWord
    try:
        return sWord[:-(ord(sSfx[0])-48)] + sSfx[1:]  if sSfx[0] != '0'  else  sWord + sSfx[1:]  # 48 is the ASCII code for "0"
    except (IndexError, TypeError):
        return "## erreur, code : " + str(sSfx) + " ##"

Modified gc_lang/fr/modules/mfsp_data.py from [f12f6a5506] to [19c724a11f].

cannot compute difference between binary files

Modified gc_lang/fr/modules/phonet_data.py from [463eeebf9b] to [b1fb97f440].

cannot compute difference between binary files

Modified gc_lang/fr/oxt/Dictionnaires/dictionaries/README_dict_fr.txt from [7a6d67d213] to [313985fcea].

1
2
3
4
5
6
7
8
9
10
11
_______________________________________________________________________________

   DICTIONNAIRES ORTHOGRAPHIQUES FRANÇAIS
   version 6.5

   Olivier R. - olivier<at>grammalecte<dot>net
   https://grammalecte.net/

   Licence :
     MPL : Mozilla Public License
     version 2.0  --  http://www.mozilla.org/MPL/2.0/



|







1
2
3
4
5
6
7
8
9
10
11
_______________________________________________________________________________

   DICTIONNAIRES ORTHOGRAPHIQUES FRANÇAIS
   version 7.0

   Olivier R. - olivier<at>grammalecte<dot>net
   https://grammalecte.net/

   Licence :
     MPL : Mozilla Public License
     version 2.0  --  http://www.mozilla.org/MPL/2.0/

Modified gc_lang/fr/oxt/Dictionnaires/dictionaries/fr-classique.aff from [b384ccc589] to [04983c0ae5].

1
2
3
4
5
6
7
8
9
10
11
12
13
14
...
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424

425
426
427
428
429

430
431
432
433
434

435
436
437
438
439

440
441
442
443

444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462

463
464
465
466
467
468
469
470
471
472
473



474


475
476
477
478
479
480
481
482
483
484














485
486
487
488
489
490
491

492
493
494
495
496
497
498
...
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576

577
578
579
580
581
582

583
584
585
586
587
588

589
590
591
592
593
594

595
596
597
598
599
600

601
602
603









604





















605
606
607
608
609
610
611
612
613
614


615





616
617
618
619
620
621
622
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.

# AFFIXES DU DICTIONNAIRE ORTHOGRAPHIQUE FRANÇAIS “CLASSIQUE” v6.5
# par Olivier R. -- licence MPL 2.0
# Généré le 26-11-2019 à 15:57
# Pour améliorer le dictionnaire, allez sur https://grammalecte.net/



SET UTF-8

WORDCHARS -’'1234567890.
................................................................................
SFX I. a e a
SFX I. e i e
SFX I. en ina en
SFX I. o i o
SFX I. um a um
SFX I. us i us

SFX F. Y 78
SFX F. 0 s []
SFX F. e 0 [éiï]e
SFX F. e s [éiï]e
SFX F. rice eur [dt]rice
SFX F. rice eurs [dt]rice
SFX F. de d de
SFX F. de ds de
SFX F. fe f fe
SFX F. fe fs fe
SFX F. anche anc anche
SFX F. anche ancs anche
SFX F. èche ec èche
SFX F. èche ecs èche
SFX F. aiche ais aiche
SFX F. aîche ais aîche
SFX F. khe kh khe
SFX F. khe khs khe
SFX F. he h [ut]he
SFX F. he hs [ut]he
SFX F. ke k [^è]ke
SFX F. ke ks [^è]ke
SFX F. èke ek èke
SFX F. èke eks èke
SFX F. le l [aiouûh]le
SFX F. le ls [aiouûh]le
SFX F. lle l [eiu]lle
SFX F. lle ls [eiu]lle
SFX F. olle ou olle

SFX F. olle ous olle
SFX F. olle ol olle
SFX F. olle ols olle
SFX F. ne n [aiouï]ne
SFX F. ne ns [aiouï]ne

SFX F. nne n [aeo]nne
SFX F. nne ns [aeo]nne
SFX F. ène en ène
SFX F. ène ens ène
SFX F. igne in igne

SFX F. igne ins igne
SFX F. re r [aiouûy]re
SFX F. re rs [aiouûy]re
SFX F. ère er ère
SFX F. ère ers ère

SFX F. se s [^us]se
SFX F. esse e [^eo].esse
SFX F. esse es [^eo].esse
SFX F. rofesse rofès rofesse

SFX F. eresse eur eresse
SFX F. eresse eurs eresse
SFX F. oresse eur oresse
SFX F. oresse eurs oresse
SFX F. sse s [^e]sse
SFX F. use us [^eo]use
SFX F. euse eur euse
SFX F. euse eurs euse
SFX F. te t [^èt]te
SFX F. te ts [^èt]te
SFX F. tte t tte
SFX F. tte ts tte
SFX F. ète et ète
SFX F. ète ets ète
SFX F. ue u [^gq]ue
SFX F. ue us [^gq]ue
SFX F. gue g gue
SFX F. gue gs gue
SFX F. cque c cque

SFX F. cque cs cque
SFX F. que c [^c]que
SFX F. que cs [^c]que
SFX F. ève ef ève
SFX F. ève efs ève
SFX F. ve f [iïu]ve
SFX F. ve fs [iïu]ve
SFX F. uë u uë
SFX F. uë us uë
SFX F. üe u üe
SFX F. üe us üe



SFX F. ze z ze



SFX W. N 15
SFX W. e es e
SFX W. ce x ce
SFX W. use ux [eo]use
SFX W. ausse aux ausse
SFX W. ousse oux ousse
SFX W. ale al ale
SFX W. ale aux ale
SFX W. elle eau elle














SFX W. elle eaux elle
SFX W. elle el [bv]elle
SFX W. elle els [bv]elle
SFX W. ieille ieux ieille
SFX W. ieille ieil ieille
SFX W. ofolle oufou ofolle
SFX W. ofolle oufous ofolle


SFX S* Y 2
SFX S* 0 0/D'L'Q' [^sxz]
SFX S* 0 s/D'Q' [^sxz]

SFX X* Y 4
SFX X* 0 0/D'L'Q' [ul]
................................................................................
SFX I* o i/D'Q' o
SFX I* um um/D'L'Q' um
SFX I* um ums/D'Q' um
SFX I* um a/D'Q' um
SFX I* us us/D'L'Q' us
SFX I* us i/D'Q' us

SFX F* Y 59
SFX F* 0 0/D'L'Q' []
SFX F* 0 s/D'Q' []
SFX F* e 0/D'L'Q' [éiï]e
SFX F* e s/D'Q' [éiï]e
SFX F* rice eur/D'L'Q' [dt]rice
SFX F* rice eurs/D'Q' [dt]rice
SFX F* de d/D'L'Q' de
SFX F* de ds/D'Q' de
SFX F* he h/D'L'Q' [ut]he
SFX F* he hs/D'Q' [ut]he
SFX F* èke ek/D'L'Q' èke
SFX F* èke eks/D'Q' èke
SFX F* le l/D'L'Q' [aiouû]le
SFX F* le ls/D'Q' [aiouû]le
SFX F* lle l/D'L'Q' [eiu]lle
SFX F* lle ls/D'Q' [eiu]lle
SFX F* ne n/D'L'Q' [aiouï]ne
SFX F* ne ns/D'Q' [aiouï]ne
SFX F* nne n/D'L'Q' [aeo]nne
SFX F* nne ns/D'Q' [aeo]nne
SFX F* gne n/D'L'Q' igne
SFX F* gne ns/D'Q' igne
SFX F* re r/D'L'Q' [aiouûy]re
SFX F* re rs/D'Q' [aiouûy]re
SFX F* ère er/D'L'Q' ère
SFX F* ère ers/D'Q' ère
SFX F* se s/D'L'Q' [^us]se
SFX F* esse e/D'L'Q' [^eo].esse
SFX F* esse es/D'Q' [^eo].esse
SFX F* eresse eur/D'L'Q' eresse
SFX F* eresse eurs/D'Q' eresse
SFX F* oresse eur/D'L'Q' oresse

SFX F* oresse eurs/D'Q' oresse
SFX F* sse s/D'L'Q' [^e]sse
SFX F* use us/D'L'Q' [^eo]use
SFX F* euse eur/D'L'Q' euse
SFX F* euse eurs/D'Q' euse
SFX F* te t/D'L'Q' [^èt]te

SFX F* te ts/D'Q' [^èt]te
SFX F* tte t/D'L'Q' tte
SFX F* tte ts/D'Q' tte
SFX F* ète et/D'L'Q' ète
SFX F* ète ets/D'Q' ète
SFX F* ue u/D'L'Q' [^gq]ue

SFX F* ue us/D'Q' [^gq]ue
SFX F* gue g/D'L'Q' gue
SFX F* gue gs/D'Q' gue
SFX F* cque c/D'L'Q' cque
SFX F* cque cs/D'Q' cque
SFX F* que c/D'L'Q' [^c]que

SFX F* que cs/D'Q' [^c]que
SFX F* ève ef/D'L'Q' ève
SFX F* ève efs/D'Q' ève
SFX F* ve f/D'L'Q' [iïu]ve
SFX F* ve fs/D'Q' [iïu]ve
SFX F* uë u/D'L'Q' uë

SFX F* uë us/D'Q' uë
SFX F* üe u/D'L'Q' üe
SFX F* üe us/D'Q' üe































SFX W* Y 10
SFX W* 0 0/D'L'Q' e
SFX W* e es/D'Q' e
SFX W* ce x/D'L'Q' ce
SFX W* use ux/D'L'Q' [eo]use
SFX W* ousse oux/D'L'Q' ousse
SFX W* ausse aux/D'L'Q' ausse
SFX W* ale al/D'L'Q' ale
SFX W* ale aux/D'Q' ale
SFX W* elle eau/D'L'Q' elle


SFX W* elle eaux/D'Q' elle






PFX Um Y 29
PFX Um 0 0/S. .
PFX Um 0 l' [aàâeèéêiîoôuyœæ]
PFX Um 0 d'/S. [aàâeèéêiîoôuyœæ]
PFX Um 0 yotta/S. .
PFX Um 0 zetta/S. .




|

|







 







|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<
|
|
|
>
|
|
|
|
<
>
|
|
|
|
<
>
|
|
|
|
<
>
|
|
|
<
>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<
>
|
|
|
|
|
|
|
|
|
|
|
>
>
>
|
>
>

|
|
|
|
|
|
|
|
|
>
>
>
>
>
>
>
>
>
>
>
>
>
>
|
<
<
<
<
<
<
>







 







|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<
>
|
|
|
|
|
<
>
|
|
|
|
|
<
>
|
|
|
|
|
<
>
|
|
|
|
|
<
>
|
|
|
>
>
>
>
>
>
>
>
>

>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>

|
<
<
<
<
<
<
|
<
>
>
|
>
>
>
>
>







1
2
3
4
5
6
7
8
9
10
11
12
13
14
...
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420

421
422
423
424
425
426
427
428

429
430
431
432
433

434
435
436
437
438

439
440
441
442

443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461

462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504






505
506
507
508
509
510
511
512
...
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589

590
591
592
593
594
595

596
597
598
599
600
601

602
603
604
605
606
607

608
609
610
611
612
613

614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650






651

652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.

# AFFIXES DU DICTIONNAIRE ORTHOGRAPHIQUE FRANÇAIS “CLASSIQUE” v7.0
# par Olivier R. -- licence MPL 2.0
# Généré le 03-01-2020 à 17:35
# Pour améliorer le dictionnaire, allez sur https://grammalecte.net/



SET UTF-8

WORDCHARS -’'1234567890.
................................................................................
SFX I. a e a
SFX I. e i e
SFX I. en ina en
SFX I. o i o
SFX I. um a um
SFX I. us i us

SFX F. N 27
SFX F. 0 s [^sxz]
SFX F. 0 e [éiïudhlsz]
SFX F. 0 es [éiïudhlsz]
SFX F. 0 e [^e][knrt]
SFX F. 0 es [^e][knrt]
SFX F. ec èche sec
SFX F. ec èches sec
SFX F. ef ève ef
SFX F. ef èves ef
SFX F. f ve [iïu]f
SFX F. f ves [iïu]f
SFX F. 0 e of
SFX F. 0 es of
SFX F. en ène en
SFX F. en ènes en
SFX F. er ère er
SFX F. er ères er
SFX F. et ète et
SFX F. et ètes et
SFX F. c que [iru]c
SFX F. c ques [iru]c
SFX F. 0 que grec
SFX F. 0 ques grec
SFX F. 0 he blanc

SFX F. 0 hes blanc
SFX F. 0 ue long
SFX F. 0 ues long

SFX Fs N 3
SFX Fs 0 s eur
SFX Fs r se eur
SFX Fs r ses eur


SFX Fc N 3
SFX Fc 0 s [td]eur
SFX Fc eur rice [td]eur
SFX Fc eur rices [td]eur


SFX Fe N 3
SFX Fe 0 s eur
SFX Fe eur eresse eur
SFX Fe eur eresses eur


SFX Go N 2
SFX Go eur oresse teur
SFX Go eur oresses teur


SFX F, N 17
SFX F, 0 s [^sxz]
SFX F, 0 sse e
SFX F, 0 sses e
SFX F, 0 fe f
SFX F, 0 fes f
SFX F, 0 le l
SFX F, 0 les l
SFX F, 0 ne n
SFX F, 0 nes n
SFX F, 0 se s
SFX F, 0 ses s
SFX F, 0 te t
SFX F, 0 tes t
SFX F, u l [mf]ou
SFX F, u ls [mf]ou
SFX F, u lle [mf]ou
SFX F, u lles [mf]ou


SFX Fx N 16
SFX Fx 0 s foufou
SFX Fx ufou folle foufou
SFX Fx ufou folles foufou
SFX Fx is îche frais
SFX Fx is îches frais
SFX Fx 0 s pignouf
SFX Fx 0 e pignouf
SFX Fx 0 es pignouf
SFX Fx 0 s in
SFX Fx in igne in
SFX Fx in ignes in
SFX Fx 0 e malin
SFX Fx 0 es malin
SFX Fx 0 s gu
SFX Fx 0 ë gu
SFX Fx 0 ës gu

SFX W. N 8
SFX W. l ux al
SFX W. l le al
SFX W. l les al
SFX W. 0 x eau
SFX W. au lle eau
SFX W. au lles eau
SFX W. x se ux
SFX W. x ses ux

SFX Wx N 14
SFX Wx x sse faux
SFX Wx x sses faux
SFX Wx x ce doux
SFX Wx x ces doux
SFX Wx x sse roux
SFX Wx x sses roux
SFX Wx eux eil vieux
SFX Wx eux eille vieux
SFX Wx eux eilles vieux
SFX Wx 0 x eau
SFX Wx au l eau
SFX Wx au ls eau
SFX Wx au lle eau






SFX Wx au lles eau

SFX S* Y 2
SFX S* 0 0/D'L'Q' [^sxz]
SFX S* 0 s/D'Q' [^sxz]

SFX X* Y 4
SFX X* 0 0/D'L'Q' [ul]
................................................................................
SFX I* o i/D'Q' o
SFX I* um um/D'L'Q' um
SFX I* um ums/D'Q' um
SFX I* um a/D'Q' um
SFX I* us us/D'L'Q' us
SFX I* us i/D'Q' us

SFX F* Y 31
SFX F* 0 0/L'D'Q' [^sxz]
SFX F* 0 s/D'Q' [^sxz]
SFX F* 0 0/L'D'Q' [sxz]
SFX F* 0 e/L'D'Q' [éiïudhlsz]
SFX F* 0 es/D'Q' [éiïudhlsz]
SFX F* 0 e/L'D'Q' [^e][knrt]
SFX F* 0 es/D'Q' [^e][knrt]
SFX F* ec èche/L'D'Q' sec
SFX F* ec èches/D'Q' sec
SFX F* ef ève/L'D'Q' ef
SFX F* ef èves/D'Q' ef
SFX F* f ve/L'D'Q' [iïu]f
SFX F* f ves/D'Q' [iïu]f
SFX F* 0 e/L'D'Q' of
SFX F* 0 es/D'Q' of
SFX F* en ène/L'D'Q' en
SFX F* en ènes/D'Q' en
SFX F* ek èke/L'D'Q' ek
SFX F* ek èkes/D'Q' ek
SFX F* er ère/L'D'Q' er
SFX F* er ères/D'Q' er
SFX F* et ète/L'D'Q' et
SFX F* et ètes/D'Q' et
SFX F* c que/L'D'Q' [iru]c
SFX F* c ques/D'Q' [iru]c
SFX F* 0 que/L'D'Q' grec
SFX F* 0 ques/D'Q' grec
SFX F* 0 he/L'D'Q' blanc
SFX F* 0 hes/D'Q' blanc
SFX F* 0 ue/L'D'Q' long
SFX F* 0 ues/D'Q' long


SFX Fz Y 4
SFX Fz 0 0/L'D'Q' eur
SFX Fz 0 s/D'Q' eur
SFX Fz r se/L'D'Q' eur
SFX Fz r ses/D'Q' eur


SFX Fi Y 4
SFX Fi 0 0/L'D'Q' [td]eur
SFX Fi 0 s/D'Q' [td]eur
SFX Fi eur rice/L'D'Q' [td]eur
SFX Fi eur rices/D'Q' [td]eur


SFX Fr Y 4
SFX Fr 0 0/L'D'Q' eur
SFX Fr 0 s/D'Q' eur
SFX Fr eur eresse/L'D'Q' eur
SFX Fr eur eresses/D'Q' eur


SFX Fy Y 4
SFX Fy 0 0/L'D'Q' gu
SFX Fy 0 s/D'Q' gu
SFX Fy 0 ë/L'D'Q' gu
SFX Fy 0 ës/D'Q' gu


SFX F+ Y 11
SFX F+ 0 0/L'D'Q' [^sxz]
SFX F+ 0 s/D'Q' [^sxz]
SFX F+ 0 0/L'D'Q' [sxz]
SFX F+ 0 fe/L'D'Q' f
SFX F+ 0 fes/D'Q' f
SFX F+ 0 le/L'D'Q' l
SFX F+ 0 les/D'Q' l
SFX F+ 0 ne/L'D'Q' n
SFX F+ 0 nes/D'Q' n
SFX F+ 0 te/L'D'Q' t
SFX F+ 0 tes/D'Q' t

SFX F; Y 19
SFX F; 0 0/L'D'Q' [^sxz]
SFX F; 0 s/D'Q' [^sxz]
SFX F; 0 0/L'D'Q' [sxz]
SFX F; 0 sse/L'D'Q' e
SFX F; 0 sses/D'Q' e
SFX F; 0 fe/L'D'Q' f
SFX F; 0 fes/D'Q' f
SFX F; 0 le/L'D'Q' l
SFX F; 0 les/D'Q' l
SFX F; 0 ne/L'D'Q' n
SFX F; 0 nes/D'Q' n
SFX F; 0 se/L'D'Q' s
SFX F; 0 ses/D'Q' s
SFX F; 0 te/L'D'Q' t
SFX F; 0 tes/D'Q' t
SFX F; u l/L'D'Q' [mf]ou
SFX F; u ls/D'Q' [mf]ou
SFX F; u lle/L'D'Q' [mf]ou
SFX F; u lles/D'Q' [mf]ou

SFX W* Y 10
SFX W* 0 0/L'D'Q' [lu]






SFX W* l ux/D'Q' al

SFX W* l le/L'D'Q' al
SFX W* l les/D'Q' al
SFX W* 0 x/D'Q' eau
SFX W* au lle/L'D'Q' eau
SFX W* au lles/D'Q' eau
SFX W* 0 0/L'D'Q' ux
SFX W* x se/L'D'Q' ux
SFX W* x ses/D'Q' ux

PFX Um Y 29
PFX Um 0 0/S. .
PFX Um 0 l' [aàâeèéêiîoôuyœæ]
PFX Um 0 d'/S. [aàâeèéêiîoôuyœæ]
PFX Um 0 yotta/S. .
PFX Um 0 zetta/S. .

Modified gc_lang/fr/oxt/Dictionnaires/dictionaries/fr-classique.dic from [64278a50c2] to [ba125a2826].

more than 10,000 changes

Modified gc_lang/fr/oxt/Dictionnaires/dictionaries/fr-reforme1990.aff from [46a3730ba5] to [ce315f144e].

1
2
3
4
5
6
7
8
9
10
11
12
13
14
...
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410

411
412
413
414
415

416
417
418
419
420

421
422
423
424
425

426
427
428
429

430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448

449
450
451
452
453
454
455
456
457
458
459



460


461
462
463
464
465
466
467
468
469
470














471
472
473
474
475
476
477

478
479
480
481
482
483
484
...
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548

549
550
551
552
553
554

555
556
557
558
559
560

561
562
563
564
565
566

567
568
569
570
571
572

573
574
575









576





















577
578
579
580
581
582
583
584
585
586


587





588
589
590
591
592
593
594
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.

# AFFIXES DU DICTIONNAIRE ORTHOGRAPHIQUE FRANÇAIS “RÉFORME 1990” v6.5
# par Olivier R. -- licence MPL 2.0
# Généré le 26-11-2019 à 15:57
# Pour améliorer le dictionnaire, allez sur https://grammalecte.net/



SET UTF-8

WORDCHARS -’'1234567890.
................................................................................

SFX A. Y 1
SFX A. 0 s [^sxz]

SFX I. Y 1
SFX I. 0 s [^sxz]

SFX F. Y 78
SFX F. 0 s []
SFX F. e 0 [éiï]e
SFX F. e s [éiï]e
SFX F. rice eur [dt]rice
SFX F. rice eurs [dt]rice
SFX F. de d de
SFX F. de ds de
SFX F. fe f fe
SFX F. fe fs fe
SFX F. anche anc anche
SFX F. anche ancs anche
SFX F. èche ec èche
SFX F. èche ecs èche
SFX F. aiche ais aiche
SFX F. aîche ais aîche
SFX F. khe kh khe
SFX F. khe khs khe
SFX F. he h [ut]he
SFX F. he hs [ut]he
SFX F. ke k [^è]ke
SFX F. ke ks [^è]ke
SFX F. èke ek èke
SFX F. èke eks èke
SFX F. le l [aiouûh]le
SFX F. le ls [aiouûh]le
SFX F. lle l [eiu]lle
SFX F. lle ls [eiu]lle
SFX F. olle ou olle

SFX F. olle ous olle
SFX F. olle ol olle
SFX F. olle ols olle
SFX F. ne n [aiouï]ne
SFX F. ne ns [aiouï]ne

SFX F. nne n [aeo]nne
SFX F. nne ns [aeo]nne
SFX F. ène en ène
SFX F. ène ens ène
SFX F. igne in igne

SFX F. igne ins igne
SFX F. re r [aiouûy]re
SFX F. re rs [aiouûy]re
SFX F. ère er ère
SFX F. ère ers ère

SFX F. se s [^us]se
SFX F. esse e [^eo].esse
SFX F. esse es [^eo].esse
SFX F. rofesse rofès rofesse

SFX F. eresse eur eresse
SFX F. eresse eurs eresse
SFX F. oresse eur oresse
SFX F. oresse eurs oresse
SFX F. sse s [^e]sse
SFX F. use us [^eo]use
SFX F. euse eur euse
SFX F. euse eurs euse
SFX F. te t [^èt]te
SFX F. te ts [^èt]te
SFX F. tte t tte
SFX F. tte ts tte
SFX F. ète et ète
SFX F. ète ets ète
SFX F. ue u [^gq]ue
SFX F. ue us [^gq]ue
SFX F. gue g gue
SFX F. gue gs gue
SFX F. cque c cque

SFX F. cque cs cque
SFX F. que c [^c]que
SFX F. que cs [^c]que
SFX F. ève ef ève
SFX F. ève efs ève
SFX F. ve f [iïu]ve
SFX F. ve fs [iïu]ve
SFX F. uë u uë
SFX F. uë us uë
SFX F. üe u üe
SFX F. üe us üe



SFX F. ze z ze



SFX W. N 15
SFX W. e es e
SFX W. ce x ce
SFX W. use ux [eo]use
SFX W. ausse aux ausse
SFX W. ousse oux ousse
SFX W. ale al ale
SFX W. ale aux ale
SFX W. elle eau elle














SFX W. elle eaux elle
SFX W. elle el [bv]elle
SFX W. elle els [bv]elle
SFX W. ieille ieux ieille
SFX W. ieille ieil ieille
SFX W. ofolle oufou ofolle
SFX W. ofolle oufous ofolle


SFX S* Y 2
SFX S* 0 0/D'L'Q' [^sxz]
SFX S* 0 s/D'Q' [^sxz]

SFX X* Y 4
SFX X* 0 0/D'L'Q' [ul]
................................................................................
SFX I* en ens/D'Q' en
SFX I* o o/D'L'Q' o
SFX I* o os/D'Q' o
SFX I* um um/D'L'Q' um
SFX I* um ums/D'Q' um
SFX I* us us/D'L'Q' us

SFX F* Y 59
SFX F* 0 0/D'L'Q' []
SFX F* 0 s/D'Q' []
SFX F* e 0/D'L'Q' [éiï]e
SFX F* e s/D'Q' [éiï]e
SFX F* rice eur/D'L'Q' [dt]rice
SFX F* rice eurs/D'Q' [dt]rice
SFX F* de d/D'L'Q' de
SFX F* de ds/D'Q' de
SFX F* he h/D'L'Q' [ut]he
SFX F* he hs/D'Q' [ut]he
SFX F* èke ek/D'L'Q' èke
SFX F* èke eks/D'Q' èke
SFX F* le l/D'L'Q' [aiouû]le
SFX F* le ls/D'Q' [aiouû]le
SFX F* lle l/D'L'Q' [eiu]lle
SFX F* lle ls/D'Q' [eiu]lle
SFX F* ne n/D'L'Q' [aiouï]ne
SFX F* ne ns/D'Q' [aiouï]ne
SFX F* nne n/D'L'Q' [aeo]nne
SFX F* nne ns/D'Q' [aeo]nne
SFX F* gne n/D'L'Q' igne
SFX F* gne ns/D'Q' igne
SFX F* re r/D'L'Q' [aiouûy]re
SFX F* re rs/D'Q' [aiouûy]re
SFX F* ère er/D'L'Q' ère
SFX F* ère ers/D'Q' ère
SFX F* se s/D'L'Q' [^us]se
SFX F* esse e/D'L'Q' [^eo].esse
SFX F* esse es/D'Q' [^eo].esse
SFX F* eresse eur/D'L'Q' eresse
SFX F* eresse eurs/D'Q' eresse
SFX F* oresse eur/D'L'Q' oresse

SFX F* oresse eurs/D'Q' oresse
SFX F* sse s/D'L'Q' [^e]sse
SFX F* use us/D'L'Q' [^eo]use
SFX F* euse eur/D'L'Q' euse
SFX F* euse eurs/D'Q' euse
SFX F* te t/D'L'Q' [^èt]te

SFX F* te ts/D'Q' [^èt]te
SFX F* tte t/D'L'Q' tte
SFX F* tte ts/D'Q' tte
SFX F* ète et/D'L'Q' ète
SFX F* ète ets/D'Q' ète
SFX F* ue u/D'L'Q' [^gq]ue

SFX F* ue us/D'Q' [^gq]ue
SFX F* gue g/D'L'Q' gue
SFX F* gue gs/D'Q' gue
SFX F* cque c/D'L'Q' cque
SFX F* cque cs/D'Q' cque
SFX F* que c/D'L'Q' [^c]que

SFX F* que cs/D'Q' [^c]que
SFX F* ève ef/D'L'Q' ève
SFX F* ève efs/D'Q' ève
SFX F* ve f/D'L'Q' [iïu]ve
SFX F* ve fs/D'Q' [iïu]ve
SFX F* uë u/D'L'Q' uë

SFX F* uë us/D'Q' uë
SFX F* üe u/D'L'Q' üe
SFX F* üe us/D'Q' üe































SFX W* Y 10
SFX W* 0 0/D'L'Q' e
SFX W* e es/D'Q' e
SFX W* ce x/D'L'Q' ce
SFX W* use ux/D'L'Q' [eo]use
SFX W* ousse oux/D'L'Q' ousse
SFX W* ausse aux/D'L'Q' ausse
SFX W* ale al/D'L'Q' ale
SFX W* ale aux/D'Q' ale
SFX W* elle eau/D'L'Q' elle


SFX W* elle eaux/D'Q' elle






PFX Um Y 29
PFX Um 0 0/S. .
PFX Um 0 l' [aàâeèéêiîoôuyœæ]
PFX Um 0 d'/S. [aàâeèéêiîoôuyœæ]
PFX Um 0 yotta/S. .
PFX Um 0 zetta/S. .




|

|







 







|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<
|
|
|
>
|
|
|
|
<
>
|
|
|
|
<
>
|
|
|
|
<
>
|
|
|
<
>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<
>
|
|
|
|
|
|
|
|
|
|
|
>
>
>
|
>
>

|
|
|
|
|
|
|
|
|
>
>
>
>
>
>
>
>
>
>
>
>
>
>
|
<
<
<
<
<
<
>







 







|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<
>
|
|
|
|
|
<
>
|
|
|
|
|
<
>
|
|
|
|
|
<
>
|
|
|
|
|
<
>
|
|
|
>
>
>
>
>
>
>
>
>

>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>

|
<
<
<
<
<
<
|
<
>
>
|
>
>
>
>
>







1
2
3
4
5
6
7
8
9
10
11
12
13
14
...
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406

407
408
409
410
411
412
413
414

415
416
417
418
419

420
421
422
423
424

425
426
427
428

429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447

448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490






491
492
493
494
495
496
497
498
...
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561

562
563
564
565
566
567

568
569
570
571
572
573

574
575
576
577
578
579

580
581
582
583
584
585

586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622






623

624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.

# AFFIXES DU DICTIONNAIRE ORTHOGRAPHIQUE FRANÇAIS “RÉFORME 1990” v7.0
# par Olivier R. -- licence MPL 2.0
# Généré le 03-01-2020 à 17:35
# Pour améliorer le dictionnaire, allez sur https://grammalecte.net/



SET UTF-8

WORDCHARS -’'1234567890.
................................................................................

SFX A. Y 1
SFX A. 0 s [^sxz]

SFX I. Y 1
SFX I. 0 s [^sxz]

SFX F. N 27
SFX F. 0 s [^sxz]
SFX F. 0 e [éiïudhlsz]
SFX F. 0 es [éiïudhlsz]
SFX F. 0 e [^e][knrt]
SFX F. 0 es [^e][knrt]
SFX F. ec èche sec
SFX F. ec èches sec
SFX F. ef ève ef
SFX F. ef èves ef
SFX F. f ve [iïu]f
SFX F. f ves [iïu]f
SFX F. 0 e of
SFX F. 0 es of
SFX F. en ène en
SFX F. en ènes en
SFX F. er ère er
SFX F. er ères er
SFX F. et ète et
SFX F. et ètes et
SFX F. c que [iru]c
SFX F. c ques [iru]c
SFX F. 0 que grec
SFX F. 0 ques grec
SFX F. 0 he blanc

SFX F. 0 hes blanc
SFX F. 0 ue long
SFX F. 0 ues long

SFX Fs N 3
SFX Fs 0 s eur
SFX Fs r se eur
SFX Fs r ses eur


SFX Fc N 3
SFX Fc 0 s [td]eur
SFX Fc eur rice [td]eur
SFX Fc eur rices [td]eur


SFX Fe N 3
SFX Fe 0 s eur
SFX Fe eur eresse eur
SFX Fe eur eresses eur


SFX Go N 2
SFX Go eur oresse teur
SFX Go eur oresses teur


SFX F, N 17
SFX F, 0 s [^sxz]
SFX F, 0 sse e
SFX F, 0 sses e
SFX F, 0 fe f
SFX F, 0 fes f
SFX F, 0 le l
SFX F, 0 les l
SFX F, 0 ne n
SFX F, 0 nes n
SFX F, 0 se s
SFX F, 0 ses s
SFX F, 0 te t
SFX F, 0 tes t
SFX F, u l [mf]ou
SFX F, u ls [mf]ou
SFX F, u lle [mf]ou
SFX F, u lles [mf]ou


SFX Fx N 16
SFX Fx 0 s foufou
SFX Fx ufou folle foufou
SFX Fx ufou folles foufou
SFX Fx is iche frais
SFX Fx is iches frais
SFX Fx 0 s pignouf
SFX Fx 0 e pignouf
SFX Fx 0 es pignouf
SFX Fx 0 s in
SFX Fx in igne in
SFX Fx in ignes in
SFX Fx 0 e malin
SFX Fx 0 es malin
SFX Fx 0 s gu
SFX Fx u üe gu
SFX Fx u ües gu

SFX W. N 8
SFX W. l ux al
SFX W. l le al
SFX W. l les al
SFX W. 0 x eau
SFX W. au lle eau
SFX W. au lles eau
SFX W. x se ux
SFX W. x ses ux

SFX Wx N 14
SFX Wx x sse faux
SFX Wx x sses faux
SFX Wx x ce doux
SFX Wx x ces doux
SFX Wx x sse roux
SFX Wx x sses roux
SFX Wx eux eil vieux
SFX Wx eux eille vieux
SFX Wx eux eilles vieux
SFX Wx 0 x eau
SFX Wx au l eau
SFX Wx au ls eau
SFX Wx au lle eau






SFX Wx au lles eau

SFX S* Y 2
SFX S* 0 0/D'L'Q' [^sxz]
SFX S* 0 s/D'Q' [^sxz]

SFX X* Y 4
SFX X* 0 0/D'L'Q' [ul]
................................................................................
SFX I* en ens/D'Q' en
SFX I* o o/D'L'Q' o
SFX I* o os/D'Q' o
SFX I* um um/D'L'Q' um
SFX I* um ums/D'Q' um
SFX I* us us/D'L'Q' us

SFX F* Y 31
SFX F* 0 0/L'D'Q' [^sxz]
SFX F* 0 s/D'Q' [^sxz]
SFX F* 0 0/L'D'Q' [sxz]
SFX F* 0 e/L'D'Q' [éiïudhlsz]
SFX F* 0 es/D'Q' [éiïudhlsz]
SFX F* 0 e/L'D'Q' [^e][knrt]
SFX F* 0 es/D'Q' [^e][knrt]
SFX F* ec èche/L'D'Q' sec
SFX F* ec èches/D'Q' sec
SFX F* ef ève/L'D'Q' ef
SFX F* ef èves/D'Q' ef
SFX F* f ve/L'D'Q' [iïu]f
SFX F* f ves/D'Q' [iïu]f
SFX F* 0 e/L'D'Q' of
SFX F* 0 es/D'Q' of
SFX F* en ène/L'D'Q' en
SFX F* en ènes/D'Q' en
SFX F* ek èke/L'D'Q' ek
SFX F* ek èkes/D'Q' ek
SFX F* er ère/L'D'Q' er
SFX F* er ères/D'Q' er
SFX F* et ète/L'D'Q' et
SFX F* et ètes/D'Q' et
SFX F* c que/L'D'Q' [iru]c
SFX F* c ques/D'Q' [iru]c
SFX F* 0 que/L'D'Q' grec
SFX F* 0 ques/D'Q' grec
SFX F* 0 he/L'D'Q' blanc
SFX F* 0 hes/D'Q' blanc
SFX F* 0 ue/L'D'Q' long
SFX F* 0 ues/D'Q' long


SFX Fz Y 4
SFX Fz 0 0/L'D'Q' eur
SFX Fz 0 s/D'Q' eur
SFX Fz r se/L'D'Q' eur
SFX Fz r ses/D'Q' eur


SFX Fi Y 4
SFX Fi 0 0/L'D'Q' [td]eur
SFX Fi 0 s/D'Q' [td]eur
SFX Fi eur rice/L'D'Q' [td]eur
SFX Fi eur rices/D'Q' [td]eur


SFX Fr Y 4
SFX Fr 0 0/L'D'Q' eur
SFX Fr 0 s/D'Q' eur
SFX Fr eur eresse/L'D'Q' eur
SFX Fr eur eresses/D'Q' eur


SFX Fy Y 4
SFX Fy 0 0/L'D'Q' gu
SFX Fy 0 s/D'Q' gu
SFX Fy u üe/L'D'Q' gu
SFX Fy u ües/D'Q' gu


SFX F+ Y 11
SFX F+ 0 0/L'D'Q' [^sxz]
SFX F+ 0 s/D'Q' [^sxz]
SFX F+ 0 0/L'D'Q' [sxz]
SFX F+ 0 fe/L'D'Q' f
SFX F+ 0 fes/D'Q' f
SFX F+ 0 le/L'D'Q' l
SFX F+ 0 les/D'Q' l
SFX F+ 0 ne/L'D'Q' n
SFX F+ 0 nes/D'Q' n
SFX F+ 0 te/L'D'Q' t
SFX F+ 0 tes/D'Q' t

SFX F; Y 19
SFX F; 0 0/L'D'Q' [^sxz]
SFX F; 0 s/D'Q' [^sxz]
SFX F; 0 0/L'D'Q' [sxz]
SFX F; 0 sse/L'D'Q' e
SFX F; 0 sses/D'Q' e
SFX F; 0 fe/L'D'Q' f
SFX F; 0 fes/D'Q' f
SFX F; 0 le/L'D'Q' l
SFX F; 0 les/D'Q' l
SFX F; 0 ne/L'D'Q' n
SFX F; 0 nes/D'Q' n
SFX F; 0 se/L'D'Q' s
SFX F; 0 ses/D'Q' s
SFX F; 0 te/L'D'Q' t
SFX F; 0 tes/D'Q' t
SFX F; u l/L'D'Q' [mf]ou
SFX F; u ls/D'Q' [mf]ou
SFX F; u lle/L'D'Q' [mf]ou
SFX F; u lles/D'Q' [mf]ou

SFX W* Y 10
SFX W* 0 0/L'D'Q' [lu]






SFX W* l ux/D'Q' al

SFX W* l le/L'D'Q' al
SFX W* l les/D'Q' al
SFX W* 0 x/D'Q' eau
SFX W* au lle/L'D'Q' eau
SFX W* au lles/D'Q' eau
SFX W* 0 0/L'D'Q' ux
SFX W* x se/L'D'Q' ux
SFX W* x ses/D'Q' ux

PFX Um Y 29
PFX Um 0 0/S. .
PFX Um 0 l' [aàâeèéêiîoôuyœæ]
PFX Um 0 d'/S. [aàâeèéêiîoôuyœæ]
PFX Um 0 yotta/S. .
PFX Um 0 zetta/S. .

Modified gc_lang/fr/oxt/Dictionnaires/dictionaries/fr-reforme1990.dic from [e2af2861c3] to [4e990054cc].

more than 10,000 changes

Modified gc_lang/fr/oxt/Dictionnaires/dictionaries/fr-toutesvariantes.aff from [1bd9ca7efb] to [8ac219593e].

1
2
3
4
5
6
7
8
9
10
11
12
13
14
...
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424

425
426
427
428
429

430
431
432
433
434

435
436
437
438
439

440
441
442
443

444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462

463
464
465
466
467
468
469
470
471
472
473
474









475
476
477
478
479
480
481
482
483
484














485
486
487
488
489
490
491

492
493
494
495
496
497
498
...
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576

577
578
579
580
581
582

583
584
585
586
587
588

589
590
591
592
593
594

595
596
597
598
599
600
601
602
603
604
605


606
607
608
609
610
611

























612

613
614


615





616
617
618
619
620
621
622
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.

# AFFIXES DU DICTIONNAIRE ORTHOGRAPHIQUE FRANÇAIS “TOUTES VARIANTES” v6.5
# par Olivier R. -- licence MPL 2.0
# Généré le 26-11-2019 à 15:57
# Pour améliorer le dictionnaire, allez sur https://grammalecte.net/



SET UTF-8

WORDCHARS -’'1234567890.
................................................................................
SFX I. a e a
SFX I. e i e
SFX I. en ina en
SFX I. o i o
SFX I. um a um
SFX I. us i us

SFX F. Y 78
SFX F. 0 s []
SFX F. e 0 [éiï]e
SFX F. e s [éiï]e
SFX F. rice eur [dt]rice
SFX F. rice eurs [dt]rice
SFX F. de d de
SFX F. de ds de
SFX F. fe f fe
SFX F. fe fs fe
SFX F. anche anc anche
SFX F. anche ancs anche
SFX F. èche ec èche
SFX F. èche ecs èche
SFX F. aiche ais aiche
SFX F. aîche ais aîche
SFX F. khe kh khe
SFX F. khe khs khe
SFX F. he h [ut]he
SFX F. he hs [ut]he
SFX F. ke k [^è]ke
SFX F. ke ks [^è]ke
SFX F. èke ek èke
SFX F. èke eks èke
SFX F. le l [aiouûh]le
SFX F. le ls [aiouûh]le
SFX F. lle l [eiu]lle
SFX F. lle ls [eiu]lle
SFX F. olle ou olle

SFX F. olle ous olle
SFX F. olle ol olle
SFX F. olle ols olle
SFX F. ne n [aiouï]ne
SFX F. ne ns [aiouï]ne

SFX F. nne n [aeo]nne
SFX F. nne ns [aeo]nne
SFX F. ène en ène
SFX F. ène ens ène
SFX F. igne in igne

SFX F. igne ins igne
SFX F. re r [aiouûy]re
SFX F. re rs [aiouûy]re
SFX F. ère er ère
SFX F. ère ers ère

SFX F. se s [^us]se
SFX F. esse e [^eo].esse
SFX F. esse es [^eo].esse
SFX F. rofesse rofès rofesse

SFX F. eresse eur eresse
SFX F. eresse eurs eresse
SFX F. oresse eur oresse
SFX F. oresse eurs oresse
SFX F. sse s [^e]sse
SFX F. use us [^eo]use
SFX F. euse eur euse
SFX F. euse eurs euse
SFX F. te t [^èt]te
SFX F. te ts [^èt]te
SFX F. tte t tte
SFX F. tte ts tte
SFX F. ète et ète
SFX F. ète ets ète
SFX F. ue u [^gq]ue
SFX F. ue us [^gq]ue
SFX F. gue g gue
SFX F. gue gs gue
SFX F. cque c cque

SFX F. cque cs cque
SFX F. que c [^c]que
SFX F. que cs [^c]que
SFX F. ève ef ève
SFX F. ève efs ève
SFX F. ve f [iïu]ve
SFX F. ve fs [iïu]ve
SFX F. uë u uë
SFX F. uë us uë
SFX F. üe u üe
SFX F. üe us üe
SFX F. ze z ze










SFX W. N 15
SFX W. e es e
SFX W. ce x ce
SFX W. use ux [eo]use
SFX W. ausse aux ausse
SFX W. ousse oux ousse
SFX W. ale al ale
SFX W. ale aux ale
SFX W. elle eau elle














SFX W. elle eaux elle
SFX W. elle el [bv]elle
SFX W. elle els [bv]elle
SFX W. ieille ieux ieille
SFX W. ieille ieil ieille
SFX W. ofolle oufou ofolle
SFX W. ofolle oufous ofolle


SFX S* Y 2
SFX S* 0 0/D'L'Q' [^sxz]
SFX S* 0 s/D'Q' [^sxz]

SFX X* Y 4
SFX X* 0 0/D'L'Q' [ul]
................................................................................
SFX I* o i/D'Q' o
SFX I* um um/D'L'Q' um
SFX I* um ums/D'Q' um
SFX I* um a/D'Q' um
SFX I* us us/D'L'Q' us
SFX I* us i/D'Q' us

SFX F* Y 59
SFX F* 0 0/D'L'Q' []
SFX F* 0 s/D'Q' []
SFX F* e 0/D'L'Q' [éiï]e
SFX F* e s/D'Q' [éiï]e
SFX F* rice eur/D'L'Q' [dt]rice
SFX F* rice eurs/D'Q' [dt]rice
SFX F* de d/D'L'Q' de
SFX F* de ds/D'Q' de
SFX F* he h/D'L'Q' [ut]he
SFX F* he hs/D'Q' [ut]he
SFX F* èke ek/D'L'Q' èke
SFX F* èke eks/D'Q' èke
SFX F* le l/D'L'Q' [aiouû]le
SFX F* le ls/D'Q' [aiouû]le
SFX F* lle l/D'L'Q' [eiu]lle
SFX F* lle ls/D'Q' [eiu]lle
SFX F* ne n/D'L'Q' [aiouï]ne
SFX F* ne ns/D'Q' [aiouï]ne
SFX F* nne n/D'L'Q' [aeo]nne
SFX F* nne ns/D'Q' [aeo]nne
SFX F* gne n/D'L'Q' igne
SFX F* gne ns/D'Q' igne
SFX F* re r/D'L'Q' [aiouûy]re
SFX F* re rs/D'Q' [aiouûy]re
SFX F* ère er/D'L'Q' ère
SFX F* ère ers/D'Q' ère
SFX F* se s/D'L'Q' [^us]se
SFX F* esse e/D'L'Q' [^eo].esse
SFX F* esse es/D'Q' [^eo].esse
SFX F* eresse eur/D'L'Q' eresse
SFX F* eresse eurs/D'Q' eresse
SFX F* oresse eur/D'L'Q' oresse

SFX F* oresse eurs/D'Q' oresse
SFX F* sse s/D'L'Q' [^e]sse
SFX F* use us/D'L'Q' [^eo]use
SFX F* euse eur/D'L'Q' euse
SFX F* euse eurs/D'Q' euse
SFX F* te t/D'L'Q' [^èt]te

SFX F* te ts/D'Q' [^èt]te
SFX F* tte t/D'L'Q' tte
SFX F* tte ts/D'Q' tte
SFX F* ète et/D'L'Q' ète
SFX F* ète ets/D'Q' ète
SFX F* ue u/D'L'Q' [^gq]ue

SFX F* ue us/D'Q' [^gq]ue
SFX F* gue g/D'L'Q' gue
SFX F* gue gs/D'Q' gue
SFX F* cque c/D'L'Q' cque
SFX F* cque cs/D'Q' cque
SFX F* que c/D'L'Q' [^c]que

SFX F* que cs/D'Q' [^c]que
SFX F* ève ef/D'L'Q' ève
SFX F* ève efs/D'Q' ève
SFX F* ve f/D'L'Q' [iïu]ve
SFX F* ve fs/D'Q' [iïu]ve
SFX F* uë u/D'L'Q' uë
SFX F* uë us/D'Q' 
SFX F* üe u/D'L'Q' üe
SFX F* üe us/D'Q' üe

SFX W* Y 10


SFX W* 0 0/D'L'Q' e
SFX W* e es/D'Q' e
SFX W* ce x/D'L'Q' ce
SFX W* use ux/D'L'Q' [eo]use
SFX W* ousse oux/D'L'Q' ousse
SFX W* ausse aux/D'L'Q' ausse

























SFX W* ale al/D'L'Q' ale

SFX W* ale aux/D'Q' ale
SFX W* elle eau/D'L'Q' elle


SFX W* elle eaux/D'Q' elle






PFX Um Y 30
PFX Um 0 0/S. .
PFX Um 0 l' [aàâeèéêiîoôuyœæ]
PFX Um 0 d'/S. [aàâeèéêiîoôuyœæ]
PFX Um 0 yotta/S. .
PFX Um 0 zetta/S. .




|

|







 







|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<
|
|
|
>
|
|
|
|
<
>
|
|
|
|
<
>
|
|
|
|
<
>
|
|
|
<
>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<
>
|
|
|
|
|
|
|
|
|
|
|
|
>
>
>
>
>
>
>
>
>

|
|
|
|
|
|
|
|
|
>
>
>
>
>
>
>
>
>
>
>
>
>
>
|
<
<
<
<
<
<
>







 







|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<
>
|
|
|
|
|
<
>
|
|
|
|
|
<
>
|
|
|
|
|
<
>
|
|
|
|
|
|
|
<
<

|
>
>
|
|
|
|
|
|
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
|
>
|
<
>
>
|
>
>
>
>
>







1
2
3
4
5
6
7
8
9
10
11
12
13
14
...
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420

421
422
423
424
425
426
427
428

429
430
431
432
433

434
435
436
437
438

439
440
441
442

443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461

462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508






509
510
511
512
513
514
515
516
...
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593

594
595
596
597
598
599

600
601
602
603
604
605

606
607
608
609
610
611

612
613
614
615
616
617
618
619


620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657

658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.

# AFFIXES DU DICTIONNAIRE ORTHOGRAPHIQUE FRANÇAIS “TOUTES VARIANTES” v7.0
# par Olivier R. -- licence MPL 2.0
# Généré le 03-01-2020 à 17:35
# Pour améliorer le dictionnaire, allez sur https://grammalecte.net/



SET UTF-8

WORDCHARS -’'1234567890.
................................................................................
SFX I. a e a
SFX I. e i e
SFX I. en ina en
SFX I. o i o
SFX I. um a um
SFX I. us i us

SFX F. N 27
SFX F. 0 s [^sxz]
SFX F. 0 e [éiïudhlsz]
SFX F. 0 es [éiïudhlsz]
SFX F. 0 e [^e][knrt]
SFX F. 0 es [^e][knrt]
SFX F. ec èche sec
SFX F. ec èches sec
SFX F. ef ève ef
SFX F. ef èves ef
SFX F. f ve [iïu]f
SFX F. f ves [iïu]f
SFX F. 0 e of
SFX F. 0 es of
SFX F. en ène en
SFX F. en ènes en
SFX F. er ère er
SFX F. er ères er
SFX F. et ète et
SFX F. et ètes et
SFX F. c que [iru]c
SFX F. c ques [iru]c
SFX F. 0 que grec
SFX F. 0 ques grec
SFX F. 0 he blanc

SFX F. 0 hes blanc
SFX F. 0 ue long
SFX F. 0 ues long

SFX Fs N 3
SFX Fs 0 s eur
SFX Fs r se eur
SFX Fs r ses eur


SFX Fc N 3
SFX Fc 0 s [td]eur
SFX Fc eur rice [td]eur
SFX Fc eur rices [td]eur


SFX Fe N 3
SFX Fe 0 s eur
SFX Fe eur eresse eur
SFX Fe eur eresses eur


SFX Go N 2
SFX Go eur oresse teur
SFX Go eur oresses teur


SFX F, N 17
SFX F, 0 s [^sxz]
SFX F, 0 sse e
SFX F, 0 sses e
SFX F, 0 fe f
SFX F, 0 fes f
SFX F, 0 le l
SFX F, 0 les l
SFX F, 0 ne n
SFX F, 0 nes n
SFX F, 0 se s
SFX F, 0 ses s
SFX F, 0 te t
SFX F, 0 tes t
SFX F, u l [mf]ou
SFX F, u ls [mf]ou
SFX F, u lle [mf]ou
SFX F, u lles [mf]ou


SFX Fx N 20
SFX Fx 0 s foufou
SFX Fx ufou folle foufou
SFX Fx ufou folles foufou
SFX Fx is îche frais
SFX Fx is îches frais
SFX Fx is iche frais
SFX Fx is iches frais
SFX Fx 0 s pignouf
SFX Fx 0 e pignouf
SFX Fx 0 es pignouf
SFX Fx 0 s in
SFX Fx in igne in
SFX Fx in ignes in
SFX Fx 0 e malin
SFX Fx 0 es malin
SFX Fx 0 s gu
SFX Fx 0 ë gu
SFX Fx 0 ës gu
SFX Fx u üe gu
SFX Fx u ües gu

SFX W. N 8
SFX W. l ux al
SFX W. l le al
SFX W. l les al
SFX W. 0 x eau
SFX W. au lle eau
SFX W. au lles eau
SFX W. x se ux
SFX W. x ses ux

SFX Wx N 14
SFX Wx x sse faux
SFX Wx x sses faux
SFX Wx x ce doux
SFX Wx x ces doux
SFX Wx x sse roux
SFX Wx x sses roux
SFX Wx eux eil vieux
SFX Wx eux eille vieux
SFX Wx eux eilles vieux
SFX Wx 0 x eau
SFX Wx au l eau
SFX Wx au ls eau
SFX Wx au lle eau






SFX Wx au lles eau

SFX S* Y 2
SFX S* 0 0/D'L'Q' [^sxz]
SFX S* 0 s/D'Q' [^sxz]

SFX X* Y 4
SFX X* 0 0/D'L'Q' [ul]
................................................................................
SFX I* o i/D'Q' o
SFX I* um um/D'L'Q' um
SFX I* um ums/D'Q' um
SFX I* um a/D'Q' um
SFX I* us us/D'L'Q' us
SFX I* us i/D'Q' us

SFX F* Y 31
SFX F* 0 0/L'D'Q' [^sxz]
SFX F* 0 s/D'Q' [^sxz]
SFX F* 0 0/L'D'Q' [sxz]
SFX F* 0 e/L'D'Q' [éiïudhlsz]
SFX F* 0 es/D'Q' [éiïudhlsz]
SFX F* 0 e/L'D'Q' [^e][knrt]
SFX F* 0 es/D'Q' [^e][knrt]
SFX F* ec èche/L'D'Q' sec
SFX F* ec èches/D'Q' sec
SFX F* ef ève/L'D'Q' ef
SFX F* ef èves/D'Q' ef
SFX F* f ve/L'D'Q' [iïu]f
SFX F* f ves/D'Q' [iïu]f
SFX F* 0 e/L'D'Q' of
SFX F* 0 es/D'Q' of
SFX F* en ène/L'D'Q' en
SFX F* en ènes/D'Q' en
SFX F* ek èke/L'D'Q' ek
SFX F* ek èkes/D'Q' ek
SFX F* er ère/L'D'Q' er
SFX F* er ères/D'Q' er
SFX F* et ète/L'D'Q' et
SFX F* et ètes/D'Q' et
SFX F* c que/L'D'Q' [iru]c
SFX F* c ques/D'Q' [iru]c
SFX F* 0 que/L'D'Q' grec
SFX F* 0 ques/D'Q' grec
SFX F* 0 he/L'D'Q' blanc
SFX F* 0 hes/D'Q' blanc
SFX F* 0 ue/L'D'Q' long
SFX F* 0 ues/D'Q' long


SFX Fz Y 4
SFX Fz 0 0/L'D'Q' eur
SFX Fz 0 s/D'Q' eur
SFX Fz r se/L'D'Q' eur
SFX Fz r ses/D'Q' eur


SFX Fi Y 4
SFX Fi 0 0/L'D'Q' [td]eur
SFX Fi 0 s/D'Q' [td]eur
SFX Fi eur rice/L'D'Q' [td]eur
SFX Fi eur rices/D'Q' [td]eur


SFX Fr Y 4
SFX Fr 0 0/L'D'Q' eur
SFX Fr 0 s/D'Q' eur
SFX Fr eur eresse/L'D'Q' eur
SFX Fr eur eresses/D'Q' eur


SFX Fy Y 6
SFX Fy 0 0/L'D'Q' gu
SFX Fy 0 s/D'Q' gu
SFX Fy 0 ë/L'D'Q' gu
SFX Fy 0 ës/D'Q' gu
SFX Fy u üe/L'D'Q' gu
SFX Fy u ües/D'Q' gu



SFX F+ Y 11
SFX F+ 0 0/L'D'Q' [^sxz]
SFX F+ 0 s/D'Q' [^sxz]
SFX F+ 0 0/L'D'Q' [sxz]
SFX F+ 0 fe/L'D'Q' f
SFX F+ 0 fes/D'Q' f
SFX F+ 0 le/L'D'Q' l
SFX F+ 0 les/D'Q' l
SFX F+ 0 ne/L'D'Q' n
SFX F+ 0 nes/D'Q' n
SFX F+ 0 te/L'D'Q' t
SFX F+ 0 tes/D'Q' t

SFX F; Y 19
SFX F; 0 0/L'D'Q' [^sxz]
SFX F; 0 s/D'Q' [^sxz]
SFX F; 0 0/L'D'Q' [sxz]
SFX F; 0 sse/L'D'Q' e
SFX F; 0 sses/D'Q' e
SFX F; 0 fe/L'D'Q' f
SFX F; 0 fes/D'Q' f
SFX F; 0 le/L'D'Q' l
SFX F; 0 les/D'Q' l
SFX F; 0 ne/L'D'Q' n
SFX F; 0 nes/D'Q' n
SFX F; 0 se/L'D'Q' s
SFX F; 0 ses/D'Q' s
SFX F; 0 te/L'D'Q' t
SFX F; 0 tes/D'Q' t
SFX F; u l/L'D'Q' [mf]ou
SFX F; u ls/D'Q' [mf]ou
SFX F; u lle/L'D'Q' [mf]ou
SFX F; u lles/D'Q' [mf]ou

SFX W* Y 10
SFX W* 0 0/L'D'Q' [lu]
SFX W* l ux/D'Q' al

SFX W* l le/L'D'Q' al
SFX W* l les/D'Q' al
SFX W* 0 x/D'Q' eau
SFX W* au lle/L'D'Q' eau
SFX W* au lles/D'Q' eau
SFX W* 0 0/L'D'Q' ux
SFX W* x se/L'D'Q' ux
SFX W* x ses/D'Q' ux

PFX Um Y 30
PFX Um 0 0/S. .
PFX Um 0 l' [aàâeèéêiîoôuyœæ]
PFX Um 0 d'/S. [aàâeèéêiîoôuyœæ]
PFX Um 0 yotta/S. .
PFX Um 0 zetta/S. .

Modified gc_lang/fr/oxt/Dictionnaires/dictionaries/fr-toutesvariantes.dic from [e0a58ed3b5] to [018517dcd5].

more than 10,000 changes

Modified gc_lang/fr/perf_memo.txt from [08e098feb2] to [70dc62f0cc].

23
24
25
26
27
28
29

0.5.15      2017.02.05 10:10    4.90222     1.18444     0.786696    0.233413    0.25071     0.260214    0.602112    0.325235    0.0609932   0.00706897
0.5.16      2017.05.12 07:41    4.92201     1.19269     0.80639     0.239147    0.257518    0.266523    0.62111     0.33359     0.0634668   0.00757178
0.6.1       2018.02.12 09:58    5.25924     1.2649      0.878442    0.257465    0.280558    0.293903    0.686887    0.391275    0.0672474   0.00824723
0.6.2       2018.02.19 19:06    5.51302     1.29359     0.874157    0.260415    0.271596    0.290641    0.684754    0.376905    0.0815201   0.00919633  (spelling normalization)
1.0         2018.11.23 10:59    2.88577     0.702486    0.485648    0.139897    0.14079     0.148125    0.348751    0.201061    0.0360297   0.0043535   (x2, with new GC engine)
1.1         2019.05.16 09:42    1.50743     0.360923    0.261113    0.0749272   0.0763827   0.0771537   0.180504    0.102942    0.0182762   0.0021925   (×2, but new processor: AMD Ryzen 7 2700X)
1.2.1       2019.08.06 20:57    1.42886     0.358425    0.247356    0.0704405   0.0754886   0.0765604   0.177197    0.0988517   0.0188103   0.0020243








>
23
24
25
26
27
28
29
30
0.5.15      2017.02.05 10:10    4.90222     1.18444     0.786696    0.233413    0.25071     0.260214    0.602112    0.325235    0.0609932   0.00706897
0.5.16      2017.05.12 07:41    4.92201     1.19269     0.80639     0.239147    0.257518    0.266523    0.62111     0.33359     0.0634668   0.00757178
0.6.1       2018.02.12 09:58    5.25924     1.2649      0.878442    0.257465    0.280558    0.293903    0.686887    0.391275    0.0672474   0.00824723
0.6.2       2018.02.19 19:06    5.51302     1.29359     0.874157    0.260415    0.271596    0.290641    0.684754    0.376905    0.0815201   0.00919633  (spelling normalization)
1.0         2018.11.23 10:59    2.88577     0.702486    0.485648    0.139897    0.14079     0.148125    0.348751    0.201061    0.0360297   0.0043535   (x2, with new GC engine)
1.1         2019.05.16 09:42    1.50743     0.360923    0.261113    0.0749272   0.0763827   0.0771537   0.180504    0.102942    0.0182762   0.0021925   (×2, but new processor: AMD Ryzen 7 2700X)
1.2.1       2019.08.06 20:57    1.42886     0.358425    0.247356    0.0704405   0.0754886   0.0765604   0.177197    0.0988517   0.0188103   0.0020243
1.6.0       2020.01.03 20:22    1.38847     0.346214    0.240242    0.0709539   0.0737499   0.0748733   0.176477    0.0969171   0.0187857   0.0025143   (nouveau dictionnaire avec lemmes masculin)

Modified gc_lang/fr/rules.grx from [ba222ab989] to [32bf0ba699].

1893
1894
1895
1896
1897
1898
1899
1900
1901
1902
1903
1904
1905
1906
1907
....
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
....
3787
3788
3789
3790
3791
3792
3793
3794
3795
3796
3797
3798
3799
3800
3801
....
3994
3995
3996
3997
3998
3999
4000
4001
4002
4003
4004
4005
4006
4007
4008
4009
4010
4011
4012
4013
4014
4015
4016
4017
4018
4019
4020
4021
4022
4023
4024
4025
4026
4027
4028
4029
4030
4031
4032
4033
4034
4035
....
4155
4156
4157
4158
4159
4160
4161
4162
4163
4164
4165
4166
4167
4168
4169
....
4826
4827
4828
4829
4830
4831
4832
4833
4834
4835
4836
4837
4838
4839
4840
....
4933
4934
4935
4936
4937
4938
4939
4940
4941
4942
4943
4944
4945
4946

4947
4948
4949
4950
4951
4952
4953
4954
4955
4956
4957
4958
4959
4960
4961
4962
4963
4964
....
4994
4995
4996
4997
4998
4999
5000
5001
5002
5003
5004
5005
5006
5007
5008
5009
5010
5011
5012
5013
5014
5015
5016
5017
....
5027
5028
5029
5030
5031
5032
5033
5034
5035
5036
5037
5038
5039
5040
5041
5042
5043
5044
5045



5046
5047

5048
5049
5050
5051
5052
5053
5054
5055
5056
5057
5058
5059
5060
5061
5062
5063
5064
5065
5066




5067
5068
5069



5070
5071
5072
5073
5074
5075
5076
5077
5078
5079
5080
5081
5082
5083
5084
5085
5086
5087
5088
5089
5090
5091
5092
....
5098
5099
5100
5101
5102
5103
5104
5105
5106
5107
5108
5109
5110
5111
5112
....
5133
5134
5135
5136
5137
5138
5139
5140
5141
5142
5143
5144
5145
5146
5147
....
5156
5157
5158
5159
5160
5161
5162

5163
5164
5165
5166

5167
5168
5169
5170
5171
5172
5173
....
6500
6501
6502
6503
6504
6505
6506
6507
6508
6509
6510
6511
6512
6513
6514
....
6580
6581
6582
6583
6584
6585
6586
6587
6588
6589
6590
6591
6592
6593
6594
6595
6596
6597
6598
6599
6600
6601
6602
6603
6604
6605
....
6802
6803
6804
6805
6806
6807
6808
6809
6810
6811
6812
6813
6814
6815
6816
6817
6818
6819
6820
6821
....
6885
6886
6887
6888
6889
6890
6891
6892
6893
6894
6895
6896
6897
6898
6899
....
6900
6901
6902
6903
6904
6905
6906

6907
6908
6909
6910
6911
6912
6913
....
6929
6930
6931
6932
6933
6934
6935

6936
6937
6938
6939
6940
6941
6942
....
6954
6955
6956
6957
6958
6959
6960
6961
6962
6963
6964
6965
6966
6967
6968
6969
6970
6971
6972
6973
6974
6975
....
7120
7121
7122
7123
7124
7125
7126
7127
7128
7129
7130
7131
7132
7133
7134
....
7244
7245
7246
7247
7248
7249
7250
7251
7252
7253
7254
7255
7256
7257
7258
....
7300
7301
7302
7303
7304
7305
7306
7307
7308
7309
7310
7311
7312
7313
7314
....
7324
7325
7326
7327
7328
7329
7330









7331
7332
7333
7334
7335
7336
7337
....
7465
7466
7467
7468
7469
7470
7471
7472
7473
7474
7475
7476
7477
7478
7479
7480
7481
7482
....
7491
7492
7493
7494
7495
7496
7497
7498
7499
7500
7501
7502
7503
7504
7505
....
7507
7508
7509
7510
7511
7512
7513
7514
7515
7516
7517
7518
7519
7520
7521
....
7562
7563
7564
7565
7566
7567
7568
7569
7570
7571
7572
7573
7574
7575
7576
....
7587
7588
7589
7590
7591
7592
7593
7594
7595
7596
7597
7598
7599
7600
7601
....
7639
7640
7641
7642
7643
7644
7645
7646
7647
7648
7649
7650
7651
7652
7653
....
7672
7673
7674
7675
7676
7677
7678
7679
7680
7681
7682
7683
7684
7685
7686
....
8086
8087
8088
8089
8090
8091
8092
8093
8094
8095
8096
8097
8098
8099
8100
....
8153
8154
8155
8156
8157
8158
8159
8160
8161
8162
8163
8164
8165
8166
8167
....
8204
8205
8206
8207
8208
8209
8210
8211
8212
8213
8214
8215
8216
8217
8218
8219
8220
8221
8222
8223
8224
8225
8226
8227
8228
8229
8230
8231
8232
8233
8234
8235
8236
....
8263
8264
8265
8266
8267
8268
8269
8270
8271
8272
8273
8274
8275
8276
8277
....
8293
8294
8295
8296
8297
8298
8299






8300
8301
8302
8303
8304
8305
8306
....
8307
8308
8309
8310
8311
8312
8313



8314
8315
8316
8317
8318
8319
8320
....
8471
8472
8473
8474
8475
8476
8477
8478
8479
8480
8481
8482
8483
8484
8485

8486
8487
8488
8489
8490
8491
8492
....
8824
8825
8826
8827
8828
8829
8830
8831
8832
8833
8834
8835
8836
8837
8838
....
8942
8943
8944
8945
8946
8947
8948
8949
8950
8951
8952
8953
8954
8955
8956
....
9027
9028
9029
9030
9031
9032
9033
9034
9035
9036
9037
9038
9039
9040
9041
....
9065
9066
9067
9068
9069
9070
9071
9072
9073
9074
9075
9076
9077
9078
9079
....
9154
9155
9156
9157
9158
9159
9160
9161
9162
9163
9164
9165
9166
9167
9168
9169
9170
9171
9172
9173


9174
9175
9176
9177
9178
9179
9180
9181
....
9242
9243
9244
9245
9246
9247
9248
9249
9250
9251
9252
9253
9254
9255
9256
9257
....
9413
9414
9415
9416
9417
9418
9419
9420
9421
9422
9423
9424
9425
9426
9427
9428
9429
9430
....
9505
9506
9507
9508
9509
9510
9511
9512
9513
9514
9515
9516
9517
9518
9519
9520
....
9540
9541
9542
9543
9544
9545
9546
9547
9548
9549
9550
9551
9552
9553
9554
....
9604
9605
9606
9607
9608
9609
9610
9611
9612
9613
9614
9615
9616
9617
9618
....
9624
9625
9626
9627
9628
9629
9630










9631
9632
9633
9634
9635
9636
9637
....
9870
9871
9872
9873
9874
9875
9876
9877
9878
9879
9880
9881
9882
9883
9884
....
9927
9928
9929
9930
9931
9932
9933
9934
9935
9936
9937
9938
9939
9940
9941
....
9951
9952
9953
9954
9955
9956
9957
9958
9959
9960
9961
9962
9963
9964
9965
.....
10263
10264
10265
10266
10267
10268
10269









10270
10271
10272
10273
10274
10275
10276
.....
10281
10282
10283
10284
10285
10286
10287
10288
10289
10290
10291
10292
10293
10294
10295
10296
10297
10298
10299
10300
10301
10302
10303
10304
.....
10412
10413
10414
10415
10416
10417
10418
10419
10420
10421
10422
10423
10424
10425
10426
10427
10428
10429
10430
10431
10432
10433
10434
.....
10445
10446
10447
10448
10449
10450
10451
10452
10453
10454
10455
10456
10457
10458
10459
10460
10461
10462
10463
10464
10465
10466
10467
10468
10469
.....
10513
10514
10515
10516
10517
10518
10519
10520
10521
10522
10523
10524
10525
10526
10527
10528
.....
11154
11155
11156
11157
11158
11159
11160
11161
11162
11163
11164
11165
11166
11167
11168
.....
11246
11247
11248
11249
11250
11251
11252
11253
11254
11255
11256
11257
11258
11259
11260
.....
11330
11331
11332
11333
11334
11335
11336
11337
11338
11339
11340
11341
11342
11343
11344
.....
11393
11394
11395
11396
11397
11398
11399
11400
11401
11402
11403
11404
11405
11406
11407
.....
11776
11777
11778
11779
11780
11781
11782
11783
11784
11785
11786
11787
11788
11789
11790
11791
11792
11793
11794
11795
11796
11797
11798
11799
11800
11801
11802
.....
11805
11806
11807
11808
11809
11810
11811


11812
11813
11814
11815
11816
11817
11818
.....
11869
11870
11871
11872
11873
11874
11875
11876
11877
11878
11879
11880
11881
11882
11883
.....
11969
11970
11971
11972
11973
11974
11975
11976
11977
11978
11979
11980
11981
11982
11983
11984
11985
11986
11987
11988
11989
11990
11991
11992
11993
11994


11995


11996
11997
11998
11999
12000
12001
12002
.....
12169
12170
12171
12172
12173
12174
12175
12176
12177
12178
12179
12180
12181
12182
12183
.....
12201
12202
12203
12204
12205
12206
12207
12208
12209
12210
12211
12212
12213
12214
12215
.....
12228
12229
12230
12231
12232
12233
12234

12235
12236
12237
12238
12239
12240
12241
12242
12243
12244
12245
12246

12247
12248
12249
12250
12251
12252
12253
.....
12256
12257
12258
12259
12260
12261
12262

12263
12264
12265
12266
12267
12268
12269
.....
12411
12412
12413
12414
12415
12416
12417
12418
12419
12420
12421
12422
12423
12424
12425
.....
12800
12801
12802
12803
12804
12805
12806
12807
12808
12809
12810
12811
12812
12813
12814
12815
12816
12817
12818
12819
12820
12821
12822
12823
12824
12825
12826
12827
12828
12829
12830
12831
12832
12833
12834
12835
12836
12837
12838
12839
12840
12841
12842
12843
12844
12845
12846
12847
12848
12849
12850
12851
12852
12853
12854
12855
.....
12862
12863
12864
12865
12866
12867
12868
12869
12870
12871
12872
12873
12874
12875
12876
12877
12878
12879
12880
12881
12882
12883
12884
12885
12886
12887
12888
12889
12890
12891
12892
12893
12894
12895
12896
12897
12898
12899
12900
12901
12902
.....
12913
12914
12915
12916
12917
12918
12919

12920
12921
12922

12923
12924
12925
12926
12927
12928
12929
.....
12953
12954
12955
12956
12957
12958
12959
12960
12961
12962
12963
12964
12965
12966
12967



12968

12969
12970

12971
12972
12973
12974

12975
12976
12977
12978
12979
12980
12981
12982
12983
12984
12985
12986
12987
12988
12989
12990
12991
12992
12993
12994
12995
12996
12997
12998
.....
13012
13013
13014
13015
13016
13017
13018
13019
13020
13021

13022
13023
13024
13025
13026
13027
13028
13029
13030
13031
13032
13033
13034
13035
13036
13037
13038
13039
13040
13041
13042
13043
13044
13045
13046
13047
13048
13049
13050
13051
13052

13053
13054
13055
13056
13057
13058
13059
.....
13062
13063
13064
13065
13066
13067
13068
13069
13070
13071
13072
13073
13074
13075
13076
.....
13101
13102
13103
13104
13105
13106
13107
13108
13109
13110
13111
13112
13113
13114
13115
13116
13117
13118
13119
13120
13121
13122
13123
13124
13125
13126
13127
13128
.....
13129
13130
13131
13132
13133
13134
13135
13136
13137
13138
13139
13140
13141
13142
13143
13144
13145
13146
13147
13148
13149
13150
13151
13152
13153
13154
13155
13156
13157
13158
13159
13160
13161
13162
13163
13164
13165
13166
.....
13170
13171
13172
13173
13174
13175
13176
13177



13178
13179
13180
13181
13182
13183
13184
.....
13235
13236
13237
13238
13239
13240
13241
13242

13243
13244
13245
13246
13247
13248
13249
13250
13251
13252
13253
13254
13255
13256
.....
13724
13725
13726
13727
13728
13729
13730



13731
13732
13733
13734
13735
13736
13737
.....
13973
13974
13975
13976
13977
13978
13979

13980
13981
13982

13983
13984
13985
13986
13987
13988
13989
.....
14036
14037
14038
14039
14040
14041
14042

14043
14044
14045
14046
14047
14048
14049
14050
14051
14052
14053
14054

14055
14056
14057
14058
14059
14060
14061
.....
14074
14075
14076
14077
14078
14079
14080


14081
14082
14083
14084
14085
14086
14087
.....
14097
14098
14099
14100
14101
14102
14103
14104
14105
14106
14107
14108
14109
14110
14111
.....
14402
14403
14404
14405
14406
14407
14408
14409
14410
14411
14412
14413
14414
14415
14416
14417
14418
14419
14420
14421
14422
14423
14424
.....
14993
14994
14995
14996
14997
14998
14999
15000
15001
15002
15003
15004
15005
15006
15007
.....
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
.....
16159
16160
16161
16162
16163
16164
16165
16166
16167
16168
16169
16170
16171
16172
16173
.....
16233
16234
16235
16236
16237
16238
16239
16240
16241
16242
16243
16244
16245
16246
16247
.....
16296
16297
16298
16299
16300
16301
16302
16303
16304
16305
16306
16307
16308
16309
16310
.....
16414
16415
16416
16417
16418
16419
16420
16421
16422
16423
16424
16425
16426
16427
16428
.....
16531
16532
16533
16534
16535
16536
16537
16538
16539
16540
16541
16542
16543
16544
16545
.....
16800
16801
16802
16803
16804
16805
16806
16807
16808
16809
16810
16811
16812
16813
16814
16815
16816
16817
16818
16819
16820
16821
16822
16823
16824
16825
16826
16827
16828
16829
16830
.....
16840
16841
16842
16843
16844
16845
16846

16847
16848
16849
16850
16851
16852
16853
.....
16856
16857
16858
16859
16860
16861
16862
16863
16864
16865
16866
16867
16868
16869
16870
.....
17001
17002
17003
17004
17005
17006
17007
17008
17009
17010
17011
17012
17013
17014
17015
17016
17017
17018
17019
17020
17021
17022
17023
17024
17025
17026
17027
.....
17127
17128
17129
17130
17131
17132
17133
17134
17135
17136
17137
17138
17139
17140
17141
.....
17149
17150
17151
17152
17153
17154
17155
17156
17157
17158
17159
17160
17161
17162
17163
.....
17180
17181
17182
17183
17184
17185
17186
17187
17188
17189
17190
17191
17192
17193
17194
17195
17196
17197
17198
17199
17200
17201
17202
17203
17204
17205
17206
17207
17208
17209
.....
17245
17246
17247
17248
17249
17250
17251
17252
17253
17254
17255
17256
17257
17258
17259
17260
17261
17262
17263
17264
17265
17266
17267
17268
.....
17305
17306
17307
17308
17309
17310
17311
17312
17313
17314
17315
17316
17317
17318
17319
17320
17321
17322
17323
17324
17325
17326
17327
17328
.....
17361
17362
17363
17364
17365
17366
17367
17368
17369
17370
17371
17372
17373
17374
17375
.....
17405
17406
17407
17408
17409
17410
17411
17412
17413
17414
17415
17416
17417
17418
17419
17420
17421
17422
17423
17424
17425
17426
17427
.....
17659
17660
17661
17662
17663
17664
17665
17666
17667
17668
17669
17670
17671
17672
17673
.....
17700
17701
17702
17703
17704
17705
17706
17707
17708
17709
17710
17711
17712
17713
17714
17715
17716
17717
17718
17719
17720
17721
.....
17783
17784
17785
17786
17787
17788
17789
17790
17791
17792
17793
17794
17795
17796
17797
.....
17865
17866
17867
17868
17869
17870
17871
17872
17873
17874
17875
17876
17877
17878
17879
17880
17881
17882
17883
17884
17885
17886
17887
17888
17889
17890
17891
17892
.....
17903
17904
17905
17906
17907
17908
17909
17910
17911
17912
17913
17914
17915
17916
17917
17918
17919
17920
.....
17923
17924
17925
17926
17927
17928
17929
17930
17931
17932
17933
17934
17935
17936
17937
.....
18007
18008
18009
18010
18011
18012
18013
18014
18015
18016
18017
18018
18019
18020
18021
.....
18045
18046
18047
18048
18049
18050
18051
18052
18053
18054
18055
18056
18057
18058
18059
18060
18061
18062
.....
18075
18076
18077
18078
18079
18080
18081
18082
18083
18084
18085
18086
18087
18088
18089
18090
18091
18092
18093
18094
18095
18096
18097
18098
18099
18100
18101
18102
18103
18104
18105
18106
18107
18108
18109
.....
18116
18117
18118
18119
18120
18121
18122
18123
18124
18125
18126
18127
18128
18129
18130
.....
18151
18152
18153
18154
18155
18156
18157
18158
18159
18160
18161
18162
18163
18164
18165
.....
18213
18214
18215
18216
18217
18218
18219
18220
18221
18222
18223
18224
18225
18226
18227
.....
18457
18458
18459
18460
18461
18462
18463
18464

















18465
18466
18467
18468
18469
18470
18471
18472
18473
18474
18475
18476
18477
18478
18479
18480
.....
18522
18523
18524
18525
18526
18527
18528
18529
18530
18531
18532
18533
18534
18535
18536
.....
18665
18666
18667
18668
18669
18670
18671
18672
18673
18674
18675
18676
18677
18678
18679
18680
18681
18682
.....
18698
18699
18700
18701
18702
18703
18704














18705
18706
18707
18708
18709
18710
18711
.....
18755
18756
18757
18758
18759
18760
18761
18762
18763
18764
18765
18766
18767
18768
18769
.....
18791
18792
18793
18794
18795
18796
18797
18798
18799
18800
18801
18802
18803
18804
18805
.....
18809
18810
18811
18812
18813
18814
18815
18816
18817
18818
18819
18820
18821
18822
18823
18824
18825
18826
.....
19358
19359
19360
19361
19362
19363
19364
19365
19366
19367
19368
19369
19370
19371
19372
19373
.....
19489
19490
19491
19492
19493
19494
19495
19496
19497
19498
19499
19500
19501
19502
19503
.....
19931
19932
19933
19934
19935
19936
19937
19938
19939
19940
19941
19942
19943
19944
19945
19946
19947
19948
19949
.....
21225
21226
21227
21228
21229
21230
21231
21232
21233
21234
21235
21236
21237
21238
21239
21240
21241
21242
21243
21244
21245
21246
21247
21248
21249
21250
21251
21252
21253
21254
21255
21256
21257
21258
21259
21260
21261
21262
21263
21264
21265
21266
21267
.....
21276
21277
21278
21279
21280
21281
21282

21283
21284
21285
21286
21287
21288
21289
.....
21417
21418
21419
21420
21421
21422
21423

21424
21425
21426
21427
21428
21429
21430
.....
22760
22761
22762
22763
22764
22765
22766
































22767
22768
22769
22770
22771
22772
22773
.....
23379
23380
23381
23382
23383
23384
23385
23386
23387
23388
23389
23390
23391
23392
23393
.....
23395
23396
23397
23398
23399
23400
23401

23402
23403
23404
23405
23406
23407
23408

    [que|qu’|combien|pourquoi|qui|quand|où]  ?[en|y]¿  *WORD
        <<- =>> exclude(\-1, ":E")

    [<start>|,]  quelqu’ un  *WORD
        <<- =>> exclude(\4, ":N")

    >falloir [>pouvoir|>savoir|>vouloir|>manger|>conseiller]
        <<- =>> exclude(\2, ":N")


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

................................................................................

    de  [la|l’]  $:¬:Y
        <<- not value(<1, "|semblant|") =>> exclude(\3, ":V")

    [/VCint|/VCimp] [le|la|l’|leur|les]
        <<- =>> select(\2, ":D")

    de [>telle|ce|cet|cette|ces|mon|ma|ta|sa|mes|tes|ses|notre|votre|plein|pleine]  *WORD
        <<- =>> exclude(\3, ":V")

    de [tous|toutes] les *WORD
        <<- =>> select(\4, ":[NA]")

    en tant que  *WORD
        <<- =>> exclude(\4, ":[123][sp]")
................................................................................
        <<- /tu/ ->> semi-\2                                    # S’il s’agit d’un seul mot, il manque un trait d’union.

TEST: en {{semi liberté}}


__tu_préfixe_gentilés__
    [afghano|africano|albano|algéro|allemano|américano|andoro|angolo|anglo|anguillo|antartico|arabo|arctico|argentino|armeno|asiatico|atlantico|australo|austro|azéro|bahreïno|banglado|barbado|basco|bélizo|béllarusso|bénino|belgo|bhoutano|birmano|bolivio|bosno|bosniaco|botswano|brésilo|britanno|brunéo|bulgaro|burkanino|burundo|camerouno|canado|chilio|cingalo|colombo|comoro|congolo|coréo|cyprio|costarico|croato|cubano|dano|djibouto|dominico|écosso|égypto|émirato|équato|érythréo|esto|éthiopo|eurasiatico|européano|fidjio|finno|franco|gabono|gallo|gambo|géorgio|ghanéo|britanno|gréco|grenado|guatémalto|guinéo|guyano|hélleno|helvético|hispano|honduro|hungaro|indo|indonéso|italo|irako|irlando|islando|israélo|ivoiro|jamaïco|japono|jordano|khméro|kazakho|kényo|kirghizo|kiribato|koweïto|lao|lésotho|letto|libéro|libyo|liechtenteino|lituano|luxembourgeo|macédono|malgacho|malaiso|malawito|malo|malto|marianno|maroco|marshallo|mauricio|mauritano|mexico|micronésio|moldavo|monégasco|mongolo|monténégrino|mozambico|namibio|nauro|népalo|nicaraguo|nigéro|nigériano|norvégio|néo-zélando|occidentalo|océanio|omano|orientalo|ougando|ouzbéko|pacifico|pakistano|palestino|panaméo|paraguayo|néerlando|hollando|péruvo|philippino|polono|polynésio|luso|qataro|québéco|centrafricano|domenicano|roumano|russo|rwando|sarhao|sahélo|salomono|salvadoro|samoano|santoméo|saskatchéwano|scandinavo|sénégalo|saoudo|sénégambo|serbo|seychello|sierraléono|singapouro|sino|slovaco|somalo|soudano|srilanko|sudafricano|suédo|suisso|surinamo|swazilando|syro|sovieto|tadjiko|tanzano|tchado|tchécoslovavo|tchéco|thaïlando|thraco|tibéto|timoro|togolo|tokélo|tongano|trinidado|tuniso|turkméno|turco|touvalo|tuvalo|ukraino|uruguayo|vaticano|vénézuélo|vietnamo|yéméno|yougoslavo|zaïro|zambio|zimbabwébo]
        || [>afghane|>africaine|>albanaise|>algérienne|>allemande|>américaine|>andorraise|>anglaise|>arabe|>argentine|>aménienne|>australienne|>autrichienne|>belge|>béninoise|>birmane|>bolivienne|>bosniaque|>brésilienne|>britannique|>bulgare|>burkinabé|>burundaise|>byzantine|>cambodgienne|>camerounaise|>canadienne|>capverdienne|>centrafricaine|>chilienne|>chinoise|>chypriote|>colombienne|>comorienne|>coréenne|>croate|>cubaine|>danoise|>égyptienne|>équatorienne|>érythréenne|>espagnole|>estonienne|>éthiopienne|>finlandaise|>flamande|>française|>gabonaise|>gambienne|>géorgienne|>germanique|>ghanéenne|>guatémaltèque|>guinéenne|>guyanaise|>haïtienne|>hellénique|>hondurienne|>hongroise|>indienne|>indonésienne|>iranienne|>irakienne|>irlandaise|>islandaise|>israélienne|>italienne|>ivoirienne|>jamaïcaine|>jamaïquaine|>japonaise|>jordanienne|>kenyane|>koweïtienne|>kurde|>laotienne|>lettone|>libanaise|>libérienne|>libyenne|>lituanienne|>luxembourgeoise|>macédonienne|>malaise|>malgache|>malienne|>maltaise|>marocaine|>mauricienne|>mauritanienne|>mexicaine|>moldave|>monégasque|>mongole|>mozambicaine|>namibienne|>néerlandaise|>néo-zélandaise|>népalaise|>nicaraguayenne|>nigeriane|>nigérienne|>nippone|>norvégienne|>omanaise|>ougandaise|>pakistanaise|>panaméenne|>paraguayenne|>péruvienne|>philippine|>polonaise|>portugaise|>provençale|>qatarie|>québécoise|>roumaine|>russe|>rwandaise|>salvadorienne|>sénégalaise|>seychelloise|>singapourienne|>slovaque|>slovène|>somalienne|>soudanaise|>soviétique|>sri-lankaise|>suédoise|>suisse|>surinamienne|>syrienne|>tanzanienne|>tchadienne|>tchèque|>thaïlandaise|>togolaise|>tunisienne|>turque|>ukrainienne|>uruguayenne|>vénézuélienne|>vietnamienne|>yéménite|>yougoslave|>zaïroise|>zambienne|>zimbabwéenne]
        <<- /tu/ ->> \1-\2                                                                          # Il manque un trait d’union.

TEST: des {{franco américains}}
TEST: {{franco américaine}}                             ->> franco-américaine
TEST: l’{{israélo belge}}


................................................................................

    >aller >retour
        <<- /tu/ ->> \1-\2                                      # Il manque un trait d’union.

    >arc en ciel
        <<- /tu/ ->> \1-\2-\3                                   # Il manque les traits d’union.

    >arrière >grande >tante
        <<- /tu/ ->> arrière-grand-tante|arrière-grands-tantes      # Mettez des traits d’union.

    >arrière >grande >mère
        <<- /tu/ ->> arrière-grand-mère|arrière-grands-mères        # Mettez des traits d’union.

    >arrière [grand|grands] >oncle
        <<- /tu/ ->> arrière-grand-oncle|arrière-grands-oncles      # Mettez des traits d’union.

    >arrière [grand|grands] >parente
        <<- /tu/ ->> arrière-grand-parent|arrière-grands-parents    # Mettez des traits d’union.

    >arrière [grand|grands] >père
        <<- /tu/ ->> arrière-grand-père|arrière-grands-pères        # Mettez des traits d’union.

    >arrière [petit|petits] >enfant
        <<- /tu/ ->> arrière-petit-enfant|arrière-petits-enfants    # Mettez des traits d’union.

    >arrière >petite >fille
        <<- /tu/ ->> arrière-petite-fille|arrière-petites-filles    # Mettez des traits d’union.

    >arrière [petit|petits] >fils
        <<- /tu/ ->> arrière-petit-fils|arrière-petits-fils         # Mettez des traits d’union.

    >arrière [petit|petits] >neveu
        <<- /tu/ ->> arrière-petit-neveu|arrière-petits-neveux      # Mettez des traits d’union.

    >arrière >petite >nièce
        <<- /tu/ ->> arrière-petite-nièce|arrière-petites-nièces    # Mettez des traits d’union.

    [basket|volley] ball
        <<- /tu/ ->> \1-ball                                    # Il manque un trait d’union.

    bas [>côté|coté|cotés]
        <<- /tu/ morph(<1 , ":D") ->> bas-côté|bas-côtés        # Il manque un trait d’union.
................................................................................

    trompe l’ [œil|oeil]
        <<- /tu/ morph(<1, ":D") ->> trompe-l’œil               # Il manque un trait d’union.

    [le|de|ce|les|des|ces|un|mon|leur|leurs|nos|vos|notre|votre|quel|quels] [va|vas] et [vient|viens]
        <<- /tu/ -2:0>> va-et-vient                             # Il manque les traits d’union.

    vice [>amirale|>présidente|>roi|>reine|>chancelière]
        <<- /tu/ ->> vice-\1                                    # Il manque un trait d’union.

    week [end|ends]
        <<- /tu/ ->> week-\2                                    # Il manque un trait d’union.

TEST: l’{{à propos}} n’est pas si facile à acquérir.
TEST: on ne fait que de l’{{à peu près}}
................................................................................

TEST: incessamment {{sous peut}}
TEST: ils arrivent {{incessamment sous peu}}.


# pire
__bs_pire__
    [moins|aussi|plus] [>pire]
        <<- /bs/ -2>> mauvais|mauvaise|mauvaises                    # Tournure erronée : “\1 \2”. Utilisez “mauvais”.|http://www.academie-francaise.fr/plus-pire-moins-pire

    de mal en >pire
        <<- /bs/ ->> de mal en pis                                  # Tournure erronée. Écrivez “de mal en pis”.

    au pire aller
        <<- /bs/ ->> au pis aller                                   # Tournure erronée. Écrivez “au pis aller”.
................................................................................

    actuellement en train [de|d’]
        <<- /pleo/ not value(>1, "|nuit|") -1:3>> en train                                  # Pléonasme.

    >ajouter en plus
        <<- /pleo/ ->> \1                                                                   # Pléonasme.

    >apanage >exclusive
        <<- /pleo/ ->> \1                                                                   # Pléonasme.

    [>applaudir|>applaudissement] des deux mains
        <<- /pleo/ ->> \1                                                                   # Pléonasme.

    au jour d’ aujourd’hui

        <<- /pleo/ ->> aujourd’hui                                                          # Pléonasme.

    >avancer en avant
        <<- /pleo/ ->> \1                                                                   # Pléonasme.

    >avérer >vraie
        <<- /pleo/ -2>> =\2.replace("vrai", "exact")                                        # Pléonasme.

    [avéré|avérée|avérés|avérées] >vraie
        <<- /pleo/ ->> \1                                                                   # Pléonasme.

    avenir devant [moi|toi|soi|lui|elle|nous|vous|eux|elles]
        <<- /pleo/ morph(<1, ":A|>un") ->> avenir                                           # Pléonasme.

    >bourrasque de vent
        <<- /pleo/ ->> \1                                                                   # Pléonasme.

    car en effet
................................................................................
    >enchevêtrer les uns dans les autres
        <<- /pleo/ ->> \1                                                                   # Pléonasme.

    >entraider mutuellement
    >entraider les uns les autres
        <<- /pleo/  ->> \1                                                                  # Pléonasme.

    >entraide >mutuelle
        <<- /pleo/ ->> \1                                                                   # Pléonasme.

    >erreur >involontaire
        <<- /pleo/ ->> \1                                                                   # Pléonasme.

    >étape >intermédiaire
        <<- /pleo/ ->> \1                                                                   # Pléonasme.

    >hasard >imprévue
        <<- /pleo/ ->> \1                                                                   # Pléonasme.

    >hémorragie de sang
        <<- /pleo/ ->> \1                                                                   # Pléonasme.

    >joindre ensemble
        <<- /pleo/ ->> \1|mettre ensemble                                                   # Pléonasme.
................................................................................

    >méandre sinueux
        <<- /pleo/ ->> \1                                                                   # Pléonasme.

    [>média|media] d’ >information
        <<- /pleo/ ->> \1                                                                   # Pléonasme.

    >monopole >exclusive
        <<- /pleo/ ->> \1                                                                   # Pléonasme.

    >monter en haut
        <<- /pleo/ not value(>1, "|de|des|du|d’|") ->> \1                                   # Pléonasme.

    >opportunité à saisir
        <<- /pleo/ ->> \1                                                                   # Pléonasme.

    >orage >électrique
        <<- /pleo/ ->> \1                                                                   # Pléonasme.




    >paire de >jumelle
        <<- /pleo/ ->> jumelles                                                             # Pléonasme.


    >panacée >universelle
        <<- /pleo/ ->> \1|remède universel                                                  # Pléonasme.

    >perspective d’ avenir
        <<- /pleo/ ->> \1                                                                   # Pléonasme.

    [premier|premiers] >balbutiement
        <<- /pleo/ ->> \2                                                                   # Pléonasme.

    [première|premières] >priorité
        <<- /pleo/ ->> \2                                                                   # Pléonasme.

    >projet >future
        <<- /pleo/ ->> \1                                                                   # Pléonasme.

    >future >projet
        <<- /pleo/ ->> \2                                                                   # Pléonasme.





    >prototype >expérimentale
        <<- /pleo/ ->> \1                                                                   # Pléonasme.




    >rédiger par écrit
        <<- /pleo/ ->> \1                                                                   # Pléonasme.

    [>rénover|>rénovation] à neuf
        <<- /pleo/ ->> \1                                                                   # Pléonasme.

    puis [après|ensuite|alors]
        <<- /pleo/ ->> puis|après|ensuite|alors                                             # Pléonasme.

    >réunir ensemble
        <<- /pleo/  ->> \1                                                                  # Pléonasme.

    [>reculer|>recul|>revenir] en arrière
        <<- /pleo/ ->> \1                                                                   # Pléonasme.

    >risque >potentielle
    >risque de >menace
        <<- /pleo/ ->> \1                                                                   # Pléonasme.

    >secousse [>séismique|>sismique]
        <<- /pleo/ ->> secousse tellurique|secousses telluriques|tremblement de terre       # Pléonasme.

    >solidaire les uns des autres
................................................................................

    >talonner de près
        <<- /pleo/ ->> \1                                                                   # Pléonasme.

    taux d’ >alcoolémie
        <<- /pleo/ ->> taux d’alcool|alcoolémie                                             # Pléonasme. L’alcoolémie est le taux d’alcool dans le sang.

    >tunnel >souterraine
        <<- /pleo/ ->> \1                                                                   # Pléonasme.

    vieilles hardes
        <<- /pleo/ ->> hardes                                                               # Pléonasme.

    [et|ou] voire
        <<- /pleo/ not morph(>1, ":D") ->> voire|et|\1 voir                                 # Pléonasme ou confusion.
................................................................................
TEST: s’{{entraider mutuellement}}                  ->> entraider
TEST: s’{{entraident les uns les autres}}           ->> entraident
TEST: {{comme par exemple}}                         ->> comme|par exemple
TEST: {{médias d’informations}}                     ->> médias
TEST: {{lever debout}}                              ->> lever
TEST: {{cirrhose du foie}}                          ->> cirrhose
TEST: s’avérer {{vrai}}                             ->> exact
TEST: {{avérées vraies}}                            ->> avérées|||exactes
TEST: {{bourrasques de vent}}                       ->> bourrasques
TEST: {{contraint malgré lui}}                      ->> contraint
TEST: {{contraindre malgré eux}}                    ->> contraindre
TEST: {{applaudir des deux mains}}                  ->> applaudir
TEST: Car {{à partir de dorénavant}}, ce sera…      ->> dorénavant|à partir de maintenant
TEST: {{erreurs involontaires}}                     ->> erreurs
TEST: {{hasards imprévus}}                          ->> hasards
................................................................................
TEST: {{donc par conséquent}}                       ->> donc|par conséquent|c’est pourquoi
TEST: {{car en effet}}                              ->> car|en effet
TEST: {{opportunités à saisir}}                     ->> opportunités
TEST: {{apanages exclusifs}}                        ->> apanages
TEST: {{monopole exclusif}}                         ->> monopole
TEST: {{étapes intermédiaires}}                     ->> étapes
TEST: {{ajouter en plus}}                           ->> ajouter

TEST: la {{panacée universelle}}                    ->> panacée|remède universel
TEST: ce sont leurs {{premiers balbutiements}}      ->> balbutiements
TEST: la {{première priorité}}, c’est…              ->> priorité
TEST: Un {{futur projet}}                           ->> projet

TEST: ce sont des {{projets futurs}}                ->> projets
TEST: {{prototypes expérimentaux}}                  ->> prototypes
TEST: Nous avons {{rénové à neuf}} l’ensemble       ->> rénové
TEST: Nous voilà {{réunis ensemble}}                ->> réunis
TEST: {{Recule en arrière}}                         ->> Recule
TEST: {{Rédigez par écrit}} une notice.             ->> Rédigez
TEST: {{risques de menaces}}                        ->> risques
................................................................................

TEST: Elles hurlèrent {{à corps et à cris}}.
TEST: manifester sa colère à cor et à cri.


__conf_à_coup_sûr__
    !! à coup sûr ¡¡
    [a|à] [coup+s|>cout|>coût|>cou] [>sure|sûr+ses]
        <<- /conf/ not (value(\3, "|sur|") and value(<1, "|tout|par|") and value(\2, "|coup|"))
        ->> à coup sûr                                   # Confusion probable. Locution “à coup sûr”, c’est-à-dire “immanquablement”.|https://fr.wiktionary.org/wiki/%C3%A0_coup_s%C3%BBr

TEST: ce qu’elles feront alors {{a coup sûr}}, difficile de le devenir.
TEST: Bien sûr, {{À coup sur}}.


................................................................................

TEST: {{à part égale}}
TEST: un partage à parts égales


__conf_à_peu_près__
    !! à peu près ¡¡
    [a|à] [peu|peux|peut] [près|>pré|>prête]
        <<- /conf/ ->> à peu près                                           # Confusion.|https://fr.wiktionary.org/wiki/%C3%A0_peu_pr%C3%A8s
        <<- ~>> *

TEST: C’est {{à peu prêt}} la même chose.
TEST: elle est {{a peut près}} au point.
TEST: C’est à peu près ça.


__conf_à_pleines_dents__
    !! à pleines dents ¡¡
    [a|à] [>plaine|pleine+s] [dent+s|>dan]
        <<- /conf/ ->> à pleines dents                                      # Locution “à pleines dents” (toujours au pluriel).

TEST: Elle mord la vie {{à plaine dent}}.


__conf_à_quel_point!7__
    !! à quel point ¡¡
................................................................................
    a qui que ce soit
    a quelque distance
    a quelques exceptions près
    a ras >bord
    a ras de terre
    a ras [du|le] sol
    a rude épreuve
    a >seule [>fin|>faim] [de|d’]
    a tel point
    a temps [plein|partiel|complet]
    a tête reposée
    a >tarif >réduit
    a taux [>fixe|>variable]
    a titre [conservatoire|indicatif|informatif|grâcieux|personnel|posthume]
    a titre d’ exemple
    a tombeau ouvert
    a tort et à travers
    a tort ou à raison
    a tour de [bras|rôle]
    a tous crins
................................................................................


## substantifs

__conf_substantif_à_substantif!3__
    *WORD  a  @:N¬*
        <<- /conf/ \2.islower()
            and not value(\3, "|accès|bon|beau|besoin|charge|confiance|connaissance|conscience|crainte|envie|été|faim|hâte|honte|interdiction|lieu|peine|peur|raison|rapport|recours|soif|tendance|tort|vent|")
            and morph(\1, ":N", "*")
        -2>> à              # Confusion probable : “a” est une forme conjuguée du verbe “avoir”. Pour la préposition, écrivez “à”.|http://fr.wiktionary.org/wiki/%C3%A0

TEST: les bobos {{a}} trottinette
TEST: la lettre A est la première lettre de l’alphabet
TEST: la lettre a est la première lettre de l’alphabet
TEST: cette femme a raison
................................................................................
TEST: l’homme a beau se démener, rien n’y fait.
TEST: elle a tendance à n’en faire qu’à sa tête.
TEST: Ce travail a lieu dans le désert.
TEST: cette injonction a force de loi
TEST: C’est là que la pudeur a bon dos
TEST: Cette décision permettrait de rapprocher le congé paternité des huit semaines pendant lesquelles un employeur a interdiction de faire travailler une mère
TEST: L’utilisateur a accès à l’ensemble des informations saisies.



__conf_a_à_substantifs__
    >arc a >poulie
    >arme a >feu
    >armoire a [>glace|>pharmacie]
    >attaque a main armée
................................................................................
    >ferme a >clic
    >fermeture a glissière
    >fermoir a [cliquet|levier|ressort]
    [>fille|fils] a [papa|maman]
    >fosse a >ordure
    >fusil a >pompe
    >gaz a >effet de serre

    >homme a tout faire
    >lampe a [>huile|>pétrole]
    >lime a >ongle
    >livraison a domicile
    >maison a >colombage
    >machine a [café|coudre|écrire|laver|voter]
    >machine a >remonter le temps
................................................................................
    >pince a linge
    >punk a >chienne
    >revenir a la case départ
    >rouge a >lèvre
    >sac a [dos|main|langer|merde|foutre]
    >serpent a >sonnette
    >silo a [>grain|blé]
    >soue a >cochonne
    >table a repasser
    >tigre a >dent de >sabre
    >tondeuse a gazon
    >train a grande vitesse
    >trou a >rat
    >trouble a l’ ordre public
    >tueuse a gages
    >turbine a [gaz|vapeur]
    >vache a lait
    >vente a domicile
    >vernis a ongles
    >vol a [la|l’] [étalage|sauvette|tire]
    >vol a main armée
    >usine a gaz
................................................................................

# acétique / ascétique
__conf_acétique_ascétique__
    [>acide|>aldéhyde|>anhydride|>bactérie|>éther|>ferment|>fermentation|>indole|>piqûre|>piqure|>silicone|voix] >ascétique
        <<- /conf/ -2>> =\2.replace("scé", "cé").replace("SCÉ", "CÉ")
        # Confusion probable : “ascétique” se rapporte à l’ascétisme. Pour l’acide, écrivez “acétique”.|https://fr.wiktionary.org/wiki/ac%C3%A9tique

    [>autrice|>auteure|>démarche|>conduite|>hédonisme|>littérature|>philosophe|>pratique|>privation|>rigueur|>tradition|>théologie|>vie|idéal|idéaux] >acétique
        <<- /conf/ -2>> =\2.replace("cé", "scé").replace("CÉ", "SCÉ")
        # Confusion probable : “acétique” est le terme utilisé pour désigner un acide. Pour évoquer l’ascétisme, écrivez “ascétique”.|https://fr.wiktionary.org/wiki/asc%C3%A9tique

TEST: un acide {{ascétique}}.
TEST: Mener une vie {{acétique}}.


................................................................................

TEST: on va y arriver, {{au temps que faire se peu}}…
TEST: autant que faire se peut, il faut éviter la confusion entre ces deux discours.


# ça / çà / sa
__conf_ça_çà_sa!7__
    ça  @:[NAQ].*:f¬:(?:G|P|[123][sp])|>seule?s?/
        <<- /conf/ not morph(<1, ">(?:appeler|considérer|trouver)/") -1>> sa    # Confusion : “sa” (sa maison, sa passion) ≠ “ça” (ça vient, ça heurte).

    sa  @:G¬>(?:tr(?:ès|op)|peu|bien|plus|moins|toute|presque)/|:[NAQ].*:f
        <<- /conf/ not (value(\2, "|ou|") and value(>1, "|son|ses|")) -1>> ça   # Confusion : “sa” (sa maison, sa passion) ≠ “ça” (ça vient, ça heurte).

    çà
        <<- /conf/ not value(<1, "|oh|ah|") and not after("^ +et là")
................................................................................
TEST: un {{car}} d’heure
TEST: trois {{cars}} d’heure.
TEST: nous attendions un car d’heure en heure.


# Campagne / compagne
__conf_campagne_compagne__
    >compagne [>électorale|>présidentielle|>législative|>publicitaire|marketing|>militaire|>mondiale|>politique|>économique|>virale|Facebook|Twitter]
    >compagne de [boycott|candidature|charité|communication|crowdfunding|dépistage|diffamation|>don|financement|marketing|mobilisation|pêche|presse|prévention|promotion|propagande|pub|publicité|recrutement|santé|sensibilisation|solidarité|vaccination]
        <<- /conf/ -1>> =\1.replace("o", "a").replace("O", "A")     # Confusion probable. Une compagne est un compagnon de sexe féminin.|https://fr.wiktionary.org/wiki/campagne

    en rase compagne
        <<- /conf/ -3>> campagne                                    # Confusion probable. Une compagne est un compagnon de sexe féminin.|https://fr.wiktionary.org/wiki/campagne

    à la compagne [<end>|,]
................................................................................
# cap / cap
__conf_cap_cape__
    de >pied en >cape
        <<- /conf/ ->> de pied en cap                   # Confusion : la cape est un vêtement.|https://fr.wiktionary.org/wiki/de_pied_en_cap

TEST: rhabillée {{de pied en cape}}.











# ce / se / ceux
__conf_ce_ceux_se!6__
    pour se faire ,
    pour se faire @:G¬:[AYD]
        <<- /conf/ -2>> ce                              # Confusion probable. Dans cette locution, il faut employer “ce”.|http://fr.wiktionary.org/wiki/pour_ce_faire

................................................................................
TEST: Avec ces quelque 70 millions d’euros de cash disponible
TEST: négocier séparément avec ces divers sous-groupes
TEST: L’ensemble de ces divers points de vue émergeant de plusieurs horizons permettaient de construire un projet, riche et acceptable par toutes les parties prenantes.


# chœur / cœur
__conf_choeur_coeur__
    [>enfant|>cheffe] de >cœur
        <<- /conf/ -3>> chœur                                   # Confusion. Pour désigner un ensemble musical, écrivez chœur.|https://fr.wiktionary.org/wiki/ch%C5%93ur

    >cœur [>musicale|>philharmonique|>mixte|>polyphonique]
    >cœur de musique
    >cœur de l’ église
    >cœur de la nef
        <<- /conf/ -1>> chœur                                   # Confusion. Pour désigner un ensemble musical, écrivez chœur.|https://fr.wiktionary.org/wiki/ch%C5%93ur

TEST: ces enfants de {{cœur}} sont fatigués.
TEST: Cheffe de {{cœur}}.
................................................................................

TEST: Regarde ce qu’il y a à l’intérieur du {{coli}}


# collet monté
__conf_collet_monté__
    ~^[cC]oll(?:e[rt]s?|ée?s?)-mont(?:er|ée?s?)$
    [collé|collés|>collée|coller|collets] [>montée|monté|montés|monter]
    collet [>montée|montés|monter]
        <<- /conf/ ->> collet monté                             # « Être collet monté » : dans cette locution, « collet monté » est invariable.

TEST: Elles sont tellement {{collets montées}} !


# compte / comte / conte
................................................................................
    à bon [>conte|comte|comtes]
        <<- /conf/ -3>> compte                                  # Confusion. Locution “à bon compte”.|https://fr.wiktionary.org/wiki/%C3%A0_bon_compte

    à ce [conte-là|comte-là]
        <<- /conf/ -3>> compte-là                               # Confusion probable. Locution “à ce compte-là”.|https://fr.wiktionary.org/wiki/%C3%A0_ce_compte-l%C3%A0

    [comte+s|>conte] à [rebours|découvert|terme]
    [comte+s|>conte] [>bancaire|rendu|rendus|joint|joints|courant|courants|>chèques]
    [comte+s|>conte] des opérations
    [comte+s|>conte] en banque
        <<- /conf/ -1>> compte|comptes                          # Confusion probable. Un conte est un récit fictif, “comte” est un titre de noblesse. Pour un état chiffré, un calcul… écrivez “compte”.

    [comte+s|>compte] de bonne femme
    [comte+s|>compte] de bonnes femmes
        <<- /conf/ -1>> conte|contes                            # Confusion probable. Un compte est un état chiffré, “comte” est un titre de noblesse. Pour un récit fictif, écrivez “conte”.
................................................................................
TEST: on va lui régler son {{conte}}, à cet enculé.
TEST: tout {{conte}} fait, ça reste un salopard.


__conf_conte__
    [comte+s|>compte] de bonne+s >femme
    [comte+s|>compte] de >fée
    [comte+s|>compte] [>allégorique|>fantastique|>littéraire|merveilleux|moral|moraux|oral|oraux|>populaire|>satirique|>traditionnelle]
    [comte+s|>compte] et >légende
        <<- /conf/ -1>> conte|contes                                                # Confusion probable. Si vous parlez d’un récit, écrivez :|https://fr.wiktionary.org/wiki/conte

TEST: Encore un {{comte}} de fée, assez de ces fadaises !
TEST: c’est un {{compte}} allégorique.
TEST: {{Comptes}} et légendes des Terres du Milieu.
TEST: ce sont des {{comptes}} de bonnes femmes
................................................................................

    >cor [a|à] >cor
        <<- /conf/ ->> corps à corps                                                # Confusion. Le cor est instrument de musique.

    >cor du [christ|défunt]
    >cor de [>doctrine|logis|>preuve]
    >cor de la magistrature
    >cor [>politique|>diplomatique|>expéditionnaire|>législative|>mystique|humain|humains|calleux|caverneux|muqueux]
    >cor et >âme
        <<- /conf/ -1>> corps                                                       # Confusion. Le cor est instrument de musique.

    >esprit de >cor
    >garde du >cor
        <<- /conf/ -3>> corps                                                       # Confusion. Le cor est instrument de musique.

................................................................................
# cour / cours / court
__conf_cour_cours_court_courre__
    au [cour|court+s|courre+s] [de|d’|des|du]
        <<- /conf/ -2>> cours                               # Confusion. Locution “au cours de”. Une cour… Un cours… Adjectif : court(e).

    en cour martiale
    en cour [de|d’] [cassation|justice]
    en cour d’ [>assise]
        <<- !1:2>>

    en cour
        <<- /conf/ ->> en cours                             # Confusion probable. Une cour… Un cours… Adjectif : court(e).

    >couper  ?@:[WX]¿  [cour|cours|courre|courres|courts]
        <<- /conf/ --1>> court                              # “Couper court” qui signifie écourter. Noms : une cour, un cours… Adjectif : court.
................................................................................
TEST: jusqu’en cour de cassation
TEST: le jugement en cour d’assises
TEST: ils vont passer prochainement en cour martiale.


# cuir / cuire
__conf_cuir_cuire__
    >dure [à|a] >cuir
        <<- /conf/ -3>> cuire           # Confusion. Locution “dur à cuire” Le cuir est le nom qu’on donne à la peau animale. Pour évoquer la cuisson, écrivez “cuire”.|https://fr.wiktionary.org/wiki/cuire
        <<- /conf/ \2 == "a" -2>> à     # Confusion : “a” est une conjugaison du verbe “avoir”. Pour la préposition, écrivez “à”.

TEST: ce sont des durs à {{cuir}}
TEST: Quelle dure {{a}} {{cuir}}, celle-là.


................................................................................

    une fin de loup
        <<- /conf/ -2>> faim                                    # Confusion. La fin désigne la finalité ou la teminaison de quelque chose. Pour évoquer l’envie de manger, écrivez “faim”.

    à des faims
        <<- /conf/ -3>> fins                                    # Confusion. Pour évoquer la finalité de quelque chose, écrivez “fin”.

    [à|a] >seule faim [de|d’]
        <<- /conf/ -3>> fin                                     # Confusion. Pour évoquer la finalité de quelque chose, écrivez “fin”.

TEST: Elle manifestait son désaccord par une grève de la {{fin}}.
TEST: ces enfants avaient une {{fin}} de loup
TEST: Œuvrez à des {{faims}} funestes.
TEST: il s’est donné bien des peines à seule {{faim}} de monter en grade

................................................................................
    [ce|c’] n’ [est|était] rien que du flanc
        <<- /conf/ --1>> flan                                               # Confusion. Locution « c’est du flan ».|https://fr.wiktionary.org/wiki/flan

    comme deux ronds de >flanc
        <<- /conf/ -5>> flan                                                # Confusion. Locution « comme deux ronds de flan ».|https://fr.wiktionary.org/wiki/comme_deux_ronds_de_flan

    >flan de la [>colline|>montagne]
    >flan [de|des] [>colline|>montagne]
    >flan [>gauche|droit|droits|nord|sud|ouest]
        <<- /conf/ -1>> =\1.replace("an", "anc").replace("AN", "ANC")       # Confusion probable. Le flan est une pâtisserie.|https://fr.wiktionary.org/wiki/flanc

    [>attaquer|>allonger|>blesser|>coucher|>étendre|>toucher]  sur  [le|mon|ton|son|notre|votre|leur]   flan
        <<- /conf/ -4>> flanc                                               # Confusion probable. Le flan est une pâtisserie.|https://fr.wiktionary.org/wiki/flanc

    [>attaquer|>allonger|>blesser|>coucher|>étendre|>toucher]  sur  [les|mes|tes|ses|nos|vos|leurs]     flans
................................................................................
TEST: il tire aux {{flans}}
TEST: le flan est une pâtisserie.
TEST: versez du caramel sur le flan.


# en son for intérieur / fort
__conf_for_intérieur__
    [en|dans] [mon|ton|son|leur|notre|votre] [fort|forts|fore|fores|fors] [>intérieure]
        <<- /conf/ -3:4>> for intérieur                                     # Confusion : “for” vient du latin “forum” et le “for intérieur” évoque la conscience individuelle.

TEST: En mon {{fort intérieur}}, je le crois.
TEST: Dans son {{fort intérieur}}, je le crois.


# fausse / fosse
__conf_fausse_fosse__
    [fausse|fausses] [Calypso|Nansei-Shoto]
    [fausse|fausses] de [conservation|subduction|Bougainville|Cedros|Java|Puerto|Ryukyu|Tuscarora]
    [fausse|fausses] des [musiciens|Aléoutiennes|Kermadec|Kouriles|Mariannes|Tonga|Philippines]
    [fausse|fausses] des îles [aléoutiennes|caïmans|Kouriles|Tonga]
    [fausse|fausses] du [Chili|Japon|Pérou|Pérou-Chili]
    [fausse|fausses] d’ [aisance|orchestre|Amérique|Atacama|Izu-Bonin|Izu-Ogasawara]
    [fausse|fausses] de l’ orchestre
    [fausse|fausses] à [>compost|>déchet|>lisier|>fumier|>plongeon|>plongée|>purin|>merde|>ordure]
    [fausse|fausses] [au|aux|des] [>caïman|>crocodile|>charognard|>lionne|>loup|>louve|ours|>serpent|>cobra|>diable]
    [fausse|fausses] [>abyssale|>canine|>béante|>commune|>océanique|>sous-marine|>septique|>immense|>profonde|>nasale|>iliaque|>temporale]
        <<- /conf/ -1>> =\1.replace("au", "o").replace("AU", "O")           # Confusion probable : “fausse” est l’adjectif féminin de “faux”. Pour évoquer une profondeur, écrivez “fosse”.

    au bord de la fausse
        <<- /conf/ -5>> fosse                                               # Confusion probable : “fausse” est l’adjectif féminin de “faux”. Pour évoquer une profondeur, écrivez “fosse”.

TEST: la {{fausse}} Calypso.
TEST: La {{fausse}} des Mariannes.
................................................................................
TEST: Elle sera {{forcement}} déçue de cette minable prestation de sa part.
TEST: Un homme pas {{forcement}} mauvais.
TEST: Le {{forcément}} du coffre ne sera pas si facile.


# golf / golfe
__conf_golf_golfe__
    [>championne|>championnat|>club|>joueuse|parcours|>sac|>balle|>terrain|>tournoi|>compétition|>passionnée|>école|>professeure|>partie|>professionnelle|>amateure|>stage|>journée|après-midi|>matinée|>heure|>fédération|>fan] de golfe
        <<- /conf/ -3>> golf                                                # Confusion. Le golfe est une zone de mer ou d’un lac avancée dans les terres. Ex : Le golfe Persique.

    >golf persique
    >golf [de|du|d’] [Bengale|Botnie|Gascogne|Gabès|Guinée|Lion|Morbihan|Mexique|Porto|Saint-Laurent|Thaïlande|Tonkin|Tunis|Winam|Aden|Ajaccio|Alaska|Hammamet]
        <<- /conf/ -1>> golfe                                               # Confusion. Le golf est un sport.

    [>guerre|>émir|>monarchie] du golf
................................................................................
    [ne|n’]   ?presque¿  ?[plus|jamais]¿  guerre
        <<- /conf/ --1>> guère                                                                      # Confusion. La guerre est conflit. Pour l’adverbe signifiant “peu”, écrivez “guère”.

    guerre
        <<- /conf/ morph(<1, ":(?:[123][sp]|Y)", "*") and not value(>1, "|civile|commerciale|froide|mondiale|nucléaire|préventive|psychologique|sainte|totale|")
        ->> guère                                            # Confusion probable. La guerre est conflit. Pour l’adverbe signifiant “peu”, écrivez “guère”.







TEST: tout ceci ne me rapporte {{guerre}}
TEST: je ne m’en soucie {{guerre}}
TEST: Il n’y prête {{guerre}} d’attention.
TEST: Elle n’en accorde plus {{guerre}}.
TEST: ne plus {{guerre}} s’en soucier
TEST: elle ne leur donne plus {{guerre}} que des remontrances.
TEST: ne {{guerre}} s’en soucier.
................................................................................
TEST: ne plus {{guerre}} croire en rien.
TEST: Il ne reste plus {{guerre}} que lui.
TEST: Je n’aime {{guerre}} le sport.
TEST: Il n’y en a {{guerre}}.
TEST: Je n’aime plus {{guerre}} le sport.
TEST: Il n’y en a plus {{guerre}}.
TEST: y peut {{guerre}} réussir quoi que ce soit, cet idiot.



TEST: ce que nous appelons Guerre psychologique


# héro / héros
__conf_héros__
    [le|quel|ce|cet|un|du|au]  héro
        <<- /conf/ -1>> héros                               # Confusion. L’héro est l’abréviation de “héroïne” (la drogue). L’homme héroïque s’écrit “héros”.
................................................................................
TEST: Il fait remonter à la toute première expérience humaine de maîtrise.
TEST: l’existence d’un fichage la concernant
TEST: avec la ou les indications qu’on recontre ici et là.
TEST: de la non moins indispensable défense des libertés, individuelles ou collectives, professionnelles ou locales


    [par-la|de-la|jusque-la|celui-la|celle-la|ceux-la|celles-la]
        <<- /conf/ ->> =\1[:-2]+"là"                                # Écrivez “là” et non “la”.

    [celle|celles|celui|ceux] la
        <<- /conf/ ->> \1-là                                        # Écrivez “là” et non “la”.

    /-là
        <<- /conf/ morph(\1, ":V", ":[NA]", 0, -3)
        -1>> =\1[:-3]+"-la|" + \1[:-3]+" là"                        # Confusion. Pour un COD, utilisez “la”. Ou, si ce “là” signifie “ici”, ne mettez pas de trait d’union.


    [ne|me|te|se] là
        <<- /conf/ -2>> la                                          # Confusion : “là” signifie “ici”.|http://fr.wiktionary.org/wiki/l%C3%A0

TEST: {{jusque-la}}, tout va bien
TEST: {{ceux la}} sont des idiots, rien à en tirer.
TEST: {{celle la}} ne vaut pas mieux, laisse-la tomber.
................................................................................

TEST: elles sont si {{pales}}.
TEST: cette {{pale}} imitation d’un chef-d’œuvre


# palier / pallier
__conf_palier_pallier__
    >voisine de [pallier|pallié|palliés|palliée|palliées]
    >franchir un [pallier|pallié]
    [sur|sous] le ?même¿ [pallier|pallié]
        <<- /conf/ --1>> palier                                             # Confusion.|https://fr.wiktionary.org/wiki/palier

    [pallier|pallié+e]  [de|d’] [communication|décompression|imposition]
        <<- /conf/ -1>> palier                                              # Confusion.|https://fr.wiktionary.org/wiki/palier

................................................................................
TEST: La {{pause}} des ardoises.
TEST: La {{pause}} de la tapisserie.
TEST: La {{pause}} de la première pierre.


# péché / pêcher
__conf_péché_pêcher1__
    [pécher|>pêcher|pêché+ses] [mignon+s|>capitale|>mortelle|>originelle|>vénielle]
    [pécher|>pêcher|pêché+ses] de jeunesse
        <<- /conf/ -1>> péché|péchés                                        # Confusion. Pour désigner un écart de conduite, écrivez “péché”.|https://fr.wiktionary.org/wiki/p%C3%A9ch%C3%A9

    [>absolution|>rémission] [des|du] [pécher|>pêcher|pêché+ses]
    [>absolution|>rémission] de [mon|ton|son|ma|ta|sa|mes|tes|ses|notre|votre|nos|vos|leur|leurs] [pécher|>pêcher|pêché+ses]
        <<- /conf/ --1>> péché|péchés                                       # Confusion. Pour désigner un écart de conduite, écrivez “péché”.|https://fr.wiktionary.org/wiki/p%C3%A9ch%C3%A9

................................................................................
    [je|tu] ?[ne|n’]¿ peu
        <<- /conf/ --1>> peux                                               # Confusion : « peu » signifie « pas beaucoup ».

    [ne|se|n’|s’] peu
        <<- /conf/ -2>> peut                                                # Confusion. Exemples : Il est peu habile, mais il peut y arriver.

    [peut|peux]  @:A¬:(?:[MGWYX]|3[sp])
        <<- /conf/ not morph(\2, ">seule") and not morph(<1, ">(?:je|tu|il|on|ne)")
        -1>> peu                                                            # Confusion probable : « \1 » est une conjugaison de « pouvoir », utilisez « peu ».

TEST: {{peu}} rarement y arriver.
TEST: Il est un {{peut}} comme une forêt
TEST: cela ne se {{peu}}.
TEST: des bâtisses {{peu a peu}} abandonnées.
TEST: aucun pays – ou très peu alors – n’a réussi à faire ça de façon durable
................................................................................
TEST: Il {{peut-être}} mortel.
TEST: Cela {{peut-être}} mortel.
TEST: cela arrivera {{peux-être}}.


# de plain pied
__conf_de_plain_pied__
    [de|au] [>pleine|>plain] >pied
    [de|au] [plein-pied|pleins-pieds|plains-pieds]
        <<- /conf/ -2:0>> plain-pied                                        # Confusion. Écrivez “plain-pied”. “Plain” est un vieux terme qui signifie plat, uni.

TEST: C’est une maison de {{plein pied}}.
TEST: de {{plein-pied}}


................................................................................
    >prêt [de|d’] ?[le|la|l’|les|en|nous|vous|lui|leur|y|tout]¿ $:Y
    >prêt [de|d’] [nous|vous]     [le|la|l’|les|en|y]           $:Y
    >prêt [de|d’] [le|la|l’|les]  [lui|leur|en|y]               $:Y
    >prêt [de|d’] [lui|leur|y]    en                            $:Y
        <<- /conf/ -1>> près                                                # Confusion probable. Être près de (faire) quelque chose. Prêt à faire quelque chose.

    >prêt [de|d’] [toi|vous|lui|elle|eux|elles|iels|$:M]
        <<- /conf/ not morph(<1, ":D") and not before("(?i)\\b(obten|obt[iî])")
        -1>> près                                                           # Confusion probable. Être près de (faire) quelque chose. Prêt à faire quelque chose.

    si [>prêt|>pré] [du|de|d’|des]
        <<- /conf/ -2>> près                                                # Confusion probable. Être près de (faire) quelque chose. Prêt à faire quelque chose.

    >raser de ?très¿ [>prêt|>pré]
        <<- /conf/ --1>> près                                               # Confusion probable. Raser de près.

    à la [virgule|nanoseconde|milliseconde|seconde|minute] [>prêt|>pré]
        <<- /conf/ -4>> près                                                # Confusion probable. Locution “à la \3 près”.

    à quelques [degrés|exceptions|nuances|pourcents|variations|nanomètres|millimètres|centimètres|décimètres|mètres|kilomètres|parsecs|années-lumière|nanosecondes|millisecondes|secondes|minutes|heures|jours|semaines|mois|années|décennies|siècles|millénaires] [>prêt|>pré]


        <<- /conf/ -4>> près                                                # Confusion probable. Locution “à quelques \3 près”.

    au >mètre [>prêt|>pré]
        <<- /conf/ -3>> près                                                # Confusion probable. Locution “au \2 près”.

    à ([ceci|cela]) ([prêt|prêts]) [que|qu’]
    [<start>|,] à ([ceci|cela]) ([prêt|prêts]) [,|<end>]
        <<- /conf/ -2>> près                                                # Confusion probable. Locution “à \1 près”.|https://fr.wiktionary.org/wiki/%C3%A0_cela_pr%C3%A8s
................................................................................
        <<- /conf/ morph(<1, ":D.*:[mp]|<start>") -1>> puits
        # Confusion. Le puits artésien.|https://fr.wiktionary.org/wiki/puits_art%C3%A9sien

    puis >quantique
        <<- /conf/ morph(<1, ":D.*:[mp]|<start>") -1>> puits
        # Confusion. Puits quantique : zone de l’espace dans laquelle le potentiel ressenti par une particule quantique atteint un minimum.|https://fr.wikipedia.org/wiki/Puits_quantique

    puis de >potentielle [fini|finie|finis|finies|>carrée|>harmonique]
    puis de >potentielle @:¬:[NA]
        <<- /conf/ morph(<1, ":D.*:[mp]|<start>") -1:3>> puits de potentiel
        # Confusion probable. Un puits de potentiel désigne, en physique, le voisinage d'un minimum local d'énergie potentielle.|https://fr.wikipedia.org/wiki/Puits_de_potentiel

TEST: Tombée au fond du {{puis}}, le désespoir la gagnait.
TEST: Des {{puis}}, tu en as combien ?
TEST: J’ai plusieurs {{puis}} de pétrole.
TEST: quel {{puis}} artésien ?
................................................................................
        <<- /conf/ -1:2>> quoi qu’il                                        # Confusion probable.

TEST: Elle y parviendra, {{quoiqu’il}} en coûte.


# quelle / qu’elle
__conf_qu_elle_quelle__
    [que|qu’]  elle   @:[NAQ]¬:(?:G|[123][sp]|W|Oo|X)|>seule?/
        <<- /conf/ -1:2>> quelle                                                                    # Confusion probable. Ex : Quelle femme ! Je crois qu’elle réussira.

    [que|qu’]  elles  @:[NAQ]¬:(?:G|[123][sp]|W|Oo|X)|>seule?/
        <<- /conf/ -1:2>> quelles                                                                   # Confusion probable. Ex : Quelle femme ! Je crois qu’elle réussira.

TEST: {{qu’elle}} emmerdeuse.
TEST: {{qu’elles}} belles terrasses
TEST: je crois qu’elle seule peut y parvenir
TEST: Elle cache qu’elle a été en prison.
TEST: Qu’elle avait été accueillie avec joie.
................................................................................
TEST: Vous {{résonnez}} comme un sot.
TEST: Nous allons le {{résonner}}.


# repère /  repaire
__conf_repaire_repère__
    >repère  [dangereux|>sécurisée]
    >repère  [de|du|d’|des]  [>assassin|>bandit|>brigand|>cambrioleuse|>corsaire|>criminelle|>dragon|>escroc|>fanatique|>filou|>flibustière|>flibuste|>gangster|>lionne|>louve|>mafiosi|>mafioso|>malfaitrice|>malfrat|>maraudeuse|>monstre|>murène|ours|>pick-pocket|>pickpocket|>pillarde|>pirate|>scélérate|>taupe|>tigre|>truande|>voleuse|>voyou|>yéti]
    >repère  de  $:D         [>assassin|>bandit|>brigand|>cambrioleuse|>corsaire|>criminelle|>dragon|>escroc|>fanatique|>filou|>flibustière|>flibuste|>gangster|>lionne|>louve|>mafiosi|>mafioso|>malfaitrice|>malfrat|>maraudeuse|>monstre|>murène|ours|>pick-pocket|>pickpocket|>pillarde|>pirate|>scélérate|>taupe|>tigre|>truande|>voleuse|>voyou|>yéti]
        <<- /conf/ morph(<1, ":D") -1>> =\1.replace("è", "ai").replace("È", "AI")
        # Confusion probable. Un répère est une marque laissée pour retrouver quelque chose. Pour le lieu où se cachent des personnes ou des animaux, écrivez “repaire”.|https://fr.wiktionary.org/wiki/repaire

    [dans|en] [mon|ton|son|notre|votre|leur] repère
    à l’intérieur de [mon|ton|son|notre|votre|leur] repère
    à l’intérieur du repère
    au sein de [mon|ton|son|notre|votre|leur] repère
................................................................................
TEST: on va le débusquer dans son {{repère}}
TEST: Elle traça un {{repaire}}.
TEST: Elle remarqua un {{repaire}} à la craie.


# ris / riz
__conf_ris_de_veau_agneau__
    [ri|riz] [de|d’] [>veau|agneau|agneaux|chasse]
        <<- /conf/ -1>> ris                                     # Confusion.|http://fr.wiktionary.org/wiki/ris

    [ri|ris] au lait
    [ri|ris] [arborio|basmati|blanc|brun|cantonais|carnaroli|complet|semi-complet|incollable|OGM|pilaf|soufflé]
        <<- /conf/ -1>> riz                                     # Confusion. Pour évoquer la céréale, écrivez “riz”.|https://fr.wiktionary.org/wiki/riz

TEST: Elles ont préparé un {{riz}} de veau.
................................................................................
TEST: elle sans vergogne
TEST: elle sans la condamner
TEST: elles sans un sou en poche
TEST: elles sans grandes convictions


__conf_sensé_censé__
    très >censée
        <<- /conf/ -2>> =\2.replace("sen", "cen").replace("Cen", "Sen").replace("CEN", "SEN")       # Confusion probable. Ce qui est “sensé” (de “bon sens”) et ce que chacun est “censé” accomplir.

TEST: Des personnes très {{censées}} qui perdent parfois la tête.


# sans coup férir
__conf_sans_coup_férir__
................................................................................
        <<- /conf/ ->> sans coup férir      # Confusion. Locution “sans coup férir”, c’est-à-dire sans avoir eu à livrer bataille, sans difficulté.|https://fr.wiktionary.org/wiki/sans_coup_f%C3%A9rir

TEST: nous y sommes parvenus {{sans cou fait rire}}
TEST: elle s’assura la victoire {{sent cou férir}}
TEST: y arriver {{s’en coup fée rire}}
TEST: vaincre sans coup férir












# s’ensuivre
__conf_s_ensuivre__
    s’ en >suivre
        <<- /conf/ morph(\3, ":(?:[123]s|Q)") ->> s’ensuit|s’ensuivit|s’ensuivait|s’ensuivra|s’ensuivrait   # Verbe “s’ensuivre”.|https://fr.wiktionary.org/wiki/s%E2%80%99ensuivre
        <<- /conf/ __else__ and morph(\3, ":(?:[123]p|Y|P)") ->> \1\2\3                                     # Verbe “s’ensuivre”.|https://fr.wiktionary.org/wiki/s%E2%80%99ensuivre

................................................................................
        <<- /conf/ -1>> =\1.replace("u", "û").replace("U", "Û")
        # Confusion probable : “sur” un adjectif signifiant acide ou aigre ; utilisez “sûr” pour certain, vrai ou sans danger.|http://fr.wiktionary.org/wiki/sur

    en >lieu sur
        <<- /conf/ -3>> sûr
        # Confusion probable : “sur” est une préposition ou un adjectif signifiant acide ou aigre ; utilisez “sûr” pour certain, vrai ou sans danger.|http://fr.wiktionary.org/wiki/sur

    en >être >sure
        <<- /conf/ -3>> =\3.replace("u", "û").replace("U", "Û")
        # Confusion probable : “sur” un adjectif signifiant acide ou aigre ; utilisez “sûr” pour certain, vrai ou sans danger.|http://fr.wiktionary.org/wiki/sur

TEST: Je suis {{sur}} de Patrick.
TEST: Je suis {{sure}} qu’il ne va pas tarder à venir
TEST: {{sures}} d’elles-mêmes, elles ne s’en laissent pas conter.
TEST: {{sur}} de toi et de moi, que peut-il nous arriver, sinon le meilleur.
................................................................................

    [à|a] [>tan|tant] [partiel|partiels|plein|pleins]
        <<- /conf/ -2>> temps                               # Confusion. Pour ce qui est temporel, écrivez “temps”.

    en [même|mêmes] [tant|>tan]
        <<- /conf/ ->> en même temps                        # Confusion. Pour ce qui est temporel, écrivez “temps”.

    en [temps|>tan] [que|qu’] >telle
        <<- /conf/ -2>> tant                                # Confusion. Locution “en tant que tel”.

    en [>tan|tant] et en >heure
        <<- /conf/ -2>> temps                               # Confusion: Locution “en temps et en heure”.|https://fr.wiktionary.org/wiki/en_temps_et_en_heure

    >tan [pis|pi]
        <<- /conf/ ->> tant pis                             # Confusion. Locution “tant pis”.|https://fr.wiktionary.org/wiki/tant_pis
................................................................................
TEST: {{tan pi}} pour lui
TEST: ce qui a commencé en 2011 en tant d’endroits du pourtour méditerranéen
TEST: elle est allée en tant de lieux qu’il est difficile de suivre son trajet.


# teint / tain / thym
__conf_tain_teint_thym__
    [>glace|>miroir|>verre] sans [tains|>teinte|>thym]
        <<- /conf/ -3>> tain                                        # Confusion.|http://fr.wiktionary.org/wiki/glace_sans_tain

    >fond de [>tain|teints|>thym]
        <<- /conf/ -3>> teint                                       # Confusion.|https://fr.wiktionary.org/wiki/fond_de_teint

TEST: Elle l’a observé par un miroir sans {{teint}}.
TEST: Elle a acheté un nouveau fond de {{tain}}.
................................................................................
# ensemble
__sgpl_ensemble__
    [toutes|tous] ensembles
        <<- /sgpl/ -2>> ensemble                                    # Ici, “ensemble” est vraisemblablement un adverbe, donc invariable.|https://fr.wiktionary.org/wiki/ensemble

TEST: Allons-y toutes {{ensembles}}                             ->> ensemble











# entre autres
__sgpl_entre_autres__
    entre autre [<end>|,]
    entre autre @:(?:[GW]|[NA].*:[pi])
        <<- /sgpl/ -2>> autres                                      # La locution “entre autres”, toujours au pluriel.|https://fr.wiktionary.org/wiki/entre_autres

................................................................................
TEST: il y eut, entre {{autre}}, des erreurs commises.
TEST: il y aura entre {{autre chose}} des répercussions terribles.
TEST: il y aura entre {{autre}} choses des répercussions terribles.


# nul et non avenu
__sgpl_nul_et_non_avenu__
    nul et non >avenue
        <<- /sgpl/ not value(\-1, "|avenu|") --1>> avenu            # Accord avec “\1”.

    nulle et non >avenue
        <<- /sgpl/ not value(\-1, "|avenue|") --1>> avenue          # Accord avec “\1”.

    nuls et non >avenue
        <<- /sgpl/ not value(\-1, "|avenus|") --1>> avenus          # Accord avec “\1”.

    nulles et non >avenue
        <<- /sgpl/ not value(\-1, "|avenues|") --1>> avenues        # Accord avec “\1”.

TEST: c’est nul et non {{avenue}}                       ->> avenu
TEST: des éléments nuls et non {{avenues}}              ->> avenus
TEST: une tentative nulle et non {{avenu}}              ->> avenue
TEST: nulles et non {{avenue}}                          ->> avenues

................................................................................
    en fonction de l’ état
        <<- !5>>

    état [français|belge|suisse|canadien|palestinien|souverain|américain|russe|anglais|allemand|espagnol|italien|mexicain|japonais|chinois|australien|polonais|membre|africain|européen|asiatique|voyou|démocratique|totalitaire|fédéral|fédéré|capitaliste|communiste|providence|nation]
    état de droit
        <<- /maj/ \1 == "état" -1>> État                            # Majuscule manquante : si vous parlez de l’institution dirigeante d’une nation, écrivez “État”.

    états [français|>belge|>suisse|canadien+s|palestinien+s|souverain+s|>membre|américain+s|africain+s|européen+s|>asiatique|>voyou|>démocratique|>totalitaire|>fédérale|>fédérée|>capitaliste|>communiste|>providence|>nation]
    états de droit
        <<- /maj/ \1 == "états" -1>> États                          # Majuscule manquante : si vous parlez de l’institution dirigeante d’une nation, écrivez “État”.


    [>affaire|>agent|>administration|>chancellerie|>chef|>cheffe|>conseil|>coup|>diplôme|>doctorat|>emprunt|>lycée|>propriété|>secret|>homme|>femme|>police|>religion|>ministre|>ministère|>subvention|>secrétaire|secret|secrets|>secrétariat|>raison|>ressortissante|>université] d’ état
        <<- /maj/ \3 == "état" -3>> État                            # Majuscule manquante : si vous parlez de l’institution dirigeante d’une nation, écrivez “État”.

    [>défense|>sûreté|>sureté|>agent|>budget|>caisse|>capitale|>constitution|>charge|>chef|>dirigeante|>denier|>finance|>fonction|>fonctionnement|>frontière|>institution|>propriété|>monopole|>pouvoir|>rouage|>ressource|>service|>subvention|>suprême] de l’ état
        <<- /maj/ \4 == "état" -4>> État                            # Majuscule manquante : si vous parlez de l’institution dirigeante d’une nation, écrivez “État”.

    état-nation
    état-providence
    états-nation
    états-nations
    états-providence
................................................................................
# gentilés / ethnonymes
__maj_gentilés__
    océan Indien
    [îles|iles] Britanniques
    à [la|l’] [afghane|albanaise|algérienne|allemande|américaine|andorrane|anglaise|angolaise|arabe|argentine|arménienne|australienne|autrichienne|asiatique|azerbaïdjanaise|bahamienne|bangladaise|bengladeshie|barbadienne|basque|belge|bélizienne|béninoise|bretonne|bhoutanaise|biélorusse|birmane|bolivienne|bosnienne|botswanaiso|brésilienne|britannique|brunéiene|bulgare|burkinabé|burundaise|cambodgienne|camerounaise|canadienne|capverdienne|centrafricaine|chilienne|chinoise|chypriote|colombienne|comorienne|congolaise|nord-coréenne|corse|costaricienne|croate|cubaine|danoise|djiboutienne|dominicaine|égyptienne|émiratie|équatorienne|érythréenne|estonienne|espagnole|étatsunienne|états-unienne|étasunienne|éthiopienne|fidjienne|finlandaise|formosane|française|gabonaise|gambienne|géorgienne|ghanéenne|grecque|grenadienne|guadeloupéenne|guatémaltèque|guinéenne|équato-guinéenne|guyanienne|haïtienne|honduriene|hollandaise|hongroise|indienne|indochinoise|indonésienne|irakienne|italienne|iranienne|irlandaise|islandaise|israélienne|ivoirienne|jamaïcaine|japonaise|jordanienne|kazakhe|kényane|kosovare|koweïtienne|laotienne|lapone|lettone|libanaise|libérienne|libyenne|liechtensteinoise|lituanienne|luxembourgeois|macédonienne|maghrébine|malgache|malaisienne|malawite|maldivienne|malienne|maltaise|maorie|marocaine|martienne|mauricienne|mauritanienne|mexicaine|micronésienne|moldave|monégasque|monténégrine|mongole|mozambicaine|namibiene|népalaise|nicaraguayenne|nigérienne|nigériane|néerlandaise|norvégienne|néo-zélandaise|ougandaise|ouzbèke|pakistanaise|palestinienne|panaméenne|paraguayenne|perse|péruvienne|philippine|polonaise|polynésienne|portugaise|québécoise|qatarie|roumaine|russe|rwandaise|saoudienne|scandinave|salvadorienne|sénégalaise|serbe|singapourienne|slovaque|slovène|somalienne|soudanaise|soviétique|srilankaise|suédoise|suisse|surinamaise|syrienne|sud-africaine|sud-coréenne|américaine|tadjike|tanzanienne|tchadienne|tchèque|thaïlandaise|togolaise|tahitienne|tunisiene|turkmène|turque|taïwanaise|ukrainienne|uruguayenne|vénézuélienne|vietnamienne|yéménite|yougoslave|zaïroise|zambienne|zimbabwéenne]
        <<- !-1>>

    [>afghane|>albanaise|>algérienne|>allemande|>américaine|>andorrane|>anglaise|>angolaise|>arabe|>argentine|>arménienne|>australienne|>autrichienne|>asiatique|>azerbaïdjanaise|>bahamienne|>bangladaise|>bengladeshie|>barbadienne|>basque|>belge|>bélizienne|>béninoise|>bretonne|>bhoutanaise|>biélorusse|>birmane|>bolivienne|>bosnienne|>botswanaiso|>brésilienne|>britannique|>brunéiene|>bulgare|>burkinabé|>burundaise|>cambodgienne|>camerounaise|>canadienne|>capverdienne|>centrafricaine|>chilienne|>chinoise|>chypriote|>colombienne|>comorienne|>congolaise|>nord-coréenne|>corse|>costaricienne|>croate|>cubaine|>danoise|>djiboutienne|>dominicaine|>égyptienne|>émiratie|>équatorienne|>érythréenne|>estonienne|>espagnole|>étatsunienne|>états-unienne|>étasunienne|>éthiopienne|>fidjienne|>finlandaise|>formosane|>française|>gabonaise|>gambienne|>géorgienne|>ghanéenne|>grecque|>grenadienne|>guadeloupéenne|>guatémaltèque|>guinéenne|>équato-guinéenne|>guyanienne|>haïtienne|>honduriene|>hollandaise|>hongroise|>indienne|>indochinoise|>indonésienne|>irakienne|>italienne|>iranienne|>irlandaise|>islandaise|>israélienne|>ivoirienne|>jamaïcaine|>japonaise|>jordanienne|>kazakhe|>kényane|>kosovare|>koweïtienne|>laotienne|>lapone|>lettone|>libanaise|>libérienne|>libyenne|>liechtensteinoise|>lituanienne|>luxembourgeois|>macédonienne|>maghrébine|>malgache|>malaisienne|>malawite|>maldivienne|>malienne|>maltaise|>maorie|>marocaine|>martienne|>mauricienne|>mauritanienne|>mexicaine|>micronésienne|>moldave|>monégasque|>monténégrine|>mongole|>mozambicaine|>namibiene|>népalaise|>nicaraguayenne|>nigérienne|>nigériane|>néerlandaise|>norvégienne|>néo-zélandaise|>ougandaise|>ouzbèke|>pakistanaise|>palestinienne|>panaméenne|>paraguayenne|>perse|>péruvienne|>philippine|>polonaise|>polynésienne|>portugaise|>québécoise|>qatarie|>roumaine|>russe|>rwandaise|>saoudienne|>scandinave|>salvadorienne|>sénégalaise|>serbe|>singapourienne|>slovaque|>slovène|>somalienne|>soudanaise|>soviétique|>srilankaise|>suédoise|>suisse|>surinamaise|>syrienne|>sud-africaine|>sud-coréenne|>américaine|>tadjike|>tanzanienne|>tchadienne|>tchèque|>thaïlandaise|>togolaise|>tahitienne|>tunisiene|>turkmène|>turque|>taïwanaise|>ukrainienne|>uruguayenne|>vénézuélienne|>vietnamienne|>yéménite|>yougoslave|>zaïroise|>zambienne|>zimbabwéenne]
        <<- /maj/ \1.istitle() and morph(<1, ":N", ":(?:A|V0e|D|R|B|X)") -1:>> =\1.lower()          # S’il s’agit d’un adjectif, ne mettez pas de majuscule.
        <<- /maj/ \1.islower() and not \1.startswith("canadienne") and
            ( value(<1, "|certains|certaines|ce|cet|cette|ces|des|les|nos|vos|leurs|quelques|plusieurs|chaque|une|aux|la|ma|ta|sa|")
            or ( morph(<1, ":B") and not morph(<2, ">numéro/") )
            or ( value(<1, "|l’|") and morph(\1, ":N.*:f:[si]") )
            or ( value(<1, "|de|d’|") and morph(<2, ">(?:beaucoup|énormément|multitude|tant|tellement|poignée|groupe|car|bus|équipe|plus|moins|pas|trop|majorité|millier|million|centaine|dizaine|douzaine|combien|photo|complot|enlèvement|témoignage|viol|meurtre|assassinat|duel|tiers|quart|pourcentage|proportion|génération|portrait|rencontre|reportage|parole|communauté|vie|rassemblement|bataillon|armée|émigration|immigration|invasion|trio|couple|famille|descendante|action|attente|désir|souhait|vote|volonté)/") )
            or ( value(<1, "|un|") and not value(<2, "|dans|numéro|") and not after("(?:approximatif|correct|courant|parfait|facile|aisé|impeccable|incompréhensible)") ) )
        -1>> =\1.capitalize()                                                                       # S’il s’agit d’un gentilé, mettez une majuscule.

    [un|une|certains|certaines|ce|cet|cette|ces|le|la|les|l’|des|quelques|plusieurs|chaque] [>européenne|>parisienne|>lyonnaise|>marseillaise|>lilloise|>toulousaine|>nantaise|>strasbourgeoise|>montpelliéraine|>bordelaise|>bruxelloise|>montréalaise|>londonienne|>genévoise|>zurichoise|>bâloise|>berlinoise|>romaine|>californienne]
        <<- /maj/ \2.islower() -2>> =\2.capitalize()                                                # S’il s’agit d’un gentilé, mettez une majuscule.

TEST: deux {{français}}                                                 ->> Français
TEST: des {{français}} sont arrivés                                     ->> Français
TEST: c’est de conception {{Allemande}}                                 ->> allemande
TEST: une référence aux {{israéliens}}
TEST: une {{érythréenne}}
................................................................................

    >homme d’ église
        <<- /maj/ \3.islower() -3>> Église                          # Lorsqu’on parle de l’institution, une majuscule est requise. Pour un bâtiment, pas de majuscule.

    [>chef|>rite|>sacrement] de l’ église
        <<- /maj/ \4.islower() -4>> Église                          # Lorsqu’on parle de l’institution, une majuscule est requise. Pour un bâtiment, pas de majuscule.

    [*WORD|*WORD_ELIDED] [Église|Églises] [>baroque|>gothique|>romane|~^Saint-[A-ZÉÊ]]
    ,                    [Église|Églises] [>baroque|>gothique|>romane|~^Saint-[A-ZÉÊ]]
        <<- /maj/ -2:>> église                                      # Pour un bâtiment, une minuscule est requise. La majuscule est pour l’institution.

TEST: L’{{église}} orthodoxe.                                           ->> Église
TEST: un homme d’{{église}}                                             ->> Église
TEST: les sacrements de l’{{église}}                                    ->> Église
TEST: Une {{Église}} baroque.                                           ->> église
TEST: L’{{Église}} Saint-Paul.                                          ->> église
................................................................................
    à but ?non¿ lucratif
    à canon [court|long|scié]
    à cause [de|d’]  [ça|cela|ceci|moi|toi|lui|nous|vous|elle|elles|eux|iel|iels]
    à ce [compte-là|moment-là|titre]
    à certains égards
    à cet égard
    à cet instant ?[exact|précis]¿
    à cette [date|occasion]
    à cette époque
    à cette époque de l’ année
    à cette heure
    à cette heure du jour
    à cette heure de la [journée|nuit]
    à cette heure [tardive|matinale]
    à ciel ouvert
................................................................................
    à l’ [un|une] des leurs
    à la [bourre|con|coule|dérobée|diable|fois|leur|manque|mords-moi-le-nœud|papa|ramasse|renverse|redresse|rescousse|sauvette|volée]
    à la bonne franquette
    à la limite du supportable
    à la lumière de tout [ceci|cela|ça]
    à la mords-moi le nœud
    à la petite semaine
    à la pointe du progrès
    à la première occasion
    à la queue leu leu
    à la surprise générale
    à la virgule près
    à [un|cet|l’] instant t
    à ?[très|si]¿ large spectre
    à ?[très|si]¿ long terme
................................................................................
    à rude épreuve
    à s’ y méprendre
    à somme nulle
    à spectre ?[très|si]¿ large
    à strictement parler
    à tarif réduit
    à tarifs réduits
    à taux [>fixe|>variable]
    à tel point
    à temps  [plein|partiel|complet]
    à tête reposée
    à tire d’ [aile|ailes]
    à [tire-d’aile|tire-d’ailes]
    à titre  [conservatoire|expérimental|indicatif|informatif|grâcieux|personnel|posthume]
    à titre  d’ exemple
................................................................................
    au bas mot
    au beau fixe
    au bon moment
    au bout du [compte|rouleau]
    au bout d’ un moment
    au cas par cas
    au commencement
    au contraire
    au coude à coude
    au coup par coup
    au cours de l’ [heure|année] ?passée¿
    au cours de l’ an  ?passé¿
    au cours de la [seconde|minute|journée|semaine] ?passée¿
    au cours du [mois|siècle|millénaire] ?passé¿
    au cours des [secondes|minutes|heures|journées|semaines|années] ?passées¿
................................................................................
    du haut en bas
    du même [acabit|coup|ordre|tonneau]
    du moins ?,¿ pas
    du [nord|sud] au [nord|sud]
    du tout au tout
    eh bien
    en \d\d+ [ans|années|mois|semaines|jours|heures|minutes|secondes]
    en [aparté|apparence|arrière|avance|avant|cachette|ceci|cela|clair|commun|conséquence|continu|contrebas|contrepartie|dedans|définitive|détail|direct|douce|effet|émoi|filigrane|général|goguette|hâte|majorité|outre|pâmoison|parallèle|partie|particulier|permanence|personne|pratique|prime|privé|principe|priorité|public|retour|revanche|rien|rogne|route|secret|silence|somme|suspens|théorie|trompe-l’œil|vain|vérité|ville]
    en réalité ?virtuelle¿
    en aucun cas
    en aucune [circonstance|façon|manière]
    en ?[assez|très]¿ bas âge
    en ?[assez|très]¿ bon état ?général¿
    en ?[assez|très]¿ bon état de [fonctionnement|marche]
    en ?[assez|très]¿ bonne [compagnie|place|posture|voie]
    en bonne et due forme
    en bonne santé ?[physique|mentale|psychique]¿
    en bout de course
    en cas [de|d’] [besoin|doute|urgence]
    en cas [de|d’] nécessité ?absolue¿
    en [chacun|chacune] [de|d’] [nous|vous|eux|elles]
    en chair et en os
    en chute libre
    en comparution immédiate
    en ?parfaite¿ connaissance [de|d’] cause
    en contrebas
    en coupe réglée
................................................................................
    en d’ autres temps et d’ autres lieux
    en [de|d’] [semblables|telles] circonstances
    en début [de|d’] [journée|matinée|soirée|après-midi]
    en définitive
    en dehors [de|d’] ?tout¿ [ça|cela|ceci]
    en dents [de|d’] scie
    en dernier [lieu|recours|ressort]


    en désespoir [de|d’] cause
    en détention provisoire
    en direction [de|d’] l’ [est|ouest]
    en direction du [nord|nord-est|nord-ouest|sud|sud-est|sud-ouest]
    en eau ?peu¿ profonde
    en eaux troubles
    en état [de|d’] choc ?circulatoire¿
................................................................................
    en règle générale
    en roue libre
    en second lieu
    en sens inverse
    en si peu [de|d’] temps
    en situation [irrégulière|régulière]
    en sous-main
    en tant que >telle
    en tête à tête
    en temps et en heure
    en temps [normal|opportun|ordinaire|utile|voulu]
    en terrain [découvert|miné]
    en termes choisis
    en terre battue ?[claire|ocre|jaune|rouge|noire|sombre|humide|sèche|maculée|sale|dégueulasse]¿
    en toile [de|d’] fond
................................................................................
    jusqu’ à preuve du contraire
    jusqu’ à la fin [de|d’] [mes|tes|ses|nos|vos|leurs] jours
    jusqu’ à la fin des temps
    jusqu’ à la tombée [de|d’] la nuit
    jusqu’ à la dernière [minute|seconde]
    jusqu’ à [mon|ton|son|notre|votre|leur] dernier souffle
    jusqu’ à [mon|ton|son|notre|votre|leur] dernier souffle [de|d’] vie
    jusqu’ à ce que mort s’ensuive
    jusqu’ à ce que [j’|il|elle|on] en sache plus
    jusqu’ à ce que tu en saches plus
    jusqu’ à ce que nous en sachions plus
    jusqu’ à ce que vous en sachiez plus
    jusqu’ à ce que [ils|elles] en sachent plus
    jusque-là
    la plupart du temps
    la main dans la main
    ?[de|d’]¿ là
    ?[de|d’]¿ là-bas
    ?[de|d’]¿ là-haut
    ?[de|d’]¿ là-dedans
    ?[de|d’]¿ là-dehors
    ?[de|d’]¿ là-derrière
    ?[de|d’]¿ là-dessous
    ?[de|d’]¿ là-dessus
    ?[de|d’]¿ là-devant
    ?[de|d’]¿ là non plus


    la mort dans l’ âme


    le cas échéant
    le moins du monde
    le moment venu
    le [moins|plus] [tôt|tard|souvent] ?possible¿
    le [moins|plus] [de|d’] [temps|monde] possible
    le [moment|jour] venu
    les [uns|unes] des autres
................................................................................
    sans crier gare
    sans difficulté ?[apparente|aucune|financière|majeure|particulière]¿
    sans dire mot
    sans en avoir conscience
    sans états d’ âme
    sans [m’|t’|s’|nous|vous] en apercevoir
    sans [m’|t’|s’|nous|vous] en rendre compte
    sans [m’|t’|s’|nous|vous] faire [avoir|comprendre|désirer|prier|remarquer]
    sans faire [de|d’] vagues
    sans foi ?,¿ ni loi
    sans [le|l’] faire exprès
    sans [le|l’] vouloir
    sans l’ aide [de|d’] personne
    sans l’ ombre d’ un doute
    sans mot dire
................................................................................
    sans y [réfléchir|songer|penser] à [deux|2] fois
    sans y faire attention
    sans y prendre [garde|goût|gout|ombrage]
    sauf >erreur [de|d’] [ma|ta|sa|notre|votre|leur] part
    secondo
    selon toute vraisemblance
    sens dessus dessous
    >seule à >seule
    s’ il le [faut|fallait|faudra|faudrait]
    si [bas|haut|longtemps|nécessaire|possible|soudain]
    si [cela|ça|ceci] ne tenait qu’ à [moi|toi|lui|eux|elle|elles|nous|vous|iel|iels]
    si besoin est
    si le besoin s’en [fait|faisait] sentir
    si le besoin [doit|devait] s’en faire sentir
    si tel est le cas
................................................................................
    sur [mon|ton|son|notre|votre|leur] [trente-et-un|31]
    sur [mon|ton|son|notre|votre|leur] trente et un
    sur ce ,
    sur ce plan-là
    sur la forme comme sur le fond
    sur la même longueur d’ onde
    sur le [long|moyen|court] terme

    sur le qui-vive
    sur-le-champ
    surtout
    séance tenante
    s’ il [te|vous] [plaît|plait]
    tant bien que mal
    tant de fois
    tant s’ en faut
    tantôt
    tard
    tertio
    toujours

    tous comptes faits
    tous frais payés
    tout [bonnement|simplement]
    tout au plus
    tout aussi bien
    tout bien [considéré|réfléchi]
    tout compte fait
................................................................................
    tout du long
    tout feu ?,¿ tout >flamme
    tout le temps
    tout à [fait|coup]
    tout à l’ heure
    toutefois
    toute affaire cessante

    toutes affaires cessantes
    toutes choses égales par ailleurs
    toutes griffes dehors
    toutes proportions gardées
    trait pour trait
    très ?[bas|haut|bien|mal]¿
    tôt
................................................................................
        <<- ~1:-2>> ␣
        <<- =>> define(\1, [":R:LR"])

    tout au long [de|du|d’|des]
        <<- not morph(<1, ":R") ~1>> *

    à travers $:D
    à travers >différente
        <<- ~1:2>> ␣
        <<- =>> define(\1, [":R:LR"])

    ainsi
        <<- not value(>1, "|que|qu’|") ~>> *

    au moins  @:[DB]
................................................................................
    abus [de|d’] pouvoir
    >accusé de reception
    >acte [de|d’] [baptême|caution|cautionnement|cession|contrition|licitation|mariage|naissance|notoriété|propriété|quittance|reconnaissance|répudiation|vente]
    >acte d’ [achat|engagement]
    >acte de gestion ?courante¿
    >acte de procédure ?pénale¿
    >acte d’ état ?civil¿
    >administratrice >système
    >agence de >voyage
    >aire d’ atterrissage
    >animal [de|d’] compagnie
    >appel au secours
    >appel à l’ aide
    >arc à poulies
    >arme à feu
    >armée [de|d’] l’ air
    >armée [de|d’] terre
    >armer jusqu’ aux dents
    >arme [de|d’] [poing|guerre]
    >arme [de|d’] destruction massive
    >armoire à [>glace|>pharmacie]
    >argent [de|d’] poche
    >arnaque à l’ assurance
    >article [de|d’] presse
    >assignation à résidence
    >attaque à main armée
    >attestation sur l’ honneur
    >atteinte aux bonnes mœurs
    >attendre [de|d’] pied ferme
    >avion à [>hélice|réaction]
    ayants droit
    >banc [de|d’] touche
    >bandit [de|d’] grand chemin
    >bandit [de|d’] grands chemins
    bas résille
    >benne à >ordure
    [>beauté|>belle] à couper le souffle
    >bête à [manger|bouffer] du foin
    >billet [de|d’] [*NUM|$:B] [>euro|>dollar|>centime|>cent|>livre|>shilling]
    [>bisphénol|>bisphenol] A
    >blanche comme neige
    >blanche comme [de|d’] la craie
    >blanche comme un linge
    [>boîte|>boite] [aux|à] lettres
    [>boîte|>boite] à [gants|outils|sardines]
    >bombe à [eau|fission|fusion|fragmentation|hydrogène|neutrons|retardement]
    >bombe à rayonnement renforcé
    >bonnet [de|d’] nuit
    >bonne à rien
    >boucle d’ >oreille
    bras d’ honneur
    >brave ?d’¿ entre les braves
    >brosse à [>dent|reluire]
    >cabinet [de|d’] [toilette|travail]
    >camp [de|d’] [concentration|internement|rééducation|vacances]
    >canne à [pêche|sucre]
................................................................................
    >chair [de|d’] poule
    >chambre à [coucher|gaz]
    >chambre [de|d’] [agriculture|hôte|hôtel|hôtes|commerce|compensation|décompression|dégrisement]
    [>chariot|>charriot] à [bagages|roulettes]
    >chasse à courre
    >chasse à l’ homme
    >chasse d’ eau
    >chasseuse [de|d’] primes
    >chemin [de|d’] [traverse|fer]
    >chemise sans >manche
    >chèque sans provision
    >chili con carne
    >chou à la crème ?[fouettée|diplomate|mousseline|patissière|pralinée]¿
    >claire comme [de|d’] l’ eau [de|d’] [boudin|roche|source]
    >claire comme du cristal
    >claire comme jus [de|d’] [boudin|>chaussette|chique]
    >classement sans suite
    [>clé|>clef] à molette
    >clin d’ œil
    >clause [de|d’] [confidentialité|non-concurrence]
    >clause [de|d’] non concurrence
    >code [de|d’] ?bonne¿ conduite
    >commise d’ office
    >compagne [de|d’] route
    >compagnon [de|d’] route
    >complémentaire santé
    >compte à rebours
    concours de beauté
    >condamnée à mort
    >conférence [de|d’] presse
    >conne comme la lune
    >conne comme un balai
    >conne comme une valise sans >poignée
    >conseillère d’ orientation [scolaire|professionnelle]
    >contrôle [de|d’] routine
    >convention [récepteur|générateur]
    >corvéable à merci
    >coup [de|d’] [avance|balai|barre|bâton|bec|bélier|bite|blues|bol|botte|boule|boutoir|cœur|chaud|coude|couteau|dé|dent|déprime|éclat|épaule|épée|estoc|État|foudre|fil|froid|genou|grâce|>griffe|grisou|gueule|hache|hanche|jarnac|jeune|jus|klaxon|main|maître|maitre|marteau|massue|nostalgie|œil|patte|pied|poignard|poing|poker|pouce|pute|queue|rabot|rein|sabre|sabot|sang|savate|semonce|sifflet|soleil|surin|tête|théâtre|tonnerre|trique|torchon|vent|vieux]
    >coup [de|d’] baguette ?magique¿
    >coup du sort
    >coup d’ un soir
................................................................................
    >délai [de|d’] [attente|carence|connexion|prescription|préavis|rétraction|rigueur]
    >demande d’ asile
    >descente aux [enfers|flambeaux]
    [>dîner|>diner] aux chandelles
    >digne [de|d’] [confiance|foi]
    >digne [de|d’] ce nom
    >don en nature

    >droite comme un i
    >eau [de|d’] [bouleau|bleuet|chaux|coco|javel|jouvence|mer|parfum|pluie|seltz|source|vie]
    >eau [de|d’] noix [de|d’] coco

    >élément à charge
    >emploi du temps
    >enterrement [de|d’] vie [de|d’] garçon
    >enterrement [de|d’] vie [de|d’] jeune fille
    >entrée [de|d’] service
    >épée à deux mains
    >épingle à cravate
................................................................................
    >file d’ attente
    >fille à [papa|maman|>soldat]
    >fille au pair
    fils à [papa|maman]
    fils [de|d’] pute
    >fleuve à sec
    >flocon [de|d’] neige ?électronique¿
    >folle à lier
    >fontaine à eau
    >fosse à [merde|>ordure|purin]
    >fosse aux lions
    [>fourgon|>fourgonette] de location
    >frayeur [de|d’] tous les diables
    >frousse [de|d’] tous les diables
    >fusil à pompe



    >gilet de sauvetage

    >grève de la faim
    >groupe de [discussion|parole|prière|pression|travail]

    >hall d’ entrée
    >harcèlement de rue
    >haute comme [trois|3] pommes
    >heure [sup|sup’]

    >histoire avec un [grand|petit] h
    >homme [de|d’] [affaires|armes|confiance|exception|État|Église|honneur|lettres|loi|main|paille]
    >homme d’ âge mûr
    >homme à tout faire
    >horaire à rallonge
    >hôtel [de|d’] ville
    >hôtesse d’ accueil
    >garde à vue
    >garde du corps
    gaz à >effet [de|d’] serre
    >grain [de|d’] [blé|maïs|sable]
    >infirmière [de|d’] garde
    >inspection [de|d’] routine
    >instinct de survie
    >interface [utilisateur+s]
    >invitée d’ honneur
    >invitée surprise
    >journal [de|d’] bord
    >juge d’ instruction
    >langue de bois
    >lame de fond
    >lettre [de|d’] recommandation
    >lampe à [huile|pétrole]
    >lampe [de|d’] chevet
................................................................................
    >machine [de|d’] guerre
    >maillot [de|d’] bain
    >main d’ œuvre
    >maison à colombages
    >maison [de|d’] [passe|retraite]
    >mal [de|d’] [tête|ventre|mer]
    >mandat [de|d’] [arrêt|dépôt]
    >marchande [de|d’] fruits et légumes
    >marché aux puces
    >maréchale des [logis|logis-chef]

    >marge [de|d’] >manœuvre
    >marque [de|d’] fabrique
    >masque à [gaz|oxygène]
    >matière à réflexion
    >médecin [de|d’] garde
    >mère au foyer
    >metteuse en scène
    >mineure [de|d’] moins [de|d’] *NUM ans
    >mineure [de|d’] moins [de|d’] $:B ans
    >miroir aux alouettes
    >mode [de|d’] [emploi|paiement|scrutin|vie]
    >monnaie [de|d’] [échange|réserve|singe]
    >montre à gousset
    >mot [de|d’] passe
    >motrice [>essence|>diésel|>diesel]
    >motion [de|d’] [blâme|censure|défiance]
    >moule à [>gaufre|>gâteau|brioche|manqué|savarin|charlotte|tarte]
    >moulin à [café|eau|paroles|poivre|prières|vent]
    noix [de|d’] [cajou|pécan|pecan|coco|lavage|muscade|veau|macadamia]
    >nounou à domicile
    >nourrice à domicile
    >nue comme un ver
    >nue comme des vers
    >nulle et non >avenue
    >occasion en or ?massif¿
    >oiseau [de|d’] [malheur|nuit|proie]
    >oiseau [de|d’] mauvais augure
    >onde [de|d’] choc
    orge [perlé|mondé|carré]
    >noire comme la nuit
    >noire comme une nuit sans lune

    >panier à linge
    >papier à [>lettre|musique]
    >parc d’ attractions
    >parole en l’ air
    >partie [de|d’] jambes en l’ air
    >passage à tabac
    >passation [de|d’] pouvoir
................................................................................
    >pièce [de|d’] [théâtre|monnaie]
    >pièce [de|d’] *NUM [>euro|>dollar|>centime|>cent|>livre|>shilling]
    >pince à linge
    >placard à [>balai|chaussures]
    >plan [A|B|C]
    >planche [de|d’] salut
    >planche à repasser
    >pleine aux as
    >police [de|d’] [caractères|écriture]
    >politique spectacle
    >pomme [de|d’] [discorde|terre|reinette|pin|Adam|api|amour|ambre|eau|or]
    >pompe à [chaleur|essence|fric]
    >porte [de|d’] [entrée|service|garage|sortie]
    >porte d’ entrée
    >pot [de|d’] [chambre|colle]
................................................................................
    >rouge à lèvres
    >roulement à billes
    [>ru|>ruisseau] à sec
    >sac à [bandoulière|dos|main|langer|merde|foutre]
    >sac [de|d’] [couchage|sport|voyage]
    >salle à manger
    >salle [de|d’] [attente|>bain|conférence|lecture|séjour|vente]
    >saine [de|d’] [corps|esprit]
    >saine [de|d’] [corps|esprit] et [de|d’] [corps|esprit]
    >sclérose en plaques
    [secret+s] défense
    >sel [de|d’] [aluminium|ammonium|mer]
    >serpent à sonnette
    >seuil de tolérance
    >seuil de tolérance à la douleur
    >silo à [>grains|blé]
    >soldate d’ élite
    >sonnette d’ alarme
    >sortie [de|d’] secours
    >soue à >cochonne
    >sourde comme un pot
    >système d’ exploitation
    >système D
    >tableau de chasse
    >table à repasser
    >table de chevet
    >taille *NUM
    tas [de|d’] >ferraille ?rouillée¿
................................................................................
    >talon >aiguille
    taux [de|d’] [abstention|absorption|alcool|alphabétisation|endettement|inflation|intérêt|imposition|occupation|ouverture|œstrogène|urée|usure|change|cholestérol|cholesterol|glycémie|fécondité|participation|testostérone|TVA]
    >témoin à charge
    tenants et aboutissants
    >ténor du barreau
    >tête à claques
    >tête [de|d’] [linotte|déterré|déterrée|déterrés|déterrées|mule]
    >têtue comme une [bourrique|mule]
    >têtue comme un [âne|bourriquot|mulet]
    >terrain à découvert
    >tigre à dents [de|d’] sabre
    >tir de barrage
    >tiret d’ incise
    >tireuse d’ élite
    >titre [de|d’] [noblesse|propriété|séjour]
    >tondeuse à gazon
    >tour [de|d’] passe-passe
    >torrent à sec
    >train à grande vitesse
    >traitement [de|d’] faveur
    >transport en commun
    >trou à >rat
    >trouble à l’ ordre public
    >t-shirt sans >manche
    >tueuse à gages
    >tueuse en série
    >turbine à [gaz|vapeur]
    >usine à gaz
    >vache à lait
    >vague à l’ âme
    >vectrice [>accélération|>position|>rotation|>vitesse]
    >véhicule de location
    >vente à domicile
    >vente aux enchères
    >vérification de routine
    vernis à ongles
    >verre à pied
    >voie [de|d’] [recours|perdition]
................................................................................
    >volée de bois vert
    >voiture de location
    >zone [de|d’] confort
    >zone [de|d’] transit ?principal¿
        <<- ~2:0>> *
        <<- =>> =select(\1, ":N")

    [>homme|>femme|>cinéaste|>politicienne|>actrice|>autrice|>sculpteuse|>compositrice|>musicienne|>groupe|>romancière|>peintre|>photographe|>sportive|>philosophe|>intellectuelle|>polémiste] à succès



    [>homme|>femme] d’ >affaire à succès
        <<- ~-2:0>> *

    >calibre . *NUM ?[acp|auto|brenneke|browning|british|colt|court|H&K|magnum|mauser|otan|remington|parabellum|russian|S&W|sig|soviet|special|wcf|wsm|winchester]¿
    >calibre . *NUM long rifle
    >calibre *NUM ?[mm|in]¿
    >calibre *NUM [*|×] *NUM ?[mm|in]¿
................................................................................


__purge_couleurs__
    [beige|blanc|bleu|brun|châtain|cyan|gris|incarnat|jaune|magenta|marron|orange|pourpre|rose|rouge|vert|violet|or|argent] [brillant|clair|criard|diapré|fluo|foncé|irisé|mat|pâle|pastel|sale|sombre|tendre|terne|vif]
    [beige|blanc|bleu|brun|châtain|cyan|gris|incarnat|jaune|magenta|marron|orange|pourpre|rose|rouge|vert|violet|or|argent] et [beige|blanc|bleu|brun|châtain|cyan|gris|incarnat|jaune|magenta|marron|orange|pourpre|rose|rouge|vert|violet|or|argent]
    blanc   [argenté|cassé|lunaire]
    bleu    [acier|argenté|azur|céleste|ciel|électrique|givré|indigo|marine|nuit|outremer|outre-mer|persan|pétrole|roi|saphir|turquin|turquoise|vert]
    blond   [argenté|platine]

    gris    [acier|anthracite|argenté|fer|perle|souris]
    jaune   [canari|citron|doré|maïs|paille|sable]
    noir    [de|d’] [encre|jais]
    noir    et blanc
    noir    sur blanc
    rose    [bonbon|chair|corail]
    rouge   [anglais|brique|cardinal|carmin|cerise|cochenille|coquelicot|écarlate|feu|fraise|grenat|groseille|incarnat|indien|rubis|sang|sanguin|tomate|vermeille|vermillon]
    vert    [bouteille|céladon|émeraude|épinard|impérial|lichen|olive|perroquet|pistache|poireau|pomme|prairie|printemps|sapin|sauge|tilleul]
    couleur sable
        <<- morph(<1, ":[NA]", ":D") ~>> *
        <<- __else__ and morph(<1, ":D|>(?:être|devenir|redevenir|rester|sembler|demeurer|para[îi]tre)") ~>> ␣
        <<- __also__ =>> define(\1, [":A:e:i"])


................................................................................
    chaque [année|semaine|journée|décennie]  [<end>|,]
        <<- ~1:2>> *

    chaque [an|jour|mois]  @¬:(?:A.*:[me]:[si]|Oo|[123][sp])
    chaque [an|jour|mois]  [<end>|,]
        <<- ~1:2>> *




    d’ [avance|évidence]  @¬:A.*:[fe]:[si]
    d’ [avance|évidence]  [<end>|,]
        <<- ~1:2>> *

    d’ entrée                           @¬:A:[fe]:[si]
    d’ entrée                           [<end>|,]
        <<- ~1:2>> *
................................................................................
__purge_vite__
    vite
        <<- not (morph(<1, ":V0a") and value(>1, "|fait|")) ~>> *


__purge_locutions_verbales__
    >aller bon train

    >arriver à [destination|échéance]
    >arriver à point nommé
    >arriver à bon port

    >battre à plate couture
    >battre en [brèche|retraite]
    [>brûler|>bruler] à vif
    >charger à blanc
    >chauffer à blanc
    >compter à rebours
    >condamner à mort
................................................................................
    [>mettre|>remettre] à l’ [écart|épreuve]
    [>mettre|>remettre] au [point|pas]
    [>mettre|>remettre] de côté
    [>mettre|>remettre] en [avant|branle|bouche|demeure|évidence|garde|jeu|lumière|marche|mouvement|œuvre|place|route|scène|terre]
    >mourir jeune
    [>naître|>naitre] de la dernière pluie
    [>naître|>naitre] sous x

    >parler affaires
    >partir en vrille
    >passer à tabac
    >percer à jour
    >perdre [connaissance|conscience|patience|raison]
    >perdre d’ avance
    >piquer au vif
    >porter [assistance|atteinte|bonheur|caution|chance|malheur|plainte|préjudice|secours]
    >poser problème
    >porter plainte
    >prendre ?[ça|cela|ceci]¿ à la légère
    >prendre ?[ça|cela|ceci]¿ au [dépourvu|sérieux]

    >prendre bonne note
    >prendre [congé|conscience|contact|ombrage|note|peur|position|possession|racine|soin|vie]
    >prendre de [court|vitesse]
    >prendre ?[ça|cela|ceci]¿ en charge
    >prendre ?[ça|cela|ceci]¿ pour argent comptant
    >prendre par surprise
    >prêter à confusion
................................................................................
    >tenir à [carreau|cœur]
    >tenir ?[ça|cela|ceci]¿ à distance ?respectable¿
    >tenir [compte|compagnie]
    >tenir au courant
    >tenir en haute estime
    >tirer à blanc
    >tomber à [pic|point]


    >trier sur le volet
    >trouver refuge
    >tirer à blanc
    >tirer [avantage|profit]
    >tourner à l’ aigre
    >tourner court
    >venir à bout
................................................................................
    >battre a plate couture
    [>brûler|>bruler] a vif
    >charger a blanc
    >chauffer a blanc
    >fermer a [>clé|>clef]
    [>gonfler|>regonfler] a bloc
    >jeter a terre
    [>mettre|>remettre] a [bas|>flot|>jour|>niveau|>nu|>nue|>plat|>table|>terre]
    [>mettre|>remettre] a l’ [écart|épreuve]
    >passer a tabac
    >percer a jour
    >prendre a la légère
    >prêter a >confusion
    >réduire a néant
    >saigner a blanc
................................................................................
        <<- /gn/ -2>> =suggSing(\2)                                                                 # Accord de nombre erroné : “\2” devrait être au singulier.

TEST: toute l’importance de l’{{accords}} musical.


__gn_l_2m__
    l’  @:[NA]¬*  @:[NA]¬*
        <<- /gn/ not value(<1, "|et|ou|de|") and not value(\2, "|air|") and not morph(\3, ">seule/") >>>
        <<- /gn/ ( (morph(\2, ":m", "*") and morph(\3, ":f", "*")) or (morph(\2, ":f", "*") and morph(\3, ":m", "*")) ) and not apposition(\2, \3)
        -3>> =switchGender(\3, False)                                                               # Accord de genre erroné entre “\2” et “\3”.
        <<- /gn/ __also__ and hasFemForm(\2) -2>> =switchGender(\2)                                 # Accord de genre erroné avec “\3”.
        <<- /gn/ morph(\2, ":[si]", "*") and morph(\3, ":p", "*") and not apposition(\2, \3)
        -3>> =suggSing(\3)                                                                          # Accord de nombre erroné avec “\2” : “\3” devrait être au singulier.

    [et|ou|de]  l’  @:[NA]¬*  @:[NA]¬*
        <<- /gn/ not value(\3, "|air|") and not morph(\4, ">seule/") >>>
        <<- /gn/ ( (morph(\3, ":m", "*") and morph(\4, ":f", "*")) or (morph(\3, ":f", "*") and morph(\4, ":m", "*")) ) and not apposition(\3, \4) and not morph(<1, ":[NA]")
        -4>> =switchGender(\4, False)                                                               # Accord de genre erroné entre “\3” et “\4”.
        <<- /gn/ __also__ and hasFemForm(\3) -3>> =switchGender(\3)                                 # Accord de genre erroné avec “\4”.
        <<- /gn/ morph(\3, ":[si]", "*") and morph(\4, ":p", "*") and not apposition(\3, \4) and not morph(<1, ":[NA]")
        -4>> =suggSing(\4)                                                                          # Accord de nombre erroné avec “\3” : “\4” devrait être au singulier.

TEST: L’{{amande}} {{amer}}
................................................................................
            or \3 in aREGULARPLURAL
        -3>> =suggPlur(\3)                                                                  # Accord de nombre erroné : « \3 » devrait être au pluriel.

    *WORD  les  *WORD
        <<- /gn/ morph(\2, ":D")
            and ( morph(\3, ":[NA].*:s", "*") or (morph(\3, ":[NA].*:s", ":[pi]|>avoir/") and morph(\1, ":[RC]", ">(?:e[tn]|ou)/") and not (morph(\1, ":Rv") and morph(\3, ":Y"))) )
            and not (value(>1, "|et|ou|") and morph(>2, ":[NA]"))
            and not (value(\1, "|que|") and morph(<1, ">telle/") and morph(\3, ":3[sp]"))
        -3>> =suggPlur(\3)                                                                  # Accord de nombre erroné : « \3 » devrait être au pluriel.

    <start>  les  *WORD
        <<- /gn/ ( morph(\3, ":[NA].*:s", ":[ipYPGW]") and not (value(>1, "|et|ou|") and morph(>2, ":[NA]")) )
            or \3 in aREGULARPLURAL
        -3>> =suggPlur(\3)                                                                  # Accord de nombre erroné : « \3 » devrait être au pluriel.

................................................................................
TEST: Des yeux {{vert}}.
TEST: Des yeux {{marrons}}.
TEST: Des créatures marines.
TEST: Un cageot des premières cerises.


__sgpl_couleurs_composées!5__
    [>beige|>châtain|>cyan|>écarlate|>jaune|>magenta|>marron|>mauve|>orange|>pourpre|>rouge|>rose|>vermeille] [>fluo|>mat|>pâle|>pastel|>sombre|>tendre|>terne|>brillante|>claire|>vive|diapré+ses|foncé+ses|irisé+ses]
        <<- /sgpl/ morph(<1, ":N", ":D") and (not morph(\1, ":[me]:[si]") or morph(\2, ":[pf]"))
        ->> =suggSing(\1) + " " + suggMasSing(\2)
        # Les couleurs composées de plusieurs termes sont invariables.|https://fr.wikipedia.org/wiki/Accord_des_adjectifs_et_des_noms_de_couleur_en_fran%C3%A7ais

    [>blanche|>bleue|>brune|>grise|>noire|>verte|>violette] [>fluo|>mat|>pâle|>pastel|>sombre|>tendre|>terne|>brillante|>claire|>vive|diapré+ses|foncé+ses|irisé+ses]
        <<- /sgpl/ morph(<1, ":N", ":D") and (not morph(\1, ":[me]:[si]") or morph(\2, ":[pf]"))
        ->> =suggMasSing(\1) + " " + suggMasSing(\2)
        # Les couleurs composées de plusieurs termes sont invariables.|https://fr.wikipedia.org/wiki/Accord_des_adjectifs_et_des_noms_de_couleur_en_fran%C3%A7ais

    >jaune [>paille|>sable]
    >rose  [>bonbon|>chair|>corail]
    >rouge [>brique|>carmine|>cerise|>écarlate|rubis|>sang|>tomate|>vermillon]
        <<- /sgpl/ morph(<1, ":N", ":D") and (not morph(\1, ":[me]:[si]") or morph(\2, ":p"))
        ->> =suggSing(\1) + " " + suggSing(\2)
        # Les couleurs composées de plusieurs termes sont invariables.|https://fr.wikipedia.org/wiki/Accord_des_adjectifs_et_des_noms_de_couleur_en_fran%C3%A7ais

    >bleue [>ciel|>indigo|>marine|>roi|>saphir|>turquoise|>verte]
    >blonde >platine
    >grise [>acier|>anthracite|>perle|souris]
    >verte [>émeraude|>olive|>pistache|>pomme]
        <<- /sgpl/ morph(<1, ":N", ":D") and (not morph(\1, ":[me]:[si]") or morph(\2, ":p"))
        ->> =suggMasSing(\1) + " " + suggSing(\2)
        # Les couleurs composées de plusieurs termes sont invariables.|https://fr.wikipedia.org/wiki/Accord_des_adjectifs_et_des_noms_de_couleur_en_fran%C3%A7ais

    >noire [de|d’] [encre|jais]
        <<- /sgpl/ not morph(<1, ":D") -1>> noir
        # Les couleurs composées de plusieurs termes sont invariables.|https://fr.wikipedia.org/wiki/Accord_des_adjectifs_et_des_noms_de_couleur_en_fran%C3%A7ais

TEST: les chapeaux {{rouges clairs}}                                        ->> rouge clair
TEST: des chaussures {{jaunes sables}}                                      ->> jaune sable|||sablent
TEST: des pantalons {{verts clairs}}                                        ->> vert clair
TEST: des robes {{bleues indigo}}                                           ->> bleu indigo
................................................................................


__sgpl_carnet_de__
    >carnet de [chèque|note|timbre|ticket|vacance]
        <<- /sgpl/ -3>> \3s                                             # Il manque un “s”. Il y en a plusieurs dans un carnet.

__sgpl_collectif_de__
    >collective [de|d’] [artiste|agriculteur|agricultrice|architecte|automobiliste|citoyen|citoyenne|con|conne|consommateur|consommatrice|enfant|entreprise|femme|fille|garçon|homme|infirmier|infirmière|jeune|médecin|motard|motarde|musicien|musicienne|passionné|passionnée|prostitué|prostituée|touriste|travailleur|travailleuse|vieille|vieillard|vieillarde]
        <<- /sgpl/ morph(<1, ":D|<start>") -3>> \1s                     # Il manque un “s”. Il y en a plusieurs dans un collectif.

__sgpl_collection_de__
    >collection [de|d’] [autocollant|boîte|blason|bouton|carte|chaussure|écusson|étiquette|film|fossile|gravure|jeu|insecte|livre|médaille|moto|papillon|pièce|pierre|pipe|tableau|timbre|voiture]
        <<- /sgpl/ -3>> =suggPlur(\3)                                   # Il manque un “s”. Il y en a plusieurs dans une collection.

__sgpl_concours_de_circonstances__
................................................................................
TEST: Mettre à {{nus}} les hommes.
TEST: Elle s’est mise à {{nue}} devant ses sœurs.
TEST: Une mise à nu douloureuse.


# affaires
__sgpl_affaires__
    [>chiffre|>homme|>femme|>centre|>chargée]  d’ affaire
        <<- /sgpl/ -3>> affaires                                            # Dans “\1 d’affaires”, toujours mettre “affaires” au pluriel.

    >faire affaires avec
        <<- /sgpl/ -2>> affaire                                             # Dans la locution “Faire affaire avec”, “affaire” est au singulier.

    >faire affaire [à|en] ~^[A-ZÉÈÂ]
        <<- /sgpl/ morph(\4, ":(?:N|MP)") -2>> affaires                     # Ajoutez un “s” à « affaire ».
................................................................................
__sgpl_demi_demie__
    [>année|>semaine|>journée|>heure|>minute|>seconde|>bouteille|>caisse|>cuillère|>page|>remorque|>tasse|>tonne] et [demi|demis|demies]
        <<- /sgpl/ -3>> demie                           # « Une et demie », « deux et demie », etc.

    [>millénaire|>siècle|>an|>jour|>degré|>kilo|>litre|>mètre|>wagon] et [demie|demis|demies]
        <<- /sgpl/ -3>> demi                            # « Un et demi », « deux et demi », etc.

    [>demie] [>douzaine|>cercle|>litre|>millénaire|>siècle|>journée|>heure|>sœur|>frère|>fin|>sel|>finale|>centre|>million|>pension|>portion|>mot|>morte|>longueur|>page|>mesure|>écrémer|>tour|>teinte]
        <<- /sgpl/ ->> demi-\2                          # Pour la moitié de “\2”, écrivez “demi-\2”.

TEST: nous avons rendez-vous dans une heure et {{demi}}
TEST: Deux mètre et {{demis}}.
TEST: achète une {{demie douzaine}} d’œufs.

__sgpl_à_demi__
................................................................................
    [>avoir|>perdre]  pieds
        <<- /sgpl/ -2>> pied                                        # Locution “\1 pied” : écrivez “pied” au singulier.

    à pieds
        <<- /sgpl/ not before("(?i)\\b(?:lit|fauteuil|armoire|commode|guéridon|tabouret|chaise)s?\\b") and not morph(>1, ">sculpter/")
        -2>> pied                                                   # Location “à pied” : écrivez “pied” au singulier.|https://fr.wiktionary.org/wiki/%C3%A0_pied

    [à|aux] >pied >levée
        <<- /sgpl/ ->> au pied levé                                 # Locution adverbiale invariable.

TEST: ils ont tout simplement perdu {{pieds}}
TEST: ils y sont allés à {{pieds}}.
TEST: Elles ont accompli l’impossible, et de surcroît {{aux pieds levés}}


................................................................................
TEST: ils mangent {{vites}}.
TEST: elles sont {{vites}} parties.
TEST: elles sont vites.


# voir clair
__sgpl_voir_clair__
    >voir >claire
        <<- /sgpl/ \2 != "clair" and \2 != "Claire" -2>> clair      # Dans la locution “voir clair”, “clair” est un adverbe, donc invariable. (Mais peut-être confondez-vous “voire” et “voir” ?)

TEST: Ils y voient {{clairs}}.
TEST: Il vit Claire au théâtre.
TEST: J’y vois clair, mec.


................................................................................
TEST: Ces gens-là ne feront jamais {{amande honorable}}.
TEST: achète de la pâte d’{{amende}}
TEST: feront-ils {{amande honorable}}


# annales / anal-e-s
__conf_annales_anales__
    >anale [>littéraire|>politique|>ecclésiastique]
    >anale du [baccalauréat|bac|brevet]
    >anale de [>physique|>chimie|>mathématique|>biologie|>géographie|>philosophie]
    >anale d’ [>histoire|>économie]
        <<- /conf/ -1>> annales                         # Confusion : “\1” est l’adjectif relatif à l’anus.|http://fr.wiktionary.org/wiki/annales

    [les|ces|des|mes|tes|ses|nos|vos|leurs|plusieurs] >anale
        <<- /conf/ -2>> annales                         # Confusion : “\2” est l’adjectif relatif à l’anus.|http://fr.wiktionary.org/wiki/annales

TEST: {{anales}} du bac
TEST: des {{anales}} littéraires
TEST: il a bachoté les {{anales}}.


# air / aire / ère
__conf_air_aire_ère__
    [>air|>aire] [>digitale|>numérique|>industrielle|>glacière|>glaciaire|>géologique|Meiji|>cénozoïque|>moderne|>paléozoïque|>pliocène|>primaire|>secondaire|>tertiaire|>quaternaire]
    [>air|>aire] du [cénozoïque|digital|numérique|paléozoïque|pliocène|pétrole|primaire|secondaire|tertiaire|quaternaire]
    [>air|>aire] du big data
        <<- /conf/ -1>> ère|ères    # Confusion. L’aire est une surface. L’air est un gaz, une apparence ou une musique. Pour évoquer une époque, écrivez “ère”.

    l’ [aire|ère] du temps
        <<- /conf/ -2>> air         # Confusion probable. Locution “l’air du temps”.|https://fr.wiktionary.org/wiki/%C3%AAtre_dans_l%E2%80%99air_du_temps

................................................................................
    >baptême de l’ [ère|aire]
    >libre comme l’ [ère|aire]
        <<- /conf/ --1>> air        # Confusion. Une ère est une époque. L’aire est une surface. Pour parler de l’atmosphère, écrivez “air”.|https://fr.wiktionary.org/wiki/air

TEST: L’{{aire}} du pétrole n’est pas encore terminée.
TEST: Ce sera un jour dans l’{{ère}} du temps
TEST: il a l’{{aire}} d’un plouc.

TEST: on s’arrêtera sur l’{{air}} d’autoroute
TEST: baptême de l’{{aire}}


# auspice / hospice
__conf_auspices_hospices__
    sous [les|de|des|ces] ?*WORD¿ hospices
................................................................................
    [>être|>aller|>rester|>demeurer|>partir]  [à|dans|de]  l’ auspice
        <<- /conf/ -4>> hospice         # Confusion. Les auspices sont des présages, des devins ou, au sens moderne, les circonstances.|https://fr.wiktionary.org/wiki/auspice

    dans [un|cet|les|des|ces|quel|quels] >auspice
        <<- /conf/ -3>> =\3.replace("auspice", "hospice")
        # Confusion. Les auspices sont des présages, des devins ou, au sens moderne, les circonstances.|https://fr.wiktionary.org/wiki/auspice

    >auspice pour [>vieillarde|vieux|>sénior|>senior|>personne|>enfant|>orpheline|>femme|>aliénée|>incurable|>indigente|>malade|>pauvre]
        <<- /conf/ -1>> =\1.replace("auspice", "hospice").replace("Auspice", "Hospice")
        # Confusion. Les auspices sont des présages, des devins ou, au sens moderne, les circonstances.|https://fr.wiktionary.org/wiki/auspice

TEST: sous les {{hospices}} du conseil général de la nation.
TEST: sous de terribles {{hospices}}
TEST: Elles vont souvent à l’{{auspice}}.
TEST: Dans cet {{auspice}}, la nourriture est abominable.
................................................................................
        <<- /conf/ -1>> =\1.replace("ite", "itte")                      # Confusion. Bitte d’amarrage.

    [ma|ta|sa|notre|votre|nos|vos|leur|leurs|grande+s|grosse+s|petite+s|longue+s|>énorme|>minuscule|>sale] >bitte
    >être [une|des] >bitte
    [>aimer|>adorer|>astiquer|>avaler|>bouffer|>branler|>fourrer|>lécher|>mettre|>mordre|>pomper|>sucer] $:D >bitte
        <<- /conf/ --1>> =\-1.replace("itte", "ite")                    # Confusion probable. Si vous parlez de pénis, écrivez “bite” (terme argotique).|https://fr.wiktionary.org/wiki/bite

    >bitte [>circoncise|>dégueulasse|>dure|>molle|>puante|>raide|>répugnante|>sale|vidé+ses]
        <<- /conf/ -1>> =\1.replace("itte", "ite")                      # Confusion probable. Si vous parlez de pénis, écrivez “bite” (terme argotique).|https://fr.wiktionary.org/wiki/bite

TEST: les mouettes sur les {{bites}} d’amarrage.
TEST: on se fout de savoir ce qu’ils font avec leurs {{bittes}}.
TEST: il m’a mis sous le nez une {{bitte}} répugnante.


# bonne et due forme / bonnet difforme / bon uniforme
__conf_en_bonne_et_due_forme__
    en >bonne >uniforme
    en >bonnet >difforme
    en >bonne et [du|due|dus|dues] >forme
        <<- /conf/ ->> en bonne et due forme                            # Locution “en bonne et due forme” (invariable).|https://fr.wiktionary.org/wiki/en_bonne_et_due_forme

TEST: une raclée {{en bonnes et dues formes}}
TEST: remplir son formulaire en bonne et due forme, c’est le minimum pour espérer un retour positif.


## s’en / c’en
................................................................................

TEST: on va expédier ce {{coli}} vite fait bien fait.
TEST: un {{coli}} oublié à la gare.


# courant / courent
__conf_courant_courent__
    [courent|courrent] [alternatif+s|>atmosphérique|>continue|>électrique|>équatoriale|marin+s|>océanique|>triphasée]
    [courent|courrent] [d’|de] [>air|>eau|Foucault|>marée|>surface]
        <<- /conf/ not value(<1, "|ils|elles|iels|ne|eux|") -1>> courant     # Confusion probable. Écrivez “courant”.|https://fr.wiktionary.org/wiki/courant

TEST: Un fort {{courent}} électrique
TEST: il y a un {{courent}} d’air dans cette salle.


................................................................................

TEST: ces saloperies coûtent vraiment {{chères}} !
TEST: elles payent {{chairs}} !


# chair / chère
__conf_faire_bonne_chère__
    >faire  >bonne  [cher+s|chères|>chair|>chaire]
        <<- /conf/ -2:3>> bonne chère                   # Confusion. « Faire bonne chère » signifie bien manger, ripailler.

TEST: ils ont fait {{bonne chaire}}.


# chant / champ
__conf_Chandeleur__
................................................................................
        <<- /conf/ -3>> côlon                           # Confusion : le côlon est un segment du gros intestin, le colon colonise.

TEST: Il a le cancer du {{colon}}.


# censé / sensé
__conf_censé_sensé__
    >être >sensée [ne|n’|le|la|l’|les|en|me|m’|te|t’|se|s’|nous|vous|lui|leur|y]        $:Y
    >être >sensée ?[ne|n’]¿ [le|la|l’|les|en|me|m’|te|t’|se|s’|nous|vous|lui|leur|y]    $:Y
    >être >sensée ?[ne|n’]¿ [me|m’|te|t’|se|s’|nous|vous] [le|la|l’|les|en|y]           $:Y
    >être >sensée ?[ne|n’]¿ [le|la|l’|les]                [lui|leur|en|y]               $:Y
    >être >sensée ?[ne|n’]¿ [lui|leur]                    en                            $:Y
    >être >sensée $:Y
    >être >sensée ne [pas|plus|jamais|rien|guère|point]
        <<- /conf/ not value(<1, "|l’|un|les|des|ces|")
        -2>> =\2.replace("sens", "cens").replace("Sens", "Cens").replace("SENS", "CENS")            # Confusion : “sensé” se dit de quelqu’un de “bon sens”. Pour ce qui est attendu, écrivez “censé”.

TEST: Ils sont {{sensés}} y parvenir.
TEST: Elles étaient {{sensés}} m’y conduire
TEST: il est {{sensé}} prendre l’avion demain
TEST: Un être sensé ne ferait jamais ça.

    >censée  <end>
        <<- /conf/ -1>> =\1.replace("cens", "sens").replace("Cens", "Sens").replace("CENS", "SENS")  # Confusion probable. Ce qui est “sensé” (de “bon sens”) et ce que chacun est “censé” accomplir.

TEST: Ce sont pourtant des gens si {{censés}}
TEST: Ils n’y voyaient rien de sensé.


# chœur / cœur
................................................................................

TEST: Je reste à ses {{cotés}}.


# cote / côte / cotte
__conf_côte_cote_cotte__
    [>cote|>cotte] [de|d’] [>bœuf|>porc|>veau|Bretagne|>agneau|>albâtre|>Armor|>azur|>ivoire|>or|>opale|>émeraude]
    [>cote|>cotte] [>surnuméraire|>rocheuse|>adriatique|>américaine|>californienne|>atlantique|>basque|>bretonne|>landaise|>normande|>française|>belge|>espagnole|>italienne|>portugaise|>africaine|>méditerranéenne|>pacifique|>raide|>occidentale|>fractale|nord|sud|ouest]
        <<- /conf/ -1>> =\1.replace("o", "ô").replace("tt", "t")                    # Confusion : écrivez “côtes” pour les os du thorax et les rivages.|https://fr.wiktionary.org/wiki/c%C3%B4te

    [>cote|>cotte] [>briser|>casser|>fêler|>fracturer]
        <<- /conf/ morph(\2, ":A") -1>> =\1.replace("o", "ô").replace("tt", "t")    # Confusion : écrivez “côtes” pour les os du thorax et les rivages.|https://fr.wiktionary.org/wiki/c%C3%B4te

    [>fracture|>radiographie] des [>cote|>cotte]
        <<- /conf/ -3>> côtes                                       # Confusion : écrivez “côtes” pour les os du thorax.|https://fr.wiktionary.org/wiki/c%C3%B4te

    [>côte|>cotte] [>mobilière|>foncière]
    [>côte|>cotte] [de|d’] [niveau|popularité|confiance|alerte|altitude|amour]
        <<- /conf/ -1>> =\1.replace("ô", "o").replace("tt", "t")    # Confusion : utilisez « cote » pour chiffrer (cotation).|http://fr.wiktionary.org/wiki/cote

    [>cote|>côte] de >maille
        <<- /conf/ -1>> =\1.replace("ô", "o").replace("t", "tt")    # Confusion : écrivez « cotte » pour la cotte de mailles.|https://fr.wiktionary.org/wiki/cotte_de_mailles

    >avoir la côte
................................................................................
    [>confiture|>crème|>gâteau|>mélasse|>noyau|>pâte|>recette|>sirop] de >date
    [moelleux|>gâteau|>fondant|>cake] [au|aux]  >date
        <<- /conf/ -3>> dattes                                                          # Confusion probable. Pour parler du fruit, écrivez “datte”.|https://fr.wiktionary.org/wiki/datte

    >date [>muscade|medjool|hamraya|deglet-nour|kenta|allig|khouat]
        <<- /conf/ -1>> =\1.replace("t", "tt").replace("T", "TT")                       # Confusion probable. Pour parler du fruit, écrivez “datte”.|https://fr.wiktionary.org/wiki/datte

    >date [>fraîche|>fraiche|>dénoyauter|>fourrer|>sèche|>sécher|>cultiver|>produire]
        <<- /conf/ morph(\2, ":A.*:f") -1>> =\1.replace("t", "tt").replace("T", "TT")   # Confusion probable. Pour parler du fruit, écrivez “datte”.|https://fr.wiktionary.org/wiki/datte

    >datte [du|de|des] [>bac|>baptême|>brevet|>calendrier|>carême|>carnaval|>concert|>début|>dépôt|>demande|>dernière|>diffusion|>document|>fermeture|>fin|>jour|>journal|>lancement|>livraison|mise|mises|>mariage|>message|>mort|>naissance|>parution|>pentecôte|>péremption|>post|>prélèvement|première|>prise|>prochaine|>publication|>ramadan|>rapport|>réception|>référendum|>règlement|>retraite|>réunion|>séminaire|>show|>sortie|>spectacle|>terme|>tirage|>tournage|>trajet|>vente|>virement|>vol|>vote|>voyage|>lundi|>mardi|>mercredi|>jeudi|>vendredi|>samedi|>dimanche|congrès|décès|permis|procès]
    >datte d’ [accouchement|actualisation|achat|adhésion|anniversaire|apparition|échéance|édition|émission|engagement|entrée|envoi|examen|exécution|expédition|expiration|immatriculation|imputation|inscription|origine|ouverture|ovulation|aujourd’hui|Halloween]
    >datte de l’ [accouchement|actualisation|achat|adhésion|anniversaire|apparition|échéance|édition|émission|engagement|entrée|envoi|examen|exécution|expédition|expiration|immatriculation|imputation|inscription|origine|ouverture|ovulation]
    >datte du /NUM [janvier|février|mars|avril|mai|juin|juillet|août|aout|septembre|octobre|novembre|décembre]
        <<- /conf/ -1>> =\1.replace("tt", "t").replace("TT", "T")       # Confusion probable. La datte est un fruit. Pour évoquer un jour dans l’année, écrivez “date”.|https://fr.wiktionary.org/wiki/date

    >dernière en >datte
        <<- /conf/ -3>> date                                            # Confusion probable. La datte est un fruit. Pour évoquer un jour dans l’année, écrivez “date”.||https://fr.wiktionary.org/wiki/date

TEST: il va faire un cake aux {{dates}}.
TEST: elle a fait de la confiture de {{dates}}
TEST: Des {{dates}} fraîches.
TEST: des {{dates}} dénoyautées.
TEST: une {{date}} muscade
................................................................................

# desceller / déceler / desseller
__conf_erreur_déceler_desseller_desceller__
    [>erreur|>faute|>incohérence|>problème|>bug|>bogue|>faille|>maladie|>défaut|>défaillance|>perturbation|>irrégularité] <> [>desseller|>desceller]
        <<- /conf/ --1>> =\-1.replace("escell", "écel").replace("essell", "écel")
        # Confusion probable si ce verbe se rapporte à “\1”. Desceller signifie briser un sceau, un cachet… Desseller signifie ôter une selle. Si vous voulez dire “remarquer”, “dévoiler”, “découvrir”, écrivez “déceler”.|http://fr.wiktionary.org/wiki/déceler

    [>desseller|>desceller] [l’|@:[BD]] [>petite|>grande|>énorme|>dangeureuse|>formidable|>forte|>légère|>merveilleuse|>nouvelle|>vrai|>réelle|>sévère|>véritable] [>acidité|>activité|>allergie|>anévrisme|>anomalie|>arnaque|>appendicite|>atrophie|>baisse|>bébé|>blessure|>bug|>bogue|>carie|>cancer|>cause|>changement|>complot|>comète|>concentration|>corrélation|>croissance|>défaut|>défaillance|>demande|>dépression|>diabète|>différence|>diminution|>effluve|>épilepsie|>erreur|>essai|>existence|>grossesse|>grosseur|>faille|>faute|>fuite|>fraude|>grippe|>handicap|>hausse|>hémorragie|>hostilité|>hypertrophie|>incompatibilité|>incohérence|>infection|>infraction|>indice|>infidélité|>insuffisance|>intrigue|>irrégularité|>leucémie|>lésion|>lueur|>lumière|>maladie|>malformation|>manœuvre|>manipulation|>molécule|>mensonge|>mutation|>once|>perturbation|>personnalité|>piste|>perte|>planète|>exoplanète|>présence|>qualité|>odeur|>opportunité|>otite|>problème|>surdité|>talent|>tendance|>tentative|>tumeur|>utilisation|hoax|>variation|>vie|virus]
        <<- /conf/ -1>> =\1.replace("escell", "écel").replace("essell", "écel")
        # Confusion probable si ce mot se rapporte à “\3 \4”. Desceller signifie briser un sceau, un cachet… Desseller signifie ôter une selle.|http://fr.wiktionary.org/wiki/déceler

    [>desseller|>desceller] [l’|@:[BD]] [>acidité|>activité|>allergie|>anévrisme|>anomalie|>arnaque|>appendicite|>atrophie|>baisse|>bébé|>blessure|>bug|>bogue|>carie|>cancer|>cause|>changement|>complot|>comète|>concentration|>corrélation|>croissance|>défaut|>défaillance|>demande|>dépression|>diabète|>différence|>diminution|>effluve|>épilepsie|>erreur|>essai|>existence|>grossesse|>grosseur|>faille|>faute|>fuite|>fraude|>grippe|>handicap|>hausse|>hémorragie|>hostilité|>hypertrophie|>incompatibilité|>incohérence|>infection|>infraction|>indice|>infidélité|>insuffisance|>intrigue|>irrégularité|>leucémie|>lésion|>lueur|>lumière|>maladie|>malformation|>manœuvre|>manipulation|>molécule|>mensonge|>mutation|>once|>perturbation|>personnalité|>piste|>perte|>planète|>exoplanète|>présence|>qualité|>odeur|>opportunité|>otite|>problème|>surdité|>talent|>tendance|>tentative|>tumeur|>utilisation|hoax|>variation|>vie|virus]
        <<- /conf/ -1>> =\1.replace("escell", "écel").replace("essell", "écel")
        # Confusion probable si ce mot se rapporte à “\3”. Desceller signifie briser un sceau, un cachet… Desseller signifie ôter une selle.|http://fr.wiktionary.org/wiki/déceler

................................................................................
        <<- /ppas/ \2.islower() -1>> dû                     # Confusion. Ce qui est dû.

TEST: L’échec est {{du}} en partie à un manque de préparation.


# éminent / imminent
__conf_éminent_imminent__
    >imminente [>actrice|>confrère|>collègue|>dirigeante|>dissidente|>entrepreneuse|>experte|>défenseuse|>intellectuelle|>mathématicienne|>musicienne|>pédiatre|>personalité|>personnage|>professeur|>physicienne|>rabbin|>représantante|>savante|>chirurgienne|>neurochirurgienne|>scientifique|>service|>spécialiste|~logues?$|~istes?$]
        <<- /conf/ -1>> =\1.replace("imm", "ém").replace("Imm", "Ém")
        # Confusion probable. Si “\1” se rapporte à “\2”, alors vous voulez probablement dire “éminent” ; “imminent” signifie “qui va survenir prochainement”.|https://fr.wiktionary.org/wiki/%C3%A9minent

    [>actrice|>confrère|>collègue|>dirigeante|>dissidente|>entrepreneuse|>experte|>défenseuse|>intellectuelle|>mathématicienne|>musicienne|>pédiatre|>personalité|>personnage|>professeur|>physicienne|>rabbin|>représantante|>savante|>chirurgienne|>neurochirurgienne|>scientifique|>service|>spécialiste|~logues?$|~istes?$] >imminente
        <<- /conf/ morph(<1, ":D") -2>> =\2.replace("imm", "ém").replace("Imm", "Ém")
        # Confusion probable. Si “\2” se rapporte à “\1”, alors vous voulez probablement dire “éminent” ; “imminent” signifie “qui va survenir prochainement”.|https://fr.wiktionary.org/wiki/%C3%A9minent

    [>accouchement|>accord|>arrivée|>assaut|>attaque|>atterrissage|>cataclysme|>catastrophe|>changement|>conflit|>crash|>danger|>décollage|>départ|>désarmement|>déclenchement|>effondrement|>éruption|>fin|>guerre|>lancement|>orage|>ouragan|>péril|>remaniement|>réponse|>résultat|>retour|>séisme|>tempête|>tsunami|>verdict] ?>être¿ >éminente
        <<- /conf/ --1>> =\-1.replace("émi", "immi").replace("Émi", "Immi")
        # Confusion probable. Si “\-1” se rapporte à “\1”, alors vous voulez probablement dire “imminent” ; “éminent” signifie “notable”.|https://fr.wiktionary.org/wiki/%C3%A9minent

TEST: mon {{imminent}} collègue.
TEST: Les scientifiques les plus {{imminents}}.
TEST: l’accouchement est {{éminent}}.
TEST: Mon {{imminent}} collègue.
................................................................................

TEST: Il avait été blessé au {{flan}}.
TEST: Elle lança une contre-attaque sur son {{flan}}.


# flamant rose
__conf_flamant_rose__
    >flamande >rose
        <<- /conf/ -1>> =\1.replace("and", "ant")                           # Confusion. Flamand = habitant des Flandres. Flamant = oiseau.

TEST: j’ai vu un {{flamand}} rose.


# foi / fois / foie
__conf_foi_fois__
................................................................................
TEST: J’ai préparé du pâté de {{fois}}
TEST: la prochaine {{foi}}, c’est mon tour.
TEST: une bonne {{foi}} pour toutes, ça suffit !


# fond / fonds / fonts
__conf_fond_fonds_fonts__
    [>collecte|>levée|>extorsion|>détournement] de [fond|fonts]
    >collecter des fonts
        <<- /conf/ -3>> fonds                   # Confusion : fonds (ce qui constitue une richesse) ≠ fond (partie la plus basse/profonde).

    à [fond|fonts] [perdu|perdus|perdue|perdues]
        <<- /conf/ ->> à fonds perdus           # Confusion : fonds (ce qui constitue une richesse) ≠ fond (partie la plus basse/profonde).

    [fond|fonts] [>monétaire|spéculatif+s|>internationale|souverain+s]
    [fond|fonts] [de|d’] [commerce|garantie|roulement|pension|placement|retraite|roulement|solidarité]
    [fond|fonts] d’ [aide|investissement|indemnisation]
        <<- /conf/ -1>> fonds                   # Confusion : fonds (ce qui constitue une richesse) ≠ fond (partie la plus basse/profonde).

    fonds baptismaux
        <<- /conf/ -1>> fonts                   # Confusion. Écrivez “fonts”, qui vient du latin “fons” et signifie « fontaine, source ».

................................................................................
TEST: Une {{goûte}} de pluie
TEST: tu sais, les {{goutes}} de pluie, ça mouille.
TEST: ouf, on est passé entre les {{goûtes}}…
TEST: Des gouttes de pluie.


__conf_goûter_goutter_dégoûter_dégoutter__
    >goutter ?à¿ $:D [>biscuit|>bière|>bon|>bonbon|>breuvage|>burger|>café|>cidre|>cocktail|>chocolat|>crêpe|>cru|>délice|>délicieuse|>délicieuse|>dessert|>fameux|>fameuse|>féculent|>fromage|>fruit|>gâteau|>hamburger|>légume|>nourriture|paradis|>pâte|>pain|>plat|>pâtisserie|>poisson|>poulet|>recette|repas|>sandwich|>soupe|>tarte|>tartelette|>sauce|>succulente|>thé|>viande|>vin|>yaourt|>yoghourt]
        <<- /conf/ -1>> =\1.replace("outt", "oût").replace("OUTT", "OÛT")
        # Confusion : “goutter” signifie “couler goutte à goutte”. Pour l’usage du goût, écrivez “goûter”.|https://fr.wiktionary.org/wiki/go%C3%BBter

    [>chiotte|>clim|>climatisation|>chauffe-eau|>douche|>eau|>évier|>lavabo|nez|>motrice|>parapluie|>plafond|>pluie|>robinet|>sang|>sueur|>toilette|>toit|>tuyau|>tuyauterie] ?[ne|n’]¿ [>goûter|>gouter|>dégoûter|>dégouter]
        <<- /conf/ --1>> =\-1.replace("oût", "outt").replace("OÛT", "OUTT").replace("out", "outt").replace("OUT", "OUTT")
        # Confusion : “goûter” signifie utiliser le sens du goût. Pour ce qui s’écoule goutte à goutte, écrivez “goutter”.|https://fr.wiktionary.org/wiki/goutter

................................................................................

# jeune / jeûne
__conf_jeûne_jeune__
    >jeune du [carême|ramadan]
    >jeune [alimentaire|eucharistique|rituel|sacramentel]
        <<- /conf/ -1>> =\1.replace("u", "û").replace("U", "Û")         # Confusion. Pour les privations alimentaires, écrivez “jeûne”.|https://fr.wiktionary.org/wiki/je%C3%BBne

    >jeûne [>adolescente|>adulte|>âge|>épousée|>épouse|>femme|>fille|gars|>garçon|gens|>homme|>mariée|>mari|>enfant|>bébé|>chienne|>chiot|>chat|>célibataire|>étudiante|>lycéenne|>élève|>écolière|>diplômée|>prodige|>couple|>papa|>maman|>père|>mère|>conne|>génération|>médecin|>travailleuse]
        <<- /conf/ -1>> =\1.replace("û", "u").replace("Û", "U")                                              # Confusion. Le jeûne est une privation alimentaire.|https://fr.wiktionary.org/wiki/jeune

TEST: il accomplit le {{jeune}} rituel
TEST: de {{jeûnes}} adultes
TEST: les {{jeûnes}} travailleurs du nouveau centre commercial


# levée / lever
__conf_lever_levée__
    [lever|levers|levé|levés] de >fond
        <<- /conf/ ->> levée de fonds|levées de fonds           # Confusion. Exemple : une levée de fonds, un lever de soleil.

    >levée [de|du] [rideau|soleil]
        <<- /conf/ -1>> lever|levers                            # Confusion. Exemple : une levée de fonds, un lever de soleil.

TEST: {{levée}} de soleil
TEST: Faisons des {{levers de fond}}


# lever un lièvre / soulever
................................................................................
        <<- /conf/ -1>> =\1.lower().replace("cha", "lâ")        # Expression impropre. On écrit « lâcher la proie pour l’ombre ».|https://fr.wiktionary.org/wiki/l%C3%A2cher_la_proie_pour_l%E2%80%99ombre

TEST: il ne faut pas {{chasser}} la proie pour l’ombre.


# lieux / lieues / lieus
__conf_lieux_lieues_lieus__
    [>assurance|>état|>visite|>maîtresse|>maitresse|>seigneur|>magie|>chef|>cheffe|>responsable|respect|entretien|propreté|>propriétaire|tranquillité|dans|vers|>plan] des [lieues|lieus]
        <<- /conf/ --1>> lieux                                  # Confusion probable. Pour désigner un endroit, écrivez “lieux”.|http://fr.wiktionary.org/wiki/lieu

    [>lieue|lieus] [>insolite|>accessible|>accueillante|>inaccessible|>inexplorée|>lointaine|>louche|>proche|>touristique|saint+s|>connu|>inconnue|>mythique|>publique|prestigieux|>romantique|>stratégique|>historique|où|>humide|sec+s]
    [>lieue|lieus] de [>communication|>concert|>conférence|>contemplation|>culte|>chasse|>détente|>détention|>départ|>méditation|>mémoire|>pouvoir|>prière|>prostitution|>sépulture|repos|>refuge|>stockage|>travail|>vacance|>spectacle|>conférence|>rassemblement|>sortie|>stationnement|>rencontre|>vacance|>villégiature]
        <<- /conf/ -1>> lieu|lieux                              # Confusion probable. Pour désigner un endroit, écrivez “lieu(x)”.|http://fr.wiktionary.org/wiki/lieu

    [>lieue|lieus] [>aménager|>abandonner|>insolite|>éloigner|>réserver|>sacrer|>connaître|>méconnaître|>privilégier|>priver]
        <<- /conf/ morph(\2, ":Q") -1>> lieu|lieux              # Confusion probable. Pour désigner un endroit, écrivez “lieu(x)”.|http://fr.wiktionary.org/wiki/lieu

    [>être|>demeurer|>déménager|>habiter|>trouver|>situer|>rester|>demeurer|>demeure|>vivre]  à  [quelques|plusieurs|maintes|*NUM|$:B]  [lieux|lieus]
................................................................................
    [>être|>demeurer|>déménager|>habiter|>trouver|>situer|>rester|>demeurer|>demeure|>vivre]  à  des  [lieux|lieus]
        <<- /conf/ space_after(\2, 1, 4) --1>> lieues           # Confusion probable. Pour désigner une distance, écrivez “lieues”.|http://fr.wiktionary.org/wiki/lieue

    *NUM >lieu sous [la|les] >mer
    $:B  >lieu sous [la|les] >mer
        <<- /conf/ -2>> lieues                                  # Confusion. Pour désigner une distance, écrivez “lieue(s)”.|http://fr.wiktionary.org/wiki/lieue

    [lieux|>lieue] [>jaune|>noire|>mordre]
        <<- /conf/ -1>> lieu|lieus                              # Confusion probable. Si vous parlez du poisson, écrivez “lieu(s)”.|http://fr.wiktionary.org/wiki/lieu

    >pêche [aux|des] [lieux|lieues]
    >chair des [lieux|lieues]
        <<- /conf/ -3>> lieu|lieus                              # Confusion. Si vous parlez du poisson, écrivez “lieu(s)”.|http://fr.wiktionary.org/wiki/lieu

TEST: qui est le responsable des {{lieues}} ?
................................................................................
TEST: Échec et {{mât}}
TEST: le grand {{mat}}
TEST: {{Mat}} de misaine


# mâter / mater
__conf_mater_mâter__
    >mâter  $:D  [>adversaire|>armée|>cavalière|>cheval|>chienne|>conne|>connard|>connasse|>cul|>dame|>enfoirée|>emmerdeuse|>enfant|>ennemie|>enculée|>femme|>fesse|>fille|fils|>folle|>foule|>gamine|>garçonne|>homme|>horde|>incendie|>insurrection|>jument|>lionne|>nation|>peuple|>pion|>pute|>rebelle|>rebellion|>reine|>roi|>sein|>salope|>tigresse|>tour|>troupe]
        <<- /conf/ -1>> =\1.replace("ât", "at").replace("ÂT", "AT")
        # Confusion. “Mâter” signifie “dresser un mât”. Si vous voulez dire “dompter” (ou argotiquement “regarder”), écrivez “mater”.|https://fr.wiktionary.org/wiki/mater

    >mâter en [*NUM|$B] coups
        <<- /conf/ -1>> =\1.replace("ât", "at").replace("ÂT", "AT")
        # Confusion. “Mâter” signifie “dresser un mât”. Si vous voulez dire “dompter” ou “mettre en échec”, écrivez “mater”.|https://fr.wiktionary.org/wiki/mater

................................................................................
TEST: Ils étaient partis au restaurant après avoir {{mi}} à jour son profil.
TEST: elles ont dansé, {{mie}} à jour leur carnet et sont parties.
TEST: après avoir {{mi}} ses souliers tenir


# mûr / mur
__conf_mûr_mur__
    [>amandine|>brioche|>charlotte|>cheesecake|>chausson|clafoutis|>confiture|>crème|>crêpe|>croustade|>croustillante|>crumble|>cueillette|>dessert|>far|>flan|jus|>gelée|>glace|>gourmandise|>lapin|>liqueur|>macaron|>milkshake|>milk-shake|>millefeuille|>mille-feuille|>mousse|>muffin|>pancake|>pavlova|>recette|>récolte|>sauce|>soufflé|>smoothie|>sirop|>tarte|>tartelette|>tiramisu|>yaourt|>yoghourt|coulis|>gâteau|>kilo] [de|aux] [mur+ses]
        <<- /conf/ --1>> mûres                                              # Confusion. Le fruit s’écrit “mûre”.|https://fr.wiktionary.org/wiki/m%C3%BBr

    [trop|assez|abcès|>âge|>avocate|>banane|>blé|>brugnon|corps|>enfant|>esprit|>femme|>figue|>fraise|>fruit|>homme|>melon|>personne|>poire|>pomme|>prune|>papaye|>pêche|>raisin|>tomate] [mur+ses]
    [>être|>sembler|>paraître|>paraitre|>rester]  [mur+ses]
        <<- /conf/ --1>> =\-1.replace("u", "û").replace("U", "Û")           # Confusion. Pour décrire ce qui a atteint la maturité, écrivez “mûr”.|https://fr.wiktionary.org/wiki/m%C3%BBr

    des vertes et des pas [mur+ses]
        <<- /conf/ --1>> mûres                                              # Confusion. Pour décrire ce qui a atteint la maturité, écrivez “mûr”.|https://fr.wiktionary.org/wiki/m%C3%BBr

    [mur+ses] [>délibération|>réflexion]
................................................................................
        <<- /conf/ -3>> nues                                    # Confusion. Écrivez “nues” (ancien terme pour “nuages”).|https://fr.wiktionary.org/wiki/tomber_des_nues

TEST: Elle en est tombée des {{nus}}.


# numérique / digital
__conf_numérique_digital__
    [>agence|>appareil|>banque|>caméra|>communication|>compagnie|>connexion|>économie|>entreprise|>ère|>expérience|>identité|>industrie|>présence|>prise|>service|>solution|>stratégie|>télévision|>transformation|>transition] >digitale
        <<- /conf/ -2>> numérique|numériques
        # Confusion : “digital” est un adjectif se rapportant aux doigts (empreinte digitale, arthrose digitale, etc.). Écrivez “numérique”.

    [le|du|au] digital
        <<- /conf/ -2>> numérique
        # Confusion : “digital” est un adjectif se rapportant aux doigts (empreinte digitale, arthrose digitale, etc.). Écrivez “numérique”.

TEST: une économie {{digitale}} ou rien
TEST: Dans l’ère du {{digital}}, tout va plus vite.


# panser / penser
__conf_panser_penser__
    >penser  *WORD  [>animal|>blessure|>blessée|bras|>chatte|>cheval|>chienne|>cheville|>cœur|>crâne|>cuisse|>doigt|>épaule|>jambe|>main|>malade|>patte|>pied|>plaie|>poignet|>tête]
        <<- /conf/ morph(\2, ":D", ">de/") -1>> =\1.replace("en", "an").replace("EN", "AN")
        # Confusion probable. Pour évoquer les soins prodigués, écrivez “panser”.|https://fr.wiktionary.org/wiki/panser

    >panser à autre chose
    >panser à $:D [>amie|>bébé|>chienne|>chatte|>cul|>descendante|>descendance|>enfant|>famille|>femme|>fesse|>fille|>garçon|>héritage|>héritière|>leçon|>mari|>maîtresse|>maitresse|>parent|>voisin]
    >panser [au|aux] [>amie|>bébé|>chienne|>chatte|>cul|>descendante|>descendance|>enfant|>famille|>femme|>fesse|>fille|>garçon|>héritage|>héritière|>leçon|>mari|>maîtresse|>maitresse|>parent|>voisin]
    >panser à [dieu|moi|toi|lui|elle|nous|vous|eux|elles|iel|iels|$:M]
    >panser à [ne|n’|me|m’|te|t’|se|s’]
    >panser à [le|la|l’|les|en|lui|leur|y]      $:Y
    >panser à [le|la|l’|les]  [lui|leur|en|y]   $:Y
    >panser à [lui|leur]      en                $:Y
        <<- /conf/ -1>> =\1.replace("an", "en").replace("AN", "EN")
        # Confusion probable. Pour évoquer les pensées qu’on a pour quelqu’un ou quelque chose, écrivez “penser”.|https://fr.wiktionary.org/wiki/penser
................................................................................
TEST: {{Panse}} à tes amis
TEST: Il pense à son héritage futur.


# pain / pin
__conf_pain_pin__
    >pin d’ >épice
    >pin >perdue
    >pin sans >gluten
        <<- /conf/ -1>> pain|pains      # Confusion. Le pin est un arbre résineux à aiguilles persistantes. Pour parler la pâte de farine et d’eau cuite au four, écrivez “pain”.

    [>manger|>dévorer|>avaler|>engloutir] [le|les|du|des|un|ce|ces|mon|ton|son|mes|tes|ses|notre|votre|nos|vos|leur|leurs|quelques|plusieurs]  >pin
        <<- /conf/ -3>> pain|pains      # Confusion. Le pin est un arbre résineux à aiguilles persistantes. Pour parler la pâte de farine et d’eau cuite au four, écrivez “pain”.

    >pomme de >pain
................................................................................
TEST: Elles sont hors de {{paires}}.


# pâle / pale
__conf_pâle_pale2!6__
    >faire ?[pas|jamais|guère]¿ porter pale
    [>être|>rester|>demeurer|>devenir]  >pale
    [>air|>lumière|>lueur|>teinte|coloris|>couleur|>peau|>visage|>bleue|>rouge|>fuschia|>jaune|>verte|gris|>orange|>violette|>pourpre]  >pale
        <<- /conf/ --1>> =\-1.replace("a", "â").replace("A", "Â")
        # Utilisez “pâle” pour évoquer la pâleur… Une pale est, entre autres choses, un élément d’une hélice.|http://fr.wiktionary.org/wiki/pale

TEST: Elle est très {{pale}} !
TEST: Sous une lumière {{pale}},
TEST: Se faire porter {{pale}}.

................................................................................
TEST: Nous sommes tous d’une manière ou d’une autre {{juge et parti}}.
TEST: prendre {{a parti}}
TEST: Prendre Damien {{à parti}}.


# pâte / patte
__conf_pâte_patte_pat__
    [>patte|pat] [>alimentaire|>alsacienne|>chinoise|>feuilletée|>italienne|>thermique]
    [>patte|pat] au [basilic|beurre|saumon|pesto|poulet|thon]
    [>patte|pat] [à|a] [>pain|>crêpe|>gaufre|>pizza|>tarte|>modeler|>tartiner]
    [>patte|pat] [d’|de] [>amande|>amende|>fruit]
        <<- /conf/ -1>> pâte|pâtes                              # Confusion. La patte est le membre d’un animal (ou d’une table…). La matière pâteuse s’écrit “pâte”.

    >mettre ?[pas|jamais]¿ la main à la [>patte|pat]
    >coq en [>patte|pat]
................................................................................
__conf_rester_en_contact__
    >rester en [contacte+s]
        <<- /conf/ --1>> contact                                    # Confusion. Locution “rester en contact”.

TEST: il va rester en {{contacte}} avec eux
TEST: Restons en contact.



















# sale / salle
__conf_salle_qqch__
    >sale d’ [>accouchement|>arcade|>attente|>audience|>eau|>escalade|>échographie|>embarquement|>exposition|>hospitalisation|>observation|>opération|>urgence]
    >sale [de|des|du] [>bain|>bal|>banquet|>billard|>bloc|>cinéma|>classe|>colle|>commandement|>concert|>conférence|>conseil|>consultation|cours|>culture|>danse|>départ|>fête|>formation|>garde|>gym|>gymnastique|>infirmière|>lecture|>machine|>malade|>mammographie|>marché|>mariage|>musculation|>musique|>ordinateur|>presse|>prière|>prof|>professeure|>projection|>radio|>radiographie|>réanimation|>réception|>rédaction|>rééducation|>restaurant|>réunion|>réveil|>séjour|>shoot|>soin|>spectacle|>sport|>stockage|>théâtre|>tir|>toilette|>torture|>trading|>travail|>vente|fitness|>jeu|>repos|>urgence]
    >sale à manger
        <<- /conf/ -1>> =\1.replace("ale", "alle")                  # Confusion : “sale” signifie “malpropre”. Pour désigner une pièce, écrivez “salle”.

    >être  >salle
        <<- /conf/ -2>> =\2.replace("salle", "sale")                # Confusion. Une salle est une pièce. Pour la malpropreté, écrivez “sale”.

TEST: dans la {{sale}} des professeurs
TEST: une {{sale}} d’arcade
TEST: ils sont tellement {{salles}}
TEST: pour le service en salle


................................................................................

# tâche / tache (de chocolat / rousseur / vin / sang / café / gras / graisse / huile / etc.)
__conf_tache_tâche__
    >tâche  [de|d’]  @:N¬:[GMY]|>(?:contrôle|fonds?|envergure|ampleur|importance|départ|surveillance|supervision|tri|.+(?:tion|ment))/
        <<- /conf/ not before("[aA]ccompl|[dD]él[éè]gu") -1>> =\1.replace("â", "a").replace("Â", "A")
        # Confusion probable. Une tâche est un travail à accomplir. Pour une salissure, une altération, une marque, une coloration… employez “tache”.

    >tâche  [>indélébile|>rouge|>verte|>noire|>bleue|>jaune|>grise|>blanche|>brune|>pourpre|>chocolat|>mauve|>fushia|>violette|>rose|>claire|>sombre|>solaire|>cuivrée]
        <<- /conf/ -1>> =\1.replace("â", "a").replace("Â", "A")
        # Confusion. Une tâche est un travail à accomplir. Pour une salissure, une altération, une marque, une coloration… employez “tache”.

    >tâche sur $:D [>bermuda|>blouse|>blouson|bois|bras|>caleçon|>canapé|>carrelage|>chemise|>chemisier|>col|>conscience|corps|>costume|>cravate|>cuir|>culotte|CV|>dent|>doigt|document|dos|>fauteuil|>feuille|>front|>habit|>jambe|>jean|>joue|>jupe|>jupon|>lèvre|>linge|>livre|>livret|>maillot|>main|>marbre|>meuble|>moquette|>mur|>nappe|nez|>ongle|>papier|>parquet|>pantalon|>peau|pénis|>photo|>photographie|>pied|>pull|>réputation|>robe|>sexe|>siège|>slip|>sol|>t-shirt|>teeshirt|>tee-shirt|>tapis|>tête|>tissu|>veste|>vêtement|>visage]
        <<- /conf/ -1>> =\1.replace("â", "a").replace("Â", "A")
        # Confusion. Une tâche est un travail à accomplir. Pour une salissure, une altération, une marque, une coloration… employez “tache”.

................................................................................

TEST: est-ce qu’il n’aurait pas mieux {{fallu}} que nous                            ->> valu
TEST: il aurait mieux {{fallu}} que nous trouvions nous-mêmes une solution.         ->> valu


# venimeux / vénéneux
__conf_venimeux_vénéreux__
    [>serpent|>araignée|>scorpion|>vipère|>cobra|>crapaud|>grenouille|>dendrobate|>poulpe|>guêpe|>abeille|>frelon|>méduse|>morsure|>piqûre|>dard|>dent|>croc|>crochet]  >vénéneuse
        <<- /conf/ -2>> =\1.replace("énén", "enim").replace("ÉNÉN", "ENIM")                         # Confusion : “vénéneux” se dit des plantes, employez “venimeux”.

    [>plante|>champignon|>lépiote|>baie|>fruit|>herbe|>fleur|>chair|>moule|humus|>substance|>végétal]  >venimeuse
        <<- /conf/ -2>> =\1.replace("enim", "énén").replace("ENIM", "ÉNÉN")                         # Confusion : pas de venin ici.

TEST: ces araignées {{vénéneuses}}.
TEST: ce champignon {{venimeux}}.



................................................................................
!!
!!
!!
!!
!!
!!
















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

................................................................................

TEST: de manière à {{obligé}} ces gens
TEST: ils ont intérêt à {{obligés}} ces gens
TEST: Tous ceux qui ont du mal à {{obligé}} ces gens


__infi_verbe_de_verbe__
    [>arrêter|>cesser|>choisir|>commander|>continuer|>décider|>défendre|>envisager|>essayer|>éviter|>interdire|>omettre|>permettre|>prévoir|>refuser|>suggérer|>tenter]
        || [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  *WORD
        <<- /infi/ not morph(\1, ":N") and (analyse(\-1, ":V1.*:Q", ":(?:M|Oo)") or analyse(\-1, ":[123][sp]", ":[MNG]"))
        --1>> =suggVerbInfi(\-1)                                                                    # Après “\1 de”, le verbe devrait être à l’infinitif.

TEST: cessez d’{{anesthésié}} ces gens !
TEST: arrête d’y {{consacré}} autant de temps.
TEST: Il tentait de {{raisonné}} en homme libre
................................................................................
    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/ analyse(\-1, ":Q", ":M") --1>> =suggVerbInfi(\-1)                                # Après “\1 de”, le verbe devrait être à l’infinitif.

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

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

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

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

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

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

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

    >avoir vite fait                            [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..ée?s?$
        <<- /infi/ analyse(\-1, ":Q", ":M") --1>> =suggVerbInfi(\-1)                                # Après “avoir vite fait 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/ analyse(\-1, ":Q", ":M") --1>> =suggVerbInfi(\-1)                                # Après “faire semblant de”, le verbe devrait être à l’infinitif.
................................................................................

## moi/toi/lui/elle/nous/vous/eux/elles seul·e·s
__purge_pronom_seul__
    [à|de|d’|par]  moi      ?[seul|seule]¿
    [à|de|d’|par]  toi      ?[seul|seule]¿
    [à|de|d’|par]  lui      seul
    [à|de|d’|par]  elle     ?seule¿
    [à|de|d’|par]  nous     >seule
    [à|de|d’|par]  vous     >seule
    [à|de|d’|par]  eux      ?seuls¿
    [à|de|d’|par]  elles    ?seules¿
        <<- ~>> *

    [moi|toi]       [seul|seule]
    lui             seul
    elle            seule
................................................................................
    [de|d’]  @:V[123]_i.*:Y¬>(?:devenir|rester|demeurer)/  [le|la|l’|les]                           [lui|leur|en|y]           @:[123][sp]¬:G
    [de|d’]  @:V[123]_i.*:Y¬>(?:devenir|rester|demeurer)/  [lui|leur|y]                             en                        @:[123][sp]¬:G
    [de|d’]  @:V[123]_i.*:Y¬>(?:devenir|rester|demeurer)/  [lui|y]                                                            @:[123][sp]¬:G
    [de|d’]  @:V[123]_i.*:Y¬>(?:devenir|rester|demeurer)/  [le|la|l’|les|leur|en]                                             @:[123][sp]¬:[NAG]
    [de|d’]  @:V[123]_i.*:Y¬>(?:devenir|rester|demeurer)/  @:[123][sp]¬:[DM]
        <<- ~1:2>> *

    en tant que >telle
        <<- ~>> *

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

    y compris
        <<- not value(<1, "|j’|n’|tu|il|on|") ~>> *
................................................................................
TEST: tu ne crois pas avoir été {{découvertes}}
TEST: tu vas être {{payées}}
TEST: tu deviens vraiment très {{forts}} à ce jeu.
TEST: je voudrais bien être dans ses souliers


__ppas_3sg_mas_verbe_état__
    [ce|ça|ceci|cela|c’|ç’] >avoir été >seule               [que|qu’]
    [ce|ça|ceci|cela|c’|ç’] >avoir été @:[AQ].*:f¬:[GWYme]  @:N.*:f
        <<- !4>>

    [ce|ça|ceci|cela|c’|ç’] >être >seule                    [que|qu’]
    [ce|ça|ceci|cela|c’|ç’] >être @:[AQ].*:f¬:[GWYme]       @:N.*:f
        <<- !3>>

    tout en [étant|semblant|devenant|restant|demeurant|redevenant|paraissant] @:A
        <<- !4>>

    ([il|ce|c’|ç’|quiconque]) ?[ne|n’]¿ ?[en|y]¿ ([>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre])               [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:f¬:[GWYme]]
................................................................................
TEST: le sentant {{incomprise}}                                                     ->> incompris
TEST: la voir {{persécuté}} ainsi me fit mal au cœur                                ->> persécutée
TEST: les montrer {{inflexible}} nous aidera à les convaincre.                      ->> inflexibles


__ppas_le_verbe_pensée__
    le [>trouver|>considérer|>croire|>imaginer|>rendre|voilà]  *WORD
        <<- /ppas/ morph(\3, ":[AQ].*:(?:[me]:p|f)", ":(?:G|Y|V0|[AQ].*:m:[is])") and not (morph(\2, ":Y") and morph(\3, ":3s"))
        -3>> =suggMasSing(\3)                                                       # Accord avec le COD “le” : « \3 » doit être au masculin singulier.

__ppas_la_verbe_pensée__
    la [>trouver|>considérer|>croire|>imaginer|>rendre|voilà]  *WORD
        <<- /ppas/ morph(\3, ":[AQ].*:(?:[fe]:p|m)", ":(?:G|Y|V0|[AQ]:f:[is])") and not (morph(\2, ":Y") and morph(\2, ":3s"))
        -3>> =suggFemSing(\3)                                                       # Accord avec le COD “la” : « \2 » doit être au féminin singulier.

__ppas_les_verbe_pensée__
    les [>trouver|>considérer|>croire|>imaginer|>rendre|voilà]  *WORD
        <<- /ppas/ morph(\3, ":[AQ].*:s", ":(?:G|Y|V0|[AQ].*:[ip])") and not (morph(\2, ":Y") and morph(\3, ":3s"))
        -3>> =suggPlur(\3)                                                          # Accord avec le COD “les” : « \2 » doit être au pluriel.

__ppas_me_te_verbe_pensée__
    [me|m’|te|t’] [>trouver|>considérer|>croire|>imaginer|>rendre|voilà]  *WORD
        <<- /ppas/ morph(\3, ":[AQ].*:p", ":(?:G|Y|V0|[AQ].*:[is])") and not (morph(\2, ":Y") and morph(\3, ":3s"))
        -3>> =suggSing(\3)                                                          # Accord avec le pronom “\1” : « \3 » doit être au singulier.

__ppas_se_verbe_pensée__
    [se|s’] [>trouver|>considérer|>croire|>imaginer|>rendre]  *WORD
        <<- /ppas/ morph(\2, ":3s") and morph(\3, ":[AQ].*:p", ":(?:G|Y|V0|[AQ].*:[is])") and not (morph(\2, ":Y") and morph(\3, ":3s"))
        -3>> =suggSing(\3)                                                          # Accord avec le pronom “se” (le verbe étant au singulier) : « \3 » doit être au singulier.
        <<- /ppas/ __else__ and morph(\2, ":3p") and morph(\3, ":[AQ].*:s", ":(?:G|Y|V0|[AQ].*:[ip])") and not (morph(\2, ":Y") and morph(\3, ":3s"))
        -3>> =suggPlur(\3)                                                          # Accord avec le pronom “se” (le verbe étant au pluriel) : « \3 » doit être au pluriel.

__ppas_nous_verbe_pensée__
    nous [>trouver|>considérer|>croire|>imaginer|>rendre|voilà]  *WORD
        <<- /ppas/ ( not morph(\2, ":1p") or (morph(\2, ":1p") and value(<1, "|nous|ne|")) )
            and morph(\3, ":[AQ].*:s", ":(?:G|Y|V0|[AQ].*:[ip])") and not (morph(\2, ":Y") and morph(\3, ":3s"))
        -3>> =suggPlur(\3)                                                          # Accord avec le pronom “nous” : « \3 » doit être au pluriel.

TEST: ces hommes le rendent {{dingues}}
TEST: Il me considère {{stupides}}
TEST: Elle nous trouve {{stupide}}
TEST: Je les crois {{capable}} du pire
TEST: la voilà {{perdu}}
................................................................................
TEST: un peu de maquillage et la voilà {{jolis}} comme un cœur.
TEST: les voilà pauvrement {{équipé}} pour un tel périple.
TEST: ils se considèrent {{béni}}
TEST: une chance pour elle alors qu’il n’a pas choisi
TEST: elle se révèle d’ailleurs être une alliée de taille
TEST: mais les considérer uniquement ainsi fait perdre la signification politique de leur geste.
TEST: nous considérer ainsi fait le lit de la haine…




!!
!!
!!!! Participes passés après “avoir”                                                              !!
!!
................................................................................
TEST: Les élèves t’ont de temps en temps {{écoutées}}.
TEST: Les élèves ne m’ont pas {{écoutés}}.
TEST: Les élèves ne m’ont pas {{écoutées}}.
TEST: Nous ne t’avons pas {{écoutés}}.
TEST: Nous ne t’avons pas {{écoutées}}.
TEST: comme ces informations m’avaient {{manquées}}
TEST: les notes que tu m’as données sont mal écrites.



__ppas_qui_avoir__
    qui  ?[ne|n’]¿  ?[lui|leur]¿  >avoir  @:Q.*:(?:f|m:p)¬:m:[si]
        <<- /ppas/ --1>> =suggVerbPpas(\-1, ":m:s")         # Le participe passé devrait être au masculin singulier.|http://fr.wikipedia.org/wiki/Accord_du_participe_pass%C3%A9_en_fran%C3%A7ais

TEST: des hommes, des femmes, des enfants qui ne leur avaient {{faits}} que du bien.
................................................................................
__purge_préverbes_négation__
    [ne|n’]  [le|la|l’|les|en|me|m’|te|t’|se|s’|nous|vous|lui|leur|y]  @:(?:[123][sp]|P|Y)¬:X
    [ne|n’]  [me|m’|te|t’|se|s’|nous|vous]  [le|la|l’|les|en|y]        @:(?:[123][sp]|P|Y)¬:X
    [ne|n’]  [le|la|l’|les]                 [lui|leur|en|y]            @:(?:[123][sp]|P|Y)¬:X
    [ne|n’]  [lui|leur]                     en                         @:(?:[123][sp]|P|Y)¬:X
        <<- ~1:-2>> *


































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

................................................................................
TEST: personne n’en {{parlent}}
TEST: je connais personne qui en {{parlent}} autant
TEST: en tant que personne qualifiée


__conj_rien__
    rien  @:V¬:(?:3s|P|Y|G)
        <<- /conj/ morph(<1, ":Cs|<start>|>,", ":(?:Y|P|Q|[123][sp]|R)")
            and not(morph(\2, ":Y") and value(<1, "|ne|"))
        --1>> =suggVerb(\-1, ":3s")                                     # Conjugaison erronée. Accord avec “\1”. Le verbe devrait être à la 3ᵉ personne du singulier.

    rien  qui  @:V¬:(?:3s|P|G)
        <<- /conj/ morph(<1, ":[CRV]|<start>|>,")
        --1>> =suggVerb(\-1, ":3s")                                     # Conjugaison erronée. Accord avec “\1”. Le verbe devrait être à la 3ᵉ personne du singulier.

................................................................................
TEST: Rien n’{{arrives}} sans raison
TEST: Rien, en ce qui le concernait, ne {{pouvais}} le ramener à la raison.
TEST: ils ne savent rien qui {{puissent}} les aider
TEST: rien qui {{soient}} aussi difficile
TEST: il ne faut rien faire ou rien dire contre les manifestants
TEST: qui n’ont rien appris et rien oublié
TEST: comme si son pays n’avait rien appris du fascisme ni rien reçu de l’Europe



__conj_nul_nulle__
    [nul|nulle]  ?@:[NA]¿       @:V¬:(?:3s|P|G|[NAQ].*:[si])
    [nul|nulle]  ?@:[NA]¿  qui  @:V¬:(?:3s|P|G|[NA].*:[si])
        <<- /conj/ morph(<1, ":Cs|<start>|>,", ":(?:Y|P|Q|[123][sp]|R)")
        --1>> =suggVerb(\-1, ":3s")                                     # Conjugaison erronée. Accord avec “\1”. Le verbe devrait être à la 3ᵉ personne du singulier.







|







 







|







 







|







 







|


|


|


|


|


|


|


|


|


|







 







|







 







|







 







|






>





|


<
<
<







 







|








|







 







|











>
>
>
|
<
>

|











|


|


>
>
>
>
|


>
>
>






<
<
<






|







 







|







 







<







 







>




>







 







|







 







|










|







 







|




|







 







|







 







>







 







>







 







|






|







 







|







 







|







 







|







 







>
>
>
>
>
>
>
>
>







 







|


|







 







|







 







|







 







|







 







|







 







|







 







|







 







|







 







|







 







|








|
|
|
|
|
|
|
|
|
|







 







|







 







>
>
>
>
>
>







 







>
>
>







 







|


|


|
|
>







 







|







 







|







 







|







 







|







 







|





|
|




|
>
>
|







 







|
|







 







|


|







 







|
|







 







|







 







|







 







>
>
>
>
>
>
>
>
>
>







 







|







 







|







 







|







 







>
>
>
>
>
>
>
>
>







 







|


|


|


|







 







|




|


|







 







|









|







 







|
|







 







|







 







|







 







|







 







|







 







|
|










|







 







>
>







 







|







 







|






<
<










>
>

>
>







 







|







 







|







 







>












>







 







>







 







|







 







|









<










<







|



|
|
|





|







 







|





|
|
|






|





|

|
|
|
|







 







>
|


>







 







|



|



>
>
>

>


>


|

>







<
<
<
<
|



|
|







 







|

|
>






|
|
|





|






|
|
|





|
|
>







 







|







 







|
|







|



|







 







|
|




|










|
|




|







 







|
>
>
>







 







|
>






|







 







>
>
>







 







>



>







 







>












>







 







>
>







 







|







 







|







|







 







|







 







|




|






|




|
|
|
|




|







 







|







 







|







 







|







 







|







 







|







 







|
|
|
|


|









|







 







>







 







|







 







|









|

|







 







|







 







|







 







|
|
|
|
|
|
|








|







 







|








|







 







|


|





|







 







|







 







|



|



|







 







|







 







|






|







 







|







 







|












|







 







|


|







 







|







 







|







 







|


|







 







|













|




|
|







 







|







 







|







 







|







 








>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>

|

|




|







 







|







 







|


|







 







>
>
>
>
>
>
>
>
>
>
>
>
>
>







 







|







 







|







 







|


|







 







|
|







 







|







 







|



|







 







|




|




|




|




|







|







 







>







 







>







 







>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>







 







|







 







>







1893
1894
1895
1896
1897
1898
1899
1900
1901
1902
1903
1904
1905
1906
1907
....
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
....
3787
3788
3789
3790
3791
3792
3793
3794
3795
3796
3797
3798
3799
3800
3801
....
3994
3995
3996
3997
3998
3999
4000
4001
4002
4003
4004
4005
4006
4007
4008
4009
4010
4011
4012
4013
4014
4015
4016
4017
4018
4019
4020
4021
4022
4023
4024
4025
4026
4027
4028
4029
4030
4031
4032
4033
4034
4035
....
4155
4156
4157
4158
4159
4160
4161
4162
4163
4164
4165
4166
4167
4168
4169
....
4826
4827
4828
4829
4830
4831
4832
4833
4834
4835
4836
4837
4838
4839
4840
....
4933
4934
4935
4936
4937
4938
4939
4940
4941
4942
4943
4944
4945
4946
4947
4948
4949
4950
4951
4952
4953
4954
4955



4956
4957
4958
4959
4960
4961
4962
....
4992
4993
4994
4995
4996
4997
4998
4999
5000
5001
5002
5003
5004
5005
5006
5007
5008
5009
5010
5011
5012
5013
5014
5015
....
5025
5026
5027
5028
5029
5030
5031
5032
5033
5034
5035
5036
5037
5038
5039
5040
5041
5042
5043
5044
5045
5046
5047

5048
5049
5050
5051
5052
5053
5054
5055
5056
5057
5058
5059
5060
5061
5062
5063
5064
5065
5066
5067
5068
5069
5070
5071
5072
5073
5074
5075
5076
5077
5078
5079
5080
5081
5082
5083



5084
5085
5086
5087
5088
5089
5090
5091
5092
5093
5094
5095
5096
5097
....
5103
5104
5105
5106
5107
5108
5109
5110
5111
5112
5113
5114
5115
5116
5117
....
5138
5139
5140
5141
5142
5143
5144

5145
5146
5147
5148
5149
5150
5151
....
5160
5161
5162
5163
5164
5165
5166
5167
5168
5169
5170
5171
5172
5173
5174
5175
5176
5177
5178
5179
....
6506
6507
6508
6509
6510
6511
6512
6513
6514
6515
6516
6517
6518
6519
6520
....
6586
6587
6588
6589
6590
6591
6592
6593
6594
6595
6596
6597
6598
6599
6600
6601
6602
6603
6604
6605
6606
6607
6608
6609
6610
6611
....
6808
6809
6810
6811
6812
6813
6814
6815
6816
6817
6818
6819
6820
6821
6822
6823
6824
6825
6826
6827
....
6891
6892
6893
6894
6895
6896
6897
6898
6899
6900
6901
6902
6903
6904
6905
....
6906
6907
6908
6909
6910
6911
6912
6913
6914
6915
6916
6917
6918
6919
6920
....
6936
6937
6938
6939
6940
6941
6942
6943
6944
6945
6946
6947
6948
6949
6950
....
6962
6963
6964
6965
6966
6967
6968
6969
6970
6971
6972
6973
6974
6975
6976
6977
6978
6979
6980
6981
6982
6983
....
7128
7129
7130
7131
7132
7133
7134
7135
7136
7137
7138
7139
7140
7141
7142
....
7252
7253
7254
7255
7256
7257
7258
7259
7260
7261
7262
7263
7264
7265
7266
....
7308
7309
7310
7311
7312
7313
7314
7315
7316
7317
7318
7319
7320
7321
7322
....
7332
7333
7334
7335
7336
7337
7338
7339
7340
7341
7342
7343
7344
7345
7346
7347
7348
7349
7350
7351
7352
7353
7354
....
7482
7483
7484
7485
7486
7487
7488
7489
7490
7491
7492
7493
7494
7495
7496
7497
7498
7499
....
7508
7509
7510
7511
7512
7513
7514
7515
7516
7517
7518
7519
7520
7521
7522
....
7524
7525
7526
7527
7528
7529
7530
7531
7532
7533
7534
7535
7536
7537
7538
....
7579
7580
7581
7582
7583
7584
7585
7586
7587
7588
7589
7590
7591
7592
7593
....
7604
7605
7606
7607
7608
7609
7610
7611
7612
7613
7614
7615
7616
7617
7618
....
7656
7657
7658
7659
7660
7661
7662
7663
7664
7665
7666
7667
7668
7669
7670
....
7689
7690
7691
7692
7693
7694
7695
7696
7697
7698
7699
7700
7701
7702
7703
....
8103
8104
8105
8106
8107
8108
8109
8110
8111
8112
8113
8114
8115
8116
8117
....
8170
8171
8172
8173
8174
8175
8176
8177
8178
8179
8180
8181
8182
8183
8184
....
8221
8222
8223
8224
8225
8226
8227
8228
8229
8230
8231
8232
8233
8234
8235
8236
8237
8238
8239
8240
8241
8242
8243
8244
8245
8246
8247
8248
8249
8250
8251
8252
8253
....
8280
8281
8282
8283
8284
8285
8286
8287
8288
8289
8290
8291
8292
8293
8294
....
8310
8311
8312
8313
8314
8315
8316
8317
8318
8319
8320
8321
8322
8323
8324
8325
8326
8327
8328
8329
....
8330
8331
8332
8333
8334
8335
8336
8337
8338
8339
8340
8341
8342
8343
8344
8345
8346
....
8497
8498
8499
8500
8501
8502
8503
8504
8505
8506
8507
8508
8509
8510
8511
8512
8513
8514
8515
8516
8517
8518
8519
....
8851
8852
8853
8854
8855
8856
8857
8858
8859
8860
8861
8862
8863
8864
8865
....
8969
8970
8971
8972
8973
8974
8975
8976
8977
8978
8979
8980
8981
8982
8983
....
9054
9055
9056
9057
9058
9059
9060
9061
9062
9063
9064
9065
9066
9067
9068
....
9092
9093
9094
9095
9096
9097
9098
9099
9100
9101
9102
9103
9104
9105
9106
....
9181
9182
9183
9184
9185
9186
9187
9188
9189
9190
9191
9192
9193
9194
9195
9196
9197
9198
9199
9200
9201
9202
9203
9204
9205
9206
9207
9208
9209
9210
....
9271
9272
9273
9274
9275
9276
9277
9278
9279
9280
9281
9282
9283
9284
9285
9286
....
9442
9443
9444
9445
9446
9447
9448
9449
9450
9451
9452
9453
9454
9455
9456
9457
9458
9459
....
9534
9535
9536
9537
9538
9539
9540
9541
9542
9543
9544
9545
9546
9547
9548
9549
....
9569
9570
9571
9572
9573
9574
9575
9576
9577
9578
9579
9580
9581
9582
9583
....
9633
9634
9635
9636
9637
9638
9639
9640
9641
9642
9643
9644
9645
9646
9647
....
9653
9654
9655
9656
9657
9658
9659
9660
9661
9662
9663
9664
9665
9666
9667
9668
9669
9670
9671
9672
9673
9674
9675
9676
....
9909
9910
9911
9912
9913
9914
9915
9916
9917
9918
9919
9920
9921
9922
9923
....
9966
9967
9968
9969
9970
9971
9972
9973
9974
9975
9976
9977
9978
9979
9980
....
9990
9991
9992
9993
9994
9995
9996
9997
9998
9999
10000
10001
10002
10003
10004
.....
10302
10303
10304
10305
10306
10307
10308
10309
10310
10311
10312
10313
10314
10315
10316
10317
10318
10319
10320
10321
10322
10323
10324
.....
10329
10330
10331
10332
10333
10334
10335
10336
10337
10338
10339
10340
10341
10342
10343
10344
10345
10346
10347
10348
10349
10350
10351
10352
.....
10460
10461
10462
10463
10464
10465
10466
10467
10468
10469
10470
10471
10472
10473
10474
10475
10476
10477
10478
10479
10480
10481
10482
.....
10493
10494
10495
10496
10497
10498
10499
10500
10501
10502
10503
10504
10505
10506
10507
10508
10509
10510
10511
10512
10513
10514
10515
10516
10517
.....
10561
10562
10563
10564
10565
10566
10567
10568
10569
10570
10571
10572
10573
10574
10575
10576
.....
11202
11203
11204
11205
11206
11207
11208
11209
11210
11211
11212
11213
11214
11215
11216
.....
11294
11295
11296
11297
11298
11299
11300
11301
11302
11303
11304
11305
11306
11307
11308
.....
11378
11379
11380
11381
11382
11383
11384
11385
11386
11387
11388
11389
11390
11391
11392
.....
11441
11442
11443
11444
11445
11446
11447
11448
11449
11450
11451
11452
11453
11454
11455
.....
11824
11825
11826
11827
11828
11829
11830
11831
11832
11833
11834
11835
11836
11837
11838
11839
11840
11841
11842
11843
11844
11845
11846
11847
11848
11849
11850
.....
11853
11854
11855
11856
11857
11858
11859
11860
11861
11862
11863
11864
11865
11866
11867
11868
.....
11919
11920
11921
11922
11923
11924
11925
11926
11927
11928
11929
11930
11931
11932
11933
.....
12019
12020
12021
12022
12023
12024
12025
12026
12027
12028
12029
12030
12031
12032


12033
12034
12035
12036
12037
12038
12039
12040
12041
12042
12043
12044
12045
12046
12047
12048
12049
12050
12051
12052
12053
12054
.....
12221
12222
12223
12224
12225
12226
12227
12228
12229
12230
12231
12232
12233
12234
12235
.....
12253
12254
12255
12256
12257
12258
12259
12260
12261
12262
12263
12264
12265
12266
12267
.....
12280
12281
12282
12283
12284
12285
12286
12287
12288
12289
12290
12291
12292
12293
12294
12295
12296
12297
12298
12299
12300
12301
12302
12303
12304
12305
12306
12307
.....
12310
12311
12312
12313
12314
12315
12316
12317
12318
12319
12320
12321
12322
12323
12324
.....
12466
12467
12468
12469
12470
12471
12472
12473
12474
12475
12476
12477
12478
12479
12480
.....
12855
12856
12857
12858
12859
12860
12861
12862
12863
12864
12865
12866
12867
12868
12869
12870
12871

12872
12873
12874
12875
12876
12877
12878
12879
12880
12881

12882
12883
12884
12885
12886
12887
12888
12889
12890
12891
12892
12893
12894
12895
12896
12897
12898
12899
12900
12901
12902
12903
12904
12905
12906
12907
12908
.....
12915
12916
12917
12918
12919
12920
12921
12922
12923
12924
12925
12926
12927
12928
12929
12930
12931
12932
12933
12934
12935
12936
12937
12938
12939
12940
12941
12942
12943
12944
12945
12946
12947
12948
12949
12950
12951
12952
12953
12954
12955
.....
12966
12967
12968
12969
12970
12971
12972
12973
12974
12975
12976
12977
12978
12979
12980
12981
12982
12983
12984
.....
13008
13009
13010
13011
13012
13013
13014
13015
13016
13017
13018
13019
13020
13021
13022
13023
13024
13025
13026
13027
13028
13029
13030
13031
13032
13033
13034
13035
13036
13037
13038
13039
13040
13041
13042




13043
13044
13045
13046
13047
13048
13049
13050
13051
13052
13053
13054
13055
.....
13069
13070
13071
13072
13073
13074
13075
13076
13077
13078
13079
13080
13081
13082
13083
13084
13085
13086
13087
13088
13089
13090
13091
13092
13093
13094
13095
13096
13097
13098
13099
13100
13101
13102
13103
13104
13105
13106
13107
13108
13109
13110
13111
13112
13113
13114
13115
13116
13117
13118
.....
13121
13122
13123
13124
13125
13126
13127
13128
13129
13130
13131
13132
13133
13134
13135
.....
13160
13161
13162
13163
13164
13165
13166
13167
13168
13169
13170
13171
13172
13173
13174
13175
13176
13177
13178
13179
13180
13181
13182
13183
13184
13185
13186
13187
.....
13188
13189
13190
13191
13192
13193
13194
13195
13196
13197
13198
13199
13200
13201
13202
13203
13204
13205
13206
13207
13208
13209
13210
13211
13212
13213
13214
13215
13216
13217
13218
13219
13220
13221
13222
13223
13224
13225
.....
13229
13230
13231
13232
13233
13234
13235
13236
13237
13238
13239
13240
13241
13242
13243
13244
13245
13246
.....
13297
13298
13299
13300
13301
13302
13303
13304
13305
13306
13307
13308
13309
13310
13311
13312
13313
13314
13315
13316
13317
13318
13319
.....
13787
13788
13789
13790
13791
13792
13793
13794
13795
13796
13797
13798
13799
13800
13801
13802
13803
.....
14039
14040
14041
14042
14043
14044
14045
14046
14047
14048
14049
14050
14051
14052
14053
14054
14055
14056
14057
.....
14104
14105
14106
14107
14108
14109
14110
14111
14112
14113
14114
14115
14116
14117
14118
14119
14120
14121
14122
14123
14124
14125
14126
14127
14128
14129
14130
14131
.....
14144
14145
14146
14147
14148
14149
14150
14151
14152
14153
14154
14155
14156
14157
14158
14159
.....
14169
14170
14171
14172
14173
14174
14175
14176
14177
14178
14179
14180
14181
14182
14183
.....
14474
14475
14476
14477
14478
14479
14480
14481
14482
14483
14484
14485
14486
14487
14488
14489
14490
14491
14492
14493
14494
14495
14496
.....
15065
15066
15067
15068
15069
15070
15071
15072
15073
15074
15075
15076
15077
15078
15079
.....
16019
16020
16021
16022
16023
16024
16025
16026
16027
16028
16029
16030
16031
16032
16033
16034
16035
16036
16037
16038
16039
16040
16041
16042
16043
16044
16045
16046
16047
16048
16049
16050
16051
16052
16053
16054
16055
16056
16057
16058
.....
16231
16232
16233
16234
16235
16236
16237
16238
16239
16240
16241
16242
16243
16244
16245
.....
16305
16306
16307
16308
16309
16310
16311
16312
16313
16314
16315
16316
16317
16318
16319
.....
16368
16369
16370
16371
16372
16373
16374
16375
16376
16377
16378
16379
16380
16381
16382
.....
16486
16487
16488
16489
16490
16491
16492
16493
16494
16495
16496
16497
16498
16499
16500
.....
16603
16604
16605
16606
16607
16608
16609
16610
16611
16612
16613
16614
16615
16616
16617
.....
16872
16873
16874
16875
16876
16877
16878
16879
16880
16881
16882
16883
16884
16885
16886
16887
16888
16889
16890
16891
16892
16893
16894
16895
16896
16897
16898
16899
16900
16901
16902
.....
16912
16913
16914
16915
16916
16917
16918
16919
16920
16921
16922
16923
16924
16925
16926
.....
16929
16930
16931
16932
16933
16934
16935
16936
16937
16938
16939
16940
16941
16942
16943
.....
17074
17075
17076
17077
17078
17079
17080
17081
17082
17083
17084
17085
17086
17087
17088
17089
17090
17091
17092
17093
17094
17095
17096
17097
17098
17099
17100
.....
17200
17201
17202
17203
17204
17205
17206
17207
17208
17209
17210
17211
17212
17213
17214
.....
17222
17223
17224
17225
17226
17227
17228
17229
17230
17231
17232
17233
17234
17235
17236
.....
17253
17254
17255
17256
17257
17258
17259
17260
17261
17262
17263
17264
17265
17266
17267
17268
17269
17270
17271
17272
17273
17274
17275
17276
17277
17278
17279
17280
17281
17282
.....
17318
17319
17320
17321
17322
17323
17324
17325
17326
17327
17328
17329
17330
17331
17332
17333
17334
17335
17336
17337
17338
17339
17340
17341
.....
17378
17379
17380
17381
17382
17383
17384
17385
17386
17387
17388
17389
17390
17391
17392
17393
17394
17395
17396
17397
17398
17399
17400
17401
.....
17434
17435
17436
17437
17438
17439
17440
17441
17442
17443
17444
17445
17446
17447
17448
.....
17478
17479
17480
17481
17482
17483
17484
17485
17486
17487
17488
17489
17490
17491
17492
17493
17494
17495
17496
17497
17498
17499
17500
.....
17732
17733
17734
17735
17736
17737
17738
17739
17740
17741
17742
17743
17744
17745
17746
.....
17773
17774
17775
17776
17777
17778
17779
17780
17781
17782
17783
17784
17785
17786
17787
17788
17789
17790
17791
17792
17793
17794
.....
17856
17857
17858
17859
17860
17861
17862
17863
17864
17865
17866
17867
17868
17869
17870
.....
17938
17939
17940
17941
17942
17943
17944
17945
17946
17947
17948
17949
17950
17951
17952
17953
17954
17955
17956
17957
17958
17959
17960
17961
17962
17963
17964
17965
.....
17976
17977
17978
17979
17980
17981
17982
17983
17984
17985
17986
17987
17988
17989
17990
17991
17992
17993
.....
17996
17997
17998
17999
18000
18001
18002
18003
18004
18005
18006
18007
18008
18009
18010
.....
18080
18081
18082
18083
18084
18085
18086
18087
18088
18089
18090
18091
18092
18093
18094
.....
18118
18119
18120
18121
18122
18123
18124
18125
18126
18127
18128
18129
18130
18131
18132
18133
18134
18135
.....
18148
18149
18150
18151
18152
18153
18154
18155
18156
18157
18158
18159
18160
18161
18162
18163
18164
18165
18166
18167
18168
18169
18170
18171
18172
18173
18174
18175
18176
18177
18178
18179
18180
18181
18182
.....
18189
18190
18191
18192
18193
18194
18195
18196
18197
18198
18199
18200
18201
18202
18203
.....
18224
18225
18226
18227
18228
18229
18230
18231
18232
18233
18234
18235
18236
18237
18238
.....
18286
18287
18288
18289
18290
18291
18292
18293
18294
18295
18296
18297
18298
18299
18300
.....
18530
18531
18532
18533
18534
18535
18536
18537
18538
18539
18540
18541
18542
18543
18544
18545
18546
18547
18548
18549
18550
18551
18552
18553
18554
18555
18556
18557
18558
18559
18560
18561
18562
18563
18564
18565
18566
18567
18568
18569
18570
.....
18612
18613
18614
18615
18616
18617
18618
18619
18620
18621
18622
18623
18624
18625
18626
.....
18755
18756
18757
18758
18759
18760
18761
18762
18763
18764
18765
18766
18767
18768
18769
18770
18771
18772
.....
18788
18789
18790
18791
18792
18793
18794
18795
18796
18797
18798
18799
18800
18801
18802
18803
18804
18805
18806
18807
18808
18809
18810
18811
18812
18813
18814
18815
.....
18859
18860
18861
18862
18863
18864
18865
18866
18867
18868
18869
18870
18871
18872
18873
.....
18895
18896
18897
18898
18899
18900
18901
18902
18903
18904
18905
18906
18907
18908
18909
.....
18913
18914
18915
18916
18917
18918
18919
18920
18921
18922
18923
18924
18925
18926
18927
18928
18929
18930
.....
19462
19463
19464
19465
19466
19467
19468
19469
19470
19471
19472
19473
19474
19475
19476
19477
.....
19593
19594
19595
19596
19597
19598
19599
19600
19601
19602
19603
19604
19605
19606
19607
.....
20035
20036
20037
20038
20039
20040
20041
20042
20043
20044
20045
20046
20047
20048
20049
20050
20051
20052
20053
.....
21329
21330
21331
21332
21333
21334
21335
21336
21337
21338
21339
21340
21341
21342
21343
21344
21345
21346
21347
21348
21349
21350
21351
21352
21353
21354
21355
21356
21357
21358
21359
21360
21361
21362
21363
21364
21365
21366
21367
21368
21369
21370
21371
.....
21380
21381
21382
21383
21384
21385
21386
21387
21388
21389
21390
21391
21392
21393
21394
.....
21522
21523
21524
21525
21526
21527
21528
21529
21530
21531
21532
21533
21534
21535
21536
.....
22866
22867
22868
22869
22870
22871
22872
22873
22874
22875
22876
22877
22878
22879
22880
22881
22882
22883
22884
22885
22886
22887
22888
22889
22890
22891
22892
22893
22894
22895
22896
22897
22898
22899
22900
22901
22902
22903
22904
22905
22906
22907
22908
22909
22910
22911
.....
23517
23518
23519
23520
23521
23522
23523
23524
23525
23526
23527
23528
23529
23530
23531
.....
23533
23534
23535
23536
23537
23538
23539
23540
23541
23542
23543
23544
23545
23546
23547

    [que|qu’|combien|pourquoi|qui|quand|où]  ?[en|y]¿  *WORD
        <<- =>> exclude(\-1, ":E")

    [<start>|,]  quelqu’ un  *WORD
        <<- =>> exclude(\4, ":N")

    >falloir [pouvoir|savoir|vouloir|manger|conseiller]
        <<- =>> exclude(\2, ":N")


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

................................................................................

    de  [la|l’]  $:¬:Y
        <<- not value(<1, "|semblant|") =>> exclude(\3, ":V")

    [/VCint|/VCimp] [le|la|l’|leur|les]
        <<- =>> select(\2, ":D")

    de [>tel|ce|cet|cette|ces|mon|ma|ta|sa|mes|tes|ses|notre|votre|plein|pleine]  *WORD
        <<- =>> exclude(\3, ":V")

    de [tous|toutes] les *WORD
        <<- =>> select(\4, ":[NA]")

    en tant que  *WORD
        <<- =>> exclude(\4, ":[123][sp]")
................................................................................
        <<- /tu/ ->> semi-\2                                    # S’il s’agit d’un seul mot, il manque un trait d’union.

TEST: en {{semi liberté}}


__tu_préfixe_gentilés__
    [afghano|africano|albano|algéro|allemano|américano|andoro|angolo|anglo|anguillo|antartico|arabo|arctico|argentino|armeno|asiatico|atlantico|australo|austro|azéro|bahreïno|banglado|barbado|basco|bélizo|béllarusso|bénino|belgo|bhoutano|birmano|bolivio|bosno|bosniaco|botswano|brésilo|britanno|brunéo|bulgaro|burkanino|burundo|camerouno|canado|chilio|cingalo|colombo|comoro|congolo|coréo|cyprio|costarico|croato|cubano|dano|djibouto|dominico|écosso|égypto|émirato|équato|érythréo|esto|éthiopo|eurasiatico|européano|fidjio|finno|franco|gabono|gallo|gambo|géorgio|ghanéo|britanno|gréco|grenado|guatémalto|guinéo|guyano|hélleno|helvético|hispano|honduro|hungaro|indo|indonéso|italo|irako|irlando|islando|israélo|ivoiro|jamaïco|japono|jordano|khméro|kazakho|kényo|kirghizo|kiribato|koweïto|lao|lésotho|letto|libéro|libyo|liechtenteino|lituano|luxembourgeo|macédono|malgacho|malaiso|malawito|malo|malto|marianno|maroco|marshallo|mauricio|mauritano|mexico|micronésio|moldavo|monégasco|mongolo|monténégrino|mozambico|namibio|nauro|népalo|nicaraguo|nigéro|nigériano|norvégio|néo-zélando|occidentalo|océanio|omano|orientalo|ougando|ouzbéko|pacifico|pakistano|palestino|panaméo|paraguayo|néerlando|hollando|péruvo|philippino|polono|polynésio|luso|qataro|québéco|centrafricano|domenicano|roumano|russo|rwando|sarhao|sahélo|salomono|salvadoro|samoano|santoméo|saskatchéwano|scandinavo|sénégalo|saoudo|sénégambo|serbo|seychello|sierraléono|singapouro|sino|slovaco|somalo|soudano|srilanko|sudafricano|suédo|suisso|surinamo|swazilando|syro|sovieto|tadjiko|tanzano|tchado|tchécoslovavo|tchéco|thaïlando|thraco|tibéto|timoro|togolo|tokélo|tongano|trinidado|tuniso|turkméno|turco|touvalo|tuvalo|ukraino|uruguayo|vaticano|vénézuélo|vietnamo|yéméno|yougoslavo|zaïro|zambio|zimbabwébo]
        || [>afghan|>africain|>albanais|>algérien|>allemand|>américain|>andorrais|>anglais|>arabe|>argentin|>aménien|>australien|>autrichien|>belge|>béninois|>birman|>bolivien|>bosniaque|>brésilien|>britannique|>bulgare|>burkinabé|>burundais|>byzantin|>cambodgien|>camerounais|>canadien|>capverdien|>centrafricain|>chilien|>chinois|>chypriote|>colombien|>comorien|>coréen|>croate|>cubain|>danois|>égyptien|>équatorien|>érythréen|>espagnol|>estonien|>éthiopien|>finlandais|>flamand|>français|>gabonais|>gambien|>géorgien|>germanique|>ghanéen|>grec|>guatémaltèque|>guinéen|>guyanais|>haïtien|>hellénique|>hondurien|>hongrois|>indien|>indonésien|>iranien|>irakien|>irlandais|>islandais|>israélien|>italien|>ivoirien|>jamaïcain|>jamaïquain|>japonais|>jordanien|>kenyan|>koweïtien|>kurde|>laotien|>letton|>libanais|>libérien|>libyen|>lituanien|>luxembourgeois|>macédonien|>malais|>malgache|>malien|>maltais|>marocain|>mauricien|>mauritanien|>mexicain|>moldave|>monégasque|>mongol|>mozambicain|>namibien|>néerlandais|>néo-zélandais|>népalais|>nicaraguayen|>nigerian|>nigérien|>nippon|>norvégien|>omanais|>ougandais|>pakistanais|>panaméen|>paraguayen|>péruvien|>philippin|>polonais|>portugais|>provençal|>qatari|>québécois|>roumain|>russe|>rwandais|>salvadorien|>sénégalais|>seychellois|>singapourien|>slovaque|>slovène|>somalien|>soudanais|>soviétique|>sri-lankais|>suédois|>suisse|>surinamien|>syrien|>tanzanien|>tchadien|>tchèque|>thaïlandais|>togolais|>tunisien|>turc|>ukrainien|>uruguayen|>vénézuélien|>vietnamien|>yéménite|>yougoslave|>zaïrois|>zambien|>zimbabwéen]
        <<- /tu/ ->> \1-\2                                                                          # Il manque un trait d’union.

TEST: des {{franco américains}}
TEST: {{franco américaine}}                             ->> franco-américaine
TEST: l’{{israélo belge}}


................................................................................

    >aller >retour
        <<- /tu/ ->> \1-\2                                      # Il manque un trait d’union.

    >arc en ciel
        <<- /tu/ ->> \1-\2-\3                                   # Il manque les traits d’union.

    >arrière >grand >tante
        <<- /tu/ ->> arrière-grand-tante|arrière-grands-tantes      # Mettez des traits d’union.

    >arrière >grand >mère
        <<- /tu/ ->> arrière-grand-mère|arrière-grands-mères        # Mettez des traits d’union.

    >arrière >grand >oncle
        <<- /tu/ ->> arrière-grand-oncle|arrière-grands-oncles      # Mettez des traits d’union.

    >arrière >grand >parent
        <<- /tu/ ->> arrière-grand-parent|arrière-grands-parents    # Mettez des traits d’union.

    >arrière >grand >père
        <<- /tu/ ->> arrière-grand-père|arrière-grands-pères        # Mettez des traits d’union.

    >arrière >petit >enfant
        <<- /tu/ ->> arrière-petit-enfant|arrière-petits-enfants    # Mettez des traits d’union.

    >arrière >petit >fille
        <<- /tu/ ->> arrière-petite-fille|arrière-petites-filles    # Mettez des traits d’union.

    >arrière >petit >fils
        <<- /tu/ ->> arrière-petit-fils|arrière-petits-fils         # Mettez des traits d’union.

    >arrière >petit >neveu
        <<- /tu/ ->> arrière-petit-neveu|arrière-petits-neveux      # Mettez des traits d’union.

    >arrière >petit >nièce
        <<- /tu/ ->> arrière-petite-nièce|arrière-petites-nièces    # Mettez des traits d’union.

    [basket|volley] ball
        <<- /tu/ ->> \1-ball                                    # Il manque un trait d’union.

    bas [>côté|coté|cotés]
        <<- /tu/ morph(<1 , ":D") ->> bas-côté|bas-côtés        # Il manque un trait d’union.
................................................................................

    trompe l’ [œil|oeil]
        <<- /tu/ morph(<1, ":D") ->> trompe-l’œil               # Il manque un trait d’union.

    [le|de|ce|les|des|ces|un|mon|leur|leurs|nos|vos|notre|votre|quel|quels] [va|vas] et [vient|viens]
        <<- /tu/ -2:0>> va-et-vient                             # Il manque les traits d’union.

    vice [>amiral|>président|>roi|>reine|>chancelier]
        <<- /tu/ ->> vice-\1                                    # Il manque un trait d’union.

    week [end|ends]
        <<- /tu/ ->> week-\2                                    # Il manque un trait d’union.

TEST: l’{{à propos}} n’est pas si facile à acquérir.
TEST: on ne fait que de l’{{à peu près}}
................................................................................

TEST: incessamment {{sous peut}}
TEST: ils arrivent {{incessamment sous peu}}.


# pire
__bs_pire__
    [moins|aussi|plus] >pire
        <<- /bs/ -2>> mauvais|mauvaise|mauvaises                    # Tournure erronée : “\1 \2”. Utilisez “mauvais”.|http://www.academie-francaise.fr/plus-pire-moins-pire

    de mal en >pire
        <<- /bs/ ->> de mal en pis                                  # Tournure erronée. Écrivez “de mal en pis”.

    au pire aller
        <<- /bs/ ->> au pis aller                                   # Tournure erronée. Écrivez “au pis aller”.
................................................................................

    actuellement en train [de|d’]
        <<- /pleo/ not value(>1, "|nuit|") -1:3>> en train                                  # Pléonasme.

    >ajouter en plus
        <<- /pleo/ ->> \1                                                                   # Pléonasme.

    >apanage >exclusif
        <<- /pleo/ ->> \1                                                                   # Pléonasme.

    [>applaudir|>applaudissement] des deux mains
        <<- /pleo/ ->> \1                                                                   # Pléonasme.

    au jour d’ aujourd’hui
    à l’ heure d’ aujourd’hui
        <<- /pleo/ ->> aujourd’hui                                                          # Pléonasme.

    >avancer en avant
        <<- /pleo/ ->> \1                                                                   # Pléonasme.

    >avérer >vrai
        <<- /pleo/ -2>> =\2.replace("vrai", "exact")                                        # Pléonasme.




    avenir devant [moi|toi|soi|lui|elle|nous|vous|eux|elles]
        <<- /pleo/ morph(<1, ":A|>un") ->> avenir                                           # Pléonasme.

    >bourrasque de vent
        <<- /pleo/ ->> \1                                                                   # Pléonasme.

    car en effet
................................................................................
    >enchevêtrer les uns dans les autres
        <<- /pleo/ ->> \1                                                                   # Pléonasme.

    >entraider mutuellement
    >entraider les uns les autres
        <<- /pleo/  ->> \1                                                                  # Pléonasme.

    >entraide >mutuel
        <<- /pleo/ ->> \1                                                                   # Pléonasme.

    >erreur >involontaire
        <<- /pleo/ ->> \1                                                                   # Pléonasme.

    >étape >intermédiaire
        <<- /pleo/ ->> \1                                                                   # Pléonasme.

    >hasard >imprévu
        <<- /pleo/ ->> \1                                                                   # Pléonasme.

    >hémorragie de sang
        <<- /pleo/ ->> \1                                                                   # Pléonasme.

    >joindre ensemble
        <<- /pleo/ ->> \1|mettre ensemble                                                   # Pléonasme.
................................................................................

    >méandre sinueux
        <<- /pleo/ ->> \1                                                                   # Pléonasme.

    [>média|media] d’ >information
        <<- /pleo/ ->> \1                                                                   # Pléonasme.

    >monopole >exclusif
        <<- /pleo/ ->> \1                                                                   # Pléonasme.

    >monter en haut
        <<- /pleo/ not value(>1, "|de|des|du|d’|") ->> \1                                   # Pléonasme.

    >opportunité à saisir
        <<- /pleo/ ->> \1                                                                   # Pléonasme.

    >orage >électrique
        <<- /pleo/ ->> \1                                                                   # Pléonasme.

    >oubli >involontaire
        <<- /pleo/ ->> \1                                                                   # Pléonasme.

    >pair de >jumeau

        <<- /pleo/ ->> =suggPlur(\3, "", True)                                              # Pléonasme.

    >panacée >universel
        <<- /pleo/ ->> \1|remède universel                                                  # Pléonasme.

    >perspective d’ avenir
        <<- /pleo/ ->> \1                                                                   # Pléonasme.

    [premier|premiers] >balbutiement
        <<- /pleo/ ->> \2                                                                   # Pléonasme.

    [première|premières] >priorité
        <<- /pleo/ ->> \2                                                                   # Pléonasme.

    >projet >futur
        <<- /pleo/ ->> \1                                                                   # Pléonasme.

    >futur >projet
        <<- /pleo/ ->> \2                                                                   # Pléonasme.

    >prévenir d’ avance
    >prévenir à l’ avance
        <<- /pleo/ ->> \1                                                                   # Pléonasme.

    >prototype >expérimental
        <<- /pleo/ ->> \1                                                                   # Pléonasme.

    puis [après|ensuite|alors]
        <<- /pleo/ ->> puis|après|ensuite|alors                                             # Pléonasme.

    >rédiger par écrit
        <<- /pleo/ ->> \1                                                                   # Pléonasme.

    [>rénover|>rénovation] à neuf
        <<- /pleo/ ->> \1                                                                   # Pléonasme.




    >réunir ensemble
        <<- /pleo/  ->> \1                                                                  # Pléonasme.

    [>reculer|>recul|>revenir] en arrière
        <<- /pleo/ ->> \1                                                                   # Pléonasme.

    >risque >potentiel
    >risque de >menace
        <<- /pleo/ ->> \1                                                                   # Pléonasme.

    >secousse [>séismique|>sismique]
        <<- /pleo/ ->> secousse tellurique|secousses telluriques|tremblement de terre       # Pléonasme.

    >solidaire les uns des autres
................................................................................

    >talonner de près
        <<- /pleo/ ->> \1                                                                   # Pléonasme.

    taux d’ >alcoolémie
        <<- /pleo/ ->> taux d’alcool|alcoolémie                                             # Pléonasme. L’alcoolémie est le taux d’alcool dans le sang.

    >tunnel >souterrain
        <<- /pleo/ ->> \1                                                                   # Pléonasme.

    vieilles hardes
        <<- /pleo/ ->> hardes                                                               # Pléonasme.

    [et|ou] voire
        <<- /pleo/ not morph(>1, ":D") ->> voire|et|\1 voir                                 # Pléonasme ou confusion.
................................................................................
TEST: s’{{entraider mutuellement}}                  ->> entraider
TEST: s’{{entraident les uns les autres}}           ->> entraident
TEST: {{comme par exemple}}                         ->> comme|par exemple
TEST: {{médias d’informations}}                     ->> médias
TEST: {{lever debout}}                              ->> lever
TEST: {{cirrhose du foie}}                          ->> cirrhose
TEST: s’avérer {{vrai}}                             ->> exact

TEST: {{bourrasques de vent}}                       ->> bourrasques
TEST: {{contraint malgré lui}}                      ->> contraint
TEST: {{contraindre malgré eux}}                    ->> contraindre
TEST: {{applaudir des deux mains}}                  ->> applaudir
TEST: Car {{à partir de dorénavant}}, ce sera…      ->> dorénavant|à partir de maintenant
TEST: {{erreurs involontaires}}                     ->> erreurs
TEST: {{hasards imprévus}}                          ->> hasards
................................................................................
TEST: {{donc par conséquent}}                       ->> donc|par conséquent|c’est pourquoi
TEST: {{car en effet}}                              ->> car|en effet
TEST: {{opportunités à saisir}}                     ->> opportunités
TEST: {{apanages exclusifs}}                        ->> apanages
TEST: {{monopole exclusif}}                         ->> monopole
TEST: {{étapes intermédiaires}}                     ->> étapes
TEST: {{ajouter en plus}}                           ->> ajouter
TEST: c’est un {{oubli involontaire}} de sa part    ->> oubli
TEST: la {{panacée universelle}}                    ->> panacée|remède universel
TEST: ce sont leurs {{premiers balbutiements}}      ->> balbutiements
TEST: la {{première priorité}}, c’est…              ->> priorité
TEST: Un {{futur projet}}                           ->> projet
TEST: il faut {{prévenir d’avance}} ces gens-là     ->> prévenir
TEST: ce sont des {{projets futurs}}                ->> projets
TEST: {{prototypes expérimentaux}}                  ->> prototypes
TEST: Nous avons {{rénové à neuf}} l’ensemble       ->> rénové
TEST: Nous voilà {{réunis ensemble}}                ->> réunis
TEST: {{Recule en arrière}}                         ->> Recule
TEST: {{Rédigez par écrit}} une notice.             ->> Rédigez
TEST: {{risques de menaces}}                        ->> risques
................................................................................

TEST: Elles hurlèrent {{à corps et à cris}}.
TEST: manifester sa colère à cor et à cri.


__conf_à_coup_sûr__
    !! à coup sûr ¡¡
    [a|à] [coup+s|>cout|>coût|>cou] [>sur|sûr+ses]
        <<- /conf/ not (value(\3, "|sur|") and value(<1, "|tout|par|") and value(\2, "|coup|"))
        ->> à coup sûr                                   # Confusion probable. Locution “à coup sûr”, c’est-à-dire “immanquablement”.|https://fr.wiktionary.org/wiki/%C3%A0_coup_s%C3%BBr

TEST: ce qu’elles feront alors {{a coup sûr}}, difficile de le devenir.
TEST: Bien sûr, {{À coup sur}}.


................................................................................

TEST: {{à part égale}}
TEST: un partage à parts égales


__conf_à_peu_près__
    !! à peu près ¡¡
    [a|à] [peu|peux|peut] [près|>pré|>prêt]
        <<- /conf/ ->> à peu près                                           # Confusion.|https://fr.wiktionary.org/wiki/%C3%A0_peu_pr%C3%A8s
        <<- ~>> *

TEST: C’est {{à peu prêt}} la même chose.
TEST: elle est {{a peut près}} au point.
TEST: C’est à peu près ça.


__conf_à_pleines_dents__
    !! à pleines dents ¡¡
    [a|à] [>plain|plein+ses] [dent+s|>dan]
        <<- /conf/ ->> à pleines dents                                      # Locution “à pleines dents” (toujours au pluriel).

TEST: Elle mord la vie {{à plaine dent}}.


__conf_à_quel_point!7__
    !! à quel point ¡¡
................................................................................
    a qui que ce soit
    a quelque distance
    a quelques exceptions près
    a ras >bord
    a ras de terre
    a ras [du|le] sol
    a rude épreuve
    a >seul [>fin|>faim] [de|d’]
    a tel point
    a temps [plein|partiel|complet]
    a tête reposée
    a >tarif >réduit
    a taux [>fixe|>variable|>zéro|>nulle|nul+s]
    a titre [conservatoire|indicatif|informatif|grâcieux|personnel|posthume]
    a titre d’ exemple
    a tombeau ouvert
    a tort et à travers
    a tort ou à raison
    a tour de [bras|rôle]
    a tous crins
................................................................................


## substantifs

__conf_substantif_à_substantif!3__
    *WORD  a  @:N¬*
        <<- /conf/ \2.islower()
            and not value(\3, "|accès|bon|beau|besoin|charge|confiance|connaissance|conscience|crainte|envie|été|faim|hâte|honte|interdiction|lieu|peine|peur|raison|rapport|recours|soif|tendance|terre|tort|vent|")
            and morph(\1, ":N", "*")
        -2>> à              # Confusion probable : “a” est une forme conjuguée du verbe “avoir”. Pour la préposition, écrivez “à”.|http://fr.wiktionary.org/wiki/%C3%A0

TEST: les bobos {{a}} trottinette
TEST: la lettre A est la première lettre de l’alphabet
TEST: la lettre a est la première lettre de l’alphabet
TEST: cette femme a raison
................................................................................
TEST: l’homme a beau se démener, rien n’y fait.
TEST: elle a tendance à n’en faire qu’à sa tête.
TEST: Ce travail a lieu dans le désert.
TEST: cette injonction a force de loi
TEST: C’est là que la pudeur a bon dos
TEST: Cette décision permettrait de rapprocher le congé paternité des huit semaines pendant lesquelles un employeur a interdiction de faire travailler une mère
TEST: L’utilisateur a accès à l’ensemble des informations saisies.
TEST: Tout le monde à terre !


__conf_a_à_substantifs__
    >arc a >poulie
    >arme a >feu
    >armoire a [>glace|>pharmacie]
    >attaque a main armée
................................................................................
    >ferme a >clic
    >fermeture a glissière
    >fermoir a [cliquet|levier|ressort]
    [>fille|fils] a [papa|maman]
    >fosse a >ordure
    >fusil a >pompe
    >gaz a >effet de serre
    >histoire a dormir debout
    >homme a tout faire
    >lampe a [>huile|>pétrole]
    >lime a >ongle
    >livraison a domicile
    >maison a >colombage
    >machine a [café|coudre|écrire|laver|voter]
    >machine a >remonter le temps
................................................................................
    >pince a linge
    >punk a >chienne
    >revenir a la case départ
    >rouge a >lèvre
    >sac a [dos|main|langer|merde|foutre]
    >serpent a >sonnette
    >silo a [>grain|blé]
    >soue a >cochon
    >table a repasser
    >tigre a >dent de >sabre
    >tondeuse a gazon
    >train a grande vitesse
    >trou a >rat
    >trouble a l’ ordre public
    >tueur a gages
    >turbine a [gaz|vapeur]
    >vache a lait
    >vente a domicile
    >vernis a ongles
    >vol a [la|l’] [étalage|sauvette|tire]
    >vol a main armée
    >usine a gaz
................................................................................

# acétique / ascétique
__conf_acétique_ascétique__
    [>acide|>aldéhyde|>anhydride|>bactérie|>éther|>ferment|>fermentation|>indole|>piqûre|>piqure|>silicone|voix] >ascétique
        <<- /conf/ -2>> =\2.replace("scé", "cé").replace("SCÉ", "CÉ")
        # Confusion probable : “ascétique” se rapporte à l’ascétisme. Pour l’acide, écrivez “acétique”.|https://fr.wiktionary.org/wiki/ac%C3%A9tique

    [>auteur|>démarche|>conduit|>hédonisme|>littérature|>philosophe|>pratique|>privation|>rigueur|>tradition|>théologie|>vie|>idéal] >acétique
        <<- /conf/ -2>> =\2.replace("cé", "scé").replace("CÉ", "SCÉ")
        # Confusion probable : “acétique” est le terme utilisé pour désigner un acide. Pour évoquer l’ascétisme, écrivez “ascétique”.|https://fr.wiktionary.org/wiki/asc%C3%A9tique

TEST: un acide {{ascétique}}.
TEST: Mener une vie {{acétique}}.


................................................................................

TEST: on va y arriver, {{au temps que faire se peu}}…
TEST: autant que faire se peut, il faut éviter la confusion entre ces deux discours.


# ça / çà / sa
__conf_ça_çà_sa!7__
    ça  @:[NAQ].*:f¬:(?:G|P|[123][sp])|>seul/
        <<- /conf/ not morph(<1, ">(?:appeler|considérer|trouver)/") -1>> sa    # Confusion : “sa” (sa maison, sa passion) ≠ “ça” (ça vient, ça heurte).

    sa  @:G¬>(?:tr(?:ès|op)|peu|bien|plus|moins|toute|presque)/|:[NAQ].*:f
        <<- /conf/ not (value(\2, "|ou|") and value(>1, "|son|ses|")) -1>> ça   # Confusion : “sa” (sa maison, sa passion) ≠ “ça” (ça vient, ça heurte).

    çà
        <<- /conf/ not value(<1, "|oh|ah|") and not after("^ +et là")
................................................................................
TEST: un {{car}} d’heure
TEST: trois {{cars}} d’heure.
TEST: nous attendions un car d’heure en heure.


# Campagne / compagne
__conf_campagne_compagne__
    >compagne [>électoral|>présidentiel|>législatif|>publicitaire|marketing|>militaire|>mondial|>politique|>économique|>viral|Facebook|Twitter]
    >compagne de [boycott|candidature|charité|communication|crowdfunding|dépistage|diffamation|>don|financement|marketing|mobilisation|pêche|presse|prévention|promotion|propagande|pub|publicité|recrutement|santé|sensibilisation|solidarité|vaccination]
        <<- /conf/ -1>> =\1.replace("o", "a").replace("O", "A")     # Confusion probable. Une compagne est un compagnon de sexe féminin.|https://fr.wiktionary.org/wiki/campagne

    en rase compagne
        <<- /conf/ -3>> campagne                                    # Confusion probable. Une compagne est un compagnon de sexe féminin.|https://fr.wiktionary.org/wiki/campagne

    à la compagne [<end>|,]
................................................................................
# cap / cap
__conf_cap_cape__
    de >pied en >cape
        <<- /conf/ ->> de pied en cap                   # Confusion : la cape est un vêtement.|https://fr.wiktionary.org/wiki/de_pied_en_cap

TEST: rhabillée {{de pied en cape}}.


# capital / capitale
__conf_capital_capitale__
    >augmentation de capitale
        <<- /conf/ --1>> capital    # Confusion. Une capitale est une ville où se situe le gouvernement d’une nation. Le capital est une richesse, une ressource, un bien, etc.|https://fr.wiktionary.org/wiki/capital

TEST: on va faire une augmentation de {{capitale}}                      ->> capital
TEST: ce qui est capital dans notre société, c’est l’argent.


# ce / se / ceux
__conf_ce_ceux_se!6__
    pour se faire ,
    pour se faire @:G¬:[AYD]
        <<- /conf/ -2>> ce                              # Confusion probable. Dans cette locution, il faut employer “ce”.|http://fr.wiktionary.org/wiki/pour_ce_faire

................................................................................
TEST: Avec ces quelque 70 millions d’euros de cash disponible
TEST: négocier séparément avec ces divers sous-groupes
TEST: L’ensemble de ces divers points de vue émergeant de plusieurs horizons permettaient de construire un projet, riche et acceptable par toutes les parties prenantes.


# chœur / cœur
__conf_choeur_coeur__
    [>enfant|>chef] de >cœur
        <<- /conf/ -3>> chœur                                   # Confusion. Pour désigner un ensemble musical, écrivez chœur.|https://fr.wiktionary.org/wiki/ch%C5%93ur

    >cœur [>musical|>philharmonique|>mixte|>polyphonique]
    >cœur de musique
    >cœur de l’ église
    >cœur de la nef
        <<- /conf/ -1>> chœur                                   # Confusion. Pour désigner un ensemble musical, écrivez chœur.|https://fr.wiktionary.org/wiki/ch%C5%93ur

TEST: ces enfants de {{cœur}} sont fatigués.
TEST: Cheffe de {{cœur}}.
................................................................................

TEST: Regarde ce qu’il y a à l’intérieur du {{coli}}


# collet monté
__conf_collet_monté__
    ~^[cC]oll(?:e[rt]s?|ée?s?)-mont(?:er|ée?s?)$
    [collé+ses|coller|collets] [>montée|monté|montés|monter]
    collet [>montée|montés|monter]
        <<- /conf/ ->> collet monté                             # « Être collet monté » : dans cette locution, « collet monté » est invariable.

TEST: Elles sont tellement {{collets montées}} !


# compte / comte / conte
................................................................................
    à bon [>conte|comte|comtes]
        <<- /conf/ -3>> compte                                  # Confusion. Locution “à bon compte”.|https://fr.wiktionary.org/wiki/%C3%A0_bon_compte

    à ce [conte-là|comte-là]
        <<- /conf/ -3>> compte-là                               # Confusion probable. Locution “à ce compte-là”.|https://fr.wiktionary.org/wiki/%C3%A0_ce_compte-l%C3%A0

    [comte+s|>conte] à [rebours|découvert|terme]
    [comte+s|>conte] [>bancaire|rendu|rendus|joint|joints|courant|courants|>chèque]
    [comte+s|>conte] des opérations
    [comte+s|>conte] en banque
        <<- /conf/ -1>> compte|comptes                          # Confusion probable. Un conte est un récit fictif, “comte” est un titre de noblesse. Pour un état chiffré, un calcul… écrivez “compte”.

    [comte+s|>compte] de bonne femme
    [comte+s|>compte] de bonnes femmes
        <<- /conf/ -1>> conte|contes                            # Confusion probable. Un compte est un état chiffré, “comte” est un titre de noblesse. Pour un récit fictif, écrivez “conte”.
................................................................................
TEST: on va lui régler son {{conte}}, à cet enculé.
TEST: tout {{conte}} fait, ça reste un salopard.


__conf_conte__
    [comte+s|>compte] de bonne+s >femme
    [comte+s|>compte] de >fée
    [comte+s|>compte] [>allégorique|>fantastique|>littéraire|merveilleux|moral|moraux|oral|oraux|>populaire|>satirique|>traditionnel]
    [comte+s|>compte] et >légende
        <<- /conf/ -1>> conte|contes                                                # Confusion probable. Si vous parlez d’un récit, écrivez :|https://fr.wiktionary.org/wiki/conte

TEST: Encore un {{comte}} de fée, assez de ces fadaises !
TEST: c’est un {{compte}} allégorique.
TEST: {{Comptes}} et légendes des Terres du Milieu.
TEST: ce sont des {{comptes}} de bonnes femmes
................................................................................

    >cor [a|à] >cor
        <<- /conf/ ->> corps à corps                                                # Confusion. Le cor est instrument de musique.

    >cor du [christ|défunt]
    >cor de [>doctrine|logis|>preuve]
    >cor de la magistrature
    >cor [>politique|>diplomatique|>expéditionnaire|>législatif|>mystique|humain+s|calleux|caverneux|muqueux]
    >cor et >âme
        <<- /conf/ -1>> corps                                                       # Confusion. Le cor est instrument de musique.

    >esprit de >cor
    >garde du >cor
        <<- /conf/ -3>> corps                                                       # Confusion. Le cor est instrument de musique.

................................................................................
# cour / cours / court
__conf_cour_cours_court_courre__
    au [cour|court+s|courre+s] [de|d’|des|du]
        <<- /conf/ -2>> cours                               # Confusion. Locution “au cours de”. Une cour… Un cours… Adjectif : court(e).

    en cour martiale
    en cour [de|d’] [cassation|justice]
    en cour d’ >assise
        <<- !1:2>>

    en cour
        <<- /conf/ ->> en cours                             # Confusion probable. Une cour… Un cours… Adjectif : court(e).

    >couper  ?@:[WX]¿  [cour|cours|courre|courres|courts]
        <<- /conf/ --1>> court                              # “Couper court” qui signifie écourter. Noms : une cour, un cours… Adjectif : court.
................................................................................
TEST: jusqu’en cour de cassation
TEST: le jugement en cour d’assises
TEST: ils vont passer prochainement en cour martiale.


# cuir / cuire
__conf_cuir_cuire__
    >dur [à|a] >cuir
        <<- /conf/ -3>> cuire           # Confusion. Locution “dur à cuire” Le cuir est le nom qu’on donne à la peau animale. Pour évoquer la cuisson, écrivez “cuire”.|https://fr.wiktionary.org/wiki/cuire
        <<- /conf/ \2 == "a" -2>> à     # Confusion : “a” est une conjugaison du verbe “avoir”. Pour la préposition, écrivez “à”.

TEST: ce sont des durs à {{cuir}}
TEST: Quelle dure {{a}} {{cuir}}, celle-là.


................................................................................

    une fin de loup
        <<- /conf/ -2>> faim                                    # Confusion. La fin désigne la finalité ou la teminaison de quelque chose. Pour évoquer l’envie de manger, écrivez “faim”.

    à des faims
        <<- /conf/ -3>> fins                                    # Confusion. Pour évoquer la finalité de quelque chose, écrivez “fin”.

    [à|a] >seul faim [de|d’]
        <<- /conf/ -3>> fin                                     # Confusion. Pour évoquer la finalité de quelque chose, écrivez “fin”.

TEST: Elle manifestait son désaccord par une grève de la {{fin}}.
TEST: ces enfants avaient une {{fin}} de loup
TEST: Œuvrez à des {{faims}} funestes.
TEST: il s’est donné bien des peines à seule {{faim}} de monter en grade

................................................................................
    [ce|c’] n’ [est|était] rien que du flanc
        <<- /conf/ --1>> flan                                               # Confusion. Locution « c’est du flan ».|https://fr.wiktionary.org/wiki/flan

    comme deux ronds de >flanc
        <<- /conf/ -5>> flan                                                # Confusion. Locution « comme deux ronds de flan ».|https://fr.wiktionary.org/wiki/comme_deux_ronds_de_flan

    >flan de la [>colline|>montagne]
    >flan [de|des] [>colline|>coteau|>montagne]
    >flan [>gauche|droit|droits|nord|sud|ouest]
        <<- /conf/ -1>> =\1.replace("an", "anc").replace("AN", "ANC")       # Confusion probable. Le flan est une pâtisserie.|https://fr.wiktionary.org/wiki/flanc

    [>attaquer|>allonger|>blesser|>coucher|>étendre|>toucher]  sur  [le|mon|ton|son|notre|votre|leur]   flan
        <<- /conf/ -4>> flanc                                               # Confusion probable. Le flan est une pâtisserie.|https://fr.wiktionary.org/wiki/flanc

    [>attaquer|>allonger|>blesser|>coucher|>étendre|>toucher]  sur  [les|mes|tes|ses|nos|vos|leurs]     flans
................................................................................
TEST: il tire aux {{flans}}
TEST: le flan est une pâtisserie.
TEST: versez du caramel sur le flan.


# en son for intérieur / fort
__conf_for_intérieur__
    [en|dans] [mon|ton|son|leur|notre|votre] [fort|forts|fore|fores|fors] [>intérieur]
        <<- /conf/ -3:4>> for intérieur                                     # Confusion : “for” vient du latin “forum” et le “for intérieur” évoque la conscience individuelle.

TEST: En mon {{fort intérieur}}, je le crois.
TEST: Dans son {{fort intérieur}}, je le crois.


# fausse / fosse
__conf_fausse_fosse__
    [fausse+s] [Calypso|Nansei-Shoto]
    [fausse+s] de [conservation|subduction|Bougainville|Cedros|Java|Puerto|Ryukyu|Tuscarora]
    [fausse+s] des [musiciens|Aléoutiennes|Kermadec|Kouriles|Mariannes|Tonga|Philippines]
    [fausse+s] des îles [aléoutiennes|caïmans|Kouriles|Tonga]
    [fausse+s] du [Chili|Japon|Pérou|Pérou-Chili]
    [fausse+s] d’ [aisance|orchestre|Amérique|Atacama|Izu-Bonin|Izu-Ogasawara]
    [fausse+s] de l’ orchestre
    [fausse+s] à [>compost|>déchet|>lisier|>fumier|>plongeon|>plongée|>purin|>merde|>ordure]
    [fausse+s] [au|aux|des] [>caïman|>crocodile|>charognard|>lion|>loup|>louve|ours|>serpent|>cobra|>diable]
    [fausse+s] [>abyssal|>canin|>béant|>commun|>océanique|>sous-marine|>septique|>immense|>profond|>nasal|>iliaque|>temporal]
        <<- /conf/ -1>> =\1.replace("au", "o").replace("AU", "O")           # Confusion probable : “fausse” est l’adjectif féminin de “faux”. Pour évoquer une profondeur, écrivez “fosse”.

    au bord de la fausse
        <<- /conf/ -5>> fosse                                               # Confusion probable : “fausse” est l’adjectif féminin de “faux”. Pour évoquer une profondeur, écrivez “fosse”.

TEST: la {{fausse}} Calypso.
TEST: La {{fausse}} des Mariannes.
................................................................................
TEST: Elle sera {{forcement}} déçue de cette minable prestation de sa part.
TEST: Un homme pas {{forcement}} mauvais.
TEST: Le {{forcément}} du coffre ne sera pas si facile.


# golf / golfe
__conf_golf_golfe__
    [>champion|>championnat|>club|>joueur|parcours|>sac|>balle|>terrain|>tournoi|>compétition|>passionné|>école|>professeur|>parti|>professionnel|>amateur|>stage|>journée|après-midi|>matinée|>heure|>fédération|>fan] de golfe
        <<- /conf/ -3>> golf                                                # Confusion. Le golfe est une zone de mer ou d’un lac avancée dans les terres. Ex : Le golfe Persique.

    >golf persique
    >golf [de|du|d’] [Bengale|Botnie|Gascogne|Gabès|Guinée|Lion|Morbihan|Mexique|Porto|Saint-Laurent|Thaïlande|Tonkin|Tunis|Winam|Aden|Ajaccio|Alaska|Hammamet]
        <<- /conf/ -1>> golfe                                               # Confusion. Le golf est un sport.

    [>guerre|>émir|>monarchie] du golf
................................................................................
    [ne|n’]   ?presque¿  ?[plus|jamais]¿  guerre
        <<- /conf/ --1>> guère                                                                      # Confusion. La guerre est conflit. Pour l’adverbe signifiant “peu”, écrivez “guère”.

    guerre
        <<- /conf/ morph(<1, ":(?:[123][sp]|Y)", "*") and not value(>1, "|civile|commerciale|froide|mondiale|nucléaire|préventive|psychologique|sainte|totale|")
        ->> guère                                            # Confusion probable. La guerre est conflit. Pour l’adverbe signifiant “peu”, écrivez “guère”.

    sur le pied de guère
        <<- /conf/ --1>> guerre                                 # Confusion. Locution “sur le pied de guerre”.|https://fr.wiktionary.org/wiki/sur_le_pied_de_guerre

    guère [<end>|,]
        <<- /conf/ morph(<1, ":D.*:f:s") -1>> guerre            # Confusion probable : “guère” signifie “peu”. Si vous évoquez un conflit, écrivez “guerre”.|https://fr.wiktionary.org/wiki/guerre

TEST: tout ceci ne me rapporte {{guerre}}
TEST: je ne m’en soucie {{guerre}}
TEST: Il n’y prête {{guerre}} d’attention.
TEST: Elle n’en accorde plus {{guerre}}.
TEST: ne plus {{guerre}} s’en soucier
TEST: elle ne leur donne plus {{guerre}} que des remontrances.
TEST: ne {{guerre}} s’en soucier.
................................................................................
TEST: ne plus {{guerre}} croire en rien.
TEST: Il ne reste plus {{guerre}} que lui.
TEST: Je n’aime {{guerre}} le sport.
TEST: Il n’y en a {{guerre}}.
TEST: Je n’aime plus {{guerre}} le sport.
TEST: Il n’y en a plus {{guerre}}.
TEST: y peut {{guerre}} réussir quoi que ce soit, cet idiot.
TEST: elles sont sur le pied de {{guère}} depuis 10 jours.
TEST: Je hais la {{guère}}.
TEST: je n’en aimais certains guère.
TEST: ce que nous appelons Guerre psychologique


# héro / héros
__conf_héros__
    [le|quel|ce|cet|un|du|au]  héro
        <<- /conf/ -1>> héros                               # Confusion. L’héro est l’abréviation de “héroïne” (la drogue). L’homme héroïque s’écrit “héros”.
................................................................................
TEST: Il fait remonter à la toute première expérience humaine de maîtrise.
TEST: l’existence d’un fichage la concernant
TEST: avec la ou les indications qu’on recontre ici et là.
TEST: de la non moins indispensable défense des libertés, individuelles ou collectives, professionnelles ou locales


    [par-la|de-la|jusque-la|celui-la|celle-la|ceux-la|celles-la]
        <<- /conf/ ->> =\1[:-2]+"là"                                                                # Écrivez “là” et non “la”.

    [celle|celles|celui|ceux] la
        <<- /conf/ ->> \1-là                                                                        # Écrivez “là” et non “la”.

    /-là
        <<- /conf/ morph(\1, ":V", ":[NA]", 0, -3) >>>
        <<- /conf/ morph(\1, ":V..t") -1>> =\1[:-3]+"-la|" + \1[:-3]+" là"                          # Confusion. Pour un COD, utilisez “la”. Ou, si ce “là” signifie “ici”, ne mettez pas de trait d’union.
        <<- /conf/ __else__ -1>> =\1[:-3]+" là"                                                     # Confusion. Si ce “là” signifie “ici”, ne mettez pas de trait d’union.

    [ne|me|te|se] là
        <<- /conf/ -2>> la                                          # Confusion : “là” signifie “ici”.|http://fr.wiktionary.org/wiki/l%C3%A0

TEST: {{jusque-la}}, tout va bien
TEST: {{ceux la}} sont des idiots, rien à en tirer.
TEST: {{celle la}} ne vaut pas mieux, laisse-la tomber.
................................................................................

TEST: elles sont si {{pales}}.
TEST: cette {{pale}} imitation d’un chef-d’œuvre


# palier / pallier
__conf_palier_pallier__
    >voisin de [pallier|pallié|palliés|palliée|palliées]
    >franchir un [pallier|pallié]
    [sur|sous] le ?même¿ [pallier|pallié]
        <<- /conf/ --1>> palier                                             # Confusion.|https://fr.wiktionary.org/wiki/palier

    [pallier|pallié+e]  [de|d’] [communication|décompression|imposition]
        <<- /conf/ -1>> palier                                              # Confusion.|https://fr.wiktionary.org/wiki/palier

................................................................................
TEST: La {{pause}} des ardoises.
TEST: La {{pause}} de la tapisserie.
TEST: La {{pause}} de la première pierre.


# péché / pêcher
__conf_péché_pêcher1__
    [pécher|>pêcher|pêché+ses] [mignon+s|>capital|>mortel|>originel|>véniel]
    [pécher|>pêcher|pêché+ses] de jeunesse
        <<- /conf/ -1>> péché|péchés                                        # Confusion. Pour désigner un écart de conduite, écrivez “péché”.|https://fr.wiktionary.org/wiki/p%C3%A9ch%C3%A9

    [>absolution|>rémission] [des|du] [pécher|>pêcher|pêché+ses]
    [>absolution|>rémission] de [mon|ton|son|ma|ta|sa|mes|tes|ses|notre|votre|nos|vos|leur|leurs] [pécher|>pêcher|pêché+ses]
        <<- /conf/ --1>> péché|péchés                                       # Confusion. Pour désigner un écart de conduite, écrivez “péché”.|https://fr.wiktionary.org/wiki/p%C3%A9ch%C3%A9

................................................................................
    [je|tu] ?[ne|n’]¿ peu
        <<- /conf/ --1>> peux                                               # Confusion : « peu » signifie « pas beaucoup ».

    [ne|se|n’|s’] peu
        <<- /conf/ -2>> peut                                                # Confusion. Exemples : Il est peu habile, mais il peut y arriver.

    [peut|peux]  @:A¬:(?:[MGWYX]|3[sp])
        <<- /conf/ not morph(\2, ">seul/") and not morph(<1, ">(?:je|tu|il|on|ne)")
        -1>> peu                                                            # Confusion probable : « \1 » est une conjugaison de « pouvoir », utilisez « peu ».

TEST: {{peu}} rarement y arriver.
TEST: Il est un {{peut}} comme une forêt
TEST: cela ne se {{peu}}.
TEST: des bâtisses {{peu a peu}} abandonnées.
TEST: aucun pays – ou très peu alors – n’a réussi à faire ça de façon durable
................................................................................
TEST: Il {{peut-être}} mortel.
TEST: Cela {{peut-être}} mortel.
TEST: cela arrivera {{peux-être}}.


# de plain pied
__conf_de_plain_pied__
    [de|au] [>plein|>plain] >pied
    [de|au] [plein-pied|pleins-pieds|plains-pieds]
        <<- /conf/ -2:0>> plain-pied                                        # Confusion. Écrivez “plain-pied”. “Plain” est un vieux terme qui signifie plat, uni.

TEST: C’est une maison de {{plein pied}}.
TEST: de {{plein-pied}}


................................................................................
    >prêt [de|d’] ?[le|la|l’|les|en|nous|vous|lui|leur|y|tout]¿ $:Y
    >prêt [de|d’] [nous|vous]     [le|la|l’|les|en|y]           $:Y
    >prêt [de|d’] [le|la|l’|les]  [lui|leur|en|y]               $:Y
    >prêt [de|d’] [lui|leur|y]    en                            $:Y
        <<- /conf/ -1>> près                                                # Confusion probable. Être près de (faire) quelque chose. Prêt à faire quelque chose.

    >prêt [de|d’] [toi|vous|lui|elle|eux|elles|iels|$:M]
        <<- /conf/ not morph(<1, ":D") and not morph(<1, ">obtenir/")
        -1>> près                                                           # Confusion probable. Être près de (faire) quelque chose. Prêt à faire quelque chose.

    si [>prêt|>pré] [du|de|d’|des]
        <<- /conf/ -2>> près                                                # Confusion probable. Être près de (faire) quelque chose. Prêt à faire quelque chose.

    [>raser|>suivre] de [>prêt|>pré]
        <<- /conf/ --1>> près                                               # Confusion probable : de près, c’est-à-dire proche de quelque chose ou quelqu’un.

    à la [virgule|nanoseconde|milliseconde|seconde|minute] [>prêt|>pré]
        <<- /conf/ -4>> près                                                # Confusion probable. Locution “à la \3 près”.

    à [quelques|plusieurs|$:B] [degrés|exceptions|nuances|pourcents|variations|nanomètres|millimètres|centimètres|décimètres|mètres|kilomètres|parsecs|années-lumière|nanosecondes|millisecondes|secondes|minutes|heures|jours|semaines|mois|années|décennies|siècles|millénaires] [>prêt|>pré]
    à un [degré|pourcent|nanomètre|millimètre|centimètre|décimètre|mètre|kilomètre|parsec|jour|mois|siècle|millénaire] [>prêt|>pré]
    à une [exception|nuance|variation|année-lumière|nanoseconde|milliseconde|seconde|minute|heure|semaine|année|décennie] [>prêt|>pré]
        <<- /conf/ -4>> près                                                # Confusion probable. Locution “à \2 \3 près”.

    au >mètre [>prêt|>pré]
        <<- /conf/ -3>> près                                                # Confusion probable. Locution “au \2 près”.

    à ([ceci|cela]) ([prêt|prêts]) [que|qu’]
    [<start>|,] à ([ceci|cela]) ([prêt|prêts]) [,|<end>]
        <<- /conf/ -2>> près                                                # Confusion probable. Locution “à \1 près”.|https://fr.wiktionary.org/wiki/%C3%A0_cela_pr%C3%A8s
................................................................................
        <<- /conf/ morph(<1, ":D.*:[mp]|<start>") -1>> puits
        # Confusion. Le puits artésien.|https://fr.wiktionary.org/wiki/puits_art%C3%A9sien

    puis >quantique
        <<- /conf/ morph(<1, ":D.*:[mp]|<start>") -1>> puits
        # Confusion. Puits quantique : zone de l’espace dans laquelle le potentiel ressenti par une particule quantique atteint un minimum.|https://fr.wikipedia.org/wiki/Puits_quantique

    puis de >potentiel [fini+ses|>carré|>harmonique]
    puis de >potentiel @:¬:[NA]
        <<- /conf/ morph(<1, ":D.*:[mp]|<start>") -1:3>> puits de potentiel
        # Confusion probable. Un puits de potentiel désigne, en physique, le voisinage d'un minimum local d'énergie potentielle.|https://fr.wikipedia.org/wiki/Puits_de_potentiel

TEST: Tombée au fond du {{puis}}, le désespoir la gagnait.
TEST: Des {{puis}}, tu en as combien ?
TEST: J’ai plusieurs {{puis}} de pétrole.
TEST: quel {{puis}} artésien ?
................................................................................
        <<- /conf/ -1:2>> quoi qu’il                                        # Confusion probable.

TEST: Elle y parviendra, {{quoiqu’il}} en coûte.


# quelle / qu’elle
__conf_qu_elle_quelle__
    [que|qu’]  elle   @:[NAQ]¬:(?:G|[123][sp]|W|Oo|X)|>seul/
        <<- /conf/ -1:2>> quelle                                                                    # Confusion probable. Ex : Quelle femme ! Je crois qu’elle réussira.

    [que|qu’]  elles  @:[NAQ]¬:(?:G|[123][sp]|W|Oo|X)|>seul/
        <<- /conf/ -1:2>> quelles                                                                   # Confusion probable. Ex : Quelle femme ! Je crois qu’elle réussira.

TEST: {{qu’elle}} emmerdeuse.
TEST: {{qu’elles}} belles terrasses
TEST: je crois qu’elle seule peut y parvenir
TEST: Elle cache qu’elle a été en prison.
TEST: Qu’elle avait été accueillie avec joie.
................................................................................
TEST: Vous {{résonnez}} comme un sot.
TEST: Nous allons le {{résonner}}.


# repère /  repaire
__conf_repaire_repère__
    >repère  [dangereux|>sécurisée]
    >repère  [de|du|d’|des]  [>assassin|>bandit|>brigand|>cambrioleur|>corsaire|>criminel|>dragon|>escroc|>fanatique|>filou|>flibustier|>flibuste|>gangster|>lion|>loup|>louve|>mafiosi|>mafioso|>malfaiteur|>malfrat|>maraudeur|>monstre|>murène|ours|>pick-pocket|>pickpocket|>pillard|>pirate|>scélérat|>taupe|>tigre|>truand|>voleur|>voyou|>yéti]
    >repère  de  $:D         [>assassin|>bandit|>brigand|>cambrioleur|>corsaire|>criminel|>dragon|>escroc|>fanatique|>filou|>flibustier|>flibuste|>gangster|>lion|>loup|>louve|>mafiosi|>mafioso|>malfaiteur|>malfrat|>maraudeur|>monstre|>murène|ours|>pick-pocket|>pickpocket|>pillard|>pirate|>scélérat|>taupe|>tigre|>truand|>voleur|>voyou|>yéti]
        <<- /conf/ morph(<1, ":D") -1>> =\1.replace("è", "ai").replace("È", "AI")
        # Confusion probable. Un répère est une marque laissée pour retrouver quelque chose. Pour le lieu où se cachent des personnes ou des animaux, écrivez “repaire”.|https://fr.wiktionary.org/wiki/repaire

    [dans|en] [mon|ton|son|notre|votre|leur] repère
    à l’intérieur de [mon|ton|son|notre|votre|leur] repère
    à l’intérieur du repère
    au sein de [mon|ton|son|notre|votre|leur] repère
................................................................................
TEST: on va le débusquer dans son {{repère}}
TEST: Elle traça un {{repaire}}.
TEST: Elle remarqua un {{repaire}} à la craie.


# ris / riz
__conf_ris_de_veau_agneau__
    [ri|riz] [de|d’] [>veau|agneau+x|chasse]
        <<- /conf/ -1>> ris                                     # Confusion.|http://fr.wiktionary.org/wiki/ris

    [ri|ris] au lait
    [ri|ris] [arborio|basmati|blanc|brun|cantonais|carnaroli|complet|semi-complet|incollable|OGM|pilaf|soufflé]
        <<- /conf/ -1>> riz                                     # Confusion. Pour évoquer la céréale, écrivez “riz”.|https://fr.wiktionary.org/wiki/riz

TEST: Elles ont préparé un {{riz}} de veau.
................................................................................
TEST: elle sans vergogne
TEST: elle sans la condamner
TEST: elles sans un sou en poche
TEST: elles sans grandes convictions


__conf_sensé_censé__
    très >censé
        <<- /conf/ -2>> =\2.replace("sen", "cen").replace("Cen", "Sen").replace("CEN", "SEN")       # Confusion probable. Ce qui est “sensé” (de “bon sens”) et ce que chacun est “censé” accomplir.

TEST: Des personnes très {{censées}} qui perdent parfois la tête.


# sans coup férir
__conf_sans_coup_férir__
................................................................................
        <<- /conf/ ->> sans coup férir      # Confusion. Locution “sans coup férir”, c’est-à-dire sans avoir eu à livrer bataille, sans difficulté.|https://fr.wiktionary.org/wiki/sans_coup_f%C3%A9rir

TEST: nous y sommes parvenus {{sans cou fait rire}}
TEST: elle s’assura la victoire {{sent cou férir}}
TEST: y arriver {{s’en coup fée rire}}
TEST: vaincre sans coup férir


# sans crier garde
__sans_crier_gare__
    !! sans crier gare ¡¡
    sans [crier|crié+ses] [>garde|gare+s]
        <<- /conf/ ->> sans crier gare      # Confusion. Locution “sans crier gare”.|https://fr.wiktionary.org/wiki/sans_crier_gare

TEST: il apparut {{sans crier garde}}.
TEST: Elle vint sans crier gare.


# s’ensuivre
__conf_s_ensuivre__
    s’ en >suivre
        <<- /conf/ morph(\3, ":(?:[123]s|Q)") ->> s’ensuit|s’ensuivit|s’ensuivait|s’ensuivra|s’ensuivrait   # Verbe “s’ensuivre”.|https://fr.wiktionary.org/wiki/s%E2%80%99ensuivre
        <<- /conf/ __else__ and morph(\3, ":(?:[123]p|Y|P)") ->> \1\2\3                                     # Verbe “s’ensuivre”.|https://fr.wiktionary.org/wiki/s%E2%80%99ensuivre

................................................................................
        <<- /conf/ -1>> =\1.replace("u", "û").replace("U", "Û")
        # Confusion probable : “sur” un adjectif signifiant acide ou aigre ; utilisez “sûr” pour certain, vrai ou sans danger.|http://fr.wiktionary.org/wiki/sur

    en >lieu sur
        <<- /conf/ -3>> sûr
        # Confusion probable : “sur” est une préposition ou un adjectif signifiant acide ou aigre ; utilisez “sûr” pour certain, vrai ou sans danger.|http://fr.wiktionary.org/wiki/sur

    en >être >sur
        <<- /conf/ -3>> =\3.replace("u", "û").replace("U", "Û")
        # Confusion probable : “sur” un adjectif signifiant acide ou aigre ; utilisez “sûr” pour certain, vrai ou sans danger.|http://fr.wiktionary.org/wiki/sur

TEST: Je suis {{sur}} de Patrick.
TEST: Je suis {{sure}} qu’il ne va pas tarder à venir
TEST: {{sures}} d’elles-mêmes, elles ne s’en laissent pas conter.
TEST: {{sur}} de toi et de moi, que peut-il nous arriver, sinon le meilleur.
................................................................................

    [à|a] [>tan|tant] [partiel|partiels|plein|pleins]
        <<- /conf/ -2>> temps                               # Confusion. Pour ce qui est temporel, écrivez “temps”.

    en [même|mêmes] [tant|>tan]
        <<- /conf/ ->> en même temps                        # Confusion. Pour ce qui est temporel, écrivez “temps”.

    en [temps|>tan] [que|qu’] >tel
        <<- /conf/ -2>> tant                                # Confusion. Locution “en tant que tel”.

    en [>tan|tant] et en >heure
        <<- /conf/ -2>> temps                               # Confusion: Locution “en temps et en heure”.|https://fr.wiktionary.org/wiki/en_temps_et_en_heure

    >tan [pis|pi]
        <<- /conf/ ->> tant pis                             # Confusion. Locution “tant pis”.|https://fr.wiktionary.org/wiki/tant_pis
................................................................................
TEST: {{tan pi}} pour lui
TEST: ce qui a commencé en 2011 en tant d’endroits du pourtour méditerranéen
TEST: elle est allée en tant de lieux qu’il est difficile de suivre son trajet.


# teint / tain / thym
__conf_tain_teint_thym__
    [>glace|>miroir|>verre] sans [tains|>teint|>thym]
        <<- /conf/ -3>> tain                                        # Confusion.|http://fr.wiktionary.org/wiki/glace_sans_tain

    >fond de [>tain|teints|>thym]
        <<- /conf/ -3>> teint                                       # Confusion.|https://fr.wiktionary.org/wiki/fond_de_teint

TEST: Elle l’a observé par un miroir sans {{teint}}.
TEST: Elle a acheté un nouveau fond de {{tain}}.
................................................................................
# ensemble
__sgpl_ensemble__
    [toutes|tous] ensembles
        <<- /sgpl/ -2>> ensemble                                    # Ici, “ensemble” est vraisemblablement un adverbe, donc invariable.|https://fr.wiktionary.org/wiki/ensemble

TEST: Allons-y toutes {{ensembles}}                             ->> ensemble


# en rangs serrés
__sgpl_en_rangs_serrés__
    en rang serré
        <<- /sgpl/ ->> en rangs serrés|en ordre serré               # Au pluriel, car il y a plusieurs rangs. Vous pouvez aussi utiliser l’expression “en ordre serré”.

TEST: ils défilèrent {{en rang serré}}
TEST: elles arrivent en rangs serrés.


# entre autres
__sgpl_entre_autres__
    entre autre [<end>|,]
    entre autre @:(?:[GW]|[NA].*:[pi])
        <<- /sgpl/ -2>> autres                                      # La locution “entre autres”, toujours au pluriel.|https://fr.wiktionary.org/wiki/entre_autres

................................................................................
TEST: il y eut, entre {{autre}}, des erreurs commises.
TEST: il y aura entre {{autre chose}} des répercussions terribles.
TEST: il y aura entre {{autre}} choses des répercussions terribles.


# nul et non avenu
__sgpl_nul_et_non_avenu__
    nul et non >avenu
        <<- /sgpl/ not value(\-1, "|avenu|") --1>> avenu            # Accord avec “\1”.

    nulle et non >avenu
        <<- /sgpl/ not value(\-1, "|avenue|") --1>> avenue          # Accord avec “\1”.

    nuls et non >avenu
        <<- /sgpl/ not value(\-1, "|avenus|") --1>> avenus          # Accord avec “\1”.

    nulles et non >avenu
        <<- /sgpl/ not value(\-1, "|avenues|") --1>> avenues        # Accord avec “\1”.

TEST: c’est nul et non {{avenue}}                       ->> avenu
TEST: des éléments nuls et non {{avenues}}              ->> avenus
TEST: une tentative nulle et non {{avenu}}              ->> avenue
TEST: nulles et non {{avenue}}                          ->> avenues

................................................................................
    en fonction de l’ état
        <<- !5>>

    état [français|belge|suisse|canadien|palestinien|souverain|américain|russe|anglais|allemand|espagnol|italien|mexicain|japonais|chinois|australien|polonais|membre|africain|européen|asiatique|voyou|démocratique|totalitaire|fédéral|fédéré|capitaliste|communiste|providence|nation]
    état de droit
        <<- /maj/ \1 == "état" -1>> État                            # Majuscule manquante : si vous parlez de l’institution dirigeante d’une nation, écrivez “État”.

    états [français|>belge|>suisse|canadien+s|palestinien+s|souverain+s|>membre|américain+s|africain+s|européen+s|>asiatique|>voyou|>démocratique|>totalitaire|>fédéral|>fédéré|>capitaliste|>communiste|>providence|>nation]
    états de droit
        <<- /maj/ \1 == "états" -1>> États                          # Majuscule manquante : si vous parlez de l’institution dirigeante d’une nation, écrivez “État”.


    [>affaire|>agent|>administration|>chancellerie|>chef|>cheffe|>conseil|>coup|>diplôme|>doctorat|>emprunt|>lycée|>propriété|>secret|>homme|>femme|>police|>religion|>ministre|>ministère|>subvention|>secrétaire|secret|secrets|>secrétariat|>raison|>ressortissant|>université] d’ état
        <<- /maj/ \3 == "état" -3>> État                            # Majuscule manquante : si vous parlez de l’institution dirigeante d’une nation, écrivez “État”.

    [>défense|>sûreté|>sureté|>agent|>budget|>caisse|>capital|>constitution|>charge|>chef|>dirigeante|>denier|>finance|>fonction|>fonctionnement|>frontière|>institution|>propriété|>monopole|>pouvoir|>rouage|>ressource|>service|>subvention|>suprême] de l’ état
        <<- /maj/ \4 == "état" -4>> État                            # Majuscule manquante : si vous parlez de l’institution dirigeante d’une nation, écrivez “État”.

    état-nation
    état-providence
    états-nation
    états-nations
    états-providence
................................................................................
# gentilés / ethnonymes
__maj_gentilés__
    océan Indien
    [îles|iles] Britanniques
    à [la|l’] [afghane|albanaise|algérienne|allemande|américaine|andorrane|anglaise|angolaise|arabe|argentine|arménienne|australienne|autrichienne|asiatique|azerbaïdjanaise|bahamienne|bangladaise|bengladeshie|barbadienne|basque|belge|bélizienne|béninoise|bretonne|bhoutanaise|biélorusse|birmane|bolivienne|bosnienne|botswanaiso|brésilienne|britannique|brunéiene|bulgare|burkinabé|burundaise|cambodgienne|camerounaise|canadienne|capverdienne|centrafricaine|chilienne|chinoise|chypriote|colombienne|comorienne|congolaise|nord-coréenne|corse|costaricienne|croate|cubaine|danoise|djiboutienne|dominicaine|égyptienne|émiratie|équatorienne|érythréenne|estonienne|espagnole|étatsunienne|états-unienne|étasunienne|éthiopienne|fidjienne|finlandaise|formosane|française|gabonaise|gambienne|géorgienne|ghanéenne|grecque|grenadienne|guadeloupéenne|guatémaltèque|guinéenne|équato-guinéenne|guyanienne|haïtienne|honduriene|hollandaise|hongroise|indienne|indochinoise|indonésienne|irakienne|italienne|iranienne|irlandaise|islandaise|israélienne|ivoirienne|jamaïcaine|japonaise|jordanienne|kazakhe|kényane|kosovare|koweïtienne|laotienne|lapone|lettone|libanaise|libérienne|libyenne|liechtensteinoise|lituanienne|luxembourgeois|macédonienne|maghrébine|malgache|malaisienne|malawite|maldivienne|malienne|maltaise|maorie|marocaine|martienne|mauricienne|mauritanienne|mexicaine|micronésienne|moldave|monégasque|monténégrine|mongole|mozambicaine|namibiene|népalaise|nicaraguayenne|nigérienne|nigériane|néerlandaise|norvégienne|néo-zélandaise|ougandaise|ouzbèke|pakistanaise|palestinienne|panaméenne|paraguayenne|perse|péruvienne|philippine|polonaise|polynésienne|portugaise|québécoise|qatarie|roumaine|russe|rwandaise|saoudienne|scandinave|salvadorienne|sénégalaise|serbe|singapourienne|slovaque|slovène|somalienne|soudanaise|soviétique|srilankaise|suédoise|suisse|surinamaise|syrienne|sud-africaine|sud-coréenne|américaine|tadjike|tanzanienne|tchadienne|tchèque|thaïlandaise|togolaise|tahitienne|tunisiene|turkmène|turque|taïwanaise|ukrainienne|uruguayenne|vénézuélienne|vietnamienne|yéménite|yougoslave|zaïroise|zambienne|zimbabwéenne]
        <<- !-1>>

    [>afghan|>albanais|>algérien|>allemand|>américain|>andorran|>anglais|>angolais|>arabe|>argentin|>arménien|>australien|>autrichien|>asiatique|>azerbaïdjanais|>bahamien|>bangladais|>bengladeshi|>barbadien|>basque|>belge|>bélizien|>béninois|>breton|>bhoutanais|>biélorusse|>birman|>bolivien|>bosnien|>botswanais|>brésilien|>britannique|>brunéien|>bulgare|>burkinabé|>burundais|>cambodgien|>camerounais|>canadien|>capverdien|>centrafricain|>chilien|>chinois|>chypriote|>colombien|>comorien|>congolais|>nord-coréen|>corse|>costaricien|>croate|>cubain|>danois|>djiboutien|>dominicain|>égyptien|>émirati|>équatorien|>érythréen|>estonien|>espagnol|>étatsunien|>états-unien|>étasunien|>éthiopien|>fidjien|>finlandais|>formosan|>français|>gabonais|>gambien|>géorgien|>ghanéen|>grec|>grenadien|>guadeloupéen|>guatémaltèque|>guinéen|>équato-guinéen|>guyanien|>haïtien|>hondurien|>hollandais|>hongrois|>indien|>indochinois|>indonésien|>irakien|>italien|>iranien|>irlandais|>islandais|>israélien|>ivoirien|>jamaïcain|>japonais|>jordanien|>kazakh|>kényan|>kosovar|>koweïtien|>laotien|>lapon|>letton|>libanais|>libérien|>libyen|>liechtensteinois|>lituanien|>luxembourgeois|>macédonien|>maghrébin|>malgache|>malaisien|>malawite|>maldivien|>malien|>maltais|>maori|>marocain|>martien|>mauricien|>mauritanien|>mexicain|>micronésien|>moldave|>monégasque|>monténégrin|>mongol|>mozambicain|>namibien|>népalais|>nicaraguayen|>nigérien|>nigérian|>néerlandais|>norvégien|>néo-zélandais|>ougandais|>ouzbek|>pakistanais|>palestinien|>panaméen|>paraguayen|>perse|>péruvien|>philippin|>polonais|>polynésien|>portugais|>québécois|>qatari|>roumain|>russe|>rwandais|>saoudien|>scandinave|>salvadorien|>sénégalais|>serbe|>singapourien|>slovaque|>slovène|>somalien|>soudanais|>soviétique|>srilankais|>suédois|>suisse|>surinamais|>syrien|>sud-africain|>sud-coréen|>américain|>tadjik|>tanzanien|>tchadien|>tchèque|>thaïlandais|>togolais|>tahitien|>tunisien|>turkmène|>turc|>taïwanais|>ukrainien|>uruguayen|>vénézuélien|>vietnamien|>yéménite|>yougoslave|>zaïrois|>zambien|>zimbabwéen]
        <<- /maj/ \1.istitle() and morph(<1, ":N", ":(?:A|V0e|D|R|B|X)") -1:>> =\1.lower()          # S’il s’agit d’un adjectif, ne mettez pas de majuscule.
        <<- /maj/ \1.islower() and not \1.startswith("canadienne") and
            ( value(<1, "|certains|certaines|ce|cet|cette|ces|des|les|nos|vos|leurs|quelques|plusieurs|chaque|une|aux|la|ma|ta|sa|")
            or ( morph(<1, ":B") and not morph(<2, ">numéro/") )
            or ( value(<1, "|l’|") and morph(\1, ":N.*:f:[si]") )
            or ( value(<1, "|de|d’|") and morph(<2, ">(?:beaucoup|énormément|multitude|tant|tellement|poignée|groupe|car|bus|équipe|plus|moins|pas|trop|majorité|millier|million|centaine|dizaine|douzaine|combien|photo|complot|enlèvement|témoignage|viol|meurtre|assassinat|duel|tiers|quart|pourcentage|proportion|génération|portrait|rencontre|reportage|parole|communauté|vie|rassemblement|bataillon|armée|émigration|immigration|invasion|trio|couple|famille|descendante|action|attente|désir|souhait|vote|volonté)/") )
            or ( value(<1, "|un|") and not value(<2, "|dans|numéro|") and not after("(?:approximatif|correct|courant|parfait|facile|aisé|impeccable|incompréhensible)") ) )
        -1>> =\1.capitalize()                                                                       # S’il s’agit d’un gentilé, mettez une majuscule.

    [un|une|certains|certaines|ce|cet|cette|ces|le|la|les|l’|des|quelques|plusieurs|chaque] [>européen|>parisien|>lyonnais|>marseillais|>lillois|>toulousain|>nantais|>strasbourgeois|>montpelliérain|>bordelais|>bruxellois|>montréalais|>londonien|>genévois|>zurichois|>bâlois|>berlinois|>romain|>californien]
        <<- /maj/ \2.islower() -2>> =\2.capitalize()                                                # S’il s’agit d’un gentilé, mettez une majuscule.

TEST: deux {{français}}                                                 ->> Français
TEST: des {{français}} sont arrivés                                     ->> Français
TEST: c’est de conception {{Allemande}}                                 ->> allemande
TEST: une référence aux {{israéliens}}
TEST: une {{érythréenne}}
................................................................................

    >homme d’ église
        <<- /maj/ \3.islower() -3>> Église                          # Lorsqu’on parle de l’institution, une majuscule est requise. Pour un bâtiment, pas de majuscule.

    [>chef|>rite|>sacrement] de l’ église
        <<- /maj/ \4.islower() -4>> Église                          # Lorsqu’on parle de l’institution, une majuscule est requise. Pour un bâtiment, pas de majuscule.

    [*WORD|*WORD_ELIDED] [Église|Églises] [>baroque|>gothique|>roman|~^Saint-[A-ZÉÊ]]
    ,                    [Église|Églises] [>baroque|>gothique|>roman|~^Saint-[A-ZÉÊ]]
        <<- /maj/ -2:>> église                                      # Pour un bâtiment, une minuscule est requise. La majuscule est pour l’institution.

TEST: L’{{église}} orthodoxe.                                           ->> Église
TEST: un homme d’{{église}}                                             ->> Église
TEST: les sacrements de l’{{église}}                                    ->> Église
TEST: Une {{Église}} baroque.                                           ->> église
TEST: L’{{Église}} Saint-Paul.                                          ->> église
................................................................................
    à but ?non¿ lucratif
    à canon [court|long|scié]
    à cause [de|d’]  [ça|cela|ceci|moi|toi|lui|nous|vous|elle|elles|eux|iel|iels]
    à ce [compte-là|moment-là|titre]
    à certains égards
    à cet égard
    à cet instant ?[exact|précis]¿
    à cette [date|occasion] ?fatidique¿
    à cette époque
    à cette époque de l’ année
    à cette heure
    à cette heure du jour
    à cette heure de la [journée|nuit]
    à cette heure [tardive|matinale]
    à ciel ouvert
................................................................................
    à l’ [un|une] des leurs
    à la [bourre|con|coule|dérobée|diable|fois|leur|manque|mords-moi-le-nœud|papa|ramasse|renverse|redresse|rescousse|sauvette|volée]
    à la bonne franquette
    à la limite du supportable
    à la lumière de tout [ceci|cela|ça]
    à la mords-moi le nœud
    à la petite semaine
    à la pointe du progrès ?[algorithmique|écologique|industriel|informatique|social|spatial|technique|technologique]¿
    à la première occasion
    à la queue leu leu
    à la surprise générale
    à la virgule près
    à [un|cet|l’] instant t
    à ?[très|si]¿ large spectre
    à ?[très|si]¿ long terme
................................................................................
    à rude épreuve
    à s’ y méprendre
    à somme nulle
    à spectre ?[très|si]¿ large
    à strictement parler
    à tarif réduit
    à tarifs réduits
    à taux [>fixe|>variable|zéro|nul+s]
    à tel point
    à temps  [plein|partiel|complet]
    à tête reposée
    à tire d’ [aile|ailes]
    à [tire-d’aile|tire-d’ailes]
    à titre  [conservatoire|expérimental|indicatif|informatif|grâcieux|personnel|posthume]
    à titre  d’ exemple
................................................................................
    au bas mot
    au beau fixe
    au bon moment
    au bout du [compte|rouleau]
    au bout d’ un moment
    au cas par cas
    au commencement
    ?bien¿ au contraire
    au coude à coude
    au coup par coup
    au cours de l’ [heure|année] ?passée¿
    au cours de l’ an  ?passé¿
    au cours de la [seconde|minute|journée|semaine] ?passée¿
    au cours du [mois|siècle|millénaire] ?passé¿
    au cours des [secondes|minutes|heures|journées|semaines|années] ?passées¿
................................................................................
    du haut en bas
    du même [acabit|coup|ordre|tonneau]
    du moins ?,¿ pas
    du [nord|sud] au [nord|sud]
    du tout au tout
    eh bien
    en \d\d+ [ans|années|mois|semaines|jours|heures|minutes|secondes]
    en [aparté|apparence|arrière|avance|avant|cachette|ceci|cela|clair|commun|conséquence|continu|contrebas|contrepartie|dedans|définitive|détail|direct|douce|effet|émoi|filigrane|général|goguette|hâte|majorité|outre|pâmoison|parallèle|partie|particulier|permanence|personne|pratique|prime|privé|principe|priorité|public|retour|revanche|rien|rogne|route|secret|silence|somme|suspens|théorie|trompe-l’œil|vain|vérité]
    en réalité ?[augmentée|virtuelle]¿
    en aucun cas
    en aucune [circonstance|façon|manière]
    en ?[assez|très]¿ bas âge
    en ?[assez|très]¿ bon état ?général¿
    en ?[assez|très]¿ bon état de [fonctionnement|marche]
    en ?[assez|très]¿ bonne [compagnie|place|posture|voie]
    en bonne et due forme
    en bonne santé ?[physique|mentale|psychique]¿
    en bout de course
    en cas [de|d’] [besoin|doute|urgence]
    en cas [de|d’] nécessité ?[absolue|impérieuse]¿
    en [chacun|chacune] [de|d’] [nous|vous|eux|elles]
    en chair et en os
    en chute libre
    en comparution immédiate
    en ?parfaite¿ connaissance [de|d’] cause
    en contrebas
    en coupe réglée
................................................................................
    en d’ autres temps et d’ autres lieux
    en [de|d’] [semblables|telles] circonstances
    en début [de|d’] [journée|matinée|soirée|après-midi]
    en définitive
    en dehors [de|d’] ?tout¿ [ça|cela|ceci]
    en dents [de|d’] scie
    en dernier [lieu|recours|ressort]
    en dépit du bon sens ?élémentaire¿
    en dépit du bon sens le plus élémentaire
    en désespoir [de|d’] cause
    en détention provisoire
    en direction [de|d’] l’ [est|ouest]
    en direction du [nord|nord-est|nord-ouest|sud|sud-est|sud-ouest]
    en eau ?peu¿ profonde
    en eaux troubles
    en état [de|d’] choc ?circulatoire¿
................................................................................
    en règle générale
    en roue libre
    en second lieu
    en sens inverse
    en si peu [de|d’] temps
    en situation [irrégulière|régulière]
    en sous-main
    en tant que >tel
    en tête à tête
    en temps et en heure
    en temps [normal|opportun|ordinaire|utile|voulu]
    en terrain [découvert|miné]
    en termes choisis
    en terre battue ?[claire|ocre|jaune|rouge|noire|sombre|humide|sèche|maculée|sale|dégueulasse]¿
    en toile [de|d’] fond
................................................................................
    jusqu’ à preuve du contraire
    jusqu’ à la fin [de|d’] [mes|tes|ses|nos|vos|leurs] jours
    jusqu’ à la fin des temps
    jusqu’ à la tombée [de|d’] la nuit
    jusqu’ à la dernière [minute|seconde]
    jusqu’ à [mon|ton|son|notre|votre|leur] dernier souffle
    jusqu’ à [mon|ton|son|notre|votre|leur] dernier souffle [de|d’] vie
    jusqu’ à ce que mort s’ ensuive
    jusqu’ à ce que [j’|il|elle|on] en sache plus
    jusqu’ à ce que tu en saches plus
    jusqu’ à ce que nous en sachions plus
    jusqu’ à ce que vous en sachiez plus
    jusqu’ à ce que [ils|elles] en sachent plus
    jusque-là


    ?[de|d’]¿ là
    ?[de|d’]¿ là-bas
    ?[de|d’]¿ là-haut
    ?[de|d’]¿ là-dedans
    ?[de|d’]¿ là-dehors
    ?[de|d’]¿ là-derrière
    ?[de|d’]¿ là-dessous
    ?[de|d’]¿ là-dessus
    ?[de|d’]¿ là-devant
    ?[de|d’]¿ là non plus
    la fleur au fusil
    la main dans la main
    la mort dans l’ âme
    la plupart du temps
    la queue entre les jambes
    le cas échéant
    le moins du monde
    le moment venu
    le [moins|plus] [tôt|tard|souvent] ?possible¿
    le [moins|plus] [de|d’] [temps|monde] possible
    le [moment|jour] venu
    les [uns|unes] des autres
................................................................................
    sans crier gare
    sans difficulté ?[apparente|aucune|financière|majeure|particulière]¿
    sans dire mot
    sans en avoir conscience
    sans états d’ âme
    sans [m’|t’|s’|nous|vous] en apercevoir
    sans [m’|t’|s’|nous|vous] en rendre compte
    sans [me|m’|te|t’|se|s’|nous|vous] faire [attendre|avoir|comprendre|désirer|entendre|prier|remarquer|repérer|surprendre|voir]
    sans faire [de|d’] vagues
    sans foi ?,¿ ni loi
    sans [le|l’] faire exprès
    sans [le|l’] vouloir
    sans l’ aide [de|d’] personne
    sans l’ ombre d’ un doute
    sans mot dire
................................................................................
    sans y [réfléchir|songer|penser] à [deux|2] fois
    sans y faire attention
    sans y prendre [garde|goût|gout|ombrage]
    sauf >erreur [de|d’] [ma|ta|sa|notre|votre|leur] part
    secondo
    selon toute vraisemblance
    sens dessus dessous
    >seul à >seul
    s’ il le [faut|fallait|faudra|faudrait]
    si [bas|haut|longtemps|nécessaire|possible|soudain]
    si [cela|ça|ceci] ne tenait qu’ à [moi|toi|lui|eux|elle|elles|nous|vous|iel|iels]
    si besoin est
    si le besoin s’en [fait|faisait] sentir
    si le besoin [doit|devait] s’en faire sentir
    si tel est le cas
................................................................................
    sur [mon|ton|son|notre|votre|leur] [trente-et-un|31]
    sur [mon|ton|son|notre|votre|leur] trente et un
    sur ce ,
    sur ce plan-là
    sur la forme comme sur le fond
    sur la même longueur d’ onde
    sur le [long|moyen|court] terme
    sur le pied de guerre
    sur le qui-vive
    sur-le-champ
    surtout
    séance tenante
    s’ il [te|vous] [plaît|plait]
    tant bien que mal
    tant de fois
    tant s’ en faut
    tantôt
    tard
    tertio
    toujours
    tour à tour
    tous comptes faits
    tous frais payés
    tout [bonnement|simplement]
    tout au plus
    tout aussi bien
    tout bien [considéré|réfléchi]
    tout compte fait
................................................................................
    tout du long
    tout feu ?,¿ tout >flamme
    tout le temps
    tout à [fait|coup]
    tout à l’ heure
    toutefois
    toute affaire cessante
    toute honte bue
    toutes affaires cessantes
    toutes choses égales par ailleurs
    toutes griffes dehors
    toutes proportions gardées
    trait pour trait
    très ?[bas|haut|bien|mal]¿
    tôt
................................................................................
        <<- ~1:-2>> ␣
        <<- =>> define(\1, [":R:LR"])

    tout au long [de|du|d’|des]
        <<- not morph(<1, ":R") ~1>> *

    à travers $:D
    à travers >différent
        <<- ~1:2>> ␣
        <<- =>> define(\1, [":R:LR"])

    ainsi
        <<- not value(>1, "|que|qu’|") ~>> *

    au moins  @:[DB]
................................................................................
    abus [de|d’] pouvoir
    >accusé de reception
    >acte [de|d’] [baptême|caution|cautionnement|cession|contrition|licitation|mariage|naissance|notoriété|propriété|quittance|reconnaissance|répudiation|vente]
    >acte d’ [achat|engagement]
    >acte de gestion ?courante¿
    >acte de procédure ?pénale¿
    >acte d’ état ?civil¿
    >administrateur >système
    >agence de >voyage
    >aire d’ atterrissage
    >animal [de|d’] compagnie
    >appel au secours
    >appel à l’ aide
    >arc à poulies
    >arme à feu
    >armée [de|d’] l’ air
    >armée [de|d’] terre

    >arme [de|d’] [poing|guerre]
    >arme [de|d’] destruction massive
    >armoire à [>glace|>pharmacie]
    >argent [de|d’] poche
    >arnaque à l’ assurance
    >article [de|d’] presse
    >assignation à résidence
    >attaque à main armée
    >attestation sur l’ honneur
    >atteinte aux bonnes mœurs

    >avion à [>hélice|réaction]
    ayants droit
    >banc [de|d’] touche
    >bandit [de|d’] grand chemin
    >bandit [de|d’] grands chemins
    bas résille
    >benne à >ordure
    [>beauté|>beau] à couper le souffle
    >bête à [manger|bouffer] du foin
    >billet [de|d’] [*NUM|$:B] [>euro|>dollar|>centime|>cent|>livre|>shilling]
    [>bisphénol|>bisphenol] A
    >blanc comme neige
    >blanc comme [de|d’] la craie
    >blanc comme un linge
    [>boîte|>boite] [aux|à] lettres
    [>boîte|>boite] à [gants|outils|sardines]
    >bombe à [eau|fission|fusion|fragmentation|hydrogène|neutrons|retardement]
    >bombe à rayonnement renforcé
    >bonnet [de|d’] nuit
    >bon à rien
    >boucle d’ >oreille
    bras d’ honneur
    >brave ?d’¿ entre les braves
    >brosse à [>dent|reluire]
    >cabinet [de|d’] [toilette|travail]
    >camp [de|d’] [concentration|internement|rééducation|vacances]
    >canne à [pêche|sucre]
................................................................................
    >chair [de|d’] poule
    >chambre à [coucher|gaz]
    >chambre [de|d’] [agriculture|hôte|hôtel|hôtes|commerce|compensation|décompression|dégrisement]
    [>chariot|>charriot] à [bagages|roulettes]
    >chasse à courre
    >chasse à l’ homme
    >chasse d’ eau
    >chasseur [de|d’] primes
    >chemin [de|d’] [traverse|fer]
    >chemise sans >manche
    >chèque sans provision
    >chili con carne
    >chou à la crème ?[fouettée|diplomate|mousseline|patissière|pralinée]¿
    >clair comme [de|d’] l’ eau [de|d’] [boudin|roche|source]
    >clair comme du cristal
    >clair comme jus [de|d’] [boudin|>chaussette|chique]
    >classement sans suite
    [>clé|>clef] à molette
    >clin d’ œil
    >clause [de|d’] [confidentialité|non-concurrence]
    >clause [de|d’] non concurrence
    >code [de|d’] ?bonne¿ conduite
    >commis d’ office
    >compagne [de|d’] route
    >compagnon [de|d’] route
    >complémentaire santé
    >compte à rebours
    concours de beauté
    >condamné à mort
    >conférence [de|d’] presse
    >con comme la lune
    >con comme un balai
    >con comme une valise sans >poignée
    >conseiller d’ orientation [scolaire|professionnelle]
    >contrôle [de|d’] routine
    >convention [récepteur|générateur]
    >corvéable à merci
    >coup [de|d’] [avance|balai|barre|bâton|bec|bélier|bite|blues|bol|botte|boule|boutoir|cœur|chaud|coude|couteau|dé|dent|déprime|éclat|épaule|épée|estoc|État|foudre|fil|froid|genou|grâce|>griffe|grisou|gueule|hache|hanche|jarnac|jeune|jus|klaxon|main|maître|maitre|marteau|massue|nostalgie|œil|patte|pied|poignard|poing|poker|pouce|pute|queue|rabot|rein|sabre|sabot|sang|savate|semonce|sifflet|soleil|surin|tête|théâtre|tonnerre|trique|torchon|vent|vieux]
    >coup [de|d’] baguette ?magique¿
    >coup du sort
    >coup d’ un soir
................................................................................
    >délai [de|d’] [attente|carence|connexion|prescription|préavis|rétraction|rigueur]
    >demande d’ asile
    >descente aux [enfers|flambeaux]
    [>dîner|>diner] aux chandelles
    >digne [de|d’] [confiance|foi]
    >digne [de|d’] ce nom
    >don en nature
    >dossier [de|d’] presse
    >droit comme un i
    >eau [de|d’] [bouleau|bleuet|chaux|coco|javel|jouvence|mer|parfum|pluie|seltz|source|vie]
    >eau [de|d’] noix [de|d’] coco
    >économie de >bout de >chandelle
    >élément à charge
    >emploi du temps
    >enterrement [de|d’] vie [de|d’] garçon
    >enterrement [de|d’] vie [de|d’] jeune fille
    >entrée [de|d’] service
    >épée à deux mains
    >épingle à cravate
................................................................................
    >file d’ attente
    >fille à [papa|maman|>soldat]
    >fille au pair
    fils à [papa|maman]
    fils [de|d’] pute
    >fleuve à sec
    >flocon [de|d’] neige ?électronique¿
    >fou à lier
    >fontaine à eau
    >fosse à [merde|>ordure|purin]
    >fosse aux lions
    [>fourgon|>fourgonnette] de location
    >frayeur [de|d’] tous les diables
    >frousse [de|d’] tous les diables
    >fusil à pompe
    >garde à vue
    >garde du corps
    gaz à >effet [de|d’] serre
    >gilet de sauvetage
    >grain [de|d’] [blé|maïs|sable]
    >grève de la faim
    >groupe de [discussion|parole|prière|pression|travail]
    >guerre éclair
    >hall d’ entrée
    >harcèlement de rue
    >haut comme [trois|3] pommes
    >heure [sup|sup’]
    >histoire à dormir debout
    >histoire avec un [grand|petit] h
    >homme [de|d’] [affaires|armes|confiance|exception|État|Église|honneur|lettres|loi|main|paille]
    >homme d’ âge mûr
    >homme à tout faire
    >horaire à rallonge
    >hôtel [de|d’] ville
    >hôtesse d’ accueil




    >infirmier [de|d’] garde
    >inspection [de|d’] routine
    >instinct de survie
    >interface [utilisateur+s]
    >invité d’ honneur
    >invité surprise
    >journal [de|d’] bord
    >juge d’ instruction
    >langue de bois
    >lame de fond
    >lettre [de|d’] recommandation
    >lampe à [huile|pétrole]
    >lampe [de|d’] chevet
................................................................................
    >machine [de|d’] guerre
    >maillot [de|d’] bain
    >main d’ œuvre
    >maison à colombages
    >maison [de|d’] [passe|retraite]
    >mal [de|d’] [tête|ventre|mer]
    >mandat [de|d’] [arrêt|dépôt]
    >marchand [de|d’] fruits et légumes
    >marché aux puces
    >maréchal des [logis|logis-chef]
    >marin d’ eau douce
    >marge [de|d’] >manœuvre
    >marque [de|d’] fabrique
    >masque à [gaz|oxygène]
    >matière à réflexion
    >médecin [de|d’] garde
    >mère au foyer
    >metteur en scène
    >mineur [de|d’] moins [de|d’] *NUM ans
    >mineur [de|d’] moins [de|d’] $:B ans
    >miroir aux alouettes
    >mode [de|d’] [emploi|paiement|scrutin|vie]
    >monnaie [de|d’] [échange|réserve|singe]
    >montre à gousset
    >mot [de|d’] passe
    >moteur [>essence|>diésel|>diesel]
    >motion [de|d’] [blâme|censure|défiance]
    >moule à [>gaufre|>gâteau|brioche|manqué|savarin|charlotte|tarte]
    >moulin à [café|eau|paroles|poivre|prières|vent]
    noix [de|d’] [cajou|pécan|pecan|coco|lavage|muscade|veau|macadamia]
    >nounou à domicile
    >nourrice à domicile
    >nu comme un ver
    >nu comme des vers
    >nul et non >avenu
    >occasion en or ?massif¿
    >oiseau [de|d’] [malheur|nuit|proie]
    >oiseau [de|d’] mauvais augure
    >onde [de|d’] choc
    orge [perlé|mondé|carré]
    >noir comme la nuit
    >noir comme une nuit sans lune
    >nuit de noces
    >panier à linge
    >papier à [>lettre|musique]
    >parc d’ attractions
    >parole en l’ air
    >partie [de|d’] jambes en l’ air
    >passage à tabac
    >passation [de|d’] pouvoir
................................................................................
    >pièce [de|d’] [théâtre|monnaie]
    >pièce [de|d’] *NUM [>euro|>dollar|>centime|>cent|>livre|>shilling]
    >pince à linge
    >placard à [>balai|chaussures]
    >plan [A|B|C]
    >planche [de|d’] salut
    >planche à repasser
    >plein aux as
    >police [de|d’] [caractères|écriture]
    >politique spectacle
    >pomme [de|d’] [discorde|terre|reinette|pin|Adam|api|amour|ambre|eau|or]
    >pompe à [chaleur|essence|fric]
    >porte [de|d’] [entrée|service|garage|sortie]
    >porte d’ entrée
    >pot [de|d’] [chambre|colle]
................................................................................
    >rouge à lèvres
    >roulement à billes
    [>ru|>ruisseau] à sec
    >sac à [bandoulière|dos|main|langer|merde|foutre]
    >sac [de|d’] [couchage|sport|voyage]
    >salle à manger
    >salle [de|d’] [attente|>bain|conférence|lecture|séjour|vente]
    >sain [de|d’] [corps|esprit]
    >sain [de|d’] [corps|esprit] et [de|d’] [corps|esprit]
    >sclérose en plaques
    [secret+s] défense
    >sel [de|d’] [aluminium|ammonium|mer]
    >serpent à sonnette
    >seuil de tolérance
    >seuil de tolérance à la douleur
    >silo à [>grains|blé]
    >soldat d’ élite
    >sonnette d’ alarme
    >sortie [de|d’] secours
    >soue à >cochonne
    >sourd comme un pot
    >système d’ exploitation
    >système D
    >tableau de chasse
    >table à repasser
    >table de chevet
    >taille *NUM
    tas [de|d’] >ferraille ?rouillée¿
................................................................................
    >talon >aiguille
    taux [de|d’] [abstention|absorption|alcool|alphabétisation|endettement|inflation|intérêt|imposition|occupation|ouverture|œstrogène|urée|usure|change|cholestérol|cholesterol|glycémie|fécondité|participation|testostérone|TVA]
    >témoin à charge
    tenants et aboutissants
    >ténor du barreau
    >tête à claques
    >tête [de|d’] [linotte|déterré|déterrée|déterrés|déterrées|mule]
    >têtu comme une [bourrique|mule]
    >têtu comme un [âne|bourriquot|mulet]
    >terrain à découvert
    >tigre à dents [de|d’] sabre
    >tir de barrage
    >tiret d’ incise
    >tireur d’ élite
    >titre [de|d’] [noblesse|propriété|séjour]
    >tondeuse à gazon
    >tour [de|d’] passe-passe
    >torrent à sec
    >train à grande vitesse
    >traitement [de|d’] faveur
    >transport en commun
    >trou à >rat
    >trouble à l’ ordre public
    >t-shirt sans >manche
    >tueur à gages
    >tueur en série
    >turbine à [gaz|vapeur]
    >usine à gaz
    >vache à lait
    >vague à l’ âme
    >vecteur [>accélération|>position|>rotation|>vitesse]
    >véhicule de location
    >vente à domicile
    >vente aux enchères
    >vérification de routine
    vernis à ongles
    >verre à pied
    >voie [de|d’] [recours|perdition]
................................................................................
    >volée de bois vert
    >voiture de location
    >zone [de|d’] confort
    >zone [de|d’] transit ?principal¿
        <<- ~2:0>> *
        <<- =>> =select(\1, ":N")

    >mort de trouille
        <<- ~2:0>> *

    [>homme|>femme|>cinéaste|>politicien|>acteur|>auteur|>sculpteur|>compositeur|>musicien|>groupe|>romancier|>peintre|>photographe|>sportif|>philosophe|>intellectuel|>polémiste] à succès
    [>homme|>femme] d’ >affaire à succès
        <<- ~-2:0>> *

    >calibre . *NUM ?[acp|auto|brenneke|browning|british|colt|court|H&K|magnum|mauser|otan|remington|parabellum|russian|S&W|sig|soviet|special|wcf|wsm|winchester]¿
    >calibre . *NUM long rifle
    >calibre *NUM ?[mm|in]¿
    >calibre *NUM [*|×] *NUM ?[mm|in]¿
................................................................................


__purge_couleurs__
    [beige|blanc|bleu|brun|châtain|cyan|gris|incarnat|jaune|magenta|marron|orange|pourpre|rose|rouge|vert|violet|or|argent] [brillant|clair|criard|diapré|fluo|foncé|irisé|mat|pâle|pastel|sale|sombre|tendre|terne|vif]
    [beige|blanc|bleu|brun|châtain|cyan|gris|incarnat|jaune|magenta|marron|orange|pourpre|rose|rouge|vert|violet|or|argent] et [beige|blanc|bleu|brun|châtain|cyan|gris|incarnat|jaune|magenta|marron|orange|pourpre|rose|rouge|vert|violet|or|argent]
    blanc   [argenté|cassé|lunaire]
    bleu    [acier|argenté|azur|céleste|ciel|électrique|givré|indigo|marine|nuit|outremer|outre-mer|persan|pétrole|roi|saphir|turquin|turquoise|vert]
    blond   [argenté|platine|cuivré]
    brun    cuivré
    gris    [acier|anthracite|argenté|fer|perle|souris]
    jaune   [canari|citron|doré|maïs|paille|sable]
    noir    [de|d’] [encre|jais]
    noir    et blanc
    noir    sur blanc
    rose    [bonbon|chair|corail]
    rouge   [anglais|brique|cardinal|carmin|cerise|cochenille|coquelicot|cuivré|écarlate|feu|fraise|grenat|groseille|incarnat|indien|rubis|sang|sanguin|tomate|vermeille|vermillon]
    vert    [bouteille|céladon|émeraude|épinard|impérial|lichen|olive|perroquet|pistache|poireau|pomme|prairie|printemps|sapin|sauge|tilleul]
    couleur sable
        <<- morph(<1, ":[NA]", ":D") ~>> *
        <<- __else__ and morph(<1, ":D|>(?:être|devenir|redevenir|rester|sembler|demeurer|para[îi]tre)") ~>> ␣
        <<- __also__ =>> define(\1, [":A:e:i"])


................................................................................
    chaque [année|semaine|journée|décennie]  [<end>|,]
        <<- ~1:2>> *

    chaque [an|jour|mois]  @¬:(?:A.*:[me]:[si]|Oo|[123][sp])
    chaque [an|jour|mois]  [<end>|,]
        <<- ~1:2>> *

    d’ apparat
        <<- morph(<1, ":N", ":V") ~>> *

    d’ [avance|évidence]  @¬:A.*:[fe]:[si]
    d’ [avance|évidence]  [<end>|,]
        <<- ~1:2>> *

    d’ entrée                           @¬:A:[fe]:[si]
    d’ entrée                           [<end>|,]
        <<- ~1:2>> *
................................................................................
__purge_vite__
    vite
        <<- not (morph(<1, ":V0a") and value(>1, "|fait|")) ~>> *


__purge_locutions_verbales__
    >aller bon train
    >armer jusqu’ aux dents
    >arriver à [destination|échéance]
    >arriver à point nommé
    >arriver à bon port
    >attendre [de|d’] pied ferme
    >battre à plate couture
    >battre en [brèche|retraite]
    [>brûler|>bruler] à vif
    >charger à blanc
    >chauffer à blanc
    >compter à rebours
    >condamner à mort
................................................................................
    [>mettre|>remettre] à l’ [écart|épreuve]
    [>mettre|>remettre] au [point|pas]
    [>mettre|>remettre] de côté
    [>mettre|>remettre] en [avant|branle|bouche|demeure|évidence|garde|jeu|lumière|marche|mouvement|œuvre|place|route|scène|terre]
    >mourir jeune
    [>naître|>naitre] de la dernière pluie
    [>naître|>naitre] sous x
    >obtenir gain de cause
    >parler affaires
    >partir en vrille
    >passer à tabac
    >percer à jour
    >perdre [connaissance|conscience|patience|raison]
    >perdre d’ avance
    >piquer au vif
    >porter [assistance|atteinte|bonheur|caution|chance|malheur|plainte|préjudice|secours]
    >poser problème
    >porter plainte
    >prendre ?[ça|cela|ceci]¿ à la légère
    >prendre ?[ça|cela|ceci]¿ au [dépourvu|sérieux]
    >prendre ?[ça|cela|ceci]¿ au pied de la lettre
    >prendre bonne note
    >prendre [congé|conscience|contact|ombrage|note|peur|position|possession|racine|soin|vie]
    >prendre de [court|vitesse]
    >prendre ?[ça|cela|ceci]¿ en charge
    >prendre ?[ça|cela|ceci]¿ pour argent comptant
    >prendre par surprise
    >prêter à confusion
................................................................................
    >tenir à [carreau|cœur]
    >tenir ?[ça|cela|ceci]¿ à distance ?respectable¿
    >tenir [compte|compagnie]
    >tenir au courant
    >tenir en haute estime
    >tirer à blanc
    >tomber à [pic|point]
    >trainer en longueur
    >traîner en longueur
    >trier sur le volet
    >trouver refuge
    >tirer à blanc
    >tirer [avantage|profit]
    >tourner à l’ aigre
    >tourner court
    >venir à bout
................................................................................
    >battre a plate couture
    [>brûler|>bruler] a vif
    >charger a blanc
    >chauffer a blanc
    >fermer a [>clé|>clef]
    [>gonfler|>regonfler] a bloc
    >jeter a terre
    [>mettre|>remettre] a [bas|>flot|>jour|>niveau|>nu|>plat|>table|>terre]
    [>mettre|>remettre] a l’ [écart|épreuve]
    >passer a tabac
    >percer a jour
    >prendre a la légère
    >prêter a >confusion
    >réduire a néant
    >saigner a blanc
................................................................................
        <<- /gn/ -2>> =suggSing(\2)                                                                 # Accord de nombre erroné : “\2” devrait être au singulier.

TEST: toute l’importance de l’{{accords}} musical.


__gn_l_2m__
    l’  @:[NA]¬*  @:[NA]¬*
        <<- /gn/ not value(<1, "|et|ou|de|") and not value(\2, "|air|") and not morph(\3, ">seul/") >>>
        <<- /gn/ ( (morph(\2, ":m", "*") and morph(\3, ":f", "*")) or (morph(\2, ":f", "*") and morph(\3, ":m", "*")) ) and not apposition(\2, \3)
        -3>> =switchGender(\3, False)                                                               # Accord de genre erroné entre “\2” et “\3”.
        <<- /gn/ __also__ and hasFemForm(\2) -2>> =switchGender(\2)                                 # Accord de genre erroné avec “\3”.
        <<- /gn/ morph(\2, ":[si]", "*") and morph(\3, ":p", "*") and not apposition(\2, \3)
        -3>> =suggSing(\3)                                                                          # Accord de nombre erroné avec “\2” : “\3” devrait être au singulier.

    [et|ou|de]  l’  @:[NA]¬*  @:[NA]¬*
        <<- /gn/ not value(\3, "|air|") and not morph(\4, ">seul/") >>>
        <<- /gn/ ( (morph(\3, ":m", "*") and morph(\4, ":f", "*")) or (morph(\3, ":f", "*") and morph(\4, ":m", "*")) ) and not apposition(\3, \4) and not morph(<1, ":[NA]")
        -4>> =switchGender(\4, False)                                                               # Accord de genre erroné entre “\3” et “\4”.
        <<- /gn/ __also__ and hasFemForm(\3) -3>> =switchGender(\3)                                 # Accord de genre erroné avec “\4”.
        <<- /gn/ morph(\3, ":[si]", "*") and morph(\4, ":p", "*") and not apposition(\3, \4) and not morph(<1, ":[NA]")
        -4>> =suggSing(\4)                                                                          # Accord de nombre erroné avec “\3” : “\4” devrait être au singulier.

TEST: L’{{amande}} {{amer}}
................................................................................
            or \3 in aREGULARPLURAL
        -3>> =suggPlur(\3)                                                                  # Accord de nombre erroné : « \3 » devrait être au pluriel.

    *WORD  les  *WORD
        <<- /gn/ morph(\2, ":D")
            and ( morph(\3, ":[NA].*:s", "*") or (morph(\3, ":[NA].*:s", ":[pi]|>avoir/") and morph(\1, ":[RC]", ">(?:e[tn]|ou)/") and not (morph(\1, ":Rv") and morph(\3, ":Y"))) )
            and not (value(>1, "|et|ou|") and morph(>2, ":[NA]"))
            and not (value(\1, "|que|") and morph(<1, ">tel/") and morph(\3, ":3[sp]"))
        -3>> =suggPlur(\3)                                                                  # Accord de nombre erroné : « \3 » devrait être au pluriel.

    <start>  les  *WORD
        <<- /gn/ ( morph(\3, ":[NA].*:s", ":[ipYPGW]") and not (value(>1, "|et|ou|") and morph(>2, ":[NA]")) )
            or \3 in aREGULARPLURAL
        -3>> =suggPlur(\3)                                                                  # Accord de nombre erroné : « \3 » devrait être au pluriel.

................................................................................
TEST: Des yeux {{vert}}.
TEST: Des yeux {{marrons}}.
TEST: Des créatures marines.
TEST: Un cageot des premières cerises.


__sgpl_couleurs_composées!5__
    [>beige|>châtain|>cyan|>écarlate|>jaune|>magenta|>marron|>mauve|>orange|>pourpre|>rouge|>rose|>vermeil] [>fluo|>mat|>pâle|>pastel|>sombre|>tendre|>terne|>brillant|>clair|>vif|diapré+ses|foncé+ses|irisé+ses|cuivré+ses]
        <<- /sgpl/ morph(<1, ":N", ":D") and (not morph(\1, ":[me]:[si]") or morph(\2, ":[pf]"))
        ->> =suggSing(\1) + " " + suggMasSing(\2)
        # Les couleurs composées de plusieurs termes sont invariables.|https://fr.wikipedia.org/wiki/Accord_des_adjectifs_et_des_noms_de_couleur_en_fran%C3%A7ais

    [>blanc|>bleu|>brun|>gris|>noir|>vert|>violet] [>fluo|>mat|>pâle|>pastel|>sombre|>tendre|>terne|>brillant|>clair|>vif|diapré+ses|foncé+ses|irisé+ses|cuivré+ses]
        <<- /sgpl/ morph(<1, ":N", ":D") and (not morph(\1, ":[me]:[si]") or morph(\2, ":[pf]"))
        ->> =suggMasSing(\1) + " " + suggMasSing(\2)
        # Les couleurs composées de plusieurs termes sont invariables.|https://fr.wikipedia.org/wiki/Accord_des_adjectifs_et_des_noms_de_couleur_en_fran%C3%A7ais

    >jaune [>paille|>sable]
    >rose  [>bonbon|>chair|>corail]
    >rouge [>brique|>carmin|>cerise|>écarlate|rubis|>sang|>tomate|>vermillon]
        <<- /sgpl/ morph(<1, ":N", ":D") and (not morph(\1, ":[me]:[si]") or morph(\2, ":p"))
        ->> =suggSing(\1) + " " + suggSing(\2)
        # Les couleurs composées de plusieurs termes sont invariables.|https://fr.wikipedia.org/wiki/Accord_des_adjectifs_et_des_noms_de_couleur_en_fran%C3%A7ais

    >bleu [>ciel|>indigo|>marine|>roi|>saphir|>turquoise|>vert]
    >blond >platine
    >gris [>acier|>anthracite|>perle|souris]
    >vert [>émeraude|>olive|>pistache|>pomme]
        <<- /sgpl/ morph(<1, ":N", ":D") and (not morph(\1, ":[me]:[si]") or morph(\2, ":p"))
        ->> =suggMasSing(\1) + " " + suggSing(\2)
        # Les couleurs composées de plusieurs termes sont invariables.|https://fr.wikipedia.org/wiki/Accord_des_adjectifs_et_des_noms_de_couleur_en_fran%C3%A7ais

    >noir [de|d’] [encre|jais]
        <<- /sgpl/ not morph(<1, ":D") -1>> noir
        # Les couleurs composées de plusieurs termes sont invariables.|https://fr.wikipedia.org/wiki/Accord_des_adjectifs_et_des_noms_de_couleur_en_fran%C3%A7ais

TEST: les chapeaux {{rouges clairs}}                                        ->> rouge clair
TEST: des chaussures {{jaunes sables}}                                      ->> jaune sable|||sablent
TEST: des pantalons {{verts clairs}}                                        ->> vert clair
TEST: des robes {{bleues indigo}}                                           ->> bleu indigo
................................................................................


__sgpl_carnet_de__
    >carnet de [chèque|note|timbre|ticket|vacance]
        <<- /sgpl/ -3>> \3s                                             # Il manque un “s”. Il y en a plusieurs dans un carnet.

__sgpl_collectif_de__
    >collectif [de|d’] [artiste|agriculteur|agricultrice|architecte|automobiliste|citoyen|citoyenne|con|conne|consommateur|consommatrice|enfant|entreprise|femme|fille|garçon|homme|infirmier|infirmière|jeune|médecin|motard|motarde|musicien|musicienne|passionné|passionnée|prostitué|prostituée|touriste|travailleur|travailleuse|vieille|vieillard|vieillarde]
        <<- /sgpl/ morph(<1, ":D|<start>") -3>> \1s                     # Il manque un “s”. Il y en a plusieurs dans un collectif.

__sgpl_collection_de__
    >collection [de|d’] [autocollant|boîte|blason|bouton|carte|chaussure|écusson|étiquette|film|fossile|gravure|jeu|insecte|livre|médaille|moto|papillon|pièce|pierre|pipe|tableau|timbre|voiture]
        <<- /sgpl/ -3>> =suggPlur(\3)                                   # Il manque un “s”. Il y en a plusieurs dans une collection.

__sgpl_concours_de_circonstances__
................................................................................
TEST: Mettre à {{nus}} les hommes.
TEST: Elle s’est mise à {{nue}} devant ses sœurs.
TEST: Une mise à nu douloureuse.


# affaires
__sgpl_affaires__
    [>chiffre|>homme|>femme|>centre|>chargé]  d’ affaire
        <<- /sgpl/ -3>> affaires                                            # Dans “\1 d’affaires”, toujours mettre “affaires” au pluriel.

    >faire affaires avec
        <<- /sgpl/ -2>> affaire                                             # Dans la locution “Faire affaire avec”, “affaire” est au singulier.

    >faire affaire [à|en] ~^[A-ZÉÈÂ]
        <<- /sgpl/ morph(\4, ":(?:N|MP)") -2>> affaires                     # Ajoutez un “s” à « affaire ».
................................................................................
__sgpl_demi_demie__
    [>année|>semaine|>journée|>heure|>minute|>seconde|>bouteille|>caisse|>cuillère|>page|>remorque|>tasse|>tonne] et [demi|demis|demies]
        <<- /sgpl/ -3>> demie                           # « Une et demie », « deux et demie », etc.

    [>millénaire|>siècle|>an|>jour|>degré|>kilo|>litre|>mètre|>wagon] et [demie|demis|demies]
        <<- /sgpl/ -3>> demi                            # « Un et demi », « deux et demi », etc.

    >demi [>douzaine|>cercle|>litre|>millénaire|>siècle|>journée|>heure|>sœur|>frère|>fin|>sel|>final|>centre|>million|>pension|>portion|>mot|>mort|>longueur|>page|>mesure|>écrémer|>tour|>teinte]
        <<- /sgpl/ ->> demi-\2                          # Pour la moitié de “\2”, écrivez “demi-\2”.

TEST: nous avons rendez-vous dans une heure et {{demi}}
TEST: Deux mètre et {{demis}}.
TEST: achète une {{demie douzaine}} d’œufs.

__sgpl_à_demi__
................................................................................
    [>avoir|>perdre]  pieds
        <<- /sgpl/ -2>> pied                                        # Locution “\1 pied” : écrivez “pied” au singulier.

    à pieds
        <<- /sgpl/ not before("(?i)\\b(?:lit|fauteuil|armoire|commode|guéridon|tabouret|chaise)s?\\b") and not morph(>1, ">sculpter/")
        -2>> pied                                                   # Location “à pied” : écrivez “pied” au singulier.|https://fr.wiktionary.org/wiki/%C3%A0_pied

    [à|aux] >pied >levé
        <<- /sgpl/ ->> au pied levé                                 # Locution adverbiale invariable.

TEST: ils ont tout simplement perdu {{pieds}}
TEST: ils y sont allés à {{pieds}}.
TEST: Elles ont accompli l’impossible, et de surcroît {{aux pieds levés}}


................................................................................
TEST: ils mangent {{vites}}.
TEST: elles sont {{vites}} parties.
TEST: elles sont vites.


# voir clair
__sgpl_voir_clair__
    >voir >clair
        <<- /sgpl/ \2 != "clair" and \2 != "Claire" -2>> clair      # Dans la locution “voir clair”, “clair” est un adverbe, donc invariable. (Mais peut-être confondez-vous “voire” et “voir” ?)

TEST: Ils y voient {{clairs}}.
TEST: Il vit Claire au théâtre.
TEST: J’y vois clair, mec.


................................................................................
TEST: Ces gens-là ne feront jamais {{amande honorable}}.
TEST: achète de la pâte d’{{amende}}
TEST: feront-ils {{amande honorable}}


# annales / anal-e-s
__conf_annales_anales__
    >anal [>littéraire|>politique|>ecclésiastique]
    >anal du [baccalauréat|bac|brevet]
    >anal de [>physique|>chimie|>mathématique|>biologie|>géographie|>philosophie]
    >anal d’ [>histoire|>économie]
        <<- /conf/ -1>> annales                         # Confusion : “\1” est l’adjectif relatif à l’anus.|http://fr.wiktionary.org/wiki/annales

    [les|ces|des|mes|tes|ses|nos|vos|leurs|plusieurs] >anal
        <<- /conf/ -2>> annales                         # Confusion : “\2” est l’adjectif relatif à l’anus.|http://fr.wiktionary.org/wiki/annales

TEST: {{anales}} du bac
TEST: des {{anales}} littéraires
TEST: il a bachoté les {{anales}}.


# air / aire / ère
__conf_air_aire_ère__
    [>air|>aire] [>digital|>numérique|>industriel|>glacière|>glaciaire|>géologique|Meiji|>cénozoïque|>moderne|>paléozoïque|>pliocène|>primaire|>secondaire|>tertiaire|>quaternaire]
    [>air|>aire] du [cénozoïque|digital|numérique|paléozoïque|pliocène|pétrole|primaire|secondaire|tertiaire|quaternaire]
    [>air|>aire] du big data
        <<- /conf/ -1>> ère|ères    # Confusion. L’aire est une surface. L’air est un gaz, une apparence ou une musique. Pour évoquer une époque, écrivez “ère”.

    l’ [aire|ère] du temps
        <<- /conf/ -2>> air         # Confusion probable. Locution “l’air du temps”.|https://fr.wiktionary.org/wiki/%C3%AAtre_dans_l%E2%80%99air_du_temps

................................................................................
    >baptême de l’ [ère|aire]
    >libre comme l’ [ère|aire]
        <<- /conf/ --1>> air        # Confusion. Une ère est une époque. L’aire est une surface. Pour parler de l’atmosphère, écrivez “air”.|https://fr.wiktionary.org/wiki/air

TEST: L’{{aire}} du pétrole n’est pas encore terminée.
TEST: Ce sera un jour dans l’{{ère}} du temps
TEST: il a l’{{aire}} d’un plouc.
TEST: il en a tout l’{{ère}}
TEST: on s’arrêtera sur l’{{air}} d’autoroute
TEST: baptême de l’{{aire}}


# auspice / hospice
__conf_auspices_hospices__
    sous [les|de|des|ces] ?*WORD¿ hospices
................................................................................
    [>être|>aller|>rester|>demeurer|>partir]  [à|dans|de]  l’ auspice
        <<- /conf/ -4>> hospice         # Confusion. Les auspices sont des présages, des devins ou, au sens moderne, les circonstances.|https://fr.wiktionary.org/wiki/auspice

    dans [un|cet|les|des|ces|quel|quels] >auspice
        <<- /conf/ -3>> =\3.replace("auspice", "hospice")
        # Confusion. Les auspices sont des présages, des devins ou, au sens moderne, les circonstances.|https://fr.wiktionary.org/wiki/auspice

    >auspice pour [>vieillard|vieux|>sénior|>senior|>personne|>enfant|>orphelin|>femme|>aliéné|>incurable|>indigent|>malade|>pauvre]
        <<- /conf/ -1>> =\1.replace("auspice", "hospice").replace("Auspice", "Hospice")
        # Confusion. Les auspices sont des présages, des devins ou, au sens moderne, les circonstances.|https://fr.wiktionary.org/wiki/auspice

TEST: sous les {{hospices}} du conseil général de la nation.
TEST: sous de terribles {{hospices}}
TEST: Elles vont souvent à l’{{auspice}}.
TEST: Dans cet {{auspice}}, la nourriture est abominable.
................................................................................
        <<- /conf/ -1>> =\1.replace("ite", "itte")                      # Confusion. Bitte d’amarrage.

    [ma|ta|sa|notre|votre|nos|vos|leur|leurs|grande+s|grosse+s|petite+s|longue+s|>énorme|>minuscule|>sale] >bitte
    >être [une|des] >bitte
    [>aimer|>adorer|>astiquer|>avaler|>bouffer|>branler|>fourrer|>lécher|>mettre|>mordre|>pomper|>sucer] $:D >bitte
        <<- /conf/ --1>> =\-1.replace("itte", "ite")                    # Confusion probable. Si vous parlez de pénis, écrivez “bite” (terme argotique).|https://fr.wiktionary.org/wiki/bite

    >bitte [>circoncis|>dégueulasse|>dur|>mou|>puant|>raide|>répugnant|>sale|vidé+ses]
        <<- /conf/ -1>> =\1.replace("itte", "ite")                      # Confusion probable. Si vous parlez de pénis, écrivez “bite” (terme argotique).|https://fr.wiktionary.org/wiki/bite

TEST: les mouettes sur les {{bites}} d’amarrage.
TEST: on se fout de savoir ce qu’ils font avec leurs {{bittes}}.
TEST: il m’a mis sous le nez une {{bitte}} répugnante.


# bonne et due forme / bonnet difforme / bon uniforme
__conf_en_bonne_et_due_forme__
    en >bon >uniforme
    en >bonnet >difforme
    en >bon et [du+ses] >forme
        <<- /conf/ ->> en bonne et due forme                            # Locution “en bonne et due forme” (invariable).|https://fr.wiktionary.org/wiki/en_bonne_et_due_forme

TEST: une raclée {{en bonnes et dues formes}}
TEST: remplir son formulaire en bonne et due forme, c’est le minimum pour espérer un retour positif.


## s’en / c’en
................................................................................

TEST: on va expédier ce {{coli}} vite fait bien fait.
TEST: un {{coli}} oublié à la gare.


# courant / courent
__conf_courant_courent__
    [courent|courrent] [alternatif+s|>atmosphérique|>continu|>électrique|>équatorial|marin+s|>océanique|>triphasé]
    [courent|courrent] [d’|de] [>air|>eau|Foucault|>marée|>surface]
        <<- /conf/ not value(<1, "|ils|elles|iels|ne|eux|") -1>> courant     # Confusion probable. Écrivez “courant”.|https://fr.wiktionary.org/wiki/courant

TEST: Un fort {{courent}} électrique
TEST: il y a un {{courent}} d’air dans cette salle.


................................................................................

TEST: ces saloperies coûtent vraiment {{chères}} !
TEST: elles payent {{chairs}} !


# chair / chère
__conf_faire_bonne_chère__
    >faire  >bon  [cher+s|chères|>chair|>chaire]
        <<- /conf/ -2:3>> bonne chère                   # Confusion. « Faire bonne chère » signifie bien manger, ripailler.

TEST: ils ont fait {{bonne chaire}}.


# chant / champ
__conf_Chandeleur__
................................................................................
        <<- /conf/ -3>> côlon                           # Confusion : le côlon est un segment du gros intestin, le colon colonise.

TEST: Il a le cancer du {{colon}}.


# censé / sensé
__conf_censé_sensé__
    >être >sensé [ne|n’|le|la|l’|les|en|me|m’|te|t’|se|s’|nous|vous|lui|leur|y]        $:Y
    >être >sensé ?[ne|n’]¿ [le|la|l’|les|en|me|m’|te|t’|se|s’|nous|vous|lui|leur|y]    $:Y
    >être >sensé ?[ne|n’]¿ [me|m’|te|t’|se|s’|nous|vous] [le|la|l’|les|en|y]           $:Y
    >être >sensé ?[ne|n’]¿ [le|la|l’|les]                [lui|leur|en|y]               $:Y
    >être >sensé ?[ne|n’]¿ [lui|leur]                    en                            $:Y
    >être >sensé $:Y
    >être >sensé ne [pas|plus|jamais|rien|guère|point]
        <<- /conf/ not value(<1, "|l’|un|les|des|ces|")
        -2>> =\2.replace("sens", "cens").replace("Sens", "Cens").replace("SENS", "CENS")            # Confusion : “sensé” se dit de quelqu’un de “bon sens”. Pour ce qui est attendu, écrivez “censé”.

TEST: Ils sont {{sensés}} y parvenir.
TEST: Elles étaient {{sensés}} m’y conduire
TEST: il est {{sensé}} prendre l’avion demain
TEST: Un être sensé ne ferait jamais ça.

    >censé  <end>
        <<- /conf/ -1>> =\1.replace("cens", "sens").replace("Cens", "Sens").replace("CENS", "SENS")  # Confusion probable. Ce qui est “sensé” (de “bon sens”) et ce que chacun est “censé” accomplir.

TEST: Ce sont pourtant des gens si {{censés}}
TEST: Ils n’y voyaient rien de sensé.


# chœur / cœur
................................................................................

TEST: Je reste à ses {{cotés}}.


# cote / côte / cotte
__conf_côte_cote_cotte__
    [>cote|>cotte] [de|d’] [>bœuf|>porc|>veau|Bretagne|>agneau|>albâtre|>Armor|>azur|>ivoire|>or|>opale|>émeraude]
    [>cote|>cotte] [>surnuméraire|>rocheux|>adriatique|>américain|>californien|>atlantique|>basque|>breton|>landais|>normand|>français|>belge|>espagnol|>italien|>portugais|>africain|>méditerranéen|>pacifique|>raide|>occidental|>fractal|nord|sud|ouest]
        <<- /conf/ -1>> =\1.replace("o", "ô").replace("tt", "t")                    # Confusion : écrivez “côtes” pour les os du thorax et les rivages.|https://fr.wiktionary.org/wiki/c%C3%B4te

    [>cote|>cotte] [>briser|>casser|>fêler|>fracturer]
        <<- /conf/ morph(\2, ":A") -1>> =\1.replace("o", "ô").replace("tt", "t")    # Confusion : écrivez “côtes” pour les os du thorax et les rivages.|https://fr.wiktionary.org/wiki/c%C3%B4te

    [>fracture|>radiographie] des [>cote|>cotte]
        <<- /conf/ -3>> côtes                                       # Confusion : écrivez “côtes” pour les os du thorax.|https://fr.wiktionary.org/wiki/c%C3%B4te

    [>côte|>cotte] [>mobilier|>foncier]
    [>côte|>cotte] [de|d’] [niveau|popularité|confiance|alerte|altitude|amour]
        <<- /conf/ -1>> =\1.replace("ô", "o").replace("tt", "t")    # Confusion : utilisez « cote » pour chiffrer (cotation).|http://fr.wiktionary.org/wiki/cote

    [>cote|>côte] de >maille
        <<- /conf/ -1>> =\1.replace("ô", "o").replace("t", "tt")    # Confusion : écrivez « cotte » pour la cotte de mailles.|https://fr.wiktionary.org/wiki/cotte_de_mailles

    >avoir la côte
................................................................................
    [>confiture|>crème|>gâteau|>mélasse|>noyau|>pâte|>recette|>sirop] de >date
    [moelleux|>gâteau|>fondant|>cake] [au|aux]  >date
        <<- /conf/ -3>> dattes                                                          # Confusion probable. Pour parler du fruit, écrivez “datte”.|https://fr.wiktionary.org/wiki/datte

    >date [>muscade|medjool|hamraya|deglet-nour|kenta|allig|khouat]
        <<- /conf/ -1>> =\1.replace("t", "tt").replace("T", "TT")                       # Confusion probable. Pour parler du fruit, écrivez “datte”.|https://fr.wiktionary.org/wiki/datte

    >date [>frais|>dénoyauter|>fourrer|>sèche|>sécher|>cultiver|>produire]
        <<- /conf/ morph(\2, ":A.*:f") -1>> =\1.replace("t", "tt").replace("T", "TT")   # Confusion probable. Pour parler du fruit, écrivez “datte”.|https://fr.wiktionary.org/wiki/datte

    >datte [du|de|des] [>bac|>baptême|>brevet|>calendrier|>carême|>carnaval|>concert|>début|>dépôt|>demande|>dernier|>diffusion|>document|>fermeture|>fin|>jour|>journal|>lancement|>livraison|mise+s|>mariage|>message|>mort|>naissance|>parution|>pentecôte|>péremption|>post|>prélèvement|>premier|>pris|>prochain|>publication|>ramadan|>rapport|>réception|>référendum|>règlement|>retraite|>réunion|>séminaire|>show|>sortie|>spectacle|>terme|>tirage|>tournage|>trajet|>vente|>virement|>vol|>vote|>voyage|>lundi|>mardi|>mercredi|>jeudi|>vendredi|>samedi|>dimanche|congrès|décès|permis|procès]
    >datte d’ [accouchement|actualisation|achat|adhésion|anniversaire|apparition|échéance|édition|émission|engagement|entrée|envoi|examen|exécution|expédition|expiration|immatriculation|imputation|inscription|origine|ouverture|ovulation|aujourd’hui|Halloween]
    >datte de l’ [accouchement|actualisation|achat|adhésion|anniversaire|apparition|échéance|édition|émission|engagement|entrée|envoi|examen|exécution|expédition|expiration|immatriculation|imputation|inscription|origine|ouverture|ovulation]
    >datte du /NUM [janvier|février|mars|avril|mai|juin|juillet|août|aout|septembre|octobre|novembre|décembre]
        <<- /conf/ -1>> =\1.replace("tt", "t").replace("TT", "T")       # Confusion probable. La datte est un fruit. Pour évoquer un jour dans l’année, écrivez “date”.|https://fr.wiktionary.org/wiki/date

    >dernier en >datte
        <<- /conf/ -3>> date                                            # Confusion probable. La datte est un fruit. Pour évoquer un jour dans l’année, écrivez “date”.||https://fr.wiktionary.org/wiki/date

TEST: il va faire un cake aux {{dates}}.
TEST: elle a fait de la confiture de {{dates}}
TEST: Des {{dates}} fraîches.
TEST: des {{dates}} dénoyautées.
TEST: une {{date}} muscade
................................................................................

# desceller / déceler / desseller
__conf_erreur_déceler_desseller_desceller__
    [>erreur|>faute|>incohérence|>problème|>bug|>bogue|>faille|>maladie|>défaut|>défaillance|>perturbation|>irrégularité] <> [>desseller|>desceller]
        <<- /conf/ --1>> =\-1.replace("escell", "écel").replace("essell", "écel")
        # Confusion probable si ce verbe se rapporte à “\1”. Desceller signifie briser un sceau, un cachet… Desseller signifie ôter une selle. Si vous voulez dire “remarquer”, “dévoiler”, “découvrir”, écrivez “déceler”.|http://fr.wiktionary.org/wiki/déceler

    [>desseller|>desceller] [l’|@:[BD]] [>petit|>grand|>énorme|>dangeureux|>formidable|>fort|>léger|>merveilleux|>nouveau|>vrai|>réel|>sévère|>véritable] [>acidité|>activité|>allergie|>anévrisme|>anomalie|>arnaque|>appendicite|>atrophie|>baisse|>bébé|>blessure|>bug|>bogue|>carie|>cancer|>cause|>changement|>complot|>comète|>concentration|>corrélation|>croissance|>défaut|>défaillance|>demande|>dépression|>diabète|>différence|>diminution|>effluve|>épilepsie|>erreur|>essai|>existence|>grossesse|>grosseur|>faille|>faute|>fuite|>fraude|>grippe|>handicap|>hausse|>hémorragie|>hostilité|>hypertrophie|>incompatibilité|>incohérence|>infection|>infraction|>indice|>infidélité|>insuffisance|>intrigue|>irrégularité|>leucémie|>lésion|>lueur|>lumière|>maladie|>malformation|>manœuvre|>manipulation|>molécule|>mensonge|>mutation|>once|>perturbation|>personnalité|>piste|>perte|>planète|>exoplanète|>présence|>qualité|>odeur|>opportunité|>otite|>problème|>surdité|>talent|>tendance|>tentative|>tumeur|>utilisation|hoax|>variation|>vie|virus]
        <<- /conf/ -1>> =\1.replace("escell", "écel").replace("essell", "écel")
        # Confusion probable si ce mot se rapporte à “\3 \4”. Desceller signifie briser un sceau, un cachet… Desseller signifie ôter une selle.|http://fr.wiktionary.org/wiki/déceler

    [>desseller|>desceller] [l’|@:[BD]] [>acidité|>activité|>allergie|>anévrisme|>anomalie|>arnaque|>appendicite|>atrophie|>baisse|>bébé|>blessure|>bug|>bogue|>carie|>cancer|>cause|>changement|>complot|>comète|>concentration|>corrélation|>croissance|>défaut|>défaillance|>demande|>dépression|>diabète|>différence|>diminution|>effluve|>épilepsie|>erreur|>essai|>existence|>grossesse|>grosseur|>faille|>faute|>fuite|>fraude|>grippe|>handicap|>hausse|>hémorragie|>hostilité|>hypertrophie|>incompatibilité|>incohérence|>infection|>infraction|>indice|>infidélité|>insuffisance|>intrigue|>irrégularité|>leucémie|>lésion|>lueur|>lumière|>maladie|>malformation|>manœuvre|>manipulation|>molécule|>mensonge|>mutation|>once|>perturbation|>personnalité|>piste|>perte|>planète|>exoplanète|>présence|>qualité|>odeur|>opportunité|>otite|>problème|>surdité|>talent|>tendance|>tentative|>tumeur|>utilisation|hoax|>variation|>vie|virus]
        <<- /conf/ -1>> =\1.replace("escell", "écel").replace("essell", "écel")
        # Confusion probable si ce mot se rapporte à “\3”. Desceller signifie briser un sceau, un cachet… Desseller signifie ôter une selle.|http://fr.wiktionary.org/wiki/déceler

................................................................................
        <<- /ppas/ \2.islower() -1>> dû                     # Confusion. Ce qui est dû.

TEST: L’échec est {{du}} en partie à un manque de préparation.


# éminent / imminent
__conf_éminent_imminent__
    >imminent [>acteur|>confrère|>collègue|>dirigeant|>dissident|>entrepreneur|>expert|>défenseur|>intellectuel|>mathématicien|>musicien|>pédiatre|>personalité|>personnage|>professeur|>physicien|>rabbin|>représantant|>savant|>chirurgien|>neurochirurgien|>scientifique|>service|>spécialiste|~logues?$|~istes?$]
        <<- /conf/ -1>> =\1.replace("imm", "ém").replace("Imm", "Ém")
        # Confusion probable. Si “\1” se rapporte à “\2”, alors vous voulez probablement dire “éminent” ; “imminent” signifie “qui va survenir prochainement”.|https://fr.wiktionary.org/wiki/%C3%A9minent

    [>acteur|>confrère|>collègue|>dirigeant|>dissident|>entrepreneur|>expert|>défenseur|>intellectuel|>mathématicien|>musicien|>pédiatre|>personalité|>personnage|>professeur|>physicien|>rabbin|>représantant|>savant|>chirurgien|>neurochirurgien|>scientifique|>service|>spécialiste|~logues?$|~istes?$] >imminent
        <<- /conf/ morph(<1, ":D") -2>> =\2.replace("imm", "ém").replace("Imm", "Ém")
        # Confusion probable. Si “\2” se rapporte à “\1”, alors vous voulez probablement dire “éminent” ; “imminent” signifie “qui va survenir prochainement”.|https://fr.wiktionary.org/wiki/%C3%A9minent

    [>accouchement|>accord|>arrivée|>assaut|>attaque|>atterrissage|>cataclysme|>catastrophe|>changement|>conflit|>crash|>danger|>décollage|>départ|>désarmement|>déclenchement|>effondrement|>éruption|>fin|>guerre|>lancement|>orage|>ouragan|>péril|>remaniement|>réponse|>résultat|>retour|>séisme|>tempête|>tsunami|>verdict] ?>être¿ >éminent
        <<- /conf/ --1>> =\-1.replace("émi", "immi").replace("Émi", "Immi")
        # Confusion probable. Si “\-1” se rapporte à “\1”, alors vous voulez probablement dire “imminent” ; “éminent” signifie “notable”.|https://fr.wiktionary.org/wiki/%C3%A9minent

TEST: mon {{imminent}} collègue.
TEST: Les scientifiques les plus {{imminents}}.
TEST: l’accouchement est {{éminent}}.
TEST: Mon {{imminent}} collègue.
................................................................................

TEST: Il avait été blessé au {{flan}}.
TEST: Elle lança une contre-attaque sur son {{flan}}.


# flamant rose
__conf_flamant_rose__
    >flamand >rose
        <<- /conf/ -1>> =\1.replace("and", "ant")                           # Confusion. Flamand = habitant des Flandres. Flamant = oiseau.

TEST: j’ai vu un {{flamand}} rose.


# foi / fois / foie
__conf_foi_fois__
................................................................................
TEST: J’ai préparé du pâté de {{fois}}
TEST: la prochaine {{foi}}, c’est mon tour.
TEST: une bonne {{foi}} pour toutes, ça suffit !


# fond / fonds / fonts
__conf_fond_fonds_fonts__
    [>collecte|>levé|>extorsion|>détournement] de [fond|fonts]
    >collecter des fonts
        <<- /conf/ -3>> fonds                   # Confusion : fonds (ce qui constitue une richesse) ≠ fond (partie la plus basse/profonde).

    à [fond|fonts] [perdu|perdus|perdue|perdues]
        <<- /conf/ ->> à fonds perdus           # Confusion : fonds (ce qui constitue une richesse) ≠ fond (partie la plus basse/profonde).

    [fond|fonts] [>monétaire|spéculatif+s|>international|souverain+s]
    [fond|fonts] [de|d’] [commerce|garantie|roulement|pension|placement|retraite|roulement|solidarité]
    [fond|fonts] d’ [aide|investissement|indemnisation]
        <<- /conf/ -1>> fonds                   # Confusion : fonds (ce qui constitue une richesse) ≠ fond (partie la plus basse/profonde).

    fonds baptismaux
        <<- /conf/ -1>> fonts                   # Confusion. Écrivez “fonts”, qui vient du latin “fons” et signifie « fontaine, source ».

................................................................................
TEST: Une {{goûte}} de pluie
TEST: tu sais, les {{goutes}} de pluie, ça mouille.
TEST: ouf, on est passé entre les {{goûtes}}…
TEST: Des gouttes de pluie.


__conf_goûter_goutter_dégoûter_dégoutter__
    >goutter ?à¿ $:D [>biscuit|>bière|>bon|>bonbon|>breuvage|>burger|>café|>cidre|>cocktail|>chocolat|>crêpe|>cru|>délice|>délicieux|>délicieuse|>dessert|>fameux|>féculent|>fromage|>fruit|>gâteau|>hamburger|>légume|>nourriture|paradis|>pâte|>pain|>plat|>pâtisserie|>poisson|>poulet|>recette|repas|>sandwich|>soupe|>tarte|>tartelette|>sauce|>succulent|>thé|>viande|>vin|>yaourt|>yoghourt]
        <<- /conf/ -1>> =\1.replace("outt", "oût").replace("OUTT", "OÛT")
        # Confusion : “goutter” signifie “couler goutte à goutte”. Pour l’usage du goût, écrivez “goûter”.|https://fr.wiktionary.org/wiki/go%C3%BBter

    [>chiotte|>clim|>climatisation|>chauffe-eau|>douche|>eau|>évier|>lavabo|nez|>motrice|>parapluie|>plafond|>pluie|>robinet|>sang|>sueur|>toilette|>toit|>tuyau|>tuyauterie] ?[ne|n’]¿ [>goûter|>gouter|>dégoûter|>dégouter]
        <<- /conf/ --1>> =\-1.replace("oût", "outt").replace("OÛT", "OUTT").replace("out", "outt").replace("OUT", "OUTT")
        # Confusion : “goûter” signifie utiliser le sens du goût. Pour ce qui s’écoule goutte à goutte, écrivez “goutter”.|https://fr.wiktionary.org/wiki/goutter

................................................................................

# jeune / jeûne
__conf_jeûne_jeune__
    >jeune du [carême|ramadan]
    >jeune [alimentaire|eucharistique|rituel|sacramentel]
        <<- /conf/ -1>> =\1.replace("u", "û").replace("U", "Û")         # Confusion. Pour les privations alimentaires, écrivez “jeûne”.|https://fr.wiktionary.org/wiki/je%C3%BBne

    >jeûne [>adolescent|>adulte|>âge|>épousé|>époux|>femme|>fille|gars|>garçon|gens|>homme|>marié|>mari|>enfant|>bébé|>chien|>chiot|>chat|>célibataire|>étudiant|>lycéen|>élève|>écolier|>diplômé|>prodige|>couple|>papa|>maman|>père|>mère|>con|>génération|>médecin|>travailleur]
        <<- /conf/ -1>> =\1.replace("û", "u").replace("Û", "U")                                              # Confusion. Le jeûne est une privation alimentaire.|https://fr.wiktionary.org/wiki/jeune

TEST: il accomplit le {{jeune}} rituel
TEST: de {{jeûnes}} adultes
TEST: les {{jeûnes}} travailleurs du nouveau centre commercial


# levée / lever
__conf_lever_levée__
    [lever|levers|levé|levés] de >fond
        <<- /conf/ ->> levée de fonds|levées de fonds           # Confusion. Exemple : une levée de fonds, un lever de soleil.

    >levé [de|du] [rideau|soleil]
        <<- /conf/ -1>> lever|levers                            # Confusion. Exemple : une levée de fonds, un lever de soleil.

TEST: {{levée}} de soleil
TEST: Faisons des {{levers de fond}}


# lever un lièvre / soulever
................................................................................
        <<- /conf/ -1>> =\1.lower().replace("cha", "lâ")        # Expression impropre. On écrit « lâcher la proie pour l’ombre ».|https://fr.wiktionary.org/wiki/l%C3%A2cher_la_proie_pour_l%E2%80%99ombre

TEST: il ne faut pas {{chasser}} la proie pour l’ombre.


# lieux / lieues / lieus
__conf_lieux_lieues_lieus__
    [>assurance|>état|>visite|>maître|>maitre|>seigneur|>magie|>chef|>responsable|respect|entretien|propreté|>propriétaire|tranquillité|dans|vers|>plan] des [lieues|lieus]
        <<- /conf/ --1>> lieux                                  # Confusion probable. Pour désigner un endroit, écrivez “lieux”.|http://fr.wiktionary.org/wiki/lieu

    [>lieue|lieus] [>insolite|>accessible|>accueillant|>inaccessible|>inexploré|>lointain|>louche|>proche|>touristique|saint+s|>connu|>inconnu|>mythique|>public|prestigieux|>romantique|>stratégique|>historique|où|>humide|sec+s]
    [>lieue|lieus] de [>communication|>concert|>conférence|>contemplation|>culte|>chasse|>détente|>détention|>départ|>méditation|>mémoire|>pouvoir|>prière|>prostitution|>sépulture|repos|>refuge|>stockage|>travail|>vacance|>spectacle|>conférence|>rassemblement|>sortie|>stationnement|>rencontre|>vacance|>villégiature]
        <<- /conf/ -1>> lieu|lieux                              # Confusion probable. Pour désigner un endroit, écrivez “lieu(x)”.|http://fr.wiktionary.org/wiki/lieu

    [>lieue|lieus] [>aménager|>abandonner|>insolite|>éloigner|>réserver|>sacrer|>connaître|>méconnaître|>privilégier|>priver]
        <<- /conf/ morph(\2, ":Q") -1>> lieu|lieux              # Confusion probable. Pour désigner un endroit, écrivez “lieu(x)”.|http://fr.wiktionary.org/wiki/lieu

    [>être|>demeurer|>déménager|>habiter|>trouver|>situer|>rester|>demeurer|>demeure|>vivre]  à  [quelques|plusieurs|maintes|*NUM|$:B]  [lieux|lieus]
................................................................................
    [>être|>demeurer|>déménager|>habiter|>trouver|>situer|>rester|>demeurer|>demeure|>vivre]  à  des  [lieux|lieus]
        <<- /conf/ space_after(\2, 1, 4) --1>> lieues           # Confusion probable. Pour désigner une distance, écrivez “lieues”.|http://fr.wiktionary.org/wiki/lieue

    *NUM >lieu sous [la|les] >mer
    $:B  >lieu sous [la|les] >mer
        <<- /conf/ -2>> lieues                                  # Confusion. Pour désigner une distance, écrivez “lieue(s)”.|http://fr.wiktionary.org/wiki/lieue

    [lieux|>lieue] [>jaune|>noir|>mordre]
        <<- /conf/ -1>> lieu|lieus                              # Confusion probable. Si vous parlez du poisson, écrivez “lieu(s)”.|http://fr.wiktionary.org/wiki/lieu

    >pêche [aux|des] [lieux|lieues]
    >chair des [lieux|lieues]
        <<- /conf/ -3>> lieu|lieus                              # Confusion. Si vous parlez du poisson, écrivez “lieu(s)”.|http://fr.wiktionary.org/wiki/lieu

TEST: qui est le responsable des {{lieues}} ?
................................................................................
TEST: Échec et {{mât}}
TEST: le grand {{mat}}
TEST: {{Mat}} de misaine


# mâter / mater
__conf_mater_mâter__
    >mâter  $:D  [>adversaire|>armée|>cavalier|>cheval|>chien|>con|>connard|>connasse|>cul|>dame|>enfoiré|>emmerdeur|>enfant|>ennemi|>enculé|>femme|>fesse|>fille|fils|>fou|>foule|>gamin|>garçon|>homme|>horde|>incendie|>insurrection|>jument|>lion|>nation|>peuple|>pion|>pute|>rebelle|>rebellion|>reine|>roi|>sein|>salope|>tigre|>tour|>troupe]
        <<- /conf/ -1>> =\1.replace("ât", "at").replace("ÂT", "AT")
        # Confusion. “Mâter” signifie “dresser un mât”. Si vous voulez dire “dompter” (ou argotiquement “regarder”), écrivez “mater”.|https://fr.wiktionary.org/wiki/mater

    >mâter en [*NUM|$B] coups
        <<- /conf/ -1>> =\1.replace("ât", "at").replace("ÂT", "AT")
        # Confusion. “Mâter” signifie “dresser un mât”. Si vous voulez dire “dompter” ou “mettre en échec”, écrivez “mater”.|https://fr.wiktionary.org/wiki/mater

................................................................................
TEST: Ils étaient partis au restaurant après avoir {{mi}} à jour son profil.
TEST: elles ont dansé, {{mie}} à jour leur carnet et sont parties.
TEST: après avoir {{mi}} ses souliers tenir


# mûr / mur
__conf_mûr_mur__
    [>amandine|>brioche|>charlotte|>cheesecake|>chausson|clafoutis|>confiture|>crème|>crêpe|>croustade|>croustillant|>crumble|>cueillette|>dessert|>far|>flan|jus|>gelée|>glace|>gourmandise|>lapin|>liqueur|>macaron|>milkshake|>milk-shake|>millefeuille|>mille-feuille|>mousse|>muffin|>pancake|>pavlova|>recette|>récolte|>sauce|>soufflé|>smoothie|>sirop|>tarte|>tartelette|>tiramisu|>yaourt|>yoghourt|coulis|>gâteau|>kilo] [de|aux] [mur+ses]
        <<- /conf/ --1>> mûres                                              # Confusion. Le fruit s’écrit “mûre”.|https://fr.wiktionary.org/wiki/m%C3%BBr

    [trop|assez|abcès|>âge|>avocat|>banane|>blé|>brugnon|corps|>enfant|>esprit|>femme|>figue|>fraise|>fruit|>homme|>melon|>personne|>poire|>pomme|>prune|>papaye|>pêche|>raisin|>tomate] [mur+ses]
    [>être|>sembler|>paraître|>paraitre|>rester]  [mur+ses]
        <<- /conf/ --1>> =\-1.replace("u", "û").replace("U", "Û")           # Confusion. Pour décrire ce qui a atteint la maturité, écrivez “mûr”.|https://fr.wiktionary.org/wiki/m%C3%BBr

    des vertes et des pas [mur+ses]
        <<- /conf/ --1>> mûres                                              # Confusion. Pour décrire ce qui a atteint la maturité, écrivez “mûr”.|https://fr.wiktionary.org/wiki/m%C3%BBr

    [mur+ses] [>délibération|>réflexion]
................................................................................
        <<- /conf/ -3>> nues                                    # Confusion. Écrivez “nues” (ancien terme pour “nuages”).|https://fr.wiktionary.org/wiki/tomber_des_nues

TEST: Elle en est tombée des {{nus}}.


# numérique / digital
__conf_numérique_digital__
    [>agence|>appareil|>banque|>caméra|>communication|>compagnie|>connexion|>économie|>entreprise|>ère|>expérience|>identité|>industrie|>présence|>prise|>service|>solution|>stratégie|>télévision|>transformation|>transition] >digital
        <<- /conf/ -2>> numérique|numériques
        # Confusion : “digital” est un adjectif se rapportant aux doigts (empreinte digitale, arthrose digitale, etc.). Écrivez “numérique”.

    [le|du|au] digital
        <<- /conf/ -2>> numérique
        # Confusion : “digital” est un adjectif se rapportant aux doigts (empreinte digitale, arthrose digitale, etc.). Écrivez “numérique”.

TEST: une économie {{digitale}} ou rien
TEST: Dans l’ère du {{digital}}, tout va plus vite.


# panser / penser
__conf_panser_penser__
    >penser  *WORD  [>animal|>blessure|>blessé|bras|>chat|>cheval|>chien|>cheville|>cœur|>crâne|>cuisse|>doigt|>épaule|>jambe|>main|>malade|>patte|>pied|>plaie|>poignet|>tête]
        <<- /conf/ morph(\2, ":D", ">de/") -1>> =\1.replace("en", "an").replace("EN", "AN")
        # Confusion probable. Pour évoquer les soins prodigués, écrivez “panser”.|https://fr.wiktionary.org/wiki/panser

    >panser à autre chose
    >panser à $:D [>ami|>bébé|>chien|>chat|>cul|>descendant|>descendance|>enfant|>famille|>femme|>fesse|>fille|>garçon|>héritage|>héritier|>leçon|>mari|>maître|>maitre|>parent|>voisin]
    >panser [au|aux] [>ami|>bébé|>chien|>chat|>cul|>descendant|>descendance|>enfant|>famille|>femme|>fesse|>fille|>garçon|>héritage|>héritier|>leçon|>mari|>maître|>maitre|>parent|>voisin]
    >panser à [dieu|moi|toi|lui|elle|nous|vous|eux|elles|iel|iels|$:M]
    >panser à [ne|n’|me|m’|te|t’|se|s’]
    >panser à [le|la|l’|les|en|lui|leur|y]      $:Y
    >panser à [le|la|l’|les]  [lui|leur|en|y]   $:Y
    >panser à [lui|leur]      en                $:Y
        <<- /conf/ -1>> =\1.replace("an", "en").replace("AN", "EN")
        # Confusion probable. Pour évoquer les pensées qu’on a pour quelqu’un ou quelque chose, écrivez “penser”.|https://fr.wiktionary.org/wiki/penser
................................................................................
TEST: {{Panse}} à tes amis
TEST: Il pense à son héritage futur.


# pain / pin
__conf_pain_pin__
    >pin d’ >épice
    >pin >perdu
    >pin sans >gluten
        <<- /conf/ -1>> pain|pains      # Confusion. Le pin est un arbre résineux à aiguilles persistantes. Pour parler la pâte de farine et d’eau cuite au four, écrivez “pain”.

    [>manger|>dévorer|>avaler|>engloutir] [le|les|du|des|un|ce|ces|mon|ton|son|mes|tes|ses|notre|votre|nos|vos|leur|leurs|quelques|plusieurs]  >pin
        <<- /conf/ -3>> pain|pains      # Confusion. Le pin est un arbre résineux à aiguilles persistantes. Pour parler la pâte de farine et d’eau cuite au four, écrivez “pain”.

    >pomme de >pain
................................................................................
TEST: Elles sont hors de {{paires}}.


# pâle / pale
__conf_pâle_pale2!6__
    >faire ?[pas|jamais|guère]¿ porter pale
    [>être|>rester|>demeurer|>devenir]  >pale
    [>air|>lumière|>lueur|>teint|coloris|>couleur|>peau|>visage|>bleu|>rouge|>fuschia|>jaune|>vert|gris|>orange|>violet|>pourpre]  >pale
        <<- /conf/ --1>> =\-1.replace("a", "â").replace("A", "Â")
        # Utilisez “pâle” pour évoquer la pâleur… Une pale est, entre autres choses, un élément d’une hélice.|http://fr.wiktionary.org/wiki/pale

TEST: Elle est très {{pale}} !
TEST: Sous une lumière {{pale}},
TEST: Se faire porter {{pale}}.

................................................................................
TEST: Nous sommes tous d’une manière ou d’une autre {{juge et parti}}.
TEST: prendre {{a parti}}
TEST: Prendre Damien {{à parti}}.


# pâte / patte
__conf_pâte_patte_pat__
    [>patte|pat] [>alimentaire|>alsacien|>chinois|>feuilleté|>italien|>thermique]
    [>patte|pat] au [basilic|beurre|saumon|pesto|poulet|thon]
    [>patte|pat] [à|a] [>pain|>crêpe|>gaufre|>pizza|>tarte|>modeler|>tartiner]
    [>patte|pat] [d’|de] [>amande|>amende|>fruit]
        <<- /conf/ -1>> pâte|pâtes                              # Confusion. La patte est le membre d’un animal (ou d’une table…). La matière pâteuse s’écrit “pâte”.

    >mettre ?[pas|jamais]¿ la main à la [>patte|pat]
    >coq en [>patte|pat]
................................................................................
__conf_rester_en_contact__
    >rester en [contacte+s]
        <<- /conf/ --1>> contact                                    # Confusion. Locution “rester en contact”.

TEST: il va rester en {{contacte}} avec eux
TEST: Restons en contact.


# rôder / roder
__conf_roder_rôder__
    >rôder $:D [>moteur|>voiture|>auto|>moto|>soupape]
        <<- /conf/ -1>> =\1.replace("ô", "o").replace("Ô", "O")     # Confusion probable. “Rôder” signifie “errer”. Pour parler du rodage, écrivez “roder”.|https://fr.wiktionary.org/wiki/roder

    >roder dans les parages
    >roder aux alentours
    >roder dans $:D [>ville|>cité|>village|>campagne|>champ|>montagne|>colline|>vallée|>forêt|bois|>prairie]
    >roder en ville
    >roder autour [de|d’]
        <<- /conf/ -1>> =\1.replace("od", "ôd").replace("OD", "ÔD") # Confusion probable. “Roder” signifie “user, polir”. Pour parler de l’errance, écrivez “rôder”.|https://fr.wiktionary.org/wiki/rôder

TEST: je {{rodais}} en ville sans but précis                    ->> rôdais
TEST: elle {{rode}} autour de la maison depuis des semaines     ->> rôde
TEST: va {{rôder}} ce moteur                                    ->> roder


# sale / salle
__conf_salle_sale__
    >sale d’ [>accouchement|>arcade|>attente|>audience|>eau|>escalade|>échographie|>embarquement|>exposition|>hospitalisation|>observation|>opération|>urgence]
    >sale [de|des|du] [>bain|>bal|>banquet|>billard|>bloc|>cinéma|>classe|>colle|>commandement|>concert|>conférence|>conseil|>consultation|cours|>culture|>danse|>départ|>fête|>formation|>garde|>gym|>gymnastique|>infirmier|>lecture|>machine|>malade|>mammographie|>marché|>mariage|>musculation|>musique|>ordinateur|>presse|>prière|>prof|>professeur|>projection|>radio|>radiographie|>réanimation|>réception|>rédaction|>rééducation|>restaurant|>réunion|>réveil|>séjour|>shoot|>soin|>spectacle|>sport|>stockage|>théâtre|>tir|>toilette|>torture|>trading|>travail|>vente|fitness|>jeu|>repos|>urgence]
    >sale à manger
        <<- /conf/ -1>> =\1.replace("ale", "alle")                  # Confusion : “sale” signifie “malpropre”. Pour désigner une pièce, écrivez “salle”.

    >être  >salle
        <<- /conf/ -2>> =\2.replace("alle", "ale")                  # Confusion. Une salle est une pièce. Pour la malpropreté, écrivez “sale”.

TEST: dans la {{sale}} des professeurs
TEST: une {{sale}} d’arcade
TEST: ils sont tellement {{salles}}
TEST: pour le service en salle


................................................................................

# tâche / tache (de chocolat / rousseur / vin / sang / café / gras / graisse / huile / etc.)
__conf_tache_tâche__
    >tâche  [de|d’]  @:N¬:[GMY]|>(?:contrôle|fonds?|envergure|ampleur|importance|départ|surveillance|supervision|tri|.+(?:tion|ment))/
        <<- /conf/ not before("[aA]ccompl|[dD]él[éè]gu") -1>> =\1.replace("â", "a").replace("Â", "A")
        # Confusion probable. Une tâche est un travail à accomplir. Pour une salissure, une altération, une marque, une coloration… employez “tache”.

    >tâche  [>indélébile|>rouge|>vert|>noir|>bleu|>jaune|>gris|>blanc|>brun|>pourpre|>chocolat|>mauve|>fushia|>violette|>rose|>claire|>sombre|>solaire|>cuivré]
        <<- /conf/ -1>> =\1.replace("â", "a").replace("Â", "A")
        # Confusion. Une tâche est un travail à accomplir. Pour une salissure, une altération, une marque, une coloration… employez “tache”.

    >tâche sur $:D [>bermuda|>blouse|>blouson|bois|bras|>caleçon|>canapé|>carrelage|>chemise|>chemisier|>col|>conscience|corps|>costume|>cravate|>cuir|>culotte|CV|>dent|>doigt|document|dos|>fauteuil|>feuille|>front|>habit|>jambe|>jean|>joue|>jupe|>jupon|>lèvre|>linge|>livre|>livret|>maillot|>main|>marbre|>meuble|>moquette|>mur|>nappe|nez|>ongle|>papier|>parquet|>pantalon|>peau|pénis|>photo|>photographie|>pied|>pull|>réputation|>robe|>sexe|>siège|>slip|>sol|>t-shirt|>teeshirt|>tee-shirt|>tapis|>tête|>tissu|>veste|>vêtement|>visage]
        <<- /conf/ -1>> =\1.replace("â", "a").replace("Â", "A")
        # Confusion. Une tâche est un travail à accomplir. Pour une salissure, une altération, une marque, une coloration… employez “tache”.

................................................................................

TEST: est-ce qu’il n’aurait pas mieux {{fallu}} que nous                            ->> valu
TEST: il aurait mieux {{fallu}} que nous trouvions nous-mêmes une solution.         ->> valu


# venimeux / vénéneux
__conf_venimeux_vénéreux__
    [>serpent|>araignée|>scorpion|>vipère|>cobra|>crapaud|>grenouille|>dendrobate|>poulpe|>guêpe|>abeille|>frelon|>méduse|>morsure|>piqûre|>dard|>dent|>croc|>crochet]  >vénéneux
        <<- /conf/ -2>> =\1.replace("énén", "enim").replace("ÉNÉN", "ENIM")                         # Confusion : “vénéneux” se dit des plantes, employez “venimeux”.

    [>plante|>champignon|>lépiote|>baie|>fruit|>herbe|>fleur|>chair|>moule|humus|>substance|>végétal]  >venimeux
        <<- /conf/ -2>> =\1.replace("enim", "énén").replace("ENIM", "ÉNÉN")                         # Confusion : pas de venin ici.

TEST: ces araignées {{vénéneuses}}.
TEST: ce champignon {{venimeux}}.



................................................................................
!!
!!
!!
!!
!!
!!


!!
!!
!!!! Confusion verbe / adjectif                                                                   !!
!!
!!

__conf_qui_adj_det_subst__
    qui  $:Q  $:D  @:[NA]¬:3[sp]  <end>
        <<- /conf/ not morph(\2, ":3[sp]") -2>> =suggVerb(\2, ":3s")                                # Confusion probable entre participe passé et forme verbale conjuguée.

TEST: qu’est-ce qui {{défini}} un attentat ?
TEST: Qui {{voulu}} la paix ?


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

................................................................................

TEST: de manière à {{obligé}} ces gens
TEST: ils ont intérêt à {{obligés}} ces gens
TEST: Tous ceux qui ont du mal à {{obligé}} ces gens


__infi_verbe_de_verbe__
    [>arrêter|>cesser|>choisir|>commander|>continuer|>craindre|>décider|>défendre|>envisager|>essayer|>éviter|>interdire|>omettre|>oublier|>permettre|>prévoir|>refuser|>suggérer|>tenter]
        || [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  *WORD
        <<- /infi/ not morph(\1, ":N") and (analyse(\-1, ":V1.*:Q", ":(?:M|Oo)") or analyse(\-1, ":[123][sp]", ":[MNG]"))
        --1>> =suggVerbInfi(\-1)                                                                    # Après “\1 de”, le verbe devrait être à l’infinitif.

TEST: cessez d’{{anesthésié}} ces gens !
TEST: arrête d’y {{consacré}} autant de temps.
TEST: Il tentait de {{raisonné}} en homme libre
................................................................................
    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/ analyse(\-1, ":Q", ":M") --1>> =suggVerbInfi(\-1)                                # Après “\1 de”, le verbe devrait être à l’infinitif.

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

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

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

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

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

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

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

    >avoir vite fait                            [de|d’]  ?[le|l’|la|leur|les|nous|vous|lui]¿  ~..ée?s?$
        <<- /infi/ analyse(\-1, ":Q", ":M") --1>> =suggVerbInfi(\-1)                                # Après “avoir vite fait 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/ analyse(\-1, ":Q", ":M") --1>> =suggVerbInfi(\-1)                                # Après “faire semblant de”, le verbe devrait être à l’infinitif.
................................................................................

## moi/toi/lui/elle/nous/vous/eux/elles seul·e·s
__purge_pronom_seul__
    [à|de|d’|par]  moi      ?[seul|seule]¿
    [à|de|d’|par]  toi      ?[seul|seule]¿
    [à|de|d’|par]  lui      seul
    [à|de|d’|par]  elle     ?seule¿
    [à|de|d’|par]  nous     >seul
    [à|de|d’|par]  vous     >seul
    [à|de|d’|par]  eux      ?seuls¿
    [à|de|d’|par]  elles    ?seules¿
        <<- ~>> *

    [moi|toi]       [seul|seule]
    lui             seul
    elle            seule
................................................................................
    [de|d’]  @:V[123]_i.*:Y¬>(?:devenir|rester|demeurer)/  [le|la|l’|les]                           [lui|leur|en|y]           @:[123][sp]¬:G
    [de|d’]  @:V[123]_i.*:Y¬>(?:devenir|rester|demeurer)/  [lui|leur|y]                             en                        @:[123][sp]¬:G
    [de|d’]  @:V[123]_i.*:Y¬>(?:devenir|rester|demeurer)/  [lui|y]                                                            @:[123][sp]¬:G
    [de|d’]  @:V[123]_i.*:Y¬>(?:devenir|rester|demeurer)/  [le|la|l’|les|leur|en]                                             @:[123][sp]¬:[NAG]
    [de|d’]  @:V[123]_i.*:Y¬>(?:devenir|rester|demeurer)/  @:[123][sp]¬:[DM]
        <<- ~1:2>> *

    en tant que >tel
        <<- ~>> *

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

    y compris
        <<- not value(<1, "|j’|n’|tu|il|on|") ~>> *
................................................................................
TEST: tu ne crois pas avoir été {{découvertes}}
TEST: tu vas être {{payées}}
TEST: tu deviens vraiment très {{forts}} à ce jeu.
TEST: je voudrais bien être dans ses souliers


__ppas_3sg_mas_verbe_état__
    [ce|ça|ceci|cela|c’|ç’] >avoir été >seul                [que|qu’]
    [ce|ça|ceci|cela|c’|ç’] >avoir été @:[AQ].*:f¬:[GWYme]  @:N.*:f
        <<- !4>>

    [ce|ça|ceci|cela|c’|ç’] >être >seul                     [que|qu’]
    [ce|ça|ceci|cela|c’|ç’] >être @:[AQ].*:f¬:[GWYme]       @:N.*:f
        <<- !3>>

    tout en [étant|semblant|devenant|restant|demeurant|redevenant|paraissant] @:A
        <<- !4>>

    ([il|ce|c’|ç’|quiconque]) ?[ne|n’]¿ ?[en|y]¿ ([>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre])               [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:f¬:[GWYme]]
................................................................................
TEST: le sentant {{incomprise}}                                                     ->> incompris
TEST: la voir {{persécuté}} ainsi me fit mal au cœur                                ->> persécutée
TEST: les montrer {{inflexible}} nous aidera à les convaincre.                      ->> inflexibles


__ppas_le_verbe_pensée__
    le [>trouver|>considérer|>croire|>imaginer|>rendre|voilà]  *WORD
        <<- /ppas/ morph(\3, ":[AQ].*:(?:[me]:p|f)", ":(?:G|Y|V0|P|[AQ].*:m:[is])") and not (morph(\2, ":Y") and morph(\3, ":3s"))
        -3>> =suggMasSing(\3)                                                       # Accord avec le COD “le” : « \3 » doit être au masculin singulier.

__ppas_la_verbe_pensée__
    la [>trouver|>considérer|>croire|>imaginer|>rendre|voilà]  *WORD
        <<- /ppas/ morph(\3, ":[AQ].*:(?:[fe]:p|m)", ":(?:G|Y|V0|P|[AQ]:f:[is])") and not (morph(\2, ":Y") and morph(\2, ":3s"))
        -3>> =suggFemSing(\3)                                                       # Accord avec le COD “la” : « \2 » doit être au féminin singulier.

__ppas_les_verbe_pensée__
    les [>trouver|>considérer|>croire|>imaginer|>rendre|voilà]  *WORD
        <<- /ppas/ morph(\3, ":[AQ].*:s", ":(?:G|Y|V0|P|[AQ].*:[ip])") and not (morph(\2, ":Y") and morph(\3, ":3s"))
        -3>> =suggPlur(\3)                                                          # Accord avec le COD “les” : « \2 » doit être au pluriel.

__ppas_me_te_verbe_pensée__
    [me|m’|te|t’] [>trouver|>considérer|>croire|>imaginer|>rendre|voilà]  *WORD
        <<- /ppas/ morph(\3, ":[AQ].*:p", ":(?:G|Y|V0|P|[AQ].*:[is])") and not (morph(\2, ":Y") and morph(\3, ":3s"))
        -3>> =suggSing(\3)                                                          # Accord avec le pronom “\1” : « \3 » doit être au singulier.

__ppas_se_verbe_pensée__
    [se|s’] [>trouver|>considérer|>croire|>imaginer|>rendre]  *WORD
        <<- /ppas/ morph(\2, ":3s") and morph(\3, ":[AQ].*:p", ":(?:G|Y|V0|P|[AQ].*:[is])") and not (morph(\2, ":Y") and morph(\3, ":3s"))
        -3>> =suggSing(\3)                                                          # Accord avec le pronom “se” (le verbe étant au singulier) : « \3 » doit être au singulier.
        <<- /ppas/ __else__ and morph(\2, ":3p") and morph(\3, ":[AQ].*:s", ":(?:G|Y|V0|[AQ].*:[ip])") and not (morph(\2, ":Y") and morph(\3, ":3s"))
        -3>> =suggPlur(\3)                                                          # Accord avec le pronom “se” (le verbe étant au pluriel) : « \3 » doit être au pluriel.

__ppas_nous_verbe_pensée__
    nous [>trouver|>considérer|>croire|>imaginer|>rendre|voilà]  *WORD
        <<- /ppas/ ( not morph(\2, ":1p") or (morph(\2, ":1p") and value(<1, "|nous|ne|")) )
            and morph(\3, ":[AQ].*:s", ":(?:G|Y|V0|P|[AQ].*:[ip])") and not (morph(\2, ":Y") and morph(\3, ":3s"))
        -3>> =suggPlur(\3)                                                          # Accord avec le pronom “nous” : « \3 » doit être au pluriel.

TEST: ces hommes le rendent {{dingues}}
TEST: Il me considère {{stupides}}
TEST: Elle nous trouve {{stupide}}
TEST: Je les crois {{capable}} du pire
TEST: la voilà {{perdu}}
................................................................................
TEST: un peu de maquillage et la voilà {{jolis}} comme un cœur.
TEST: les voilà pauvrement {{équipé}} pour un tel périple.
TEST: ils se considèrent {{béni}}
TEST: une chance pour elle alors qu’il n’a pas choisi
TEST: elle se révèle d’ailleurs être une alliée de taille
TEST: mais les considérer uniquement ainsi fait perdre la signification politique de leur geste.
TEST: nous considérer ainsi fait le lit de la haine…
TEST: les voilà souriant aux vissicitudes de l’existence



!!
!!
!!!! Participes passés après “avoir”                                                              !!
!!
................................................................................
TEST: Les élèves t’ont de temps en temps {{écoutées}}.
TEST: Les élèves ne m’ont pas {{écoutés}}.
TEST: Les élèves ne m’ont pas {{écoutées}}.
TEST: Nous ne t’avons pas {{écoutés}}.
TEST: Nous ne t’avons pas {{écoutées}}.
TEST: comme ces informations m’avaient {{manquées}}
TEST: les notes que tu m’as données sont mal écrites.
TEST: Garde précieusement les secrets que je t’ai confiés.


__ppas_qui_avoir__
    qui  ?[ne|n’]¿  ?[lui|leur]¿  >avoir  @:Q.*:(?:f|m:p)¬:m:[si]
        <<- /ppas/ --1>> =suggVerbPpas(\-1, ":m:s")         # Le participe passé devrait être au masculin singulier.|http://fr.wikipedia.org/wiki/Accord_du_participe_pass%C3%A9_en_fran%C3%A7ais

TEST: des hommes, des femmes, des enfants qui ne leur avaient {{faits}} que du bien.
................................................................................
__purge_préverbes_négation__
    [ne|n’]  [le|la|l’|les|en|me|m’|te|t’|se|s’|nous|vous|lui|leur|y]  @:(?:[123][sp]|P|Y)¬:X
    [ne|n’]  [me|m’|te|t’|se|s’|nous|vous]  [le|la|l’|les|en|y]        @:(?:[123][sp]|P|Y)¬:X
    [ne|n’]  [le|la|l’|les]                 [lui|leur|en|y]            @:(?:[123][sp]|P|Y)¬:X
    [ne|n’]  [lui|leur]                     en                         @:(?:[123][sp]|P|Y)¬:X
        <<- ~1:-2>> *


__purge_proposition_subordonnée__
    [que|qu’]   je                      ?[ne|n’]¿   ?[le|la|l’|les|en|me|m’|te|t’|se|s’|nous|vous|lui|leur|y]¿  @:V[123].*:1s    @:[123][sp]
    [que|qu’]   je                      ?[ne|n’]¿   [me|m’|te|t’|se|s’|nous|vous]   [le|la|l’|les|en|y]         @:V[123].*:1s    @:[123][sp]
    [que|qu’]   je                      ?[ne|n’]¿   [le|la|l’|les]                  [lui|leur|en|y]             @:V[123].*:1s    @:[123][sp]
    [que|qu’]   je                      ?[ne|n’]¿   [lui|leur|y]                    en                          @:V[123].*:1s    @:[123][sp]
    [que|qu’]   tu                      ?[ne|n’]¿   ?[le|la|l’|les|en|me|m’|te|t’|se|s’|nous|vous|lui|leur|y]¿  @:V[123].*:2s    @:[123][sp]
    [que|qu’]   tu                      ?[ne|n’]¿   [me|m’|te|t’|se|s’|nous|vous]   [le|la|l’|les|en|y]         @:V[123].*:2s    @:[123][sp]
    [que|qu’]   tu                      ?[ne|n’]¿   [le|la|l’|les]                  [lui|leur|en|y]             @:V[123].*:2s    @:[123][sp]
    [que|qu’]   tu                      ?[ne|n’]¿   [lui|leur|y]                    en                          @:V[123].*:2s    @:[123][sp]
    [que|qu’]   [il|elle|on|iel|$:M]    ?[ne|n’]¿   ?[le|la|l’|les|en|me|m’|te|t’|se|s’|nous|vous|lui|leur|y]¿  @:V[123].*:3s    @:[123][sp]
    [que|qu’]   [il|elle|on|iel|$:M]    ?[ne|n’]¿   [me|m’|te|t’|se|s’|nous|vous]   [le|la|l’|les|en|y]         @:V[123].*:3s    @:[123][sp]
    [que|qu’]   [il|elle|on|iel|$:M]    ?[ne|n’]¿   [le|la|l’|les]                  [lui|leur|en|y]             @:V[123].*:3s    @:[123][sp]
    [que|qu’]   [il|elle|on|iel|$:M]    ?[ne|n’]¿   [lui|leur|y]                    en                          @:V[123].*:3s    @:[123][sp]
    [que|qu’]   nous                    ?[ne|n’]¿   ?[le|la|l’|les|en|me|m’|te|t’|se|s’|nous|vous|lui|leur|y]¿  @:V[123].*:1p    @:[123][sp]
    [que|qu’]   nous                    ?[ne|n’]¿   [me|m’|te|t’|se|s’|nous|vous]   [le|la|l’|les|en|y]         @:V[123].*:1p    @:[123][sp]
    [que|qu’]   nous                    ?[ne|n’]¿   [le|la|l’|les]                  [lui|leur|en|y]             @:V[123].*:1p    @:[123][sp]
    [que|qu’]   nous                    ?[ne|n’]¿   [lui|leur|y]                    en                          @:V[123].*:1p    @:[123][sp]
    [que|qu’]   vous                    ?[ne|n’]¿   ?[le|la|l’|les|en|me|m’|te|t’|se|s’|nous|vous|lui|leur|y]¿  @:V[123].*:2p    @:[123][sp]
    [que|qu’]   vous                    ?[ne|n’]¿   [me|m’|te|t’|se|s’|nous|vous]   [le|la|l’|les|en|y]         @:V[123].*:2p    @:[123][sp]
    [que|qu’]   vous                    ?[ne|n’]¿   [le|la|l’|les]                  [lui|leur|en|y]             @:V[123].*:2p    @:[123][sp]
    [que|qu’]   vous                    ?[ne|n’]¿   [lui|leur|y]                    en                          @:V[123].*:2p    @:[123][sp]
    [que|qu’]   [ils|elles|iels]        ?[ne|n’]¿   ?[le|la|l’|les|en|me|m’|te|t’|se|s’|nous|vous|lui|leur|y]¿  @:V[123].*:3p    @:[123][sp]
    [que|qu’]   [ils|elles|iels]        ?[ne|n’]¿   [me|m’|te|t’|se|s’|nous|vous]   [le|la|l’|les|en|y]         @:V[123].*:3p    @:[123][sp]
    [que|qu’]   [ils|elles|iels]        ?[ne|n’]¿   [le|la|l’|les]                  [lui|leur|en|y]             @:V[123].*:3p    @:[123][sp]
    [que|qu’]   [ils|elles|iels]        ?[ne|n’]¿   [lui|leur|y]                    en                          @:V[123].*:3p    @:[123][sp]
    [que|qu’]   $:M et $:M              ?[ne|n’]¿   ?[le|la|l’|les|en|me|m’|te|t’|se|s’|nous|vous|lui|leur|y]¿  @:V[123].*:3p    @:[123][sp]
    [que|qu’]   $:M et $:M              ?[ne|n’]¿   [me|m’|te|t’|se|s’|nous|vous]   [le|la|l’|les|en|y]         @:V[123].*:3p    @:[123][sp]
    [que|qu’]   $:M et $:M              ?[ne|n’]¿   [le|la|l’|les]                  [lui|leur|en|y]             @:V[123].*:3p    @:[123][sp]
    [que|qu’]   $:M et $:M              ?[ne|n’]¿   [lui|leur|y]                    en                          @:V[123].*:3p    @:[123][sp]
        <<- morph(<1, ":N", ":V") ~1:-2>> *


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

................................................................................
TEST: personne n’en {{parlent}}
TEST: je connais personne qui en {{parlent}} autant
TEST: en tant que personne qualifiée


__conj_rien__
    rien  @:V¬:(?:3s|P|Y|G)
        <<- /conj/ tag(\2, "neg") and morph(<1, ":Cs|<start>|>,", ":(?:Y|P|Q|[123][sp]|R)")
            and not(morph(\2, ":Y") and value(<1, "|ne|"))
        --1>> =suggVerb(\-1, ":3s")                                     # Conjugaison erronée. Accord avec “\1”. Le verbe devrait être à la 3ᵉ personne du singulier.

    rien  qui  @:V¬:(?:3s|P|G)
        <<- /conj/ morph(<1, ":[CRV]|<start>|>,")
        --1>> =suggVerb(\-1, ":3s")                                     # Conjugaison erronée. Accord avec “\1”. Le verbe devrait être à la 3ᵉ personne du singulier.

................................................................................
TEST: Rien n’{{arrives}} sans raison
TEST: Rien, en ce qui le concernait, ne {{pouvais}} le ramener à la raison.
TEST: ils ne savent rien qui {{puissent}} les aider
TEST: rien qui {{soient}} aussi difficile
TEST: il ne faut rien faire ou rien dire contre les manifestants
TEST: qui n’ont rien appris et rien oublié
TEST: comme si son pays n’avait rien appris du fascisme ni rien reçu de l’Europe
TEST: dans un système qui ne leur a pratiquement rien donné, rien transmis


__conj_nul_nulle__
    [nul|nulle]  ?@:[NA]¿       @:V¬:(?:3s|P|G|[NAQ].*:[si])
    [nul|nulle]  ?@:[NA]¿  qui  @:V¬:(?:3s|P|G|[NA].*:[si])
        <<- /conj/ morph(<1, ":Cs|<start>|>,", ":(?:Y|P|Q|[123][sp]|R)")
        --1>> =suggVerb(\-1, ":3s")                                     # Conjugaison erronée. Accord avec “\1”. Le verbe devrait être à la 3ᵉ personne du singulier.

Modified graphspell-js/tokenizer.js from [5a3085a08e] to [16e7826100].

15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
..
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
            [/^[   \t]+/, 'SPACE'],
            [/^\/(?:~|bin|boot|dev|etc|home|lib|mnt|opt|root|sbin|tmp|usr|var|Bureau|Documents|Images|Musique|Public|Téléchargements|Vidéos)(?:\/[a-zA-Zà-öÀ-Ö0-9ø-ÿØ-ßĀ-ʯff-st_.()-]+)*/, 'FOLDERUNIX'],
            [/^[a-zA-Z]:\\(?:Program Files(?: \(x86\)|)|[a-zA-Zà-öÀ-Ö0-9ø-ÿØ-ßĀ-ʯff-st.()]+)(?:\\[a-zA-Zà-öÀ-Ö0-9ø-ÿØ-ßĀ-ʯff-st_.()-]+)*/, 'FOLDERWIN'],
            [/^[,.;:!?…«»“”‘’"(){}\[\]·–—¿¡]/, 'PUNC'],
            [/^[A-Z][.][A-Z][.](?:[A-Z][.])*/, 'WORD_ACRONYM'],
            [/^(?:https?:\/\/|www[.]|[a-zA-Zà-öÀ-Ö0-9ø-ÿØ-ßĀ-ʯff-st_-]+[@.][a-zA-Zà-öÀ-Ö0-9ø-ÿØ-ßĀ-ʯff-st_-]{2,}[@.])[a-zA-Z0-9][a-zA-Zà-öÀ-Ö0-9ø-ÿØ-ßĀ-ʯff-st_.\/?&!%=+*"'@$#-]+/, 'LINK'],
            [/^[#@][a-zA-Zà-öÀ-Ö0-9ø-ÿØ-ßĀ-ʯff-st_-]+/, 'TAG'],
            [/^<[a-zA-Zà-öÀ-Ö0-9ø-ÿØ-ßĀ-ʯff-st]+.*?>|<\/[a-zA-Zà-öÀ-Ö0-9ø-ÿØ-ßĀ-ʯff-st]+ *>/, 'HTML'],
            [/^\[\/?[a-zA-Zà-öÀ-Ö0-9ø-ÿØ-ßĀ-ʯff-st]+\]/, 'PSEUDOHTML'],
            [/^&\w+;(?:\w+;|)/, 'HTMLENTITY'],
            [/^\d\d?[h:]\d\d(?:[m:]\d\ds?|)\b/, 'HOUR'],
            [/^\d+(?:[.,]\d+|)/, 'NUM'],
            [/^[&%‰€$+±=*/<>⩾⩽#|×¥£§¢¬÷@-]/, 'SIGN'],
            [/^[a-zA-Zà-öÀ-Ö0-9ø-ÿØ-ßĀ-ʯff-stᴀ-ᶿ_]+(?:[’'`-][a-zA-Zà-öÀ-Ö0-9ø-ÿØ-ßĀ-ʯff-stᴀ-ᶿ_]+)*/, 'WORD']
        ],
    "fr":
................................................................................
            [/^[   \t]+/, 'SPACE'],
            [/^\/(?:~|bin|boot|dev|etc|home|lib|mnt|opt|root|sbin|tmp|usr|var|Bureau|Documents|Images|Musique|Public|Téléchargements|Vidéos)(?:\/[a-zA-Zà-öÀ-Ö0-9ø-ÿØ-ßĀ-ʯff-st_.()-]+)*/, 'FOLDERUNIX'],
            [/^[a-zA-Z]:\\(?:Program Files(?: \(x86\)|)|[a-zA-Zà-öÀ-Ö0-9ø-ÿØ-ßĀ-ʯff-st.()]+)(?:\\[a-zA-Zà-öÀ-Ö0-9ø-ÿØ-ßĀ-ʯff-st_.()-]+)*/, 'FOLDERWIN'],
            [/^[,.;:!?…«»“”‘’"(){}\[\]·–—¿¡]/, 'PUNC'],
            [/^[A-Z][.][A-Z][.](?:[A-Z][.])*/, 'WORD_ACRONYM'],
            [/^(?:https?:\/\/|www[.]|[a-zA-Zà-öÀ-Ö0-9ø-ÿØ-ßĀ-ʯff-st_-]+[@.][a-zA-Zà-öÀ-Ö0-9ø-ÿØ-ßĀ-ʯff-st_-]{2,}[@.])[a-zA-Z0-9][a-zA-Zà-öÀ-Ö0-9ø-ÿØ-ßĀ-ʯff-st_.\/?&!%=+*"'@$#-]+/, 'LINK'],
            [/^[#@][a-zA-Zà-öÀ-Ö0-9ø-ÿØ-ßĀ-ʯff-st_-]+/, 'TAG'],
            [/^<[a-zA-Zà-öÀ-Ö0-9ø-ÿØ-ßĀ-ʯff-st]+.*?>|<\/[a-zA-Zà-öÀ-Ö0-9ø-ÿØ-ßĀ-ʯff-st]+ *>/, 'HTML'],
            [/^\[\/?[a-zA-Zà-öÀ-Ö0-9ø-ÿØ-ßĀ-ʯff-st]+\]/, 'PSEUDOHTML'],
            [/^&\w+;(?:\w+;|)/, 'HTMLENTITY'],
            [/^(?:l|d|n|m|t|s|j|c|ç|lorsqu|puisqu|jusqu|quoiqu|qu|presqu|quelqu)['’´‘′`ʼ]/i, 'WORD_ELIDED'],
            [/^\d\d?[h:]\d\d(?:[m:]\d\ds?|)\b/, 'HOUR'],
            [/^\d+(?:ers?\b|res?\b|è[rm]es?\b|i[èe][mr]es?\b|de?s?\b|nde?s?\b|ès?\b|es?\b|ᵉʳˢ?|ʳᵉˢ?|ᵈᵉ?ˢ?|ⁿᵈᵉ?ˢ?|ᵉˢ?)/, 'WORD_ORDINAL'],
            [/^\d+(?:[.,]\d+|)/, 'NUM'],
            [/^[&%‰€$+±=*/<>⩾⩽#|×¥£§¢¬÷@-]/, 'SIGN'],
            [/^[a-zA-Zà-öÀ-Ö0-9ø-ÿØ-ßĀ-ʯff-stᴀ-ᶿᵉʳˢⁿᵈ_]+(?:[’'`-][a-zA-Zà-öÀ-Ö0-9ø-ÿØ-ßĀ-ʯff-stᴀ-ᶿᵉʳˢⁿᵈ_]+)*/, 'WORD']







|
|







 







|
|







15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
..
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
            [/^[   \t]+/, 'SPACE'],
            [/^\/(?:~|bin|boot|dev|etc|home|lib|mnt|opt|root|sbin|tmp|usr|var|Bureau|Documents|Images|Musique|Public|Téléchargements|Vidéos)(?:\/[a-zA-Zà-öÀ-Ö0-9ø-ÿØ-ßĀ-ʯff-st_.()-]+)*/, 'FOLDERUNIX'],
            [/^[a-zA-Z]:\\(?:Program Files(?: \(x86\)|)|[a-zA-Zà-öÀ-Ö0-9ø-ÿØ-ßĀ-ʯff-st.()]+)(?:\\[a-zA-Zà-öÀ-Ö0-9ø-ÿØ-ßĀ-ʯff-st_.()-]+)*/, 'FOLDERWIN'],
            [/^[,.;:!?…«»“”‘’"(){}\[\]·–—¿¡]/, 'PUNC'],
            [/^[A-Z][.][A-Z][.](?:[A-Z][.])*/, 'WORD_ACRONYM'],
            [/^(?:https?:\/\/|www[.]|[a-zA-Zà-öÀ-Ö0-9ø-ÿØ-ßĀ-ʯff-st_-]+[@.][a-zA-Zà-öÀ-Ö0-9ø-ÿØ-ßĀ-ʯff-st_-]{2,}[@.])[a-zA-Z0-9][a-zA-Zà-öÀ-Ö0-9ø-ÿØ-ßĀ-ʯff-st_.\/?&!%=+*"'@$#-]+/, 'LINK'],
            [/^[#@][a-zA-Zà-öÀ-Ö0-9ø-ÿØ-ßĀ-ʯff-st_-]+/, 'TAG'],
            [/^<[a-zA-Z]+.*?>|^<\/[a-zA-Z]+ *>/, 'HTML'],
            [/^\[\/?[a-zA-Z]+\]/, 'PSEUDOHTML'],
            [/^&\w+;(?:\w+;|)/, 'HTMLENTITY'],
            [/^\d\d?[h:]\d\d(?:[m:]\d\ds?|)\b/, 'HOUR'],
            [/^\d+(?:[.,]\d+|)/, 'NUM'],
            [/^[&%‰€$+±=*/<>⩾⩽#|×¥£§¢¬÷@-]/, 'SIGN'],
            [/^[a-zA-Zà-öÀ-Ö0-9ø-ÿØ-ßĀ-ʯff-stᴀ-ᶿ_]+(?:[’'`-][a-zA-Zà-öÀ-Ö0-9ø-ÿØ-ßĀ-ʯff-stᴀ-ᶿ_]+)*/, 'WORD']
        ],
    "fr":
................................................................................
            [/^[   \t]+/, 'SPACE'],
            [/^\/(?:~|bin|boot|dev|etc|home|lib|mnt|opt|root|sbin|tmp|usr|var|Bureau|Documents|Images|Musique|Public|Téléchargements|Vidéos)(?:\/[a-zA-Zà-öÀ-Ö0-9ø-ÿØ-ßĀ-ʯff-st_.()-]+)*/, 'FOLDERUNIX'],
            [/^[a-zA-Z]:\\(?:Program Files(?: \(x86\)|)|[a-zA-Zà-öÀ-Ö0-9ø-ÿØ-ßĀ-ʯff-st.()]+)(?:\\[a-zA-Zà-öÀ-Ö0-9ø-ÿØ-ßĀ-ʯff-st_.()-]+)*/, 'FOLDERWIN'],
            [/^[,.;:!?…«»“”‘’"(){}\[\]·–—¿¡]/, 'PUNC'],
            [/^[A-Z][.][A-Z][.](?:[A-Z][.])*/, 'WORD_ACRONYM'],
            [/^(?:https?:\/\/|www[.]|[a-zA-Zà-öÀ-Ö0-9ø-ÿØ-ßĀ-ʯff-st_-]+[@.][a-zA-Zà-öÀ-Ö0-9ø-ÿØ-ßĀ-ʯff-st_-]{2,}[@.])[a-zA-Z0-9][a-zA-Zà-öÀ-Ö0-9ø-ÿØ-ßĀ-ʯff-st_.\/?&!%=+*"'@$#-]+/, 'LINK'],
            [/^[#@][a-zA-Zà-öÀ-Ö0-9ø-ÿØ-ßĀ-ʯff-st_-]+/, 'TAG'],
            [/^<[a-zA-Z]+.*?>|^<\/[a-zA-Z]+ *>/, 'HTML'],
            [/^\[\/?[a-zA-Z]+\]/, 'PSEUDOHTML'],
            [/^&\w+;(?:\w+;|)/, 'HTMLENTITY'],
            [/^(?:l|d|n|m|t|s|j|c|ç|lorsqu|puisqu|jusqu|quoiqu|qu|presqu|quelqu)['’´‘′`ʼ]/i, 'WORD_ELIDED'],
            [/^\d\d?[h:]\d\d(?:[m:]\d\ds?|)\b/, 'HOUR'],
            [/^\d+(?:ers?\b|res?\b|è[rm]es?\b|i[èe][mr]es?\b|de?s?\b|nde?s?\b|ès?\b|es?\b|ᵉʳˢ?|ʳᵉˢ?|ᵈᵉ?ˢ?|ⁿᵈᵉ?ˢ?|ᵉˢ?)/, 'WORD_ORDINAL'],
            [/^\d+(?:[.,]\d+|)/, 'NUM'],
            [/^[&%‰€$+±=*/<>⩾⩽#|×¥£§¢¬÷@-]/, 'SIGN'],
            [/^[a-zA-Zà-öÀ-Ö0-9ø-ÿØ-ßĀ-ʯff-stᴀ-ᶿᵉʳˢⁿᵈ_]+(?:[’'`-][a-zA-Zà-öÀ-Ö0-9ø-ÿØ-ßĀ-ʯff-stᴀ-ᶿᵉʳˢⁿᵈ_]+)*/, 'WORD']

Modified lexicons/French.lex from [26fba4eb42] to [5dad49402a].

more than 10,000 changes