xdotool
またはxte
またはその他の代替物をFedora 26で機能させる方法はありますか? (xbindkeysを使用して)キープレスをエミュレートしようとしています。 Alt+B
を押すと、Ctrl+Shift+B
を押すことをエミュレートします。しかし、明らかにxdotool
もxte
もWaylandでは機能しません(セキュリティ上の理由から[?])
回避策はありますか?それ以外の場合、キーを他のキーに再バインドするにはどうすればよいですか?
私はこの小さなスクリプトを使用しています。パッケージ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
でタブを変更します。
注意:このスクリプトはパラメーターの検証を行わないため、注意して使用してください;)
これはコメントには長すぎますが、実際には答えではありません...私は最近いくつかの python コードを見つけました
Evdevを使用してキーストロークを入力するためにGnome/Waylandを使用するときにxdotoolを置き換える単純なスクリプト。
これが出発点になる可能性があります。私はそれを試していません。 python package evdev が必要であり、ユーザーrootとして実行する必要があります。
evem パッケージもあり、
evemuは、デバイスの説明とイベントを記録および再生し、カーネルの入力システムを介して入力デバイスをエミュレートできるようにします。エミュレートされたデバイスは、実際のデバイスと実際のデバイスを区別できません。