Отключить мышь при нажатии клавиши клавиатуры в Linux

249
user208769

Я перестал пытаться правильно зарегистрировать мой тачпад. Он хочет быть устройством imps / 2, и я не могу тратить больше времени, пытаясь убедить его в обратном (честно говоря, он весьма неплохо работает как устройство imps / 2 - нажмите, чтобы щелкнуть, 3-пальцевым нажатием на середину). нажмите, нет горизонтальной прокрутки, но вы не можете иметь все это)

Однако я не могу смириться с тем фактом, что самая легкая щетка вызывает срабатывание крана.

Есть ли команда, которую я могу использовать, чтобы отключить тачпад, если недавно была нажата клавиша? xinput, похоже, мой друг, устройство отображается и может быть настроено как «ImPS / 2 Generic Wheel Mouse»

1
Интересный вопрос! Предлагает ли производитель ноутбуков драйверы для Linux для этого устройства? Michael Frank 6 лет назад 0
На самом деле, нет. Это Voyo VBOOK V3 - некоторые драйверы для Windows и BIOS для Linux здесь http://en.myvoyo.com/xiazai/Win%20Pad/VBOOK%5FV3%5Fpentium/down/ - но пока ничего такого, что могло бы помочь в этом вопросе user208769 6 лет назад 0

1 ответ на вопрос

1
user208769

Мое очень хакерское решение до сих пор:

xinput test-xi2 --root | grep --line-buffered RawKeyRelease | while read -r line ; do pause-mouse-with-kill & sleep 0 ; done 

Он сообщает обо всех входных данных, переданных в xorg, проверяет, является ли это нажатием клавиши (так что я все еще могу щелкнуть по Ctrl), и на мгновение отключает мышь. Вот где все становится еще более хакерским - необходимы два файла, чтобы предотвратить повторные нажатия клавиш, увеличивающие время ожидания мыши:

/usr/bin/pause-mouse сделать фактическое отключение мыши:

#!/bin/bash DEV="ImPS/2 Generic Wheel Mouse" ; xinput set-prop "$DEV" "Device Enabled" 0 && sleep 0.5 && xinput set-prop "$DEV" "Device Enabled" 1  

/usr/bin/pause-mouse-with-kill Отмените предыдущее отключение мыши и перезапустите часы

#!/bin/bash killall pause-mouse pause-mouse 

Более хорошие решения будут предпочтительнее!