Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Suggestion: Make the default/first selected target be the closest match. #79

Open
blackketter opened this issue Sep 17, 2022 · 3 comments

Comments

@blackketter
Copy link

It seems that when typing a couple of keys in wooshy, the default selection is the first one at the top of the screen. I think that it might be better to select the closest match first.

Choosing the "closest" might be tricky, but for example, when I'm on this github page, typing "ma" selects the "Bookmarks" menu, while the "Marketplace" item in the page would probably be a better choice. This could be as simple as choosing the first item that starts with the typed letters over all others.

@godbout
Copy link
Owner

godbout commented Sep 18, 2022

It seems that when typing a couple of keys in wooshy, the default selection is the first one at the top of the screen.

it's the first one in the list that matches the search and that would be navigable through the tab key in the standard macOS way.

Choosing the "closest" might be tricky, but for example, when I'm on this github page, typing "ma" selects the "Bookmarks" menu, while the "Marketplace" item in the page would probably be a better choice. This could be as simple as choosing the first item that starts with the typed letters over all others.

the problem is that "the closest" means objectively?

let's say you have:

  1. an app menu Bookmarks
  2. a link within the focused app or page Marketplace
  3. a button within the focused app or page Mark All

some people will want "the closest" to be 2, some will want it to be 3. hell maybe some weirdo will even want 1!

i had some ideas before about this. it could be:

  1. provide in the Settings some sort of priorities. like you could choose if you want focused app first, status icons second, etc.
  2. have a system à la Alfred where the more you go to a Target, the more it'll come first at the next search. but this is way more hardcore, coz then you need some sort of database to keep track of all the info. currently Wooshy is completely stateless. once the Targets disappear you're back to zero.

just some thoughts, for your specific you probably can target better by adding the type. Bookmarks would be "menu" while your Marketplace maybe be a link. so ma l would target the Marketplace.

@blackketter
Copy link
Author

You're right, of course, there's no objective "closest". That said, I suspect that any simple algorithm that prioritized 2 or 3 above 1 would be a win.

Personally, I'd go for an exact match for the first letters in a target to be the first match: #2, then first letters of words (aka acronym mode): #3, then contents, sorted from the top: #1.

Not sure I'd find a type term that helpful. I tend to look at the item and type the thing that I see, less thinking more reading. (which, incidentally, is why I generally prefer the vimac/homerow method. read and type, boom.)

@godbout
Copy link
Owner

godbout commented Sep 20, 2022

Not sure I'd find a type term that helpful.

jfi it's already in Wooshy. i personally use it often, when there's checkboxes + links, to target what i need.

I tend to look at the item and type the thing that I see, less thinking more reading. (which, incidentally, is why I generally prefer the vimac/homerow method. read and type, boom.)

funnily i built Wooshy for the exact opposite reason. it's much less friction for me to type what i want, rather than reading hints that i have to decipher, and that keep changing at each invocation. with Vimac/Homerow, in my case, there's a delay which happens because i need to wait, read/decipher. i don't have this delay with Wooshy, because as soon as i open The Input i type and get where i want. it's definitely more keystrokes. hell, at the end it may even take longer. but i'm in control of the whole process, which is important for me. different needs! maybe Wooshy is actually not for you :p

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants