GNU/Linux >> LINUX-Kenntnisse >  >> Ubuntu

Maus ist zu empfindlich – stört den Schlaf?

Ich habe mir eine Gaming Maus mit 8200dpi gekauft. Wenn ich es jedoch unter Linux verwende, habe ich ein Problem. Wenn ich den PC nicht verwende oder ein Video ansehe, erzeugt die Maus manchmal kurze Bewegungen als Reaktion auf das Berühren des Tisches oder sogar von Personen, die im Raum gehen. Diese Antworten beenden den Bildschirmschoner und führen dazu, dass die GUI des Videoplayers angezeigt wird. Das ist ärgerlich.
Was kann ich dagegen tun?

Akzeptierte Antwort:

Eine mögliche Lösung ist das folgende Hintergrundskript.

Was es tut

  • Nach einer (beliebigen) Leerlaufzeit deaktiviert das Skript die Maus und macht sie unempfindlich gegenüber allem, was Sie damit tun. Ich würde dies relativ kurz einstellen, damit es zwischendurch kaum zu Störungen kommt.
  • Ein einfacher Tastendruck (beliebiger) aktiviert die Maus jedoch wieder.

Seit xprintidle entweder durch Maus- oder Tastaturereignisse ausgelöst wird (nicht durch das, was auf dem Bildschirm passiert), wird das Skript nicht durch z. einen Film abspielen.

Auf diese Weise müssen Sie nicht befürchten, dass eine unerwünschte Mausbewegung etwas stört, während Sie dennoch einfachen Zugriff auf die Steuerung und Ihren Computer haben.

Wie immer (und wie es sich bei Hintergrundskripten gehört) ist das Skript so geschrieben, dass es praktisch keine Ressourcen verbraucht.

Das Skript

#!/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

Verwendung

  1. Das Skript benötigt xprintidle :

    sudo apt-get install xprintidle
    
  2. Kopieren Sie das Skript in eine leere Datei und speichern Sie es als mouse_toosensitive.py

  3. Finden Sie das Gerät (Nummer, Ganzzahl) Ihrer Maus heraus, indem Sie ein Terminal ausführen:

    xinput list
    

    Stellen Sie im Kopfbereich des Skripts sowohl die Gerätenummer als auch die gewünschte Ruhezeit ein (siehe Erklärung im Skript).

  4. Testen Sie es, indem Sie es von einem Terminalfenster aus mit dem Befehl:

    ausführen
    python3 /path/to/mouse_toosensitive.py
    
  5. Wenn alles funktioniert, fügen Sie es Ihren Startanwendungen hinzu:Dash> Startanwendungen> Fügen Sie den Befehl hinzu:

    /bin/bash -c "sleep 15 && python3 /path/to/mouse_toosensitive.py"
    

Ubuntu
  1. Mausverzögerung nach dem Upgrade auf Ubuntu 14.04?

  2. Ubuntu 17.10 – Maus wird nicht in Xinput angezeigt?

  3. Maus hört ständig auf zu arbeiten?

  4. Cron-Job wird nicht ausgeführt?

  5. Mauszeiger blinkt?

So schreiben Sie ein Shell-Skript in Ubuntu

So konfigurieren Sie die Mauseinstellungen in Ubuntu

Skript beim Start?

Wie aktiviere ich Super+Scroll To Zoom?

Mausspur-Option?

Aufwachen aus dem Ruhezustand nur durch Tastatur-/Mausaktivität Ubuntu 18.04?