USB 마우스가 연결되어있을 때 터치 패드를 자동으로 비활성화 할 수 있습니까?


20

터치 패드가 활성화되어 있는지 확인할 수 있음을 알고 있습니다

gconftool-2 --get /desktop/gnome/peripherals/touchpad/touchpad_enabled 

나는 그것을 비활성화 / 활성화로 설정할 수 있습니다

gconftool-2 --set --type boolean /desktop/gnome/peripherals/touchpad/touchpad_enabled true

와 함께 lsusb연결된 모든 USB 장치를 볼 수 있습니다. 내 마우스는 어느 것입니까?

Bus 003 Device 002: ID 046d:c00e Logitech, Inc. M-BJ58/M-BJ69 Optical Wheel Mouse

자세한 정보 lsusb -v:

Bus 005 Device 002: ID 046d:c00e Logitech, Inc. M-BJ58/M-BJ69 Optical Wheel Mouse
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0         8
  idVendor           0x046d Logitech, Inc.
  idProduct          0xc00e M-BJ58/M-BJ69 Optical Wheel Mouse
  bcdDevice           11.10
  iManufacturer           1 
  iProduct                2 
  iSerial                 0 
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           34
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0 
    bmAttributes         0xa0
      (Bus Powered)
      Remote Wakeup
    MaxPower               98mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         3 Human Interface Device
      bInterfaceSubClass      1 Boot Interface Subclass
      bInterfaceProtocol      2 Mouse
      iInterface              0 
        HID Device Descriptor:
          bLength                 9
          bDescriptorType        33
          bcdHID               1.10
          bCountryCode            0 Not supported
          bNumDescriptors         1
          bDescriptorType        34 Report
          wDescriptorLength      52
         Report Descriptors: 
           ** UNAVAILABLE **
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0004  1x 4 bytes
        bInterval              10

그리고 여기에 정보가 있습니다 tail -n 10 -f /var/log/messages:

Aug 27 08:36:47 pc08 kernel: [ 1795.936583] usb 5-2: USB disconnect, address 3
Aug 27 08:36:55 pc08 kernel: [ 1804.208042] usb 5-2: new low speed USB device using uhci_hcd and address 4
Aug 27 08:36:56 pc08 kernel: [ 1804.384272] usb 5-2: configuration #1 chosen from 1 choice
Aug 27 08:36:56 pc08 kernel: [ 1804.400743] input: Logitech USB-PS/2 Optical Mouse as /devices/pci0000:00/0000:00:1d.0/usb5/5-2/5-2:1.0/input/input13
Aug 27 08:36:56 pc08 kernel: [ 1804.400923] generic-usb 0003:046D:C00E.0004: input,hidraw0: USB HID v1.10 Mouse [Logitech USB-PS/2 Optical Mouse] on usb-0000:00:1d.0-2/input0

그리고 더 많은 정보 :

$ udevadm info --query=all --name=/dev/input/mouse1
P: /devices/pci0000:00/0000:00:1d.0/usb5/5-2/5-2:1.0/input/input15/mouse1
N: input/mouse1
S: char/13:33
S: input/by-id/usb-Logitech_USB-PS_2_Optical_Mouse-mouse
S: input/by-path/pci-0000:00:1d.0-usb-0:2:1.0-mouse
E: UDEV_LOG=3
E: DEVPATH=/devices/pci0000:00/0000:00:1d.0/usb5/5-2/5-2:1.0/input/input15/mouse1
E: MAJOR=13
E: MINOR=33
E: DEVNAME=/dev/input/mouse1
E: SUBSYSTEM=input
E: ID_INPUT=1
E: ID_INPUT_MOUSE=1
E: ID_VENDOR=Logitech
E: ID_VENDOR_ENC=Logitech
E: ID_VENDOR_ID=046d
E: ID_MODEL=USB-PS_2_Optical_Mouse
E: ID_MODEL_ENC=USB-PS\x2f2\x20Optical\x20Mouse
E: ID_MODEL_ID=c00e
E: ID_REVISION=1110
E: ID_SERIAL=Logitech_USB-PS_2_Optical_Mouse
E: ID_TYPE=hid
E: ID_BUS=usb
E: ID_USB_INTERFACES=:030102:
E: ID_USB_INTERFACE_NUM=00
E: ID_USB_DRIVER=usbhid
E: ID_PATH=pci-0000:00:1d.0-usb-0:2:1.0
E: DEVLINKS=/dev/char/13:33 /dev/input/by-id/usb-Logitech_USB-PS_2_Optical_Mouse-mouse /dev/input/by-path/pci-0000:00:1d.0-usb-0:2:1.0-mouse

USB 마우스를 연결했을 때 터치 패드를 자동으로 비활성화하고 USB 마우스가 사라지는 즉시 다시 활성화하려면 어떻게해야합니까?


다음은 오토 스크립트 askubuntu.com/questions/533266/…
Dawid Drozd

답변:


10

이 프로젝트 는 더 이상 유지되지 않는 것 같습니다.

natty의 경우 터치 패드 표시기 앱이 있습니다. 마우스를 꽂거나 뺄 때 터치 패드를 비활성화 / 활성화하도록 설정할 수 있습니다. 이전 Ubuntu 버전에서도 작동하는지 잘 모르겠습니다.

https://launchpad.net/touchpad-indicator

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

1
이 도구는 Ubuntu 14.04 LTS에서 작동하지 않는 것 같습니다. 그놈 껍질 테스트.
NobbZ

또한 Unity Ubuntu 14.04.3에서 작동하지 않습니다.
Waldir Leoncio

입력하는 동안 작동하지만 마우스가 연결된 경우 터치 패드 사용 안함은 아닙니다.
vipin8169

우분투 14.04 LTS (Unity)에서 잘 작동했습니다. 고맙습니다!
Kimberly W

15.04
PTS

6

udev터치 패드를 비활성화 / 활성화 하는 규칙을 설정할 수 있습니다 . ArchLinux 위키 에는 다음에서 시냅틱 터치 패드를 토글하는 규칙이 있습니다 udev.

ACTION=="add", SUBSYSTEM=="input", KERNEL=="mouse[1-9]", ENV{DISPLAY}=":0.0", 
ENV{XAUTHORITY}="/home/USERNAME/.Xauthority", ENV{ID_CLASS}="mouse", RUN+="/usr/bin/synclient TouchpadOff=1"

ACTION=="remove", SUBSYSTEM=="input", KERNEL=="mouse[1-9]", ENV{DISPLAY}=":0.0", 
ENV{XAUTHORITY}="/home/USERNAME/.Xauthority", ENV{ID_CLASS}="mouse", RUN+="/usr/bin/synclient TouchpadOff=0"

나는 그것을 작동시킬 수 없었다. 나는 추가 /etc/udev/rules.d/10-local.rulesACTION=="add", SUBSYSTEMS=="input", KERNELS=="mouse[1-9]", RUN+="gconftool-2 --set --type boolean /desktop/gnome/peripherals/touchpad/touchpad_enabled false" ACTION=="remove", SUBSYSTEMS=="input", KERNELS=="mouse[1-9]", RUN+="gconftool-2 --set --type boolean /desktop/gnome/peripherals/touchpad/touchpad_enabled true"다음 sudo service udev reload; sudo udevadm trigger; sudo service udev restart는데 아무런 동작도하지 않습니다.
마틴 토마

3

모든 랩톱에서 Synaptiks를 사용하는지 잘 모르겠지만 사용하려고 시도 할 수 있습니다. 설치하지 않은 경우 터미널에 다음 $sudo apt-get install kde-config-touchpad을 입력 한 다음 $synaptiks메뉴«터치 패드 관리»에서 다음을 확인하십시오.

  • 로그온시 자동 시작
  • 마우스가 연결된 경우 터치 패드를 자동으로 끕니다

이 정보가 귀하에게 도움이 되었기를 바랍니다.


3

터치 패드를 비활성화 / 활성화하려는 경우 스크립트를 만들어 실행할 수 있습니다.

/usr/local/bin/touchpad_toggle.sh

#!/bin/bash

declare -i ID
ID=`xinput list | grep -Eio 'touchpad\s*id\=[0-9]{1,2}' | grep -Eo '[0-9]{1,2}'`
declare -i STATE
STATE=`xinput list-props $ID|grep 'Device Enabled'|awk '{print $4}'`

if [ $STATE -eq 1 ]
then
    xinput disable $ID
    # echo "Touchpad disabled."
    # notify-send 'Touchpad' 'Disabled' -i /usr/share/icons/Adwaita/48x48/devices/input-touchpad.png
else
    xinput enable $ID
    # echo "Touchpad enabled."
    # notify-send 'Touchpad' 'Enabled' -i /usr/share/icons/Adwaita/48x48/devices/input-touchpad.png
fi

이것은 치료처럼 작동합니다!
aggsol

매력처럼 작동!
robbycandra

0

이것은 realhu의 비슷한 답변에 대한 더 긴 답변입니다.

화면 알림으로 터치 패드를 켜거나 끄는 스크립트

이 게시물의 일부 크레딧 ( 터치 패드 활성화 / 비활성화 )

토글 터치 패드 스크립트 생성

새 디렉토리를 작성 /home/USER/bin하고를 사용하십시오 gedit /home/USER/bin/toggle-touchpad. 참고 : 바꾸기 사용자를 사용자 ID와 함께. 이 행을 복사하여 편집기에 붙여 넣으십시오.

#!/bin/bash

# NAME: toggle-touchpad
# PATH: /home/$USER/bin
# DESC: Update pulseaudio output device when HDMI TV plugged / unplugged
# CALL: called from Keyboard Shortcut `Super`+`T`
# DATE: Created Dec 23, 2016.
# NOTE: Written for AU question: http://askubuntu.com/questions/863746/keyboard-shortcut-to-disable-the-laptop-touchpad/863750?noredirect=1#comment1333958_863750


# Use device number matching touchpad, in this case 14
if [[ $(xinput list 14 | grep -Ec "disabled") -eq 1 ]]; then
    xinput enable 14
    DISPLAY=:0 notify-send --urgency=critical --icon=/usr/share/icons/gnome/256x256/status/user-available.png "Touchpad enabled"
else
    xinput disable 14
    DISPLAY=:0 notify-send --urgency=critical --icon=/usr/share/icons/gnome/256x256/status/user-busy.png "Touchpad disabled"
fi

exit 0

토글 터치 패드 스크립트를 실행 가능으로 표시

파일을 저장하고 편집기를 종료하십시오. 이제 파일을 사용하여 실행 파일로 플래그 지정

chmod +x /home/USER/bin/toggle-touchpad

키보드 단축키에 토글 터치 패드 스크립트 할당

System SettingsKeyboardShortcutsCustom Shortcuts⟶ 열기+

이 화면이 나타납니다 :

토글 터치 패드

다음과 같이 사용자 정의 바로 가기 필드를 채우십시오.

  • 이름 = Toggle Touchpad
  • 명령 = /home/USER/bin/toggle-touchpad

Apply저장 하려면 버튼을 클릭하십시오 .

새 항목이 Disabled 상태로 나타납니다 . Disabled를 마우스 오른쪽 단추로 클릭 하고 Super+ Z(또는 사용되지 않은 다른 단축키 조합)를 사용하십시오. Super+ 를 사용하고 싶었지만 T이미 노틸러스 휴지통에 할당되어 있습니다.

토글 터치 패드 스크립트를 다른 장치 번호로 수정

기본 장치 번호는 14로 설정되어 있습니다. 장치 번호를 확인하려면 다음을 사용하십시오.

───────────────────────────────────────────────────────────────────────────────
USER@host:~/bin$ xinput
⎡ Virtual core pointer                      id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ Logitech Performance MX                   id=10   [slave  pointer  (2)]
⎜   ↳ Logitech K800                             id=11   [slave  pointer  (2)]
⎜   ↳ AlpsPS/2 ALPS GlidePoint                  id=14   [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)]
    ↳ Power Button                              id=8    [slave  keyboard (3)]
    ↳ Sleep Button                              id=9    [slave  keyboard (3)]
    ↳ Laptop_Integrated_Webcam_HD               id=12   [slave  keyboard (3)]
    ↳ Dell WMI hotkeys                          id=15   [slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard              id=13   [slave  keyboard (3)]
───────────────────────────────────────────────────────────────────────────────
USER@host:~/bin$ 

터치 패드 = 14, 웹캠 = 12 등 원하는 장치를 선택할 수 있습니다.

어떤 장치 번호를 사용하든 간단히 /home/USER/bin/toggle-touchpad스크립트 를 열고 14해당 장치 번호로 바꾸 십시오 .

다른 아이콘을 사용하도록 토글 터치 패드 스크립트 수정

"터치 패드 사용 가능"/ "터치 패드 사용 불가능"알림 풍선이 표시되면 텍스트 왼쪽에 아이콘이 표시됩니다. 스톡 아이콘은에서 사용 /usr/share/icons/gnome/256x256/status/되지만 변경할 수 있습니다.

터치 패드를 사용하려면 다음이 표시됩니다.

사용 가능한 사용자

터치 패드를 비활성화하려면 다음이 표시됩니다.

바쁜 사용자

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.