Levantar todas as janelas com um título específico

1

Estou tentando encontrar uma maneira de criar todas as janelas com um título específico.

Por exemplo, tenho duas janelas chamadas superconky (sim, você adivinhou, estou tentando executar o conky no lubuntu).

Eu tenho um comando que recebi dos fóruns do LXDE: sh -c 'wmctrl -k on; wmctrl -a superconky;'

Eu uso para mostrar a área de trabalho, exceto o conky. Funciona perfeitamente, mas só se você tiver um conky. Se você tem dois ou mais, você fica com um e todos os outros minimizados.

Então , o que devo fazer para aumentar todas as janelas?

Obrigado antecipadamente.

    
por Juraj Fiala 09.07.2014 / 19:00

1 resposta

3

"Então, o que devo fazer para levantar todas as janelas?"

Presumivelmente, você quer dizer todas as janelas conky?

Como wmctrl não está fazendo o que você quer especificando o nome da janela, você deve usar o método mais exato de especificar o id da janela.

Para obter a lista de IDs de janela,

wmctrl -l

Portanto, supondo que suas janelas tenham superconcurso no título, para extrair apenas os ids de janela dessa lista

windowid_list="'wmctrl -l | sed -ne 's|^\([^ ]*\).*superconky.*||p''"

Em seguida, processe a lista

if [ -n "${windowid_list}" ]
then
     for windowid in ${windowid_list}
     do
         wmctrl -i -a "${windowid}"
     done
fi

Observe que o sinalizador "-i" para indicar um windowid numérico deve ser especificado antes do sinalizador de ação ("-a", "-R", ou o que quer que seja) ou nada acontece.

Tenha também em atenção que "-a" aumenta e foca a janela e que apenas uma janela pode ser focada de cada vez.

Além disso, se a segunda janela superconcorrida estiver diretamente abaixo da primeira, quando a segunda estiver levantada, ela obscurecerá a primeira.

    
por J G Miller 09.07.2014 / 19:43