![キーボードとマウスを1つの仮想入力デバイスに組み合わせることはできますか?](https://linux33.com/image/207299/%E3%82%AD%E3%83%BC%E3%83%9C%E3%83%BC%E3%83%89%E3%81%A8%E3%83%9E%E3%82%A6%E3%82%B9%E3%82%921%E3%81%A4%E3%81%AE%E4%BB%AE%E6%83%B3%E5%85%A5%E5%8A%9B%E3%83%87%E3%83%90%E3%82%A4%E3%82%B9%E3%81%AB%E7%B5%84%E3%81%BF%E5%90%88%E3%82%8F%E3%81%9B%E3%82%8B%E3%81%93%E3%81%A8%E3%81%AF%E3%81%A7%E3%81%8D%E3%81%BE%E3%81%99%E3%81%8B%EF%BC%9F.png)
一部のアプリは奇妙なユーザーや不快なユーザー対話を使用しているため、編集できません。キーボードとマウスイベントの組み合わせを別のキーボードとマウスイベントの組み合わせに再マップしたいと思います。
ctrl
正確には、指定されたアプリケーション(DaVinci Resolve)にフォーカスがあるときにこれらのマッピング+ wheel up
- > alt
+を有効にしたいと思います。wheel up
持つホイールこれを解決するユーティリティです。しかし、そのユーティリティは非常に古く、X11に限定されているので、Waylandソリューションを探しています。ちなみに、現在のユースケースではこれを許可しますが(davinciの解析は現在Xwaylandを介してのみ実行されるため)、うまく機能しません。場合によっては、一部のイベントが「変換」されないため、望ましくない効果が発生することがあります。新しいWaylandサポートユーティリティにはこのような問題がないことを願っています。
とても見つけました。エマルジョンしかし、2匹のラットには明確な答えはありませんでした。
ユーティリティが見つかりました(evdevremapkeysのPronobisフォークまたはエベリトゥ)はN:Nマッピングを許可するので、これを行うことができます。ただし、それらのプロファイルは(少なくともこの記事を書くときは)1つのデバイスのみを使用します。ここ。
これで、キーボードとマウスで仮想evdev入力デバイスを作成(つまりマージ)し、ユーティリティを設定するためのアイデアが得られました。可能ですか?
私はこれが可能かもしれないという強い感じを持っていますPython-evdevまたは効果的な。しかし、このような仮想入力デバイスを作成するには、正確に何をすべきかわかりません。
答え1
次のコマンドを使用してマージされたデバイスを正常に作成しました。文書):
$ evsieve --input /dev/input/event8 grab --input /dev/input/event5 grab --output
/dev/input/event8
私のキーボードはどこにあり、/dev/input/event5
マウスはどこにありますか?/dev/input/event3
名前で作成されましたEvsieve Virtual Device
。
ctrl
+を+wheel
に、+を+に実際に再マップするには、コマンドを次のように変更できます。alt
wheel
alt
wheel
ctrl
wheel
ここ):
sudo evsieve --input /dev/input/event8 grab --input /dev/input/event5 grab \
--hook key:leftalt:1 toggle=alt:2 \
--hook key:leftalt:0 toggle=alt:1 \
--hook key:leftctrl:1 toggle=ctrl:2 \
--hook key:leftctrl:0 toggle=ctrl:1 \
--toggle rel:wheel @alt-up @alt-down id=alt \
--map yield rel:wheel@alt-down key:leftalt:0 key:leftctrl:1 key:leftctrl:2 rel:wheel key:leftctrl:0 key:leftalt:1 \
--toggle rel:wheel @ctrl-up @ctrl-down id=ctrl \
--map yield rel:wheel@ctrl-down key:leftctrl:0 key:leftalt:1 key:leftalt:2 rel:wheel key:leftalt:0 key:leftctrl:1 \
--block rel:wheel_hi_res \
--print @alt-down @alt-up @ctrl-down @ctrl-up \
--output create-link=/dev/input/by-id/merged-virtual-KM name="merged virtual KM"
evremapを使用するには、次の設定を使用できます。
device_name = "Evsieve Virtual Device"
[[remap]]
input = ["KEY_LEFTALT", "BTN_RIGHT"]
output = ["KEY_PAGEUP"]
Alt+右クリックしてカーソルを上に移動してPgUpを作成します。しかし、マッピングされたホイールイベントは今不可能。