Ubuntu 12.10 で入力中に Elantech タッチパッドを無効にするにはどうすればいいですか?

Ubuntu 12.10 で入力中に Elantech タッチパッドを無効にするにはどうすればいいですか?

先週購入した Asus ラップトップ (Zenbook 以外) があります。Elantech タッチパッドが搭載されています。動作は次のとおりです。

  • エッジスクロールまたは 2 本指スクロール。
  • 3本指と2本指。
  • 左クリックして右クリックし、ダブルタップします。

完璧ではない唯一の点は、入力中に手のひらがタッチパッドにちょうど当たって、動作がおかしくなることです。コードを書くときに、これは本当に面倒です。

誰か助けてくれませんか?

出力は次のようになりますxinput list:

 Virtual core pointer                       id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ ETPS/2 Elantech Touchpad                  id=12   [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)]
    ↳ ASUS USB2.0 Webcam                        id=9    [slave  keyboard (3)]
    ↳ Asus WMI hotkeys                          id=10   [slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard              id=11   [slave  keyboard (3)]

出力: ps aux | grep syndaemon

jason 2911 0.0 0.0 20208 948 ? S 2月13日 0:53 syndaemon -i 2.0 -K -R -t

jason 10256 0.0 0.0 13584 928 ポイント/2 S+ 14:18 0:00 grep syndaemon

答え1

本当に望んでいることではないことは承知していますが (完全に自動化?)、タッチパッドを無効または有効にするキーボード ショートカットを簡単に作成できます。

あなたのからxinput listidタッチパッドは12無効にするには、次のコマンドを使用します。

xinput set-prop 12 "Device Enabled" 0

これを有効にするには、以下を使用します。

xinput set-prop 12 "Device Enabled" 1

これらのコマンドをカスタム ショートカット (キーボード / ショートカット / カスタム ショートカット) にバインドします。おそらくこれをスクリプトにすることは可能でしょうか?

答え2

入力中にタッチパッドを無効にする方法は 2 つあります。まずグラフィカルな方法です。ダッシュをクリックして「タッチパッド」と入力し、「マウスとタッチパッド」をクリックして開き、「入力中にタッチパッドを無効にする」ボックスにチェックを入れます。

ここに画像の説明を入力してください

2番目(同じだと思います)はターミナルを使う方法です。ターミナル(CTRL+ALT+T)を開いて、次のように入力します。

syndaemon -i 2 -d 

-i の後の数字は、タッチパッドが再び機能するまでに最後にキーを押してから何秒経過するかを示します。-d オプションは、syndaemon がバックグラウンドで (デーモンとして) 実行を継続するためのものです。

答え3

synaptiks を起動します。起動に失敗することがあるため、少し問題がありました。GUI ダイアログが表示されるまで、もう一度起動してみてください。

ダイアログでは、「キーボード操作時にタッチパッドを自動的にオフにする」と「タッチパッドを再びオンにするまでの待機時間」を設定できます。

「マウスが接続されている場合はタッチパッドを自動的にオフにする」を設定することもできます。

答え4

先ほど作成したこのスクリプトを使用します。xinput --listの出力に従ってキーボードとマウスのデバイスを変更します

kbidle () # disable ELAN touchpad while typing. By Zibri
{ 
    sleep 3;
    xinput test "ITE Tech. Inc. ITE Device(8910) Keyboard" | ( while true; do
        if read -t 1 a; then
            xinput disable "ELAN1200:00 04F3:3090 Mouse";
        else
            xinput enable "ELAN1200:00 04F3:3090 Mouse";
        fi;
    done )
}

関連情報