AgapeIoan / SAMP-Stats

The source code of SAMP Stats Discord Bot
https://sampstats.agapeioan.ro
3 stars 0 forks source link

Smart autocomplete #67

Open AgapeIoan opened 2 years ago

AgapeIoan commented 2 years ago

Ar fi fain ca lista de return return [lang for lang in options if string.lower() in lang.lower()][:24] sa stie fuzzy matching. Nu pare usor dar nici imposibil, as putea implementa distanta Levenshtein de maxim +1 sau +2 pe toate autocomplete-urile (exceptii in functie de cum vad ca se returneaza valori), asa omul tot gaseste rezultatul daca face un typo mic. Functia de autocomplete lucrand doar cu liste de strings, ar trebui sa modific ierarhia cumva din string1 in string2 la ceva bazat doar pe distanta Lev si sa inceapa de la +0 pana la maxim +2. Asa prioritate ar avea doar rezultatele cu Lev +0 si daca mai este loc, afisam si Lev +1/+2.

Pentru sanity lucram cu o singura functie de autocomplete ce va fi template universal de lucra cu string /w lista primite.

Ce ne placee sa ne complicaaam (nu-mi pasa, o sa fie interesanta partea tehnica din spate + rezultatul final)