O
Planeta é o que ha! Toda hora uma coisinha nova.
Hoje ví que o
Guilherme Jr postou que tinha acabado de instalar o
Hotkeys. Eu sempre quis dar funcionalidade útil a aquela teclinha da janelinha, mas sempre deixava pra depois. Como agora a pouco acabei tudo o que era necessário para esta semana, então vamos lá, instalei. Mas... como configuro a teclinha? O
man(?) não falava o que eu precisava, então perguntei sobre isso num comentário no blog de Guilherme Jr. hã... não. Sivirol é mais rápido. ... ... Pronto. Tudo certo. Vou colocar aqui como fazer pra que todos possam ter a tecla da janelinha funcionando em casa.
Pimeiro passo, instale o Hotkeys:
# aptitude install hotkeys
Você pode instalar de várias outras formas... o meu exemplo é para usuários Debian (ou derivados) através do shell.
Crie seu diretório de configurações pessoais:
$ mkdir ~/.hotkeys
Tudo o que é colocado aqui sobreescreve as configurações globais para o seu usuário.
Copie o arquivo de configuração para o seu diretório de configurações pessoais:
$ cp /etc/hotkeys.conf ~/.hotkeys/
Crie
~/.hotkeys/custom.def com o seguinte conteúdo:
<?xml version="1.0"?>
<definition>
<config model="Meu Teclado">
<!-- Botão da Janelinha : Abre o Terminal -->
<userdef keycode="115" command="gnome-terminal --working-directory=/home/fulano">Gnome Terminal</userdef>
<!-- Botão Power : Abre o GIMP -->
<userdef keycode="222" command="gimp">The Gimp</userdef>
</config>
<contributor>
<name>Fulano de Tal</name>
<email>Fulano@email.br</email>
</contributor>
</definition>
Coloquei em
marrom o que mais interessa. É daquela forma que você informa que teclas serão capturadas e qual a ação a ser executado.
(Aquele nome bonitinho entre <userdef ...> e </userdef> não está lá a-toa. Ele é apresentado na tela quando a tecla é pressionada)
Hei! Como você pegou aqueles keycodes?
Opa... Como Guilherme também disse, com o xev:
$ xev
Ele vai abrir uma janelinha e vai jogar todas as informações de eventos recebidos por ela no terminal. Clique no botão da janelinha e você verá isso:
KeyPress event, serial 61, synthetic NO, window 0x1800001,
root 0x3a, subw 0x0, time 256953577, (70,321), root:(897,713),
state 0x0, keycode 115 (keysym 0xffec, Super_L), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False
KeyRelease event, serial 61, synthetic NO, window 0x1800001,
root 0x3a, subw 0x0, time 256953688, (70,321), root:(897,713),
state 0x40, keycode 115 (keysym 0xffec, Super_L), same_screen YES,
XLookupString gives 0 bytes:
Se isso for padrão
(o que eu não acredito) você verá um keycode igual o meu naquele monte de informação.
Pronto. Agora é só executar o demon:
$ hotkeys -t custom
Pressionei a janelinha e... Foi! Abriu o terminal. Agora essa tecla é útil!
Mas... não... nem tudo é perfeito. A fonte onde aparece escrito "Lounching: Gnome Terminal" é horrivel!
E aquele verde limão... pô... quem escolheu essa cor tinha dautonismo severo.
Como configurar?
Abra
~/.hotkeys/hotkeys.conf:
Tirando o verde limão e colocando um azul discreto:
osd_color=#1080C0
Modificando a fonte para uma mais suave:
osd_font=-*-helvetica-bold-r-normal--50-*-*-*-*-*-*-*
Você não sabe que sopa-de-letra é aquela? É... eu também não sabia, mas sabia que isso era usado na configuração do emacs, então numa busca encontrei o capítulo
Font X, no manual do emacs.
Entendi que esta linha especifica uma fonte para o X com todas as suas opções, algumas até definidas pelo criador da fonte. Não é difícil usar não. São 13 opções com um hifem precedendo-as:
-MAKER-FAMILY-WEIGHT-SLANT-WIDTHTYPE-STYLE-PIXELS-HEIGHT-HORIZ-VERT-SPACING-WIDTH-CHARSET
Usando
* você deixa a escolha para o servidor X.
Agora sim. Veja:
Considerações:
- Eu subutilizei o Hotkeys. Dê uma olhada no artigo de rakesh_arky e veja um pouco mais sobre o negocinho. Ele tem funções próprias para controlar volume, força e por aí vai...
- Existem várias outras formas de fazer isso, mas eu fui ter vontade agora quando ví esse bicho.
- Isso e mais poderia ser facilmente feito de forma automática com ajuda de de uma aplicação visual. Eu fiz uma busca rápida no Google e não achei nada sobre isso. Com uma interface legal poderiamos propor a adição no Debian-BR-CDD... Algum GTK lover se interessaria por isso?