TPMouse
ydotool
TPMouse | ydotool | |
---|---|---|
14 | 63 | |
95 | 1,279 | |
- | - | |
10.0 | 5.3 | |
7 months ago | about 1 month ago | |
AutoIt | C | |
GNU General Public License v3.0 only | GNU Affero General Public License v3.0 |
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.
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.
ydotool
- Show HN: Bonk, a command-line tool for X11 window management
-
Improving cursor rendering on Wayland
Wayland provides little by design, so this is quite typical. For example:
Screensharing is handled by pipewire [0], changing keyboard layouts aren't defined [1] by wayland, and generally anything Wayland devs think would 'corrupt' their protocol.
They leave most things to the compositor to implement, which leads to significant fragmentation as every compositor implements it differently.
Long gone are the days of xset and xdotool working across nearly every distro due to a common base, now the best you'll get is running a daemon as root to directly access `/dev/uinput` [2] or implementing each compositors accessibility settings (if they have them) as a workaround.
[0] https://superuser.com/questions/1221333/screensharing-under-...
[1] https://unix.stackexchange.com/questions/292868/how-to-custo...
[2] https://github.com/ReimuNotMoe/ydotool
-
how hard is it to program pinch zoom for my touchpad in linux?
I personally use libinput-gestures to call commands using touchpad gestures. You can also combine it with ydotool to bind macros and such to your gestures, e.g. 4 fingers swipe down closes the current window, 3 fingers swipe left or right changes workspace, etc
-
ydotoold background process?
Have you tried using the systemd unit file supplied with ydotool? It's probably installed somewhere on your system. Else you can get it here and just change the install location of ydotoold.
-
KDE-Connect keyboard input works on Wayland now!!
For simulated keyboard there are tools such as dotool or ydotool and KeePass extensions such as KPUInput that work by giving the user access to /dev/uinput. That works, but it's a bit inelegant; I guess in the future a Wayland protocol for simulated keyboard input will emerge, like wlroots already has, also for virtual pointers.
-
Out of curiosity, I tried to use Wayland earlier and compared to X11, everything seems to load faster which really surprised me. However, I've also noticed some things that confused me, that's why I'm posting this. To ask what I'm missing or what I did wrong. Thanks as always!
ydotool is the generic equivalent. It works on both X11 and Wayland environments.
-
Curious to know what are your general experiences on using keyboard and mouse input automations on Wayland...
Autokey does not work yet, but there is Hawck and Espanso that you could play around with. And there is ydotool if all you need is simulating basic input (as in ydotool mousemove -x -10 -y -10, ydotool type 'Hello world!' and so on).
-
Asahi Linux To Users: Please Stop Using X.Org
Does ydotool do what you need? I haven't even tried Wayland in years. I'm sure someday I'll find the need.
- Somehow AutoHotKey is kinda good now
- How to emulate mouse clicks with keyboard shortcuts
What are some alternatives?
scoot - Keyboard-driven MacOS cursor actuator
xdotool - fake keyboard/mouse input, window management, and more
AhkCoordGrid - AutoHotkey code for Windows overlay grid allowing you to emulate mouse click at different points on the screen using keyboard shortcuts
wtype - xdotool type for wayland
warpd - A modal keyboard-driven virtual pointer
AutoKey - AutoKey, a desktop automation utility for Linux and X11.
autopilot-rs - A simple, cross-platform GUI automation module for Rust.
evsieve - A utility for mapping events from Linux event devices.
xdo - Small X utility to perform elementary actions on windows
sway - i3-compatible Wayland compositor
Fluent-Search - Official repository for Fluent Search, use to report issues or ask for a new feature
key-mapper - 🎮 An easy to use tool to change the mapping of your input device buttons. [Moved to: https://github.com/sezanzeb/input-remapper]