Fazer as chamadas xrandr “certas” quando conecto / desconecto monitores

3

Então eu tenho um laptop que eu levo para trabalhar e me conecto a um monitor grande. Agora, quando eu começo a trabalhar, faço o seguinte

  1. Conecte meu laptop ao monitor
  2. executar xrandr --output DP1 --mode 2560x1600 --right-of eDP1 --output eDP1 --mode 1920x1080
  3. Reinicie meu gerenciador de janelas. (Eu uso o i3, então é realmente um passo muito barato)

Quando saio do trabalho, faço o seguinte:

  1. executar xrandr --output eDP1 --mode 1920x1080 --output DP1 --off
  2. Reinicie meu gerenciador de janelas.
  3. Desconecte o monitor.

Isso é chato. Existe alguma maneira de "dizer" ao meu laptop que as configurações acima devem ser aplicadas automaticamente sempre que ele se conecta a este monitor?

    
por azani 02.08.2017 / 23:25

1 resposta

1

Já existe uma resposta a essa pergunta. Tudo se resume aos seguintes pontos:

  • Não há evento acionado, a pesquisa é a única maneira
  • O polling é sempre ruim, mas alguns métodos (conforme descrito na resposta vinculada) têm mais desempenho / peso leve do que outros

Uma alternativa seria criar um script como o seguinte (não testado, mas a ideia é clara) e executar esse script, talvez usando um pressionamento de tecla:

# cat <<EOF >/usr/local/bin/fastxrr
#!/bin/sh
if xrandr | grep "eDP1 (connected)"
then
    xrandr SETUP FOR CONNECTED SCREEN
else
    xrandr SETUP FOR DISCONNECTED SCREEN
fi
EOF
# chmod +x /usr/local/bin/fastxrr
    
por 03.08.2017 / 00:09