Jangan biarkan mouse membangunkan tampilan dari standby

12

Saya suka meletakkan display saya ke mode hemat daya / siaga ketika saya meninggalkan komputer untuk sementara waktu. Akan baik-baik saja jika bukan karena mouse yang terlalu sensitif. Kadang-kadang pengemudi membaca dalam beberapa gerakan yang tidak terlihat oleh mata telanjang (kursor, yaitu) dan itu merusak hemat daya. Itu akan menunggu 10 menit lagi sebelum kembali ke siaga.

Solusi saya adalah skrip berikut terikat ke C-S-q:

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

Dengan menggunakan xsetsaya mengatur nilai masing-masing 2 detik sebelum pergi ke siaga. Itu tidak baik, kok. Terkadang ada kekayaan keren yang ingin saya baca sebelum mengetikkan kata sandi. Saya bisa terus menggerakkan kursor, tetapi tidak jelas. (Omong-omong, opsi xlock mousemotiontidak membantu - itu hanya menyembunyikan kursor tetapi display tetap menyala.)

Jadi pertanyaannya: apakah ada cara untuk membuat tampilan menjadi siaga dan tetap di sana sampai tombol keyboard ditekan? Saya menjalankan gentoo dan Xorg baru-baru ini, tetapi saya harap jawabannya tidak harus spesifik-distro.

Pada dasarnya jawabannya bisa sesederhana cara mengaktifkan / menonaktifkan mouse dalam baris perintah ? Itu berpikir bahwa akan melakukan pekerjaan jika DPMS tidak tahu ide itu.

nperson325681
sumber
1
Jika perangkat keras itulah masalahnya, maka perangkat kerasnya bisa menjadi solusinya - balikkan mouse hingga Anda ingin menggunakannya. (Oke, itu sarkastik, tetapi Anda mengerti maksudnya).
new123456
Bukan saran yang buruk tetapi masih akan membaca sesuatu sambil terbalik :)
nperson325681
Bahkan mouse optik yang paling sensitif tidak akan mencatat gerakan apa pun tanpa objek apa pun dalam jarak sekitar satu inci dari sensor. Jika ini adalah mouse mekanis, cukup keluarkan bola untuk mencapai efek yang sama.
Shinrai
1
Eh. Mari kita pikirkan sesuatu yang tidak perlu membalik mouse. :)
nperson325681
Nah, Anda benar, ini pertanyaan yang bagus (dan karena itulah saya membatalkannya). Tapi saya setuju dengan @ new123456 bahwa kadang-kadang solusi mekanis lebih mudah (dan mungkin tidak ada yang datang untuk Anda dalam hal ini - saya bukan orang Linux jadi saya yakin tidak bisa).
Shinrai

Jawaban:

5

Ada posting bagus oleh @pbm yang membahas hal ini, di situs Unix SE.

Singkatnya, gunakan pertama xinput listuntuk mendapatkan ID perangkat untuk mouse Anda, dan kemudian gunakan

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

dan

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

untuk menonaktifkan dan mengaktifkan mouse.

Saya baru saja menguji ini di sini dengan menonaktifkan mouse dan kemudian memanggil xset dpms force standby. Melambaikan mouse selama beberapa detik tidak mengganggu layar, tetapi menekan satu tombol berfungsi dengan baik. Menggunakan perintah kedua kemudian mengembalikan mouse kembali ke normal, termasuk pengaturan "deselerasi konstan" yang ditetapkan skrip startup saya untuk saya.

Anda harus bisa meneruskan kedua perintah ini ke opsi -startCmddan untuk mendapatkan apa yang Anda cari.-endCmdxlock

Paul Whittaker
sumber
1
Alih-alih menggunakan opsi --set-prop bersama dengan properti "Device Enabled / Disabled", Anda juga dapat menggunakan opsi --enable dan --disable juga, misalnya xinput --enable [perangkat] dan xinput --disable [perangkat] .
thebodzio
4

Saya melakukannya dengan cara ini di 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 )

Beberapa catatan:

  • Saya juga memaksa monitor mati.
  • Lebih baik gunakan nama lengkap daripada ID.

Saya harap ini membantu.

MiLo
sumber
Terlihat bagus tapi saya tidak menggunakan dbus atau gnome jadi tidak akan mencobanya.
nperson325681