SUMMARY Actions from the "desktop sessions" plugin are way down. Many of the other results don't make much sense either until a very long portion of the string qualifies something to show up. I have disabled over 2/3 of search plugins because they populate my results with suggestions I don't care about. This is a regression that started a few versions ago. I'm not sure if it happened with kf6 or some minor release after that. But it definitely wasn't in 5. STEPS TO REPRODUCE 1. Desktop Sessions plugin is enabled 2. Type "r" get "System settings" and "Recent files" (both from System settings plugin) 3. "re" => same as above 4. "res" => Get results from "Applications" like "Dolphin" (why???), "LibreOffice Impress" (fuzzy matches), "Menu Editor" (why?), "btop++" (why???)... some other apps and "Touchscreen Gestures" from System settings. 5. "rest" => "Desktop Sessions" from "System settings" (I guess restart is part of that, but why doesn't "Restart" show up?) 6. "resta" and "restar" => "Search the web for" via "Web Search Keywords" (this is the only result) 7. "restart" => Finally, "Restart" from "Desktop Sessions" shows up. I had to completely qualify the keyword for the desired thing to show up. Before, I would get "Restart" to show up on the initial "r". What happened? OBSERVED RESULT Suggestions are of very poor quality. Often they don't match the via title or another sensible reference. EXPECTED RESULT Get results matching the title from the beginning of the word at the very top. Sort results with equal specificity alphabetically. Increase specificity of those matches that have been used by the user before. SOFTWARE/OS VERSIONS Linux/KDE Plasma: Arch - up to date as of writing KDE Plasma Version: 6.4.1 KDE Frameworks Version: 6.4.0 Qt Version: 6.7.2 ADDITIONAL INFORMATION Settings: History: Enable suggestions Enabled plugins: Applications Calculator Command line Date and Time Desktop Sessions Dictionary Power Spell Checker System Settings Unit Converter Web Search keywords Windows
> SOFTWARE/OS VERSIONS > > KDE Plasma Version: 6.4.1 Sorry, that should be 6.1.4
I can reproduce this. Are you saying that it was better in the past, that you were able to get to "restart" by typing fewer characters?
(In reply to Nate Graham from comment #2) > Are you saying that it was better in the past, that you were able to get to > "restart" by typing fewer characters? That is part of it. The number one issue is that "restart" doesn't even show up until the full word is typed in. The second issue is the prioritization of suggestions. I would expect it to match more in line with what fzf does. The longest exact match must be at the top. Later you might add additional weights based on the frequency of use or something but that's not important. Maybe that's happening already but when the suggestions aren't being populated in the first place, the prioritization isn't noticeable. I will collect more examples of unexpected behavior and add to this ticket.
> This is a regression that started a few versions ago. I seem to remember the same, though looking at the runner code I don't see how that could have been the case. Maybe you used to have auto-complete enabled on your KRunner history, and now that's turned off? If e.g. "restart" were auto-completing, you would have seen that result without typing the whole thing in. (Also if you're searching through the start menu or the search widget, those don't have history search any more, if they ever did.) In any case, changing the session runner code to match on `startsWith` instead of an exact text match yields good results for me, but I'm not sure if it's i18n friendly. > The second issue is the prioritization of suggestions. I would expect > it to match more in line with what fzf does. The longest exact match > must be at the top. Later you might add additional weights based on > the frequency of use or something but that's not important. I think the issue with this is that KRunner groups results logically by section, e.g. Applications, System Settings, etc, which makes sense because they're very different sorts of results. When weird results show up it's usually because a full search includes the descriptions and keywords of the .desktop files, e.g. Dolphin is an unfortunate partial match with "network shaRES". Which, yes, is really stupid, but it's hard to see how you would avoid it and still return all relevant results. If someone *is* looking for network shares, you probably do want to show Dolphin as an option. Reasonable proposals for improving the search heuristics are needed I think. E.g. maybe it makes sense to do some kind of word splitting on hidden values like the contents of desktop files, and only match the beginnings of words. So for example in this case Dolphin would only be shown if you typed e.g. "netw..." or "sha...". But even this is frequently going to be unsatisfactory, e.g. searching "abo" on this system (which I do multiple times a week, to get to "About this System") shows "ICC Profile Info" as an application suggestion. This program has a desktop file that contains the comment "Shows information about an ICC profile". So realistically to make this robust you have to get into word scoring - what's a *significant* search term? Network? Probably significant. About? Definitely not significant, only show direct text matches, nothing hidden. And none of this solves the problem of ordering, and I don't have a good solution there. Sure it makes sense for the longest exact match to be at the top, but you have to account for priorities of multiple logical sections. If you've typed in three letters and there are good partial matches from 5 sections, but Applications has 10 partial matches and one exact match, do you show *all* the applications above the other sections, even though most of them are crappy matches based on .desktop files? There's an ongoing discussion about this at https://invent.kde.org/frameworks/krunner/-/issues/2 where it might make sense to plug any good ideas.
*** This bug has been marked as a duplicate of bug 474981 ***