Overview
Comment: | [graphspell] suggestion mechanism: extend search further |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | trunk | graphspell |
Files: | files | file ages | folders |
SHA3-256: |
d2cc0989dbcc2e148f51f88b9365ccc2 |
User & Date: | olr on 2021-02-09 16:23:51 |
Other Links: | manifest | tags |
Context
2021-02-10
| ||
08:45 | [graphspell] JaroWinkler: modify variable names check-in: 6ee195e8d3 user: olr tags: trunk, graphspell | |
2021-02-09
| ||
16:23 | [graphspell] suggestion mechanism: extend search further check-in: d2cc0989db user: olr tags: trunk, graphspell | |
10:17 | [fr] dictionnaire: suppression du drapeau iM. Verbe “s’enquérir” -> iK check-in: 1c781094d2 user: olr tags: trunk, fr | |
Changes
Modified graphspell-js/ibdawg.js from [73dd04c644] to [34ce7a8182].
︙ | ︙ | |||
30 31 32 33 34 35 36 | // Temporary sets this.aAllSugg = new Set(); // All suggestions, even the one rejected this.dGoodSugg = new Map(); // Acceptable suggestions this.dBestSugg = new Map(); // Best suggestions // Parameters this.nSuggLimit = nSuggLimit; this.nSuggLimitExt = nSuggLimit + 2; // we add few entries in case suggestions merge after casing modifications | | | 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 | // Temporary sets this.aAllSugg = new Set(); // All suggestions, even the one rejected this.dGoodSugg = new Map(); // Acceptable suggestions this.dBestSugg = new Map(); // Best suggestions // Parameters this.nSuggLimit = nSuggLimit; this.nSuggLimitExt = nSuggLimit + 2; // we add few entries in case suggestions merge after casing modifications this.nBestSuggLimit = Math.floor(nSuggLimit * 2); // n times the requested limit this.nGoodSuggLimit = nSuggLimit * 15; // n times the requested limit } addSugg (sSugg) { // add a suggestion if (this.aAllSugg.has(sSugg)) { return; |
︙ | ︙ |
Modified graphspell/ibdawg.py from [15700e29f3] to [bd93f6353b].
︙ | ︙ | |||
49 50 51 52 53 54 55 | # Temporary sets self.aAllSugg = set() # All suggestions, even the one rejected self.dGoodSugg = {} # Acceptable suggestions self.dBestSugg = {} # Best suggestions # Parameters self.nSuggLimit = nSuggLimit self.nSuggLimitExt = nSuggLimit + 2 # we add few entries in case suggestions merge after casing modifications | | < > | 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 | # Temporary sets self.aAllSugg = set() # All suggestions, even the one rejected self.dGoodSugg = {} # Acceptable suggestions self.dBestSugg = {} # Best suggestions # Parameters self.nSuggLimit = nSuggLimit self.nSuggLimitExt = nSuggLimit + 2 # we add few entries in case suggestions merge after casing modifications self.nBestSuggLimit = floor(nSuggLimit * 2) # n times the requested limit self.nGoodSuggLimit = nSuggLimit * 15 # n times the requested limit def addSugg (self, sSugg, nDeep=0): "add a suggestion" if sSugg in self.aAllSugg: return self.aAllSugg.add(sSugg) nDistJaro = 1 - st.distanceJaroWinkler(self.sSimplifiedWord, st.simplifyWord(sSugg)) nDist = floor(nDistJaro * 10) #logging.info((nDeep * " ") + "__" + sSugg + "__ " + str(round(nDistJaro*1000))) if nDistJaro < .11: # Best suggestions self.dBestSugg[sSugg] = round(nDistJaro*1000) if len(self.dBestSugg) > self.nBestSuggLimit: self.nDistLimit = -1 # make suggest() to end search elif nDistJaro < .33: # Good suggestions self.dGoodSugg[sSugg] = round(nDistJaro*1000) if len(self.dGoodSugg) > self.nGoodSuggLimit: |
︙ | ︙ |