197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
|
aSugg.update(self._suggest(sWord.lower(), nMaxDel=nMaxDel, nMaxHardRepl=nMaxHardRepl))
aSugg = set(map(lambda sSugg: sSugg.title(), aSugg))
elif sWord.islower():
aSugg.update(self._suggest(sWord.title(), nMaxDel=nMaxDel, nMaxHardRepl=nMaxHardRepl))
if not aSugg:
#print("crush useless chars")
aSugg.update(self._suggestWithCrushedUselessChars(cp.clearWord(sWord)))
aSugg = filter(lambda sSugg: not sSugg.endswith("è") and not sSugg.endswith("È"), aSugg) # fr language
return sorted(aSugg, key=lambda sSugg: cp.distanceDamerauLevenshtein(sWord, sSugg))[:nMaxSugg]
def _suggest (self, sRemain, nMaxDel=0, nMaxHardRepl=0, nDeep=0, iAddr=0, sNewWord="", bAvoidLoop=False):
"returns a set of suggestions"
# recursive function
#show(nDeep, sNewWord + ":" + sRemain)
aSugg = set()
|
|
|
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
|
aSugg.update(self._suggest(sWord.lower(), nMaxDel=nMaxDel, nMaxHardRepl=nMaxHardRepl))
aSugg = set(map(lambda sSugg: sSugg.title(), aSugg))
elif sWord.islower():
aSugg.update(self._suggest(sWord.title(), nMaxDel=nMaxDel, nMaxHardRepl=nMaxHardRepl))
if not aSugg:
#print("crush useless chars")
aSugg.update(self._suggestWithCrushedUselessChars(cp.clearWord(sWord)))
aSugg = filter(lambda sSugg: not sSugg.endswith(("è", "È")), aSugg) # fr language
return sorted(aSugg, key=lambda sSugg: cp.distanceDamerauLevenshtein(sWord, sSugg))[:nMaxSugg]
def _suggest (self, sRemain, nMaxDel=0, nMaxHardRepl=0, nDeep=0, iAddr=0, sNewWord="", bAvoidLoop=False):
"returns a set of suggestions"
# recursive function
#show(nDeep, sNewWord + ":" + sRemain)
aSugg = set()
|