Wayland 中的键盘模拟

Wayland 中的键盘模拟

xdotool有没有办法xte在 Fedora 26 中工作?我正在尝试模拟按键(使用 xbindkeys),例如按下Alt+B将模拟按下Ctrl+Shift+B。但显然既不xdotoolxteWayland 工作(出于安全原因 [?])

有解决方法吗?否则如何将按键重新绑定到其他按键?

答案1

编辑 2021 年 2 月/2024 年 3 月:最后我找到了一个做得正确的项目:https://github.com/sezanzeb/input-remapper

我正在使用这个小脚本。它需要安装 evemu 软件包和 evemu-event 的 sudo 配置,而无需密码通知。EVDEVICE是用于模拟输入的设备。/dev/input/event8是我的键盘(用来sudo evemu-record找到你的)

#!/bin/bash
# keycomb.sh

EVDEVICE=/dev/input/event8

for key in $@; do
    sudo evemu-event $EVDEVICE --type EV_KEY --code KEY_$key --value 1 --sync
done


# reverse order
for (( idx=${#@}; idx>0; idx-- )); do
    sudo evemu-event $EVDEVICE --type EV_KEY --code KEY_${!idx} --value 0 --sync
done

例如,您可以使用 更改选项卡./keycomb.sh RIGHTCTL PAGEDOWN

请注意:此脚本不对参数进行验证,请谨慎使用;)

答案2

对于评论来说这太长了,但并不是真正的答案......我最近遇到了一些Python代码说

使用 Gnome/Wayland 使用 evdev 输入击键时替换 xdotool 的简单脚本。

这可能是一个起点。我没试过。它需要 python 包埃夫德夫,并且必须以 root 用户身份运行。

还有一个埃维穆包裹上面写着

evemu 记录并重播设备描述和事件,从而可以通过内核的输入系统模拟输入设备。对于大多数实际用途来说,仿真设备与真实设备没有什么区别。

相关内容