Localize o id do dispositivo de entrada e altere o valor de sua propriedade

2

Eu aprendi com esta postagem que você pode definir a velocidade do mouse da seguinte forma:

$ xinput --set-prop 10 "Device Accel Constant Deceleration" 4

em que 10 é o id do dispositivo de destino, que você pode obter verificando a saída do comando xinput .

No entanto, o problema é que toda vez que eu desconecto meu mouse e reconecto-o, seu id muda. Assim, simplesmente colocar a linha acima em mouse.sh não é suficiente. Também preciso pesquisar dinamicamente o valor atual de id do dispositivo de destino, ou seja, meu mouse.

A parte trágica é que eu não sei nada sobre script bash e, portanto, aqui para procurar uma solução rápida para o meu problema específico:

  

Como escrever este script simples para localizar o id de um dispositivo de entrada, digamos mouse , e usar este id na linha xinput acima?

    
por Naitree 12.01.2015 / 07:21

1 resposta

1

Da página de manual xinput :

  

dispositivo pode ser o nome do dispositivo como uma string ou o XID do dispositivo.

Isso significa que você pode apenas fornecer o nome completo do seu mouse para o comando xinput .

Vamos primeiro identificar o seu dispositivo de mouse, digite xinput em um terminal:

$ xinput 
⎡ Virtual core pointer                      id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ SynPS/2 Synaptics TouchPad                id=17   [slave  pointer  (2)]
⎜   ↳ Logitech Logitech Illuminated Keyboard    id=11   [slave  pointer  (2)]
⎜   ↳ ROCCAT ROCCAT Kone Pure Optical           id=13   [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)]
    ↳ HD Pro Webcam C920                        id=9    [slave  keyboard (3)]
    ↳ Integrated Camera                         id=15   [slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard              id=16   [slave  keyboard (3)]
    ↳ ThinkPad Extra Buttons                    id=18   [slave  keyboard (3)]
    ↳ Logitech Logitech Illuminated Keyboard    id=10   [slave  keyboard (3)]
    ↳ ROCCAT ROCCAT Kone Pure Optical           id=12   [slave  keyboard (3)]
    ↳ No brand 2Port KVMSwicther                id=14   [slave  keyboard (3)]

Aqui meu mouse é um ROCCAT ROCCAT Kone Pure Optical , mas você não pode usá-lo porque esse tipo de mouse declara vários dispositivos (um mouse para jogos).

Então prefixar o nome do dispositivo com 'pointer:' da seguinte forma:

$ xinput --set-prop 'pointer:ROCCAT ROCCAT Kone Pure Optical' "Device Accel Constant Deceleration" 4

Ajuste o comando acima para corresponder ao seu próprio dispositivo e cole-o no script mouse.sh .

    
por Sylvain Pineau 12.01.2015 / 11:37