マウスの中ボタンエミュレーション用のevdev confの設定

マウスの中ボタンエミュレーション用のevdev confの設定

マウスの中央ボタン、左右のマウスクリックを同時にシミュレートするためにevdev設定を編集しようとしています。これが私が追加し/etc/X11/xorg.conf.d/10-evdev.confた後、私のコンピュータを再起動したものです。しかし、これはうまくいきません。何が間違っているのかわかりますか?

Section "InputClass"
    Identifier "Logitech Mouse"
    MatchProduct "USB-PS/2 Optical Mouse"
    MatchVendor "Logitech"
    Option "Evdev Middle Button Emulation" "true"
EndSection

これはxinputリストの出力です:

⎡ Virtual core pointer                      id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ Logitech USB-PS/2 Optical Mouse           id=9    [slave  pointer  (2)]
⎜   ↳ AKKO AKKO 3084BT                          id=11   [slave  pointer  (2)]
⎜   ↳ PS/2 Generic Mouse                        id=14   [slave  pointer  (2)]
⎜   ↳ SynPS/2 Synaptics TouchPad                id=15   [slave  pointer  (2)]
⎣ Virtual core keyboard                     id=3    [master keyboard (2)]
    ↳ Virtual core XTEST keyboard               id=5    [slave  keyboard (3)]
    ↳ Power Button                              id=6    [slave  keyboard (3)]
    ↳ Video Bus                                 id=7    [slave  keyboard (3)]
    ↳ Sleep Button                              id=8    [slave  keyboard (3)]
    ↳ AKKO AKKO 3084BT                          id=10   [slave  keyboard (3)]
    ↳ HP HD Webcam [Fixed]                      id=12   [slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard              id=13   [slave  keyboard (3)]
    ↳ HP Wireless hotkeys                       id=16   [slave  keyboard (3)]
    ↳ HP WMI hotkeys                            id=17   [slave  keyboard (3)]
    ↳ ACPI Virtual Keyboard Device              id=18   [slave  keyboard (3)]

ベストアンサー1

xorg.conf.dで設定する方法は絶対に正確です。私の解決策はわかりませんが、試してみる価値があります。

Identifier "evdev pointer catchall"
MatchIsPointer "on"
MatchDevicePath "/dev/input/event*"
Driver "evdev"

「入力クラス」セクションで上記のコードを追加/置換します。 (識別子の変更、残りの追加)ロジクールは時々異なる場合がありますが、このパラメータを使用して問題を解決しました。

Xorg.log.0はこのスクリプトの手がかりを提供していますか?

他のすべての方法が失敗した場合は、コマンドを実行するシステムサービスを作成できます。 (これは解決策ではなく回避策です。)

[Unit]
Description="Middle mouse emulation

[Service]
Type=simple
ExecStart= xinput set-prop 9 "Evdev Middle Button Emulation" 1

[Install]
WantedBy=multi-user.target

サービスを有効にすると、次回の起動時にサービスが実行されます。

おすすめ記事