8 个版本 (5 个重大更新)
0.6.0 | 2023年3月12日 |
---|---|
0.5.2 | 2023年3月5日 |
0.5.1 | 2023年2月21日 |
0.4.0 | 2023年1月30日 |
0.1.0 | 2022年11月26日 |
#4 in #libinput
每月 34 次下载
24KB
568 行代码(不包括注释)
手势
关于
这是一个拦截触摸板手势并执行基于它们的命令的程序。与一些替代方案不同,它直接使用libinput api,而不是解析 libinput debug-events
的输出。
功能
gestures
能够处理libinput滑动事件;不仅包括垂直和水平,还包括对角线。
- 处理libinput事件
- 滑动事件;垂直、水平和对角线
- 捏合事件
- 悬停事件
- 旋转事件
- 连续和单次事件
- 配置文件
配置
有关配置说明,请参阅 config.md。
安装
平台
Linux。测试工作流程在Ubuntu上运行,我还在Artix Linux上亲自测试过,但如果它使用 libinput
触摸板驱动程序而不是较旧的 synaptics
驱动程序,它应该可以在任何发行版上工作。
注意:如果您的DE/WM有自己的触摸板手势系统,则很可能需要禁用它以防止冲突。
依赖关系
您可能需要安装 libudev
和 libinput
,或者您发行版的等效版本,以及可能的 dev
版本。
使用Cargo
如果您已安装 cargo,只需使用 cargo install gestures
手动安装
-
克隆仓库
gitclone https://github.com/riley-martin/gestures && cdgestures
-
构建
cargobuild --release
-
将
./target/release/gestures
复制到方便的位置并执行它
自动启动
合成器/窗口管理器
您可以在 .xinitrc
或其他启动文件(例如sway配置文件)中启动 gestures
。
Systemd
将examples/gestures.service放入~/.config/systemd/user/gestures.service
中,并根据您的系统进行修改(主要需要更改"$HOME"环境变量和ExecStart
)。要使其自动启动,运行systemctl --user enable --now gestures.service
。
其他初始化系统
我没有使用过任何其他初始化系统,但服务相当简单,因此应该很容易修改以适应其他系统。
替代方案
以下是一些具有类似功能的替代方案。
- libinput-gestures 解析
libinput debug-events
的输出,而不是使用libinput API。 - gebaar 仅支持滑动手势
- gebaar-libinput-fork gebaar的分支,支持其他手势
- fusuma 也解析
libinput debug-events
输出
依赖关系
~14MB
~247K SLoC