Live data from Hacker News

Warpd: A modal keyboard-driven virtual pointer

github.com

1–10 of 125 posts

Re: Warpd: A modal keyboard-driven virtual pointer

#5
post #4

Looks very useful! I especially like the ‘grid mode’ — I would never have thought of that idea myself. It’s just a pity it isn’t available on Windows, though I’ve previously had good experiences with Mousable [ https://github.com/wirekang/mouseable ].

It's been in https://kaleidoscope.readthedocs.io/en/stable/plugins/Kaleid... for a while (as in, it's a plugin you can include in your custom open source keyboard firmware, with both 2x2 and 3x3 modes.)

Re: Warpd: A modal keyboard-driven virtual pointer

#6
This is great.

I have been using something called keynav[1], for getting a similar grid mode. I would never guess how intuitive it is.

It doesn't replace the mouse, but it's helpful for that occasional click in the middle of heavy keyboarding.

https://github.com/jordansissel/keynav

Re: Warpd: A modal keyboard-driven virtual pointer

#7
post #5
post #4

Looks very useful! I especially like the ‘grid mode’ — I would never have thought of that idea myself. It’s just a pity it isn’t available on Windows, though I’ve previously had good experiences with Mousable [ https://github.com/wirekang/mouseable ].

It's been in https://kaleidoscope.readthedocs.io/en/stable/plugins/Kaleid... for a while (as in, it's a plugin you can include in your custom open source keyboard firmware, with both 2x2 and 3x3 modes.)

When I first tried warp on my new keyboard, I really did not understand what was happening and thought it was bugged. The bindings came by default. I removed them and went on.

A few days later I wanted to add custom macros and had to read the docs. Skimming the warp section made me realize it's basically just recursive space positioning. I tried the mode again, and soon realized how incredibly useful this is.

It's a bit difficult for me to keep the state in my mind when going down the tree because there's no visual indicators. It's a keyboard firmware after all.

Re: Warpd: A modal keyboard-driven virtual pointer

#9
I've built an app that has the same goals (not operate a mouse) but approach it completely different.

Rather than try to simulate the moving the mouse itself, Shortcat [https://shortcat.app/] indexes the user interface (buttons, text fields, links, menus, etc) and enables fast fuzzy search of the interface. Type a word, abbreviations, or hints and hit Enter to click or action the element. Works almost everywhere on macOS, including browsers, Electron apps, and even iOS apps!

The goal is to minimise cognitive overhead to achieve a particular intent, so being able to type a word to hit a button, or active a deep menu item when you don't know the shortcut is quick and easy.

I'm currently working on a modal option which enables staying within Shortcat to navigate an interface, as well as chords for simulating scrolling and arrow keys.

Shortcat relies on using the Accessibility API to index UI elements however, and is dependent on how well an app or website has implemented it. One of the goals is to help improve accessibility implementations by exposing more people to its implementations and pushing for developers to fix broken or incorrectly implemented accessibility tagging.

Shortcat is macOS only for now as I haven't been able to investigate how viable doing this on Windows or Linux would be, especially on Linux considering all the different toolkits that exist.

Re: Warpd: A modal keyboard-driven virtual pointer

#10
Looking at the limitations, I hate how fragmented Linux is becoming for apps like this. Completely separate implementations for:

- X

- Wayland + Gnome Shell

- Wayland + wlroots-based compositor

- Wayland + sway or any other non-wlroots based compositor

Is Wayland really that much better that this is worth it? Why can't Wayland be aware of the compositor like X?

Post reply on HN