2006/03/21

wmii{2,3}

Estive navegando pelo Google buscando scripts para o Ion3, quando me deparei com um gerenciador chamado wmii.

Comecei a ler sobre o funcionamento deste, em dois links disponíveis na página, me interessei: ele condensa idéias de vários outros gerenciadores for experts em um só lugar, juntando recursos como abas para gerenciar janelas, ambientes de desktop separados, vários modos de organização das janelas e atalhos de teclado para qualquer ação do usuário. Além disso, também tem uma interface para configuração baseada em um sistema de arquivos virtual, lembrando muito as idéias do audacioso Plan9. Resolvi baixá-lo e testar.

A partir daqui, tenho duas experiências para relatar; a primeira é com a versão 2.5.2, a última estável, e a segunda, é com a versão do CVS (20060316):
  • A versão 2, estável.

    Espantei-me com a quantidade de recursos. Para começar: dá pra se criar ambientes organizando as janelas lado a lado, em forma de grade, flutuando [permitindo redimensionamento e moção à vontade] ou maximizando-se estas. Mas além disso, também ganha-se de brinde um recurso á lá Exposé, do Mac OS X, chamado pager, que ajuda a encontrar as janelas nos ambientes específicos.

    Reconfigurar é basicamente editar um script shell, que atribui teclas de atalhos, cliques do mouse e outras ações a comandos a serem executados, em resposta. Isso tudo escrevendo em arquivos dentro do sistema de arquivos virtual do gerenciador (em userspace). Alterar as cores das abas também é possível e fácil, e há temas pré-definidos na página para os usuários que desejam fazê-lo.

    Um dos problemas maiores que senti é que este não suporta opção URGENT, que pode ser utilizada pelos aplicativos para notificar eventos; um padrão um tanto recente [pelo menos no uso], mas que é muito útil. Outro ponto negativo é a ausência de um recurso muito útil da versão instável, que é um modo de se organizar várias janelas como uma stack [screenshot].

    No geral, este gerenciador é uma opção muito boa e muito estável, muito recomendado.

  • A versão 3, instável.

    A maior pante das afirmações para a versão estável continua válida, inclusive as observações com relação à flag URGENT. Entretanto, senti falta do pager, e percebi que o sistema de arquivos foi bastante remodelado, perdendo algumas informações. Aliás, a maneira de tratar os eventos mudou bastante nessa versão: não é mais o gerenciador de janelas que executa os comandos quando algum evente ocorre, e sim escreve em um arquivo localizado dentro do sistema de arquivos virtual (em userspace). Um processo externo, nesse caso um script, lê os eventos e os trata de acordo, executando as ações específicas de cada tecla de atalho.

    Um ponto importante é que o modo de se organizar as janelas também mudou. Alguns conceitos parecem um tanto diferentes nesta versão, como a maneira de lidar com tags, workspaces e ambientes flutuantes - que existem em qualquer tag, independente da configuração da mesma.

    O que me fez testar esta versão, pelo menos um dos maiores motivos, foram as janelas organizadas como uma stack [screenshot], já comentado antes. Também há um utilitário para executar programas, que mostra uma lista e vai restringindo esta conforme digita-se o nome do programa desejado; além de bonito, muito prático.

    Neste caso, reconfigurar também é basicamente editar um script shell, mas algumas funções viraram built-in. Uma coisa que senti que está incompleta é a atribuição de ações a cliques do mouse: por enquanto, é difícil determinar a janela-alvo que o usuário clicou. O gerenciador também apresentou alguns bugs no posicionamento de janelas lado-a-lado, criando-se mais de um workspace por tag.

    Obviamente, por se tratar de uma versão não lançada do software, provavelmente muitos recursos ainda não foram implementados ou não funcionam corretamente.

    Mesmo com alguns problemas, continua recomendado. Talvez não para o dia-a-dia, mas só para dar uma olhada, ou até para fuçar o código.
Aproveitando a deixa: para os usuários de Gentoo, fiz ebuilds para as duas versões, que podem ser encontrados aqui.

E é isso.

Reboot

Tem momentos que é bom limpar a mesa de trabalho; jogar tudo no chão e começar a analisar o que sobrou, pra reaproveitar o que é possível de ser reciclado. Bom, esse é um desses momentos, e por isso um reinício do blog, do zero: para dar espaço a novos posts e trazer devolta o melhor do que passou.

E, por enquanto, é isso.