rbreaves / kinto

Mac-style shortcut keys for Linux & Windows.
http://kinto.sh
GNU General Public License v2.0
4.48k stars 214 forks source link

cmd+shift+left arrow following shift+up arrow (without releasing shift) don't work. #555

Open josdyr opened 3 years ago

josdyr commented 3 years ago

Describe the bug Let's say I want to select two lines from the bottom of a file. The natural way would be to cmd+shift+left arrow following shift+up arrow (after releasing cmd) without releasing the shift key.

Expected behavior Expect the highlight/selection to continue highlighting as I move up/down/right/left while still holding shift.

Ubuntu 20.04, ThinkPad, wireless keyboard Satechi Slim X1

Excellent program.

rbreaves commented 3 years ago

I never even knew someone could highlight two lines like that.. but yea, I see what you are saying. Will need to look into this later, modifications to xkeysnail will be required.

Also an alternative in the meanwhile is to do multi-cursors first.. so Ctrl-Shift-Up/Down and then Cmd-Shift-Left/Right.

rbika commented 2 years ago

Hey, any news about this? I'm also having this problem running Ubuntu 21.04. I noticed if I install the original xkeysnail v0.4.0 it fixes this behavior, but then I have problems with window switching (alt+tab).

rbreaves commented 2 years ago

No new news atm, and yea 0.4.0 rolled back out some, not all, but some of my patches due to them causing issues for some xkeysnail users who do not like held key behaviors. I have not forgotten though that I need to be looking at keeping modifiers held if the shift key is held. Tbh I think that behavior is somewhat infrequent for most users, but I get that for you and some others that have gotten used to that behavior would expect it to continue to work the same way. It feels weird to me though that that would work, but sorta makes sense too.

rbika commented 2 years ago

Thanks for the feedback @rbreaves. Not sure if the behavior is clear but this is what happens:

  1. Press and hold Modifier + Shift
  2. Release Modifier but keep Shift pressed
    • (Current behavior) Shift key is also being release
    • (Expected behavior) Shift key should be pressed until fisically released
edbaskerville commented 1 year ago

Second this! Kinto has made my switch from Mac so much easier. But apparently this esoteric behavior pattern is one I use frequently.

I just encountered this specific example in IntelliJ on Ubuntu 22.04:

  1. Press Option-Shift-Left to select the previous word
  2. Release Option but keep Shift held down
  3. Press Left to select one more character
    • Expected: one more character is selected to the left
    • Actual: cursor is moved to just before the selection

My current workaround is to release all the keys before extending the selection further, but this definitely creates a cognitive interruption.

14to9 commented 1 year ago

This! I also have the issue when navigating via Ctrl or other key (beginning of line, next word, end of line, etc) and then starting to type with Shift:

Simple test: Hold Ctrl Hold Shift Release Ctrl Press H [ Get h expected H ]

Workaround is to release all keys before starting typing (or extending selection, I suffer the same issue as @edbaskerville ), but this definitely creates a cognitive interruption (which can be fatal at my age 🤣 )

RedBearAK commented 1 year ago
Simple test:
Hold Ctrl
Hold Shift
Release Ctrl
Press H
[ Get h expected H ]

Result for me: H

FYI for everyone following this thread:

I've been using keyszer instead of xkeysnail for a few months now. It's a fork of xkeysnail that fixes a lot of problems and adds quite a few new features.

I tried all the examples of supposedly problematic combo shifting described in this thread, but haven't been able to replicate this issue while using keyszer as the keymapper. I can easily move between different combos without completely releasing all modifier keys.

So when Kinto migrates to keyszer, this problem should disappear.

https://github.com/joshgoebel/keyszer

14to9 commented 1 year ago

Is there a forecast on when the keyszer migration is due? (The journey into the woods of replacing the kinto keymapper seems dark and perilous.)