Non lasciare che il mouse riattivi i display dalla modalità standby


12

Mi piace mettere i miei schermi in modalità risparmio energia / standby quando lascio il computer per un po '. Sarebbe ok se non fosse per il mouse troppo sensibile. A volte il conducente legge in alcuni movimenti che non è visibile ad occhio nudo (il cursore, cioè) e interrompe il risparmio energetico. Aspetterebbe altri 10 minuti prima di tornare in standby.

La mia soluzione è il seguente script associato a C-S-q:

xlock -startCmd 'xset dpms 2 2 2' -endCmd 'xset dpms 600 1200 1300' -mode blank -echokeys -timeelapsed +usefirst

Usando xsetho impostato i valori su 2 secondi ciascuno prima di andare in standby. Non è carino, comunque. A volte ci sono belle fortune che voglio leggere prima di digitare la password. Potrei mantenere il cursore in movimento ma è mosso. (A proposito, l'opzione di xlock mousemotionnon aiuta: nasconde solo il cursore ma il display si accende comunque.)

Quindi la domanda: c'è un modo per mettere i display in standby e rimanere lì fino a quando non viene premuto un tasto della tastiera? Sto eseguendo Gentoo e Xorg recente, ma spero che la risposta non debba essere specifica per la distribuzione.

Fondamentalmente la risposta può essere semplice come abilitare / disabilitare il mouse nella riga di comando ? Pensa che farebbe il lavoro se DPMS non conoscesse l'idea.


1
Se è l'hardware il problema, allora l'hardware potrebbe essere la soluzione: capovolgi il mouse fino a quando non vuoi usarlo. (Va bene, è stato sarcastico, ma hai capito bene).
nuovo123456,

Non è un brutto suggerimento, ma continuerebbe a leggere qualcosa pur essendo sottosopra :)
nperson325681

Anche i topi ottici più sensibili non registreranno alcun movimento senza un oggetto di qualche tipo a circa un pollice di distanza dal sensore. Se si tratta di un mouse meccanico, basta estrarre la palla per ottenere lo stesso effetto.
Shinrai,

1
Eh. Pensiamo a qualcosa che non richiede il lancio del mouse. :)
nperson325681

No, hai ragione, è una buona domanda (ed è per questo che l'ho votata). Ma sono d'accordo con @ new123456 che a volte una soluzione meccanica è più semplice (e può darsi che nessuno vi si imbattesse in questo - non sono un tipo Linux, quindi sicuramente non posso).
Shinrai,

Risposte:


5

C'è un ottimo post di @pbm che tratta questo, sul sito Unix SE.

In breve, utilizzare prima xinput listper ottenere l'ID dispositivo per il mouse, quindi utilizzare

xinput --set-prop [ID#] "Device Enabled" "0"

e

xinput --set-prop [ID#] "Device Enabled" "1"

per disabilitare e abilitare il mouse.

Ho appena provato questi qui disabilitando il mouse e quindi chiamando xset dpms force standby. Agitando il mouse per alcuni secondi non ha fatto nulla per disturbare lo schermo, ma premendo un solo tasto ha funzionato bene. Utilizzando il secondo comando, il mouse è tornato alla normalità, inclusa l'impostazione di "decelerazione costante" impostata dagli script di avvio predefiniti per me.

Dovresti essere in grado di passare questi due comandi alle opzioni -startCmde per ottenere ciò che cerchi.-endCmdxlock


1
Invece di usare l'opzione --set-prop insieme alla proprietà "Device Enabled / Disabled", si possono usare anche opzioni --enable e --disable, ad esempio xinput --enable [dispositivo] e xinput --disable [dispositivo] .
thebodzio

4

Lo faccio in Ubuntu:

#!/bin/bash

# allow only one instance
r=$(pidof -x -o $$ ssmonoff.sh)
set -- $r
if [ "${#@}" -ge 1 ]; then
    echo "Script already running. Exit..."
    exit
fi

dbus-monitor --session "type='signal',interface='org.gnome.ScreenSaver'" | ( while read line; do
    if echo $line | grep "boolean true" &> /dev/null; then
            xinput --set-prop "Dell Premium USB Optical Mouse" "Device Enabled" "0"
            xset dpms force off
    else
            xinput --set-prop "Dell Premium USB Optical Mouse" "Device Enabled" "1"
    fi
done )

Alcune note:

  • Sto anche forzando lo spegnimento del monitor.
  • Meglio usare il nome completo invece di ID.

Spero che questo aiuti.


Sembra buono ma non uso dbus o gnome quindi non lo proverò.
nperson325681,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.