This fork repo mainly focus on the performance of three-figure-dragging feature.
for more tech details, please vist this discussion: riley-martin#6
My own compiled binaries(maybe not too synchronized with the latest source codeļ¼and configuration can be found at https://github.com/ferstar/gestures/releases
OR, you can install(compile) it with cargo by yourself like this: cargo install --git https://github.com/ferstar/gestures.git
NOTE: ONLY WORKS ON X11, NO WAYLAND SUPPORT YET! Now support both Xorg and Wayland(with the help of ydotool power)
This is a program for intercepting touchpad gestures and executing commands based on them. Unlike some alternatives, it directly uses the libinput api rather than parsing the output of libinput debug-events
.
gestures
is able to handle libinput swipe events; not only vertical and horizontal but diagonal as well.
See config.md for configuration instructions.
Linux. The testing workflow runs on Ubuntu and I test it myself on Artix Linux Nixos, but it should work on any distro if it uses the libinput
touchpad driver rather than the older synaptics
driver.
Note: If your DE/WM has its own touchpad gestures system, it may need to be disabled to prevent conflicts.
If you are using flakes, simply add gestures.url = "github:ferstar/gestures";
to your flake inputs and add inputs.gestures.packages.${system}.gestures
to your home.packages
or environment.systemPackages
. You can also create a service in systemd.user.services
.
You may need to install libudev
and libinput
, or their equivalant for your distro, and possibly the dev
versions as well.
If you have cargo installed, simply use cargo install --git https://github.com/ferstar/gestures.git
Clone the repo
git clone https://github.com/ferstar/gestures && cd gestures
Build
cargo build --release
Copy ./target/release/gestures
to a convenient place and execute it
Drop examples/gestures.service into ~/.config/systemd/user/gestures.service
and modify it for your system (mainly the "$HOME" environment variable and the ExecStart
will need changed). To have it start automatically, run systemctl --user enable --now gestures.service
.
I haven't used any other init systems, but the service is quite simple so it should be easy to modify for other systems.
Here are some alternatives with similar features.
libinput debug-events
rather than using libinput api.libinput debug-events
outputRetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4