-
Notifications
You must be signed in to change notification settings - Fork 128
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
Experimental: Hold key activation #407
base: master
Are you sure you want to change the base?
Conversation
@blackketter @colossatr0n @al3xandru @benwoodward and any interested Vimac users: Would yall mind testing hold key activation and giving me feedback? I'm consistently thinking about how I can make Vimac even easier/less painful to use so that users will find it easier to pick it up as a habit. Hold key activation is one of those ideas that I'm fairly confident is a winner, but I'd love to hear your thoughts on it before I spend more time & effort on it. I've attached a copy of the build, you may have to EDIT: you'll have to disable key sequence activation to get it working now. |
@dexterleng I already have a solution using a hold key (based on Karabiner). The truth is that I almost never use it because it requires using both hands. Even mapping it to keys that could allow single hand usage makes it harder to use than mode-based activation. My suggestion would be to stick with modes. I’ll give it a try though. |
@al3xandru I don't understand - what do you mean by mode-based activation? You hold a key/hit a shortcut/type a sequence, which activates a mode. The mechanism is different but the workflow is the same. |
I'm also getting the same error as blackketter. |
@blackketter @colossatr0n could you try out this solution? |
@dexterleng with the current approach (hit a shortcut or chord) mode activation is stateful. After activation, my hands are free. With hold, mode activation if temporary. My hand needs to keep the activation key pressed. I already have a working solution for this latter case so for me it’s not really appealing. My interest is in reducing the number of fingers involved :-) |
What I meant by hold key activation is, you hold Are our understandings of hold key activation similar or is there a disconnect? I'm curious - what is your working solution look like? |
That fixed it. Thx. Also reauthorized in preferences for both Input Monitoring and Accessibility. I'm able to use the hold F and A triggers. I feels slower than the modifier or sequence triggers. I also find myself pressing extra hard on the F or A key to trigger. Maybe I'd stop doing that after some practice. I'll keep using it and see if it grows on me, but so far I'd prefer the original triggers. This may be a matter of taste, and assuming it's not a big challenge, why not let the user choose any of these techniques? |
I don't plan on removing any activation mechanisms, although I would like to figure which one should be the default/main mechanism that gets marketed, taught to new users, and prioritized higher than the others. |
I'd love to know if this will still bother you after using for a couple hours/days. I just built this feature a few hours ago, and so far I think although it is slower than key sequence or shortcut, the effort to activate is much lower and allows me to be more "lazy". |
Will do. Is there any way to adjust the hold wait time? It doesn't appear that the system keyboard Delay Until Repeat or the Vimac Reset Delay settings affect this. |
Nope. I'll have to build it again. However, I have tried lower delays (0.1, 0.2) and found that it was activating while I was typing. |
I'm experiencing typing delays which kind of make it unusable for me. Sometimes the typing delay is related to the "a" or "f" keys but sometimes it's not. Here's a related key instance: if I type "ta", "t" gets ignored unless I type slower since "a" is an activation key. Sometime though I'll be typing something like "ty" and one of the letters gets ignored. When I quit this version of Vimac, I don't experience the typing delays any more. My favorite activation method is still the key sequence activation. I've set them to ";f" for hints and ";s" for scrolling. There are still typing delays with using the key sequences option, but in this case I only get the delay when typing ";" which is doable since ";" isn't a character that you normally type in the middle of a sentence. |
I'm seeing this too. |
It makes sense to me to use the system keyRepeatDelay for this timing. It would provide a consistent interface for the timing associated with press and hold of a key. |
One other minor note: On US keyboards, at least, |
Ok, I had to switch back. I found the press and hold problematic for two reasons:
|
81c2caa
to
e0b2129
Compare
e0b2129
to
2137460
Compare
Configuration is hard coded currently:
f
to toggle hint-modea
to toggle scroll-modecan't use
j
because you have to holdj
to scroll down.