トラックボールスクロールを使用したXinput / libinputボタンの再マッピング

トラックボールスクロールを使用したXinput / libinputボタンの再マッピング

だから私はトラックボールを使用しており、トラックボールをスクロールするために設定しました。今私が望むのは、元のスクロールホイールを再マップして、いくつかの異なる機能に使用することです。問題は、ボタンが再マップされると、トラックボールのスクロールもボタンをマップした機能に再マップされることです。

私の理解では、これは起こらないでください。元のボタンが何をしたかに関係なく、キーイベント4 5 6 7を送信する必要があります。再マッピングすると、通常のマウスボタンと同じです。

これまでに試したことは、他のボタンをスクロールホイールの元の機能に再マップすることです。たとえば、ボタン12はスクロールに使用され、5に再マップされ、トラックボールスクロール機能は対応するボタンにマップされますが、そうではありません。仕事もしないでください。 libinputを使ってトラックボールのスクロール軸を再マップする方法についての情報が見つからなかったので、evdevを使用しました。

私が試した設定:

Section "InputClass"
    Identifier      "ELECOM TrackBall Mouse HUGE TrackBall"
    MatchProduct    "ELECOM TrackBall Mouse HUGE TrackBall"
    MatchIsPointer  "on"
    MatchDevicePath "/dev/input/event*"
    Driver          "evdev"
    Option          "SendCoreEvents" "true"

    Option "Buttons"            "12"
    Option "ButtonMapping"      "1 10 3 11 12 0 0 0 4 5 6 7"
    Option "EmulateWheel"       "true"
    Option "EmulateWheelButton" "3"
    Option "YAxisMapping"       "9 10"
    Option "XAxisMapping"       "11 12"

EndSection

私の設定を次のようにしたいと思います。

Section "InputClass"
    Identifier "ELECOM TrackBall Mouse HUGE TrackBall"
    MatchProduct "ELECOM TrackBall Mouse HUGE TrackBall"
    Driver "libinput"
    Option "ButtonMapping" "1 12 3 14 15 9 8 18 19 10 11 2"
    Option "Scrollmethod" "button"
    Option "ScrollButton" "2"
EndSection

ボタンは以前にマップされたとおりに機能する必要がありますが、トラックボールのスクロール機能は、その機能を持つキーが元のマップに関係なくスクロールのために常にキー4、5、6、および7を送信する必要があります。

私が見逃した設定や忘れてしまったことがあるかもしれませんが、数時間試してもそれに関連するものが見つかりません。

正しい情報源の助けやアドバイスをいただきありがとうございます。

ベストアンサー1

おすすめ記事