48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
|
aSugg.add(conj._getConjWithTags(sStem, tTags, sTense, sWho))
if funcSugg2:
aSugg2 = funcSugg2(sFlex)
if aSugg2:
aSugg.add(aSugg2)
if aSugg:
if bVC:
aSugg = list(map(lambda sSug: sSug + sSfx, aSugg))
return "|".join(aSugg)
return ""
def suggVerbPpas (sFlex, sPattern=None):
"suggest past participles for <sFlex>"
aSugg = set()
for sStem in _oSpellChecker.getLemma(sFlex):
tTags = conj._getTags(sStem)
if tTags:
|
|
>
>
>
>
>
>
>
>
>
>
>
|
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
|
aSugg.add(conj._getConjWithTags(sStem, tTags, sTense, sWho))
if funcSugg2:
aSugg2 = funcSugg2(sFlex)
if aSugg2:
aSugg.add(aSugg2)
if aSugg:
if bVC:
aSugg = [ joinVerbAndSuffix(sSugg, sSfx) for sSugg in aSugg ]
return "|".join(aSugg)
return ""
def joinVerbAndSuffix (sFlex, sSfx):
if sSfx.startswith(("-t-", "-T-")) and sFlex.endswith(("t", "d", "T", "D")):
return sFlex + sSfx[2:]
if sFlex.endswith(("e", "a", "c", "E", "A", "C")):
if re.match("(?i)-(?:en|y)$", sSfx):
return sFlex + "s" + sSfx
if re.match("(?i)-(?:ie?l|elle|on)$", sSfx):
return sFlex + "-t" + sSfx
return sFlex + sSfx
def suggVerbPpas (sFlex, sPattern=None):
"suggest past participles for <sFlex>"
aSugg = set()
for sStem in _oSpellChecker.getLemma(sFlex):
tTags = conj._getTags(sStem)
if tTags:
|
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
|
aSugg.add(conj._getConjWithTags(sStem, tTags, ":E", ":2s"))
if conj._hasConjWithTags(tTags, ":E", ":1p"):
aSugg.add(conj._getConjWithTags(sStem, tTags, ":E", ":1p"))
if conj._hasConjWithTags(tTags, ":E", ":2p"):
aSugg.add(conj._getConjWithTags(sStem, tTags, ":E", ":2p"))
if aSugg:
if bVC:
aSugg = list(map(lambda sSug: sSug + "s" + sSfx if (sSfx == "-en" or sSfx == "-y") and sSug.endswith(("e", "a")) else sSug + sSfx, aSugg))
return "|".join(aSugg)
return ""
def suggVerbInfi (sFlex):
"returns infinitive forms of <sFlex>"
return "|".join([ sStem for sStem in _oSpellChecker.getLemma(sFlex) if conj.isVerb(sStem) ])
|
|
|
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
|
aSugg.add(conj._getConjWithTags(sStem, tTags, ":E", ":2s"))
if conj._hasConjWithTags(tTags, ":E", ":1p"):
aSugg.add(conj._getConjWithTags(sStem, tTags, ":E", ":1p"))
if conj._hasConjWithTags(tTags, ":E", ":2p"):
aSugg.add(conj._getConjWithTags(sStem, tTags, ":E", ":2p"))
if aSugg:
if bVC:
aSugg = [ joinVerbAndSuffix(sSugg, sSfx) for sSugg in aSugg ]
return "|".join(aSugg)
return ""
def suggVerbInfi (sFlex):
"returns infinitive forms of <sFlex>"
return "|".join([ sStem for sStem in _oSpellChecker.getLemma(sFlex) if conj.isVerb(sStem) ])
|
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
|
aSugg = phonet.selectSimil(sWord, sPattern)
if not aSugg or not bSubst:
for sMorph in _oSpellChecker.getMorph(sWord):
aSugg.update(conj.getSimil(sWord, sMorph, bSubst))
break
if aSugg:
if bVC:
aSugg = list(map(lambda sSug: sSug + "s" + sSfx if (sSfx == "-en" or sSfx == "-y") and sSug.endswith(("e", "a")) else sSug + sSfx, aSugg))
return "|".join(aSugg)
return ""
def suggCeOrCet (sWord):
"suggest “ce” or “cet” or both according to the first letter of <sWord>"
if re.match("(?i)[aeéèêiouyâîï]", sWord):
|
|
|
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
|
aSugg = phonet.selectSimil(sWord, sPattern)
if not aSugg or not bSubst:
for sMorph in _oSpellChecker.getMorph(sWord):
aSugg.update(conj.getSimil(sWord, sMorph, bSubst))
break
if aSugg:
if bVC:
aSugg = [ joinVerbAndSuffix(sSugg, sSfx) for sSugg in aSugg ]
return "|".join(aSugg)
return ""
def suggCeOrCet (sWord):
"suggest “ce” or “cet” or both according to the first letter of <sWord>"
if re.match("(?i)[aeéèêiouyâîï]", sWord):
|