syngesture
TPMouse
syngesture | TPMouse | |
---|---|---|
4 | 14 | |
217 | 95 | |
- | - | |
4.9 | 10.0 | |
6 months ago | 7 months ago | |
Rust | AutoIt | |
GNU General Public License v3.0 or later | GNU General Public License v3.0 only |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
syngesture
-
Cosmic Skies of a Colorado July
I've shared my opinion on why mouse/trackpad handling is terrible on most Linux distributions [0], thanks to an insane obsession w/ rewriting the entire stack and throwing away vendor-provided acceleration curves in order to provide gesture support, instead of just building it on top of the correct, working solution.
More importantly, there is a solution for fixing this and I've done my part by open sourcing a multi-touch gesture support that's driver-agnostic and runs on top of the vendor-provided drivers w/ their correct acceleration curves [1].
(But TBH I don't know if this applies to Apple's trackpad because I don't know if there are any first-party drivers w/ proper acceleration curves for Linux or if they've all been poorly reverse engineered.)
[0]: https://neosmart.net/blog/multi-touch-gestures-on-linux/
[1]: https://github.com/mqudsi/syngesture/
-
Linux Touchpad Like MacBook Update: Touchpad Gestures Now Shipping
I wrote a general purpose multitouch daemon w/ gesture support for Linux that works with the existing input stack (i.e. doesn’t require switching to evinput), if anyone is interested:
https://neosmart.net/blog/2020/multi-touch-gestures-on-linux...
https://github.com/mqudsi/syngesture
- Touchpad gestures?
-
What touchpad gestures do you use on Plasma?
Regardless of software (touchegg + touché, fusuma, libinput-gestures + libinput-gestures-qt OR gestures, gebaar-libinput, gebaar-libinput-fork, syngesture, gestures), which gestures do you actively use on your Plasma desktop?
TPMouse
-
Turning a Keyboard into a Mouse with Libevdev
And for Windows, my https://github.com/esporttoys/TPMouse was inspired by warpd itself but focuses more on the intuitive usability of direct cursor control via inertia/momentum.
-
Cosmic Skies of a Colorado July
You may be interested in how I did my Windows script for adding three-finger drag[0].
Basically, it is an independent subscriber to RawInput messages that only keeps track of whether or not to send three-finger drag, and posts emulated mouse messages using SendInput. I have a few other scripts that each run as independent userland processes that only monitors their own trigger and nothing else.
Tangentially, not sure if this might serve for some inspiration, but my TPMouse[1] script implemented inertia in a framerate-independent way so that it uses very little resource while having perfect simulation stability.
A previous discussion where I explained the analytic derivation for this low-resource exact-solution damped inertia can be seen in [10]
[0] https://github.com/EsportToys/PrecisionThreeFingerDrag/blob/...
[1] https://github.com/EsportToys/TPMouse
[10] https://old.reddit.com/r/Trackballs/comments/ym9q2t/tpmouse_...
-
Toward a More Useful Keyboard
With the TPMouse script I implemented the activation shortcut as LShift+RShift+ which I felt had a nice balance between deliberateness and easy-to-reach (since you are using it with your hands on homerow).
Though because some keyboards have key rollover issues with using both Shifts, Capslock+ is also allowed as an alternative activation shortcut.
[0] https://github.com/EsportToys/TPMouse
- Somehow AutoHotKey is kinda good now
- The ThinkPad TrackPoint tried to build a better mouse (2020)
-
AutoHotKey V2 (Breaking Upgrade)
I personally use AutoIt a ton as a super fast way to quickly prototype GUIs. It's basically a really simple entrypoint for WinAPI.
Shameless plug: my script for emulating a trackball with your keyboard [0], and my tray app for quickly tweaking your cursor speed (usually for when I'm drawing something)[1]
[0] https://github.com/EsportToys/TPMouse
- TPMouse - A virtual trackball for Windows
- Show HN: A Virtual Trackball for Windows, controlled from the homerow
- TPMouse - a virtual trackball for windows, controlled from your keyboard homerow.
What are some alternatives?
Fusuma - Multitouch gestures with libinput driver on Linux
scoot - Keyboard-driven MacOS cursor actuator
touche - The desktop application to configure Touchégg
AhkCoordGrid - AutoHotkey code for Windows overlay grid allowing you to emulate mouse click at different points on the screen using keyboard shortcuts
libinput-gestures - Actions gestures on your touchpad using libinput
warpd - A modal keyboard-driven virtual pointer
gebaar-libinput - Gebaar, A Super Simple WM Independent Touchpad Gesture Daemon for libinput
autopilot-rs - A simple, cross-platform GUI automation module for Rust.
gestures - Fluid gestures for Linux.
xdo - Small X utility to perform elementary actions on windows
kbct - Keyboard keycode mapping utility for Linux supporting layered configuration
Fluent-Search - Official repository for Fluent Search, use to report issues or ask for a new feature