web-dev-qa-db-ja.com

「xinput list」は同じデバイスを2回表示し、デバイスIDが変更されます:スクリプトで「set-prop」を使用する方法は?

何らかの理由で、LogitechのUSBレシーバーはxinput listデバイスリストに2回表示されます。

Logitech USB Receiver         id=13 [slave  pointer  (2)]
Logitech USB Receiver         id=14 [slave  pointer  (2)]

xinput set-prop "Logitech USB Receiver" "someSetting" nをしようとすると、もちろん次のようになります:

警告:「Logitech USB Receiver」に一致するデバイスが複数あります。正しいものが選択されるようにするには、デバイスIDを使用するか、必要に応じてデバイス名の前に「pointer:」または「keyboard:」を付けてください。

デバイスLogitech USBレシーバーが見つかりません

プレフィックスは同じデバイス(ポインター)なので役に立たない。

代わりにIDを使用できますが、問題は起動時にIDが変わるため、これを自動にすることはできません(起動時にすべてのポインティングデバイスの感度を設定する単純なスクリプト)。

だから、重複したデバイスを削除すること、xinputを無視すること、または名前でデバイスを参照することは可能ですか?これらのどちらも可能でない場合、スクリプトはIDを把握していると思います(そして、それらから、常に小さい方のようです)。

使用したいコマンドは次のとおりです。

xinput set-prop n "Device Accel Constant Deceleration" 2.4
xinput set-prop n "Device Accel Velocity Scaling" 1
10
pileofrocks

他の誰かが同じ問題を抱えており、誰かがスクリプトソリューションを提供しました: https://stackoverflow.com/a/18756948

6
pileofrocks