Ada postingan bagus dari @pbm yang membahas hal ini, di situs Unix SE.
Singkatnya, pertama gunakan xinput list
untuk mendapatkan ID perangkat untuk mouse Anda, lalu gunakan
xinput --set-prop [ID#] "Device Enabled" "0"
dan
xinput --set-prop [ID#] "Device Enabled" "1"
untuk menonaktifkan dan mengaktifkan mouse.
Saya baru saja mengujinya di sini dengan menonaktifkan mouse lalu 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 ke normal, termasuk pengaturan "deselerasi konstan" yang ditetapkan skrip startup default untuk saya.
Anda harus dapat meneruskan kedua perintah ini ke -startCmd
dan -endCmd
pilihan untuk xlock
untuk mendapatkan apa yang Anda cari.
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 mematikan monitor secara paksa.
- Lebih baik gunakan nama lengkap daripada ID.
Saya harap ini membantu.