Como mover uma janela para um espaço de trabalho diferente usando seu ID, no bash?

4

Atualmente, usei com sucesso wmctrl -r :SELECT: -t 2 , mas algo como wmctrl -r -i 0x03e00003 -t 2 não funciona. Como devo escrever o comando para selecionar a janela a ser movida pelo ID e não pelo mouse?

Estou usando o Linux Mint 13 com o padrão MATE DE.

Eu também tentei wmctrl -i -r 0x03e00003 -t 2

EDIT1: wmctrl -i -r thewinIDInHexa -t 2 funciona agora. A razão pela qual ele não funcionou é que, enquanto a primeira vez que eu experimentei com wmctrl eu usei a identificação correta, mas a sintaxe errada, a segunda vez eu usei a forma correta, mas a identificação da janela errada ... a coisa é a ID foi não- Existente e wmctrl não produz qualquer mensagem para IDs inexistentes. Obrigado por seus esforços. Ter a confirmação de que eu estava, de fato, usando o formulário correto para o comando, me forçou a verificar novamente os IDs. Obrigado novamente

EDIT2: como não posso comentar, postarei aqui a resposta para @slm: o ID correto agora é 0x0380000f

wmctrl -v -i -r 0x0380000f -t 2



envir_utf8: 1
Using window: 0x0380000f

O VLC é movido para o espaço de trabalho # 2 (terceiro espaço de trabalho)

para o ID que é realmente inexistente, temos praticamente a mesma coisa:

wmctrl -v -i -r 0x03a00003 -t 2 

envir_utf8: 1
Using window: 0x03a00003
    
por tardem 14.06.2014 / 22:21

1 resposta

5

Talvez você esteja ficando confuso com a opção -t # . As janelas são numeradas como começando com 1, mas a primeira janela é na verdade a 0. Observe na saída de wmctrl -l :

$ wmctrl -l
0x00c00028 -1 grinchy Top Expanded Edge Panel
0x0120001e  0 grinchy x-nautilus-desktop
0x06015fee  0 grinchy saml@grinchy:~
0x06000004  0 grinchy saml@grinchy:~
0x05a000d1  0 grinchy xorg - How can I get information about my virtual desktops via the command line? - Unix & Linux Stack Exchange - Google Chrome

A segunda coluna é o número da área de trabalho. Então, quando você está usando -t 2 , ele está colocando a janela -r 0x03e00003 na terceira área de trabalho, e não na segunda.

Exemplo

A janela do Evince PDF começa na área de trabalho # 1 (0):

$ wmctrl -l | grep 0x03a00003
0x03a00003  0 greeneggs.bubba.net Packt.Puppet.3.Beginners.Guide.pdf

Mova-o para a área de trabalho # 3 (2):

$ wmctrl -i -r 0x03a00003 -t 2

Confirme:

$ wmctrl -l | grep 0x03a00003
0x03a00003  2 greeneggs.bubba.net Packt.Puppet.3.Beginners.Guide.pdf

Observe que janela está ativada:

Estánaáreadetrabalho#3!

Referências

  • Como posso obter informações sobre meus desktops virtuais através da linha de comando?
por 15.06.2014 / 03:33