カーソルを遅くするには、どのソース コードを編集して再コンパイルする必要がありますか?

カーソルを遅くするには、どのソース コードを編集して再コンパイルする必要がありますか?

私は Linux Mint 19.3 (MATE x64) を持っており、それと一緒に使用したい Logitech G402 マウスを持っています。

デフォルト設定を使用すると、カーソルは正確に動きます50私が望むよりも何倍も速く動きます。

カーソルを遅くするためにあらゆる設定を試しましたが、うまくいきませんでした。

ポインター速度の設定 (スタート メニュー -> 設定 -> マウス) は、絶対最小に設定してもほとんど違いはありません。

xinputデフォルト設定での出力は次のとおりです。

$ xinput list-props "Logitech Gaming Mouse G402"
Device 'Logitech Gaming Mouse G402':
    Device Enabled (155):   1
    Coordinate Transformation Matrix (157): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
    libinput Natural Scrolling Enabled (292):   0
    libinput Natural Scrolling Enabled Default (293):   0
    libinput Scroll Methods Available (294):    0, 0, 1
    libinput Scroll Method Enabled (295):   0, 0, 0
    libinput Scroll Method Enabled Default (296):   0, 0, 0
    libinput Button Scrolling Button (297): 2
    libinput Button Scrolling Button Default (298): 2
    libinput Middle Emulation Enabled (299):    1
    libinput Middle Emulation Enabled Default (300):    0
    libinput Accel Speed (301): 0.000000
    libinput Accel Speed Default (302): 0.000000
    libinput Accel Profiles Available (303):    1, 1
    libinput Accel Profile Enabled (304):   1, 0
    libinput Accel Profile Enabled Default (305):   1, 0
    libinput Left Handed Enabled (306): 0
    libinput Left Handed Enabled Default (307): 0
    libinput Send Events Modes Available (277): 1, 0
    libinput Send Events Mode Enabled (278):    0, 0
    libinput Send Events Mode Enabled Default (279):    0, 0
    Device Node (280):  "/dev/input/event5"
    Device Product ID (281):    1133, 49278
    libinput Drag Lock Buttons (308):   <no items>
    libinput Horizontal Scroll Enabled (309):   1

ここでカーソル速度に影響を与える可能性がある唯一のオプションは、座標変換マトリックスです (加速速度も同様ですが、これは -1 を超えることはなく、-1 を大きく超える必要があります)。これを に設定すると1 0 0 0 1 0 0 0 50、カーソル速度は適切に 50 で割られます。しかし非標準の座標変換マトリックスにより、カーソルをキャプチャするゲーム (Minecraft など) が不適切に動作し、カーソルが解放されるたびにカーソルが画面のほぼ左上隅にリセットされ、キャプチャされている間、キャラクターが左上に向かって激しく回転することになります。

マウスを意図した方法で正常に動作させる方法はもうないようです。カーソルを適切な速度で移動させるためにソースコードを編集する、それはおかしいように聞こえますが。私は非常に必死なので、/ 50.0C コードのどこかにハードコードしたものを貼り付け、コンパイルしてインストールし、それで終わりにするつもりですが、残念ながらどこに貼り付ければよいのかわかりません。

もちろん、これは私がここで尋ねている XY の質問のモンスターであることはおそらく皆知っているでしょう。そのため、数日間 Google で検索しても見つけられなかったカーソルを構成するためのオプションが他にもある場合は、それについて知ることができれば幸いです。

答え1

libinputのに関連するコードを見つけましたfilter-low-dpi.c。関数の戻り値calculate_acceleration_factorを で割り50.0、指示に従ってコンパイルしてインストールしました。

同様の問題がある場合は、マウスのモデルに応じて編集する必要があるかもしれませんfilter-mouse.c

関連情報