web-dev-qa-db-ja.com

ElanタッチパッドでのミドルクリックとUbuntu 17.10でのxinputの無効化

タッチパッドでデフォルトで設定されるミドルクリックを除いて、GNOME(X上、ウェイランドなし)とUbuntu 17.10に非常に満足しています。私はいつも間違ってヒットし、ミドルクリックはすべてのアプリで「クレイジーなことをする」にマッピングされているようです。本当に無効にする必要があります。

Elanタッチパッドを搭載した2017 Lenovo Lenovoに参加しています。 libinputを使用していますが、synapticsドライバーがインストールされていません。私が見つけたすべてのソリューションはシナプスを参照しています。私はそのルートを試してみましたが、タッチパッドが非常に悪くなったので、それを避けたいと思います。

3
Adam Drew

もちろん、投稿した直後にそれを把握します:)他の誰かがこれを見た場合に備えて、ここに答えを入れます

タッチパッドIDを見つけます:

adam@adam720:~$ xinput list | grep -i elan
⎜   ↳ ELAN0651:00 04F3:3052 Touchpad            id=14   [slave  pointer  (2)]

ミドルクリックプロパティのIDを見つけます。

adam@adam720:~$ xinput --list-props 14 | grep  -i middle
    libinput Middle Emulation Enabled (320):    1
    libinput Middle Emulation Enabled Default (321):    0

ミドルクリックプロパティを切り替えます。私の場合、0に設定されていたため、1に設定しました。

adam@adam720:~$ xinput --set-prop 14 320 1

上記の例では、14はタッチパッドのIDであり、320はプロパティのIDです。

これでうまくいきましたが、答えられない質問もいくつか出てきました。

  1. ミドルクリックが有効になっているのはなぜデフォルトで0に設定されていたのですか?
  2. 「Middle Click Enabled Default」とは何ですか。設定しようとするとエラーになるのはなぜですか?

EDIT!これを再起動後も持続させたかったのですが、問題が発生しました。デバイスとプロップIDはブート時に変更されます。そこで、デバイスとプロップIDを探し、それに応じて中央ボタンのプロップをオフに設定するスクリプトを作成しました。私は他の誰かがそれを必要とすることを疑いますが、念のためにスクリプトを github

2
Adam Drew

Xorg.conf.dでタッチパッドの設定を編集できます

Option "MiddleEmulation" "1"

http://manpages.ubuntu.com/manpages/disco/en/man4/libinput.4.html

0
Dertosh

Adamのソリューションに加えて、次の1行はTouchPadのIDを識別し(Synaptics TouchPadと仮定)、ミドルクリックも無効にします(1に設定して)。

xinput set-prop `xinput list | grep 'Synaptics TouchPad' | grep -oP '(?<=id=)[0-9]+'` "libinput Middle Emulation Enabled" 1

楽しい!

0
Simon Mattes