What’s this?

It’s a RES-like browser extension that enables keyboard navigation, meaning you will no longer have to use your mouse to navigate Lemmy if want to use it for accessibility purposes or if you’re lazy like myself 😌

Why YSK:

If you miss RES and have Chrome/Firefox/Opera/Edge (Safari still not supported) you can give it a spin and see if it makes your life easier.

Hope this is helpful and enjoy! 🚀

Sharing the basic hotkeys below, you may also find everything on the github page:

J = Next Post	/ Comment
K = Previous Post / Comment
L = Next Page	/ same-level Comment
H = Previous Page / same-level Comment
A = Upvote
Z = Downvote
X = Expand
C = View Comments
R = Reply
Enter = View Link
  • Zagorath@aussie.zone
    link
    fedilink
    English
    arrow-up
    1
    ·
    10 days ago

    Hey, I just discovered this and discovered that you seem to be the developer of it.

    It seems to be broken in at least two ways, and doing some very unexpected (at least insomuch as it attempts to replicate RES behaviour, and also IMO how I would expect it to behave) things with alternative keyboard layouts.

    Broken: upvoting posts. If I have a post selected and press “a”, it takes me to the post in the poster’s instance, the same as clicking the little fediverse logo. If I press “z”, it upvotes. Voting works fine on comments with a = upvote, z = downvote.

    “Disable arrow key scrolling” also seems to disable the use of arrow keys inside of a text box.

    Keyboard layouts: in short, you seem to be using event.code, which detects which physical hardware key is depressed, instead of event.key, which detects the character that was typed. It means that if I want to move forward and backward, I have to press the key I would normally expect to type h/t.

    To be clear: this is not wrong necessarily. It’s actually sort of my preferred way for video games to do things, so I can type the keys in the space that WASD are and move around, for example. But as my personal preference, and my experience of how most browser extensions do things (including RES), this is not how I’d prefer it to be done.

    I use Dvorak, which by coincidence keeps a and m in the same places as QWERTY (as well as the number keys), but moves everything else around to be more efficient and ergonomic. It also has the benefit of putting j and k where QWERTY has c and v, allowing for convenient one-handed use of the “next” and “previous” comment buttons along with upvoting, while keeping the right hand on the mouse for scrolling. And I could easily reach to the numpad enter key with my mouse hand to collapse a section (side note: using event.code means only the main enter key works. Using event.key, both enter keys are Enter). QWERTY requires two hands on the keyboard.

    Screenshot showing the Dvorak home row, the enter key, and the numpad enter key, results after executing a keydown event listener for console.log()