Posso detectar a presença de uma segunda exibição em um shell script ou configuração Conky?

3

Eu quero modificar meu posicionamento conky, dependendo se estou trabalhando com meu laptop no colo (uma tela) ou se ele está na minha mesa conectado a um monitor maior (monitor duplo).

O problema é que eu quero que ele apareça no canto inferior esquerdo da tela do meu laptop, não importa o quê. Mas com a minha configuração de monitor duplo, a "parte inferior esquerda" está no meu monitor externo.

Parece que existem duas soluções:

  • Adicione uma instrução if / else ao script que utilizo para iniciar o conky (conky.sh) que inicia um arquivo de configuração diferente, dependendo da disposição da minha exibição.

  • Adicione uma instrução if / else à minha configuração conky que define o alinhamento ou um valor de recuo dependendo do arranjo de exibição.

(E sim, eu percebo que pelo menos a versão do shell só funciona se eu tiver coisas conectadas / desconectadas quando eu lanço o conky. Eu posso viver com isso.

Mas ... eu nem sei como detectar um monitor duplo ou um segundo monitor em bash ou conky.

    
por Amanda 30.11.2013 / 20:04

2 respostas

3

A sugestão de Nathan acima dará o mesmo resultado sob todas as circunstâncias, pois o comando xrandr fornece informações sobre todas as saídas de exibição ( connected / disconnected ).

Este código funcionará:

$ xrandr | grep -sw 'connected' | wc -l

Nota: Não é minha ideia. Eu apenas mesclei a sugestão de Nathan e this .

    
por 13.09.2016 / 01:40
1

Você pode usar xrandr e grep para detectar os monitores conectados. Em seguida, use wc -l para contar o número de linhas retornadas.

Tente isso no terminal:

xrandr | grep connected | wc -l
    
por 30.11.2013 / 20:55