os-issue-tracker icon indicating copy to clipboard operation
os-issue-tracker copied to clipboard

[Feature Request] Improve Launcher App-Search

Open newhinton opened this issue 10 months ago • 2 comments

Sometimes i have a hard time to get usable results from the launcher-search.

As an example: "F-Droid Basic"

When typing 'F', only the first 5 results are shown. That easily pushes out wanted results if more than 5 apps with the letter f at the beginning of a token is installed.

'fdroid' as a searchterm is also not usable, because only F or Droid are recognized tokens. However, in the case of special characters i would argue that "unified" terms like fdroid are valid searchterms. (K-9 Mail is another example)

Another example would be QKSMS, where sms is not beeing recognized, but i would also argue that sms is a valid searchterm.

From the StringMatcherUtility i can see that this is working as intended at the moment, but maybe some expanded rules would make the search better.

A few ideas are:

  • Ignore any kind of tokenization if the resultlist would otherwise be emtpy
  • Treat '-' or similar as non-existent in addition to two tokens (so that k9 or fdroid would match)
  • Show more than 5 results
  • Strip all special chars, find substrings with levensthein-distance of a given error range (this one is probably the most complicated and computationally expensive, but it would allow the user to find apps even with typos (fbroid would return fdroid as an example.) Probably overkill.

Sadly i cant really help out with implementing those ideas because i dont know how to build those packages, but thank you for your work either way!

newhinton avatar Apr 18 '24 13:04 newhinton

So basically fuzzy search.

MichaelDevon avatar May 10 '24 14:05 MichaelDevon

Yeah, at least for the last suggestion. The others are more an improvement for the tokenization.

I am generally willing to help out, but i am entirely unfamilliar how the packages from an android fork can be build&tested on their own, so i'd only be able to write some standalone code that could then be integrated in the matcher utility.

newhinton avatar May 10 '24 14:05 newhinton