

Um tema do WindowMaker gira em torno de um arquivo de texto, onde há todas as especificações do tema.
Você pode criar um tema utilizando imagens que estão em Backgrounds, Styles e outras, mas a forma mais organizada é criar um diretório exclusivamente para o tema que você está criando. Coloque este diretório em Themes/ e acrescente o sufixo ".themed" ao nome. Por exemplo, se você quer criar um tema Ultraviolet, o diretório para ele se chamará Ultraviolet.themed.
Está bem, e onde ficam esses diretórios todos? Themes, Styles e tudo o mais? Simples, depende da instalação do tema. Freqüentemente você instalará o tema para uso pessoal mesmo, então procure pela pasta Themes em GNUstep/Library/WindowMaker, na sua pasta pessoal.
Um tema já criado e que você queira tornar disponível para outros usuários da sua máquina, você colocará em /usr/share/WindowMaker/Themes.
O arquivo de texto que guiará o tema deve se chamar "style" e tem uma sintaxe C-Like, com cada atributo recebendo um valor. Cores são representadas exatamente da mesma maneira que em HTML/CSS: símbolo-tralha, mais as três básicas (vermelho, verde e azul) em dois dígitos hexadecimais, cada. Ou seja, "#000000" é preto e "#ffffff" é branco.
A fonte tem uma notação mais esquisita, mas não é coisa de outro mundo também (se você utilizar um "style" já feito como base para derivar o seu ao invés de querer criar um do zero.
Alguns atributos recebem uma lista de valores, é o caso especificamente de planos de fundo, seja de um dock, do menu ou do que for. Caso queira uma cor no fundo, use a (solid, "#suacor"), usando uma cor hexadecimal, obviamente. Já para imagens, o primeiro ítem diz qual o tipo de imagem, o segundo diz o arquivo de imagem e o terceiro fornece um plano B, uma cor de fundo para o caso de o arquivo de imagem não ser encontrado.
Para imagens escaladas, ou seja, redimensionadas para ocuparem toda a área, utilize "spixmap". Para imagens enladrilhadas, é "tpixmap". Por exemplo, digamos que você criou uma imagem em 1024x768 com o Window Maker como tema, e que ela usa predominantemente a cor branca. Assim, você quer colocá-la no seu tema para ser a imagem de fundo das áreas de trabalho, trocada pela cor branca sólida caso o arquivo não seja encontrado. A linha para dizer isso seria:
WorkspaceBack = (spixmap, "wmaker.jpg", "#ffffff");
Há outras opções além destas, inclusive para gradientes, mas com isso já dá pra ter uma idéia de como é um tema do Window Maker por dentro. Depois explano mais esses outros pontos.
Veja um exemplo de style (este é do tema WmakerCyaneus, já disponibilizado aqui e que você pode usar como base para criar seu próprio tema):
{CClipTitleColor = "#301210";
ClipTitleColor = "#4c9696";
ClipTitleFont = "-*-helvetica-bold-r-normal-*-10-*-*-*-*-*-*-*";
DisplayFont = "-*-helvetica-medium-r-normal-*-12-*-*-*-*-*-*-*";
FTitleBack = (spixmap, "atitlebar.png", "#061d1d");
FTitleColor = "#318181";
HighlightColor = "#318181";
HighlightTextColor = "#ffffff";
IconBack = (spixmap, "tile.jpg", "#115252");
IconTitleBack = "#115252";
IconTitleColor = "#4c9696";
IconTitleFont = "-*-helvetica-medium-r-normal-*-8-*-*-*-*-*-*-*";
LargeDisplayFont = "-adobe-helvetica-medium-r-normal-*-*-240-*-*-p-*-iso8859-1";
MenuDisabledColor = "#999999";
MenuStyle = solid;
MenuTextBack = (spixmap, "menubg.jpg", "#ffffff");
MenuTextColor = "#000000";
MenuTextFont = "-adobe-helvetica-medium-r-normal-*-10-*-*-*-p-*-iso8859-1";
MenuTitleBack = (spixmap, "titlebar.png", "#301210");
MenuTitleColor = "#ffffff";
MenuTitleFont = "-adobe-helvetica-bold-r-normal-*-10-*-*-*-p-*-iso8859-1";
PTitleBack = (spixmap, "titlebar.png", "#061d1d");
PTitleColor = "#ffffff";
ResizebarBack = (tpixmap, "titlebar.png", "#061d1d");
TitleJustify = center;
UTitleBack = (spixmap, "titlebar.png", "#b1ffff");
UTitleColor = "#ffffff";
WindowTitleFont = "-adobe-helvetica-bold-r-normal-*-10-*-*-*-p-*-iso8859-1";
WorkspaceBack = (spixmap, "wallpaper.jpg", "#115252");
}
Só para concluir, se fizer um tema legal, o próximo passo é divulgá-lo! Use o Themes.Freshmeat.Net ou o Box-Look para isso. O Wmaker Cyaneus também está à disposição se você quiser.
Tema da foto do post: Giraffe.

Dando continuidade ao artigo anterior, que fala de menus dinâmicos e cita o criado pelo Piter Punk, aqui temos duas novas opções de menu.
Primeiro, o gumount, do qual já falei um outro dia. Trata-se de um script que facilita o ato de desmontar dispositivos USB (pendrives, MP3 Players...). Lancei hoje uma nova versão dele e, dentre as novidades, está a possibilidade de desmontar dispositivos acessando um submenu do menu principal do Window Maker. Confiram lá. ;-)
O outro é o retorno de um assunto já tratado aqui no blog: tema GTK2 sem usar o GNOME Settings Daemon. O wmsetgtk monta um submenu com todos os temas encontrados e permite que mudemos o tema GTK2 também a partir de um submenu do Window Maker. Como este script é muito simples, nem tem ícone nem está no Cyaneus. Veja os anexos deste artigo aqui mesmo. A forma de usá-lo é simples. Instale-o com um make install executado como root e, como usuário normal, rode o WPref pra editar o menu, acrescentando um submenu do tipo Generated Menu. Nele, coloque o comando wmsetgtk -w, mude o nome do submenu e pronto! Já está rodando!
Espero que sejam úteis e, só lembrando, quem quiser colaborar com o blog escrevendo artigos relacionados ao Window Maker, sinta-se em casa! ;-)

Não sei se vocês repararam no WPref, mas o Window Maker nos dá muitas opções para montar um menu bacana. E uma delas é a de montar um submenu automaticamente com o texto saído de algum comando. Isso torna fácil, por exemplo, fazer um menu que execute o seu gerenciador de arquivos favorito em alguma das pastas do seu diretório de usuário (um menu que mostre os nomes dos diretórios e abra o gerenciador de arquivos na pasta clicada). Basta escrever um script que retorne as informações na sintaxe de menu do Window Maker.
Já faz algum tempo que encontrei em um artigo antigo do Piter Punk com um programa desse tipo, que cria um menu de resoluções possíveis permitindo mudar a resolução do X a partir do menu. É bem interessante (eu achei mais interessante ainda ver o script como um modelo para as coisas que você pense em fazer na forma de submenus do Window Maker ;-) ) .

Antigamente era interessante ter um terminal com abas. Hoje não apenas interessante, mas uma necessidade. O problema é que o gnome-terminal e o konsole são bastante pesados.
Mas há uma opção realmente muito boa para terminal gráfico com abas: o mrxvt, que é uma modificação no rxvt. Além de abas, ele suporta transparência e algumas outras personalizações. As combinações Control-Shift-T (utilizada pelo gnome-terminal) e Control-Shift-N (utilizada pelo Konsole) servem para criar novas abas, enquanto o Control-Shift-W fecha uma aba. Control-Tab e Control-Shift-<algum-número> permitem navegar entre as abas.
O que achei muito bom no meu caso, foi que o mrxvt não intercepta a tecla F10, utilizada para sair do mcedit. Pelo menos no gnome-terminal é preciso configurar para que ele deixe a F10 em paz.
O mrxvt foi a solução que mais me agradou até o momento.

Se você gostou da possibilidade de sortear papéis de parede, mas gostaria de poder sortear temas... Ou melhor, se você quer um software simplificado para instalar, listar e ativar temas (além de permitir ativar um tema aleatório), você precisa conhecer o wmtheme.
Não oferece interface gráfica, mas apresenta uns recursos interessantes. Vejam o help dele em tradução livre feita por mim para entenderem do que esse programa simples é capaz:
Gerencia temas do Window Maker. A ação padrão no tema escolhido é ativá-lo.
<tema> [tema...] (sem opção) Ativa um tema. Múltiplos temas serão mostrados um após outro, com pergunta na linha de comando.
-b, --backout Desinstala um tema instalado recentemente
-B, --backmany Pergunta se quer remover cada tema instalado recentemente
-f, --favorite [theme] Ativa ou define o tema favorito
-i, --install <archive> Instala e ativa um tema a partir do arquivo compactado
-I, --justinstall <archive> Instala um tema a partir do arquivo, mas não o ativa
-h, --help Imprime a ajuda
-l, --list Lista os temas já instalados
-R, --random Ativa um tema aleatório
-r, --rename <old> <new> Renomeia um tema
-u, --uninstall <theme> Desinstala um tema
-V, --version Exibe informação sobre a versão do wmtheme e sai
-D, --debug Mostra saída de depuração
--info [theme...] Exibe informações sobre um tema específico (ou todos)
--setup Cria ~/.wmtheme com um arquivo mínimo de configuração
--review Aplica todos os temas em seqüência, dando opção de removê-los
Você conhece o WPref? É o primeiro passo para quem quer personalizar o Window Maker. Basta acioná-lo através do dockicon, como mostrado na imagem acima.
No WPref você poderá mudar muita coisa na aplicação, incluindo a forma como janelas se comportam, as combinações de teclas de atalho. E o menu principal do Window Maker (que geralmente é acessado com o botão direito do mouse na área de trabalho ou com a tecla F12).
Dependendo da distribuição que você utilize, o sistema pode dar uma mensagem especial caso você tente modificar o menu. Algo como "Olhe, o menu tá bonitinho assim, quer mexer mesmo? Vai perder tudo e espero que você saiba restaurar".
Bom, se estiver disposto a tentar, vá em frente, realmente perde tudo. No caso do Debian, que é onde pude testar, é bem simples colocar um menu inteiro do Debian como um submenu. Se criar coragem para fazer isso, vamos em frente (esse passo vai ser importante para algumas dicas futuras).
Para ajudar a personalizar seu menu, há três grupos de opções: novos ítens, comandos de exemplo e submenus de exemplo. Esse repertório é realmente muito útil na personalização. Sugestões interessantes:
Esta dica foi enviada por Cesar Avalos para incrementar o visual do GNOME Terminal dentro do Window Maker, mas é aplicável a qualquer terminal que suporte efeito de translucidez (transparência parcial). Agradeço sua contribuição e aqui está o artigo:

Bem, aqui vou dar uma dica bacana de como deixar seu terminal transparente no Window Maker muito mais bonito...
Primeiramente clique com o botão direito do mouse na barra de título do terminal. e no menu escolha Atributos (Attributes). Depois marque as seguintes opções:
Agora aperta Save e feche as preferencias.
Assim você removerá as cancalhadas desnecessárias em torno do seu terminal. Mas e agora? Como mover? maximizar e alterar o tamanho da janela?? Mover e alterar o tamanho da janela eh simples:
Para as outras coisas como minimizar, maximizar, abrir menu da janela, vá as preferências (WPrefs) do seu wmaker na aba de atalhos do teclado (Keyboard shortcut Preferences); E para cada ação escolha uma tecla de atalho.
Agora é só remover a sua barra de menu do Terminal(aquela com arquivo, editar, ver...) Isso você encontra nos atalhos e preferências do seu terminal favorito.
Agora que já vimos como criar atalhos para aplicações, mesmo as que não geram o quadrado, vamos falar de algo interessante e de utilidade mais prática (embora de utilidade visual apenas).
Quando executamos um programa que use a API GTK, a que é utilizada pelo GNOME, o programa aparecerá com o tema padrão, que não é lá tão bonito assim...
Para resolver este problema e fazer com que toda vez que você execute um programa com GTK no Window Maker (programa como o GAIM, GIMP, gedit e tantos outros) o tema que você escolheu seja aplicado, basta iniciar o programa gnome-settings-daemon junto com o Window Maker. Simples assim! (mas há também uma outra forma, um pouco mais complicada e de melhor desempenho)

Se quiser que os programas em GTK fiquem com a cara do GNUstep (a cara dos programas para Window Maker mesmo), você pode instalar o tema GTK2step, que é inclusive o que utilizo aqui em casa. O bom é que os programas ficam com consistência visual. ;-)
Para gerenciar os temas do GTK, utilize o gnome-theme-manager. E para baixar temas, se estiver disponível nos repositórios da sua distribuição, utilize o GNOME Art Manager (no Debian, o pacote é gnome-art). Se preferir pegar temas a partir de site, tente o Gnome Art ou o Gnome Look.
Breve, mais dicas para Window Maker.
Recent comments
16 hours 3 min ago
16 hours 9 min ago
16 hours 17 min ago
16 hours 19 min ago
16 hours 28 min ago
16 hours 38 min ago
17 hours 1 min ago
17 hours 5 min ago
17 hours 6 min ago
17 hours 8 min ago