Ativar / desativar o touchpad

8

Eu consegui instalar o Ubuntu 16.04 no meu asus ux501 vw, mas alguns dos meus atalhos não estão funcionando. Eu não estou olhando para consertar todos eles, mas apenas um: o atalho que me permite ativar ou desativar o touchpad, para que eu possa escrever documentos longos com o trabalho sobre o touchpad.

Eu tentei encontrá-lo no google, mas não consegui nada.

Alguém pode me explicar como consertar isso, por favor? Obrigado!

    
por Thomas 01.11.2016 / 12:06

5 respostas

14

Eu criei este script bash a partir da resposta de negusp . Ele encontra e alterna o dispositivo TouchPad. Você pode configurar um atalho personalizado para ele nas configurações do sistema.

#!/bin/bash

read TPdevice <<< $( xinput | sed -nre '/TouchPad/s/.*id=([0-9]*).*//p' )
state=$( xinput list-props "$TPdevice" | grep "Device Enabled" | grep -o "[01]$" )

if [ "$state" -eq '1' ];then
    xinput --disable "$TPdevice" && notify-send -i emblem-nowrite "Touchpad" "Disabled"
else
    xinput --enable "$TPdevice" && notify-send -i input-touchpad "Touchpad" "Enabled"
fi

Estou configurando Ctrl + Deslocamento + F9 para ativar e desativar o touchpad, assim:

    
por Almas Dusal 22.01.2017 / 11:55
5

Você quer um atalho, mas pode facilmente colocar 2 scripts na área de trabalho e executá-los.

Primeiro, vá para o terminal. Digite xinput . Exemplo de saída:

⎡ Virtual core pointer                          id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ SynPS/2 Synaptics 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)]
    ↳ Power Button                              id=8    [slave  keyboard (3)]
    ↳ Sleep Button                              id=9    [slave  keyboard (3)]
    ↳ Laptop_Integrated_Webcam_1.3M             id=10   [slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard              id=11   [slave  keyboard (3)]
    ↳ Dell WMI hotkeys 

Encontre o touchpad. Neste exemplo, o touchpad está listado como id = 12

Crie o primeiro script com isto:

#!/bin/bash
xinput enable 12

Salve e nomeie touchpadenable.sh e, no terminal, marque-o como executável com:

chmod +x touchpadenable.sh

Faça exatamente a mesma coisa novamente, mas renomeie o arquivo como touchpaddisable.sh (ou qualquer outro) e, em vez de

xinput enable 12

Use o comando

xinput disable 12

Salve, marque como executável e você poderá executar os scripts a partir da área de trabalho. Observação: você pode ter que clicar com o botão direito do mouse nos scripts, clicar em propriedades e permitir que ele seja executado.

    
por negusp 01.11.2016 / 15:16
1

Você deve fazer como a resposta do negusp , primeiro verificar seu dispositivo de toque e mostrar algo assim:

~$ xinput
⎡ Virtual core pointer                      id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ PixArt Dell MS116 USB Optical Mouse       id=10   [slave  pointer  (2)]
⎜   ↳ SynPS/2 Synaptics TouchPad                id=14   [slave  pointer  (2)]
⎜   ↳ DLLC6B2:00 06CB:75BF 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)]
    ↳ Power Button                              id=8    [slave  keyboard (3)]
    ↳ Sleep Button                              id=9    [slave  keyboard (3)]
    ↳ Integrated_Webcam_HD                      id=11   [slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard              id=13   [slave  keyboard (3)]
    ↳ Dell WMI hotkeys                          id=15   [slave  keyboard (3)]
    ↳ DELL Wireless hotkeys                     id=16   [slave  keyboard (3)]

No meu caso é o dispositivo com id = 12, agora crie um script bash com o nome "toggle-touch" na sua pasta Desktop em uma pasta chamada "bin", seria "~ / Desktop / bin" e copie next código, verifique a variável do dispositivo está apontado para o meu toque id = 12, corrigi-lo com o seu caso:

#!/bin/bash

device=12
state='xinput list-props "$device" | grep "Device Enabled" | grep -o "[01]$"'

if [ $state == '1' ];then
  xinput --disable $device
else
  xinput --enable $device
fi

Defina esta permissão de execução de script:

chmod 775 /Desktop/bin/toggle-touch

Finalmente, você pode adicionar este caminho ao ".bashrc" da sua pasta pessoal, basta adicionar esta linha ao final do arquivo:

PATH=$PATH:~/Desktop/bin

atualize o caminho com:

. .bashrc

Então você pode executar este script de qualquer lugar, espero que isso ajude.

    
por hermeslm 11.04.2017 / 16:39
0

Deixando meu script aqui (mais ou menos o mesmo que acima). Funciona imediatamente, sem necessidade de consulta prévia do ID do dispositivo.

#!/bin/bash

function query_device_id {
    xinput list | grep -i touchpad | sed 's/.*id=\([0-9]*\).*//g'
}

let device_id=$(query_device_id)

let state=$(xinput list-props $device_id | grep Enabled | awk '{print ;}')

let new_state=$((1 - $state))

xinput set-prop $device_id "Device Enabled" $new_state
    
por erosb 23.01.2018 / 17:19
0

Crie um script de shell e cole o código abaixo nele e nomeie-o como touchPadDisable.sh

#!/bin/bash
temp=$(xinput | grep -i "Elantech Touchpad" | cut -d"=" -f 2 | cut -d"[" -f 1)
xinput disable $temp

Crie outro script de shell e cole o código abaixo nele e nomeie-o como touchPadEnable.sh

#!/bin/bash
temp=$(xinput | grep -i "Elantech Touchpad" | cut -d"=" -f 2 | cut -d"[" -f 1)
xinput enable $temp

O primeiro script desativará o touchpad e o segundo habilitará o touchpad.

Você pode adicionar esse script a atalhos personalizados nos teclados.

    
por Shrinivas Kulkarni 13.03.2018 / 11:53