monitor (1085B)
1 #!/bin/sh 2 3 INTERNAL="eDP-1" 4 EXTERNAL="HDMI-1" 5 DEFAULT_MODE="800x600" 6 7 on() { 8 echo "Ligando $EXTERNAL à direita de $INTERNAL..." 9 xrandr --output "$EXTERNAL" --mode "$DEFAULT_MODE" --right-of "$INTERNAL" 10 } 11 off() { 12 echo "Desligando $EXTERNAL..." 13 xrandr --output "$EXTERNAL" --off 14 } 15 mirror() { 16 echo "Espelhando telas..." 17 xrandr --output "$EXTERNAL" --mode "$DEFAULT_MODE" --same-as "$INTERNAL" 18 } 19 only_external() { 20 echo "Usando apenas monitor externo..." 21 xrandr --output "$EXTERNAL" --mode "$DEFAULT_MODE" --primary --output "$INTERNAL" --off 22 } 23 status() { xrandr --listactivemonitors; } 24 25 menu() { 26 choice=$(printf 'Ligar\nDesligar\nEspelhar\nApenas externo\nStatus' \ 27 | dmenu -i -l 5 -p "Monitor:") 28 case "$choice" in 29 Ligar) on ;; 30 Desligar) off ;; 31 Espelhar) mirror ;; 32 "Apenas externo") only_external ;; 33 Status) status ;; 34 esac 35 } 36 37 case "${1:-menu}" in 38 on) on ;; 39 off) off ;; 40 menu) menu ;; 41 *) echo "Uso: $(basename "$0") [on|off|menu]" ;; 42 esac