Usando um script de shell: Como obter o nome do ícone (ou caminho) de uma janela aberta no gerenciador de janelas baseado em X?

1

Eu posso obter ids de janela e títulos de janela usando wmctrl , mas até agora não consegui obter o caminho para o ícone usado pela janela. Eu tentei olhar para os utilitários xdg, mas o mais próximo foi instalar / desinstalar ícones.

Existe uma maneira de obter o nome do ícone usado pelo XDG / GTK ou o caminho do diretório para o ícone em um script de shell / linha de comando?

    
por dgo.a 24.12.2015 / 02:22

2 respostas

1

Então, em vez do nome, você pode obter a própria imagem:

xprop -id THE_WINDOW_ID -notype 32c _NET_WM_ICON |
   perl -0777 -pe '@_=/\d+/g;
   printf "P7\nWIDTH %d\nHEIGHT %d\nDEPTH 4\nMAXVAL 255\nTUPLTYPE RGB_ALPHA\nENDHDR\n", splice@_,0,2;
   $_=pack "N*", @_;
   s/(.)(...)/$2$1/gs' > icon.pam

Você pode canalizar essa saída para pamrgbatopng (de netpbm ) para obter uma imagem PNG:

xprop -id THE_WINDOW_ID ... | perl -0777  ... | pamrgbatopng > the_icon.png

É hacky, meio lento, mas é algo.

Créditos: Esta é uma combinação de @ Resposta de Thomas Dickey com [Como descarregar o ícone de um programa X em execução?] ( link .

    
por 13.04.2017 / 14:37
0

Você não pode obtê-lo de wmctrl porque ele só sabe sobre as propriedades da janela. Nenhuma das propriedades relacionadas a ícones em Dicas do Gerenciador de janelas estendidas informa onde um ícone reside. Isso é porque pode ser um pixmap na memória (como o xterm faz para certas configurações desde o patch # 282 ).

Provavelmente você já conhece essas propriedades:

Mas isso é apenas um ponto de partida. Supondo que haja um arquivo de ícone, você teria que procurá-lo na árvore de diretórios onde os ícones estão ativos, por exemplo, /usr/share/pixmaps , de acordo com o tema atual.

Uma pergunta semelhante foi feita em Qual é o caminho absoluto de um ícone declarado em um arquivo .desktop? , que aponta para

Obter o nome do theme depende da área de trabalho. Uma questão relacionada (e resposta) é encontrada em pesquisa de temas de ícones agnósticos de desktop

    
por 24.12.2015 / 03:08

Tags