Como posso criar um atalho de teclado para desligar e ligar a tela? [duplicado]

1

Mudei meu laptop de um Lenovo U310 para um Dell Inspiron 7537. A Lenovo tinha uma chave especial para desligar e ligar a tela, mas a Dell não tem isso. Eu quero saber se existe um comando para desligar e na tela usando o mesmo atalho de teclado (algo como CTRL + A ou similar).

    
por jmrf 09.12.2014 / 11:21

1 resposta

4

Há duas circunstâncias que tornam sua situação um pouco diferente da (s) suposta (s) duplicidade (s):

  1. Algum processo parece acordar sua tela, se sua tela acordar após o comando xset dpms force off , deve ser. Minha tela não é por exemplo.
  2. Se você não quiser que sua tela acorde, apenas com a tecla qualquer , o comando xset dpms force off não está fazendo o que você deseja.

Uma solução alternativa é o script abaixo. O que faz:

  • Procura o nome da sua tela e o brilho atual
  • se o brilho não for igual a zero, ele escurece a tela, senão ela define o brilho para o normal

Em outras palavras: alterna entre a tela preta e o brilho normal.

Como usar

  • Copie o script em um arquivo vazio, salve-o como toggle_screen.py
  • Execute-o pelo comando:

    python3 /path/to/toggle_screen.py
    
  • Certifique-se de que você pode repetir o comando com uma tela preta, ou então você terá que sair para voltar ...

  • Se funcionar como gostaria, adicione-o a um atalho de teclado: Escolha: Configurações do sistema > "Teclado" > "Atalhos" > "Atalhos personalizados". Clique no botão "+" e adicione o comando.

O script

#!/usr/bin/env python3

import subprocess

cmd1 = "xrandr --verbose"
get = subprocess.check_output(["/bin/bash", "-c", cmd1]).decode("utf-8").split()
brightness = get[get.index("Brightness:")+1]
screens = [get[i-1] for i in range(len(get)) if get[i] == "connected"]

if brightness == "1.0":
    for scr in screens:
        subprocess.Popen(["/bin/bash", "-c", "xrandr --output "+scr+" --brightness 0"])
else:
    for scr in screens:
        subprocess.Popen(["/bin/bash", "-c", "xrandr --output "+scr+" --brightness 1"])
    
por Jacob Vlijm 09.12.2014 / 13:42