Overview
| Comment: | [graphspell] suggestion mechanism optimization: parse graph arcs according to similar chars |
|---|---|
| Downloads: | Tarball | ZIP archive | SQL archive |
| Timelines: | family | ancestors | descendants | both | trunk | graphspell |
| Files: | files | file ages | folders |
| SHA3-256: |
58fed3978799489194f877e74844d386 |
| User & Date: | olr on 2025-09-23 11:48:05 |
| Other Links: | manifest | tags |
Context
|
2025-10-01
| ||
| 09:37 | [fr] faux positifs et ajustements check-in: 82748a4a2e user: olr tags: trunk, fr | |
|
2025-09-23
| ||
| 11:48 | [graphspell] suggestion mechanism optimization: parse graph arcs according to similar chars check-in: 58fed39787 user: olr tags: trunk, graphspell | |
| 11:14 | [cli] clarity for spelling suggestion check-in: 4858dc598e user: olr tags: trunk, cli | |
Changes
Modified gc_lang/fr/modules/tests_modules.py from [10ff0f96cf] to [69c65c5b78].
| ︙ | |||
63 64 65 66 67 68 69 | 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 | - + + |
("Emilie", "Émilie"),
("exibission", "exhibition"),
("ditirembique", "dithyrambique"),
("jai", "j’ai"),
("email", "courriel"),
("fatiqué", "fatigué"),
("coeur", "cœur"),
|
| ︙ |
Modified graphspell-js/ibdawg.js from [d23b81aee3] to [f51bd17e6f].
| ︙ | |||
363 364 365 366 367 368 369 | 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 | - + |
}
}
}
if (nDist > oSuggResult.nDistLimit) {
return;
}
let cCurrent = sRemain.slice(0, 1);
|
| ︙ | |||
425 426 427 428 429 430 431 | 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 | - + + + - - + + + + + + + + + |
}
if (!this.a2grams) {
return true;
}
return this.a2grams.has(sChars);
}
|
| ︙ |
Modified graphspell/ibdawg.py from [b0bfbd049d] to [df9af9aea6].
| ︙ | |||
249 250 251 252 253 254 255 | 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 | - + - + |
if cSplitter in sWord:
sWord1, sWord2 = sWord.split(cSplitter, 1)
if self.isValid(sWord1) and self.isValid(sWord2):
oSuggResult.addSugg(sWord1+" "+sWord2)
def _suggest (self, oSuggResult, sRemain, nMaxSwitch=0, nMaxDel=0, nMaxHardRepl=0, nMaxJump=0, nDist=0, nDeep=0, iAddr=0, sNewWord="", bAvoidLoop=False):
# recursive function
|
| ︙ | |||
306 307 308 309 310 311 312 | 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 | - + + + - + + + + + |
"returns True if sChars in known 2grams"
if len(sChars) != 2:
return True
if not self.a2grams:
return True
return sChars in self.a2grams
|
| ︙ |