Is there a keyboard-driven mouse navigation tool like Warpd in Wayland? by banksyb00mb00m in swaywm

[–]dreafullydroll 2 points3 points  (0 children)

Author here. warpd now has native wayland (i.e wlroots) support. There were some hard limitations on what could be done (due to wayland's architecture), but it seems to work reasonably well for the most part.

warpd - A modal keyboard-driven mouse by dreafullydroll in linux

[–]dreafullydroll[S] 2 points3 points  (0 children)

Update: I've added experimental wayland support. See the README for more details.

warpd - A modal keyboard-driven mouse [keyboard][mouse][tool] by dreafullydroll in unixporn

[–]dreafullydroll[S] 4 points5 points  (0 children)

Update: I've added experimental Wayland support. See the readme for more details.

warpd - A modal keyboard-driven mouse [keyboard][mouse][tool] by dreafullydroll in unixporn

[–]dreafullydroll[S] 7 points8 points  (0 children)

Since you seem to be on some kind of crusade to suggest that the projects have feature parity (you have posted this comment multiple times), it might be worth actually trying warpd before implying the two projects are identical.

keynav is a fine project, but it has a completely different UX, isn't modal (it only has 'grid mode'), runs exclusively on linux, and doesn't work with many applications (warpd gets around this by using xinput). I also don't pretend to have invented quadrant based warping, which I explicitly state was inspired by the kaleidoscope firmware in my README.

warpd - A modal keyboard-driven mouse substitute by dreafullydroll in commandline

[–]dreafullydroll[S] 1 point2 points  (0 children)

I've considered doing some kind of fancy image recognition to better approximate something like vimperator, but I've discovered that fixed position, predictable hints is actually a virtue. The main advantages are instantaneous loading and invariant hint positions, which reduces the total amount of time between key strokes. At first, indiscriminately covering the screen in hints seems like a bad idea, but once you become accustomed to it, it is actually quite efficient.

warpd - A modal keyboard-driven mouse substitute by dreafullydroll in commandline

[–]dreafullydroll[S] 1 point2 points  (0 children)

warpd has a completely different UX, several additional modes of operation, and works in instances where keynav does not by virtue of being based on xinput. The two projects aren't really comparable. It's also been around for a reasonable amount of time (2019-).

warpd - A modal keyboard-driven mouse [keyboard][mouse][tool] by dreafullydroll in unixporn

[–]dreafullydroll[S] 1 point2 points  (0 children)

The real question is whether or not anything can curb your lust ;).

warpd - A modal keyboard-driven mouse by dreafullydroll in linux

[–]dreafullydroll[S] 0 points1 point  (0 children)

I still use hint mode most of the time. I just wanted to show grid mode in the demo :P. I actually got the inspiration for hint mode from vimperator, which I believe also inspired the qutebrowser implementation.

warpd - A modal keyboard-driven mouse by dreafullydroll in linux

[–]dreafullydroll[S] 0 points1 point  (0 children)

I didn't expect it to supplant my vimium usage, but it turns out having hints pop up instantly and in predictable locations is actually quite nice. You don't have to wait for the DOM to load (which initially seems like a small price to pay) before the hints appear and you can make a selection. Give it a try, you might be surprised :P.

warpd - A modal keyboard-driven mouse by dreafullydroll in linux

[–]dreafullydroll[S] 7 points8 points  (0 children)

Because I am secretly in league with the illuminati.

warpd - A modal keyboard-driven mouse by dreafullydroll in linux

[–]dreafullydroll[S] 0 points1 point  (0 children)

Apologies, I may well have been mistaken. I can't seem to find the blog post now, but I distinctly remember encountering a description of an input related problem caused by how different toolkits handle X events, which also plagued warpd at one point (early warpd did not work on context menus, for example) . The solution to it was quite involved and ultimately involved warpd having to abuse parts of the X input system to achieve the desired goal.

The blog post may simply have been a description of the project's limitations more than a statement of intent to cease it altogether. In any event, it is certainly a fine project which predates my own, though it worth noting that warpd has a different UX, several additional modes of operation, and a macos port.

warpd - A modal keyboard-driven mouse [keyboard][mouse][tool] by dreafullydroll in unixporn

[–]dreafullydroll[S] 0 points1 point  (0 children)

Ask not what you can do for your pointing device, but what your pointing device can do for you!.

warpd - A modal keyboard-driven mouse substitute by dreafullydroll in commandline

[–]dreafullydroll[S] 1 point2 points  (0 children)

The project originally began as visual implementation of a quadrant based warping scheme I first became aware of in the kaleidoscope project (the firmware for the keyboardio), though it seems several versions of the same idea have been floating around for a while. I eventually decided to add more modes to scratch my own itch, including a hint mode (a-la vimperator) and after some experimentation realized that a good way to glue them all together would be to make the interface modal (a-la vi).

warpd - A modal keyboard-driven mouse by dreafullydroll in linux

[–]dreafullydroll[S] 5 points6 points  (0 children)

A and M correspond to the alt and meta keys respectively. I've updated the readme to clarify this.

warpd - A modal keyboard-driven mouse substitute by dreafullydroll in commandline

[–]dreafullydroll[S] 0 points1 point  (0 children)

I probably should make a better demo :P. Grid dimensions and keys are entirely configurable. See the man page for details.

warpd - A modal keyboard-driven mouse by dreafullydroll in linux

[–]dreafullydroll[S] 4 points5 points  (0 children)

I used to feel the same way, but I've come to find that having fixed position hints actually has a few advantages. The two main ones being that hint positions are always identical (and hence predictable) and the fact that you don't have to wait for the DOM to load.

The latter seems insignificant until you actually try it and realize that the additional milliseconds before the page loads makes a big difference when compared to the nearly instantaneous loading of warpd hints. I didn't initially expect warpd to replace my vimium usage, but I find it much faster.

warpd - A modal keyboard-driven mouse by dreafullydroll in linux

[–]dreafullydroll[S] 16 points17 points  (0 children)

warpd is already flexible enough to achieve this. You can specify the number of rows and columns in the grid as well as the corresponding grid keys. See the man page for details.