GNU/Linux >> Linux Esercitazione >  >> Ubuntu

Il mouse è troppo sensibile:disturba il sonno?

Ho acquistato un mouse da gioco con 8200 dpi. Tuttavia, quando lo uso in Linux ho un problema. Quando non uso il PC o guardo un video, il mouse a volte genera brevi movimenti in risposta al tocco del tavolo o anche alle persone che camminano nella stanza. Queste risposte terminano lo screensaver e fanno visualizzare la GUI del lettore video. Questo è fastidioso.
Cosa posso fare per contrastarlo?

Risposta accettata:

Una possibile soluzione è lo script in background di seguito.

Cosa fa

  • Dopo un tempo di inattività (arbitrario), lo script disabiliterà il mouse, rendendolo insensibile a qualunque cosa tu faccia con esso. Lo imposterei relativamente breve, quindi ci sono poche possibilità di disturbo nel mezzo.
  • Tuttavia, una semplice pressione di un tasto (qualsiasi) riattiva il mouse.

Da xprintidle viene attivato da eventi del mouse o della tastiera (non da ciò che accade sullo schermo), lo script non sarà disturbato ad es. riproduzione di un film.

In questo modo, non dovrai temere che un'azione indesiderata del mouse interrompa qualsiasi cosa, mentre avrai comunque un facile accesso ai controlli e al tuo computer.

Come sempre (e come dovrebbe essere con gli script in background) lo script è scritto in modo tale da non consumare praticamente risorse.

Il copione

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

Come si usa

  1. Lo script necessita di xprintidle :

    sudo apt-get install xprintidle
    
  2. Copia lo script in un file vuoto, salvalo come mouse_toosensitive.py

  3. Scopri il dispositivo (numero, intero) del tuo mouse eseguendo in un terminale:

    xinput list
    

    Nella sezione principale dello script, imposta sia il numero del dispositivo che il tempo di inattività desiderato (vedi spiegazione nello script).

  4. Provalo eseguendolo da una finestra di terminale con il comando:

    python3 /path/to/mouse_toosensitive.py
    
  5. Se tutto funziona correttamente, aggiungilo alle tue applicazioni di avvio:Dash> Applicazioni di avvio> Aggiungi il comando:

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

Ubuntu
  1. script di avvio utorrent / esegui utorrent all'avvio – Ubuntu 14.04 / 14.10

  2. Passare un carattere come argomento a uno script?

  3. Il mouse smette costantemente di funzionare?

  4. Come eseguire uno script??

  5. Il puntatore del mouse lampeggia?

Come scrivere uno script di shell in Ubuntu

Come configurare le impostazioni del mouse in Ubuntu

Script all'avvio?

Come attivare Super+scorri per ingrandire?

Opzione percorso del mouse?

Svegliati dal sonno solo con l'attività di tastiera/mouse Ubuntu 18.04?