Skip to content

Jak wyłączyć monitor za pomocą klawisza skrótu w Ubuntu?

21 de lipiec de 2021
1626865791 banner 01 1024x469 1

Tradycyjny sposób wyłączania monitora za pomocą skrótu został złamany w kilku wersjach. Dość prosty skrypt w języku Python może niezawodnie i wydajnie przywrócić tę funkcjonalność.

Starym sposobem na wyłączenie monitora było polecenie xset:

xset dpms wymuś wyłączenie

Istnieje kilka wariacji na ten temat, ale od czasu Ubuntu Karmic (9.10) jest zepsuty. Niektóre wywołania systemowe najwyraźniej nie współpracują dobrze z tym poleceniem, powodując wybudzenie ekranu po około minucie. Po dłuższym czasie irytacji znalazłem kilka rozwiązań na forach Ubuntu. Uruchamianie tego polecenia w pętli wydaje się obciążać procesor i nie ma zbyt eleganckiego sposobu na uniknięcie tego. Na szczęście jeden użytkownik, nxmehta, znalazł rozwiązanie wykorzystując prosty skrypt Pythona i działa na wszystkim, od Karmic do Natty.

Przede wszystkim musisz mieć kilka zależności, więc otwórz terminal i wprowadź następujące polecenie:

sudo apt-get zainstaluj python python-xlib

Spowoduje to zainstalowanie pakietów python i python-xlib, jeśli nie są jeszcze zainstalowane. Następnie otwórz Edytor tekstu (gedit) i skopiuj/wklej następujący tekst:

#!/usr/bin/python

import time
import subprocess
from Xlib import X
from Xlib.display import Display

display = Display(’:0′)
root = display.screen().root
root.grab_pointer(True,
X.ButtonPressMask | X.ButtonReleaseMask | X.PointerMotionMask,
X.GrabModeAsync, X.GrabModeAsync, 0, 0, X.CurrentTime)
root.grab_keyboard(True,
X.GrabModeAsync, X.GrabModeAsync, X.CurrentTime)

subprocess.call(’xset dpms force off’.split())
p = subprocess.Popen(’gnome-screensaver-command -i’.split())
time.sleep(1)

while True:
print display.next_event()
p.terminate()
break

1626865790 489 Jak wylaczyc monitor za pomoca klawisza skrotu w Ubuntu


Zapisz plik gdzieś pod odpowiednią nazwą. Umieściłem swój w ~/bin/screen_off.sh z resztą moich skryptów.

Następnie kliknij plik prawym przyciskiem myszy i przejdź do Właściwości.

1626865790 65 Jak wylaczyc monitor za pomoca klawisza skrotu w Ubuntu

Na karcie Uprawnienia upewnij się, że zaznaczono opcję „Zezwalaj na wykonywanie pliku jako program”. Kliknij Zamknij.

Teraz możesz przypisać go do dowolnego skrótu klawiaturowego! Lubię ustawiać mój na Caps Lock, więc najpierw musiałem wyłączyć ten klucz. Możesz to zrobić, przechodząc do Klawiatura> Układy> Opcje.

opcje układu klawiatury

Tutaj wybierz „Caps Lock jest wyłączony” w obszarze zachowania klawisza Caps Lock.

Aby przypisać ten skrypt do skrótu klawiaturowego, otwórz preferencje skrótów klawiaturowych.

1626865791 202 Jak wylaczyc monitor za pomoca klawisza skrotu w Ubuntu

Kliknij Dodaj, nadaj skrótowi nazwę, a polecenie będzie po prostu lokalizacją skryptu. Kliknij Zastosuj, a następnie kliknij pod skrótem, aby go ustawić. Jeśli wyłączyłeś Caps Lock, zobaczysz go na liście „VoidSymbol”, ale będzie działać bezproblemowo.


Dręczyło mnie to od dłuższego czasu, a rozwiązanie było trochę trudne do znalezienia przy wszystkich narzekaniach. Mam nadzieję, że pomoże to zaoszczędzić baterię laptopa.

Czy ten post był pomocny?