web-dev-qa-db-ja.com

マウス使用時にタッチパッドを無効にする方法

タッチパッドを無効にできますが、Bluetoothマウスから離れている場合、またはバックアップマウスのワイヤレスドングルを忘れた場合、SOLです。 Linux Mintには、マウスを使用するときにタッチパッドを無効にできる素敵な設定がありました。現在、Ubuntu MATE 16.04を使用していますが、その設定はありません。その機能を取得するにはどうすればよいですか?入力中にタッチパッドをオフにするオプションは、PalmがFU作業中の何かに軽く触れないようにするのに十分ではありません。

私はここで他の同様の質問を読みましたが、この正確な問題の答えを見つけることができませんでした。

41
user533063

次のコマンドにより、外部マウスが接続されている場合、タッチパッドを無効にできるはずです。

gsettings set org.gnome.desktop.peripherals.touchpad send-events disabled-on-external-mouse

get現在の状況:

gsettings get org.gnome.desktop.peripherals.touchpad send-events

オプションは次のとおりです。

enabled
disabled
disabled-on-external-mouse
62
Jacob Vlijm

このような設定を編集するためのGUIを導入するプログラムもあります。

Sudo add-apt-repository ppa:atareao/atareao
Sudo apt update
Sudo apt install touchpad-indicator

https://itsfoss.com/disable-touchpad-when-mouse-used/ で詳細な指示セットを読んでください。

4
Angelorf

端末が怖い場合は、dconf-editorを使用できます。 dconf-enable-touchpad-image

2
Zeromatiker

Kubuntu 16.04では、SystemSettings-> Input Devices-> Touchpad-> Enable/Disable Touchpadに移動できます

次に、マウスが接続されているときに無効を選択します。

1
user1751017

私はパーティーに少し遅れていることに気づきました(そして私の答えはubuntu-mateに固有のnotです)が、ここに行きます。 。

私はあなたに非常に似た要件を持っていますが、debian 9(ストレッチ)でxfceを実行しているので、gnome/gsettingsはインストールされていません。 usbマウスをプラグイン/アンプラグするたびにシナプスタッチパッドを無効/再有効化するには、udepルールを使用して、シナプスタッチパッドドライバをアンバインド/再バインドする(posix)シェルスクリプトをトリガーします。

  1. Rootとして、次の内容で/usr/local/sbin/touchpadctl.shを作成します。

    #!/bin/sh
    set -o errexit #(equivalent -e)
    set -o nounset #(equivalent -u)
    
    usage(){
      echo "Usage: ${0} {-enable|-e|-disable|-d}"
    }
    
    if [ $# -ne 1 ]; then
      usage
      exit 1
    fi
    
    base_dir=/sys/bus/serio/drivers/psmouse
    device_id=serio1
    
    if [ ${1} = "-disable" -o ${1} = "-d" ]; then
      logger "${0} is disabling the touchpad"
      echo -n manual > $base_dir/bind_mode
      echo -n $device_id > $base_dir/unbind 2>/dev/null || true
    Elif [ ${1} = "-enable" -o ${1} = "-e" ]; then
      logger "${0} is enabling the touchpad"
      echo -n auto > $base_dir/bind_mode
    else
      usage
      exit 1
    fi
    
  2. タッチパッド制御スクリプトを実行可能にします。

    Sudo chmod +x /usr/local/sbin/touchpadctl.sh
    
  3. 次に、スクリプトをテストします。タッチパッドを無効にするには:

    Sudo /usr/local/sbin/touchpadctl.sh -d
    

    タッチパッドを有効にするには:

    Sudo /usr/local/sbin/touchpadctl.sh -e
    

これは「ドライバーのバインド解除」を使用するため、X/xorg/wayland/gnomeにはno依存関係があります。その結果、起動時に正しく機能するudevルールで使用できます。

  1. Rootとして、次の内容で/etc/udev/rules.d/01-touchpad.rulesを作成します。

    KERNEL=="mouse*", ATTRS{phys}=="usb*", ACTION=="add", \
      RUN+="/usr/local/sbin/touchpadctl.sh -disable"
    KERNEL=="mouse*", ATTRS{phys}=="usb*", ACTION=="remove", \
      RUN+="/usr/local/sbin/touchpadctl.sh -enable"
    

Linuxのすべてのものと同様に、マイレージは異なる場合があります。「微調整」する必要があるかもしれませんが、理解しやすいように最善を尽くしました。ドライバーのバインド/アンバインドの詳細については、 Linux Weekly Newsの2005年のGreg Kroah-Hartmanの記事 を参照してください。また、 カーネルソース にも良い情報があります。 udevルールの書き直しについて詳しくは、 ダニエルドレイクの優れたチュートリアル をご覧ください。

0
jaimet