Я купил играющую мышь с 8200 точками на дюйм. Однако, когда я использую его в Linux, у меня есть проблема. Когда я не использую ПК или смотрю видео, мышь иногда генерирует короткие перемещения в ответ на касание таблицы или даже людей, идущих в комнате. Те ответы заканчивают экранную заставку и заставляют видеоплеер GUI показывать. Это является раздражающим.
Что я могу сделать для противостояния ему?
Возможное решение является фоновым сценарием ниже.
С тех пор xprintidle
инициирован или мышью - или событиями клавиатуры (не тем, что происходит на экране), сценарий не будет нарушен, например, проигрывание фильма.
Тот путь, Вы не должны будете бояться, что нежелательное действие мыши разрушит что-либо, в то время как у Вас все еще есть легкий доступ к средствам управления и Вашему компьютеру.
Как всегда (и как это должно быть с фоновыми сценариями) сценарий записан таким способом, который не использует практически ресурсов.
#!/usr/bin/env python3
import subprocess
import time
# ---
# set your device (mouse), as found from the command: xinput list
device = 8
# set the desired idle time (in seconds) to disable the mouse
set_idletime = 5
# ---
# don't change anything below
idle1 = 0
while True:
time.sleep(1)
idle2 = int(int(subprocess.check_output(["xprintidle"]).decode("utf-8").strip())/1000)
if all([idle1 <= set_idletime, idle2 > set_idletime]):
subprocess.Popen(["xinput", "set-prop", str(device), "Device Enabled", "0"])
elif idle2 < idle1:
subprocess.Popen(["xinput", "set-prop", str(device), "Device Enabled", "1"])
idle1 = idle2
потребности сценария xprintidle
:
sudo apt-get install xprintidle
Копия сценарий в пустой файл, сохраните его, поскольку mouse_toosensitive.py
Узнают устройство (число, целое число) Вашей мыши путем выполнения в терминале:
xinput list
В главном разделе сценария, набор и номер устройства и желаемое время простоя (см. объяснение в сценарии).
Тестовый прогон это путем выполнения его из окна терминала с командой:
python3 /path/to/mouse_toosensitive.py
, Если все хорошо работает, добавьте его к своим приложениям запуска: Тире> Приложения Запуска> Добавляет команду:
/bin/bash -c "sleep 15 && python3 /path/to/mouse_toosensitive.py"
Если Вы используете xscreensaver
, существует параметр конфигурации, который вписывается - pointerHysteresis
:
, Если мышь перемещает меньше, чем эти много пиксели через секунду, проигнорируйте ее (не полагайте, что это "действие".) Это - то, так, чтобы экран не не очищал (или не удавался очистить), просто, потому что Вы ударили стол. Значение по умолчанию: 10 пикселей.
Другое решение, которое я попробовал бы, состоит в том, чтобы купить хороший силиконовый коврик для мыши, который может уменьшить нежелательное движение до минимума.
Поместите перо чернил под задней частью мыши для подъема оптического датчика выше расстояния, где это будет реагировать на перемещение, удалить перо чернил, когда Вы захотите использовать мышь снова.
Конечно, я уверен, что Вы уже экспериментировали со средствами управления мышью, такими как:
$ xset mouse [speed] [threshold]
и
Находит Ваше устройство ввода данных номер
$ xinput
$ xinput --set-prop 9 'Device Accel Constant Deceleration' 3
, Если экспериментирование с доступными значениями там не помогает, попытайтесь изменить свой коврик для мыши на поверхность, которая имеет больше, перетаскивают. Другими словами, эксперимент с другим типом ковриков для мыши для различной чувствительности в той способности.