View Full Version : Fluxbox. Discussão e personalização.


neonl
30-12-2007, 12:30
Boas a todos.

Em primeiro lugar, e para quem não sabe: o que é o fluxbox?
O Fluxbox é um gerenciador de janelas leve para o X Windowing System.
O Fluxbox oferece decorações de janelas configuráveis, um menu "root" para iniciar aplicações e uma barra de ferramentas que mostra o nome do Workspace corrente, o conjunto de aplicações a correr e o relógio. Existe também um menu do workspace, que lhe permite adicionar ou remover workspaces. O "slit" pode ser usado para acoplar pequenas aplicações, por exemplo a maioria das bbtools pode usar o slit.
O Fluxbox pode iconificar janelas para a barra de ferramentas, além de acrescentar a janela ao submenu Ícones do menu workspace. Um clique e eles reaparecem. Um duplo clique sobre o título da janela vai sombreá-la, ou seja, a janela irá desaparecer, deixando apenas o subtítulo visível.
O Fluxbox utiliza a sua própria classe gráfica para renderizar a imagem no próprio instante. Ao usar arquivos de estilos, você pode determinar em grande detalhe a aparência do seu Desktop. Os estilos do Fluxbox são compatíveis com os dos Blackbox 0.65 e versões anteriores, para que os usuários que migram deste ainda possam usar os seus temas preferidos.
O Fluxbox suporta a maioria dos Extended Window Manager Hints (EWMH), bem como numerosas outras regras de Window Hinting. Isto permite que todos os gestores de janela compatíveis forneçam uma interface comum de características padrão utilizado por aplicações desktop e utilitários.Pronto. Uma definição geral já cá está. Mas muitos de vós, podem pensar se tenho um PC com uma gráfica moderna, bom processador e tenho RAM para que é que quero uma coisa tão "old-school"?. Sim, é um pensamento habitual, e com algum sentido. Muitos defendem esta ideia e por isso usam Gnome, KDE, etc só por acharem que este sistema é feio e antiquado. Respeite-se. Mas de qualquer maneira não deixa, também, de ser verdade que mesmo em computadores "super-extra", Gnome ou KDE podem ser lentos a arrancar e por vezes mais instável. Por isso muitos optam por experimentar estes WMs que ocupam pouco espaço em disco consomem quantidades reduzidas de memória e, por vezes, são mais "organizados".
__________________________________________

Vamos lá parar com a conversa da treta e ir ao que interessa. O Fluxbox (http://www.fluxbox.org/), neste momento tem a sua versão estável marcada em 1.0.0. Na maior parte das distribuições com gestão de pacotes por repositórios é esta a versão que lá está.

Uma das coisas que assusta os fluxbox noobs é o facto de à partida não ter GUIs para configurar menus, etc. Por isso nas wikis sobre este gestor de janelas da maior parte das distros costuma ser referida a instalação de ferramentas gráfica "extra" para esse fim.
__________________________________________

Instalação por repos nalgumas distros conhecidas:
Debian [Pacotes - Etch (http://packages.debian.org/stable/fluxbox)] [Pacotes - Lenny (http://packages.debian.org/testing/fluxbox)] [Pacotes - Sid (http://packages.debian.org/unstable/fluxbox)]:# aptitude install fluxbox fluxconf # o Debian já deixa um right-click menu gerado, para facilitar
Ubuntu [Pacotes - Hardy (http://packages.ubuntu.com/hardy/fluxbox)]:sudo apt-get install fluxbox fluxconf fbpager fbdesk # estes dois últimos são relativamente dispensáveis
Arch:pacman -Sy fluxbox fluxconf
Gentoo:emerge fluxbox xlockmore x11-terms/etermÉ portanto como podem ver... simples :).
__________________________________________

Informação útil (wikis, tutoriais, etc). Para distros "concretas" temos:
Debian :: [Wiki (http://wiki.debian.org/Fluxbox)]
Ubuntu :: [Wiki (https://help.ubuntu.com/community/Fluxbox)] [Tópico - fórum oficial (http://ubuntuforums.org/showthread.php?t=371144)]
Arch Linux :: [Wiki (http://wiki.archlinux.org/index.php/Fluxbox)]
Gentoo :: [Wiki (http://gentoo-wiki.com/HOWTO_Fluxbox)] [Documentação oficial (http://www.gentoo.org/doc/en/fluxbox-config.xml)]Depois temos a documentação "geral":
Wiki do Fluxbox (http://fluxbox-wiki.org/index.php/Fluxbox-wiki)Para temas e costumização:
http://www.fluxbox.org/themes.php
http://themes.freshmeat.net/browse/962/
http://customize.org/fluxbox
http://tenr.de/styles/styles01.php
http://browse.deviantart.com/customi...hemes/fluxbox/ (http://browse.deviantart.com/customization/skins/themes/fluxbox/)

__________________________________________

Fica também a referência a uma útil ferramenta de monitorização de sistema no desktop: o Conky. Não vou referir aqui como se instala e peço que não sejam colocadas dúvidas sobre ele neste tópico posto que o esquiso já criou um com este propósito:
http://www.techzonept.com/showthread.php?t=220957&highlight=conky


créditos ao c3l5o pela tradução da definição inicial (original @ wiki oficial do fluxbox)

esquiso
08-01-2008, 00:52
Vamos lá animar isto. Para isso, nada melhor que uns Screenshots.
Deixo aqui um pouco de concept, e para agradar, sem o pager de metro e meio e sem o conky :D

http://imagens.webtuga.com/images/234706SS3.jpg (http://imagens.webtuga.com/images/973825SS1.jpg)

Desktop simples, 2x urxvt com pseudo transparencia, toolbar do fluxbox a 50% e com a pseudo transparencia activada :)

http://imagens.webtuga.com/images/603893SS2.jpg (http://imagens.webtuga.com/images/682273SS.jpg)

Thunar com os icons Tango, os icons default são um bocadinho para o feios :p
As borders também estão com um pouco de transparencia :)

Agora desafio-vos a mostrarem os vossos :D por mais feios que sejam, ihihihih

dronepwn
08-01-2008, 10:17
Parece-me um tópico interessante. Vou ler umas coisas sobre isto e ver se faço alguma coisa.

slack_guy
08-01-2008, 15:13
esquiso:
Deixo aqui um pouco de concept, e para agradar, sem o pager de metro e meio e sem o conky
Tás lá!! :-)

Aqui fica o meu dos tempos em que usava Fluxbox
http://img230.imageshack.us/img230/8935/fluxboxpp8.th.jpg (http://img230.imageshack.us/my.php?image=fluxboxpp8.jpg)

FOKA
08-01-2008, 15:22
esquiso podes dizer k emulador de terminal estas a utilizar e o comando k estas a usar pra cada um?

esquiso
08-01-2008, 16:31
Já tinha dito que era o urxvt (para suporte a unicode :))
O comando é
urxvt -name term1 -tr +sb -fg white -bg black -tint white -sh 100 -pr black -pr2 white &

O outro tem -name term2 para os diferenciar no apps :)

FOKA
08-01-2008, 17:03
Já tinha dito que era o urxvt (para suporte a unicode :))
O comando é
urxvt -name term1 -tr +sb -fg white -bg black -tint white -sh 100 -pr black -pr2 white &O outro tem -name term2 para os diferenciar no apps :)

thanks:) ja agora sabes tirar lhe as bordas da janela?

esquiso
08-01-2008, 17:12
No fluxbox fiz o seguinte: fui ao ficheiro keys e acrescentei isto

Mod4 t :ToggleDecor

Agora, tendo o focus numa janela e pressionando a WinKey + t, as janelas ficam sem borders ;) Depois, é só dar uso ao apps ;)

FOKA
08-01-2008, 17:53
No fluxbox fiz o seguinte: fui ao ficheiro keys e acrescentei isto

Mod4 t :ToggleDecorAgora, tendo o focus numa janela e pressionando a WinKey + t, as janelas ficam sem borders ;) Depois, é só dar uso ao apps ;)

thanks men:)

PrOdG
09-01-2008, 15:44
No fluxbox fiz o seguinte: fui ao ficheiro keys e acrescentei isto

Mod4 t :ToggleDecor

Agora, tendo o focus numa janela e pressionando a WinKey + t, as janelas ficam sem borders ;) Depois, é só dar uso ao apps ;)

[app] (term2)
[Deco] {NONE}
[end]

Mais simples ;)

kanguru
12-01-2008, 01:44
Sem dúvida um excelente WM. Usei-o durante mt tempo. É simples, parece k o monitor passa de 800x600 num KDE para um 1280x1024 no fluxbox, era esta a razão pela qual eu usava o fluxbox. A 2ª Razão é que com a sua simplicidade tudo fica bonito, nada como uma boa imagem de fundo, uns eterms pseudo-transparentes para agradar a vista. A 3ª, muito leve como se gosta :)

A unica coisa que destoava quando o usava, eram as aplicações para gnome e kde, ke pelas suas origens são feias :P

Lembro-me de à uns anos vir cá a casa um gajo da TV cabo mudar-me o modem e ficou a babar para o Fluxbox, nunca ele tinha visto linux na frente sequer ehe.

XGremlinX
12-01-2008, 13:17
sem querer criar aqui algum off-topic, aguém me sabe dizer as principais diferenças entre fluxbox e openbox?
Bom tópico btw :)

c3l5o
12-01-2008, 16:20
Uma das diferenças está na licença de cada um já que Fluxbox é MIT e openbox é GPL, um é feito em C++ outro em C... Mas para mais diferenças podes ver o site de cada um deles!

Fluxbox:
http://fluxbox.sourceforge.net/

Openbox:
http://icculus.org/openbox/index.php/Main_Page

madskaddie
14-01-2008, 13:59
Alguem sabe de algum utilitário (ou config) que possa usar para que quando faço Alt-TAB no fluxbox, me apareça (pelo menos) os nomes dos programas que vão alterando (no lugar de simplesmente alterar o programa)?

[knap]
17-01-2008, 23:24
Neste momento estou a usar openbox mas não sei se o trabalho extra a que isto obriga vale a pena, como o GNOME por exemplo temos mais ou menos tudo logo a funcionar mas para colocar um ambiente mais lighweight *box, etc num estado decente dá uma trabalheira desgraçada, mais alguém partilha este sentimento?

esquiso
17-01-2008, 23:27
Percebo o que dizes [knap], mas eu vejo isso de um prisma diferente. Só dá trabalho da 1ª vez. Backup da .fluxbox e está a andar :)

slack_guy
17-01-2008, 23:59
para colocar um ambiente mais lighweight *box, etc num estado decente dá uma trabalheira desgraçada, mais alguém partilha este sentimento?
A quem o dizes! :-)
Uso FVWM precisamente porque dá uma trabalheira do catano a configurar. A recompensa é que fico com um desktop organizado da forma que eu quero: icones, pagers, butões, etc, nos tamanhos e sítios que eu quero, com as funções que eu quero.
Claro que isto não dá saúde a ninguém que se está a borrifar para a configuração do desktop. Mas para mim, que passo 14 horas/dia em frente ao computador, um desktop usável (da forma que eu quero) é meio caminho para a felicidade :-)

madskaddie
18-01-2008, 10:09
Esse sentimento (para mim) é genérico do Linux (julgo que os BSDs se podem meter na mm caixa): dá um trabalhão a ter tudo configurado... depois, muito raramente* falha. Essa é mm a filosofia ;) Por isso não gosto mto de *buntus e afins. Configuram as coisas à maneira deles (tudo automatik) e depois se falham, não faço ideia por onde pegar. É claro que podemos também configurar à pata, desinstalando os defaults (coisa impossível em Win||Mac ) mas para isso uso outros :P .


* exemplo de falhas: ndiswrapper com novos kernel (para não falar em drivers proprietários, claro). Falhas de hardware, ... coisas que na realidade não são da responsabilidade directa do Linux mas que levam o sistema a falhar.

LnxSlck
19-01-2008, 00:30
* exemplo de falhas: ndiswrapper com novos kernel (para não falar em drivers proprietários, claro). Falhas de hardware, ... coisas que na realidade não são da responsabilidade directa do Linux mas que levam o sistema a falhar.

Olha que eu ja uso ndiswrapper ha alguns anos e nunca tive problemas

madskaddie
19-01-2008, 03:23
OS meus problemas com o ndiswrapper tem que ver com a Suspensão p/ RAM. Tenho que ter um script meu que tira o módulo antes de suspender. Sob certas condições o módulo fica pendurado e não nada a fazer se não um semi-hard reboot (chega a um ponto onde tenho de premir o botão mm) :/

esquiso
03-09-2008, 03:12
Dig 9 meses depois (quase). Mas é por uma boa causa :D

Fluxbox 1.1 out

Fluxbox 1.0 (http://www.phoronix.com/scan.php?page=news_item&px=NjEwOQ) was released in October of 2007, but its first post-1.0 update has now been released. The source to Fluxbox 1.1 has just hit its SourceForge page (http://sourceforge.net/project/showfiles.php?group_id=35398&package_id=27561), but at this time there is no release announcement nor has their project web-site (http://www.fluxbox.org/) been updated. There is, however, the change-log that ships with the source package to look at.

Fluxbox 1.1 has quite a few changes and among them are new tab placement options, new key commands, new special keys, and there are also a multitude of bug-fixes. There looks to be about 105 official changes that make up Fluxbox 1.1.0.

For those out of the loop, Fluxbox is an open-source window manager that was derived from an earlier version of the Blackbox window manager. Particularly, Fluxbox is known for being one of the lightweight but highly customizable window managers.

@ http://www.phoronix.com/scan.php?page=news_item&px=NjY5MA

Me so happy! :D

raVemjr
03-09-2008, 10:44
Porreiro...agora é esperar que chegue ao portage :D

Já agora, alguém sabe qual o comando flux para expandir as janelas todas? Queria fazer uma combinação Win+M, mas só consigo minimizar tudo...

VuDu
03-09-2008, 12:16
Já que reparei que há alguns meses atrás o OpenBox estava na modo nesta secção do fórum, gostava que partilhassem comigo a razão de agora estarem a usar o FluxBox.
Pelo menos já aprendi que a MIT license é muito mais livre do que eu tinha ideia que era :) e que o flux não é ICCCM/EWMH compliant apesar dos seus "irmãos" serem :s

Já agora, aceitam-se apostas para o próximo WM da moda daqui: JWM? FVWM ou um dos filhos dele? :D

CR_
03-09-2008, 12:41
A unica coisa que destoava quando o usava, eram as aplicações para gnome e kde, ke pelas suas origens são feias :P


Isso não é verdade se no caso do GTK (no QT não sei muito bem) colocares um ficheiro .gtkrc-2.0 na home com o tema : gtk-theme-name="TEMA"

esquiso
03-09-2008, 13:25
Porreiro...agora é esperar que chegue ao portage :D

Já agora, alguém sabe qual o comando flux para expandir as janelas todas? Queria fazer uma combinação Win+M, mas só consigo minimizar tudo...

No ficheiro "keys", basta ter algo como "Mod1 m :MaximizeWindow". Podes ler mais sobre os modifiers e vários tipos de acções: http://fluxbox-wiki.org/index.php/Keyboard_shortcuts

Já que reparei que há alguns meses atrás o OpenBox estava na modo nesta secção do fórum, gostava que partilhassem comigo a razão de agora estarem a usar o FluxBox.
Pelo menos já aprendi que a MIT license é muito mais livre do que eu tinha ideia que era :) e que o flux não é ICCCM/EWMH compliant apesar dos seus "irmãos" serem :s

Já agora, aceitam-se apostas para o próximo WM da moda daqui: JWM? FVWM ou um dos filhos dele? :D

"Agora"? Eu sempre estive a usar Fluxbox. ;) E a história é bastante simples: estou mais habituado e já o tenho completamente ao meu gosto.
E quanto à historia do ICCCM/EWMH compilant, a versão 1.1 veio trazer muitas novidades a esse campo. Não é -totalmente-, mas já tem um nível de compatibilidade bastante bom.

neonl
03-09-2008, 13:26
Já que reparei que há alguns meses atrás o OpenBox estava na modo nesta secção do fórum, gostava que partilhassem comigo a razão de agora estarem a usar o FluxBox.
Eu usei durante muito tempo o Openbox [na altura era um bocado (mais) noob] porque não me adaptei ao Fluxbox. Porém, este tem um deifeito - para mim - que é o facto de os temas não serem ficheiros de texto + pixmaps: isto facilita muito a costumização. O Fluxbox também, é muito leve e não uso o Pypanel posto que ele já tem a sua toolbar. O Slit também é uma mais valia mas eu ainda não o 'explorei'.
Pelo menos já aprendi que a MIT license é muito mais livre do que eu tinha ideia que era :) e que o flux não é ICCCM/EWMH compliant apesar dos seus "irmãos" serem :s

Já agora, aceitam-se apostas para o próximo WM da moda daqui: JWM? FVWM ou um dos filhos dele? :D

O FVWM é que eu gostava - o amigo slack_guy é que percebe mais desse (:D). Também tem uma config baseada em ficheiros de texto o que é excelente (o meu WM de eleição, o e17 é uma treta nesse aspecto). Adoro a feature de reduzir janelas a thumbnails e a gestão de desktops virtuais é como a do E que é uma ferramenta quase única. O problema é que não consegui ainda assimiliar o que é que tenho de configurar e como, apesar de até ter uma documentação porreira.

tangram
03-09-2008, 13:30
Porreiro...agora é esperar que chegue ao portage :D

Já agora, alguém sabe qual o comando flux para expandir as janelas todas? Queria fazer uma combinação Win+M, mas só consigo minimizar tudo...

Penso que isto responde às tuas necessidades:

################################################## ################################################## #######################################
# Window Moving/Sizing commands
#
# Controlled by Control Mod1 (and primarly the numeric keypad) for move and Control Mod4 (keypad) for resize
#
################################################## ################################################## #######################################
Control Mod1 f :Fullscreen
Control Mod1 minus :Minimize
Control Mod1 Return :Maximize
Control Mod1 h :MaximizeHorizontal
Control Mod1 v :MaximizeVertical

#Moving
#Control Mod1 KP_Divide :MoveTo 10 10
#Control Mod1 KP_1 :Move -5 +5
#Control Mod1 KP_9 :Move +5 -5
#Control Mod1 KP_7 :Move -5 -5
#Control Mod1 KP_3 :Move +5 +5
#Control Mod1 KP_6 :MoveRight 2
#Control Mod1 KP_4 :MoveLeft 2
#Control Mod1 KP_8 :MoveUp 2
#Control Mod1 KP_2 :MoveDown 2
#Control Mod1 shift KP_6 :MoveRight 10
#Control Mod1 shift KP_4 :MoveLeft 10
#Control Mod1 shift KP_8 :MoveUp 10
#Control Mod1 shift KP_2 :MoveDown 10
#Control Mod1 KP_5 :MacroCmd {MoveTo 15 15} {ResizeTo 1115 810}
#### Alternate moving using key modes. (i.e. Mod4 w(indow) Mod4 m(ove)).MoveMode
Mod4 w Mod4 m :KeyMode MoveMode
MoveMode: None Up :MoveUp 2
MoveMode: None Down :MoveDown 2
MoveMode: None Left :MoveLeft 2
MoveMode: None Right :MoveRight 2
MoveMode: shift Up :MoveUp 10
MoveMode: shift Down :MoveDown 10
MoveMode: shift Left :MoveLeft 10
MoveMode: shift Right :MoveRight 10


#Resizing
#Control Mod4 KP_Divide :ResizeTo 800 600
#Control Mod4 KP_Multiply :ResizeTo 1115 810
#Control Mod4 KP_Subtract :Resize -5 -5
#Control Mod4 KP_Add :Resize +5 +5
#Control Mod4 KP_4 :ResizeHorizontal -2
#Control Mod4 KP_6 :ResizeHorizontal +2
#Control Mod4 KP_8 :ResizeVertical -2
#Control Mod4 KP_2 :ResizeVertical +2
#Control Mod4 shift KP_4 :ResizeHorizontal -10
#Control Mod4 shift KP_6 :ResizeHorizontal +10
#Control Mod4 shift KP_8 :ResizeVertical -10
#Control Mod4 shift KP_2 :ResizeVertical +10
###Alternate resizing using key modes. (i.e. Mod4 w(indow) Mod4 r(esize)). ResizeMode
Mod4 w Mod4 r :KeyMode ResizeMode
ResizeMode: None Up :ResizeVertical -2
ResizeMode: None Down :ResizeVertical +2
ResizeMode: None Left :ResizeHorizontal -2
ResizeMode: None Right :ResizeHorizontal +2
ResizeMode: shift Up :ResizeVertical -10
ResizeMode: shift Down :ResizeVertical +10
ResizeMode: shift Left :ResizeHorizontal -10
ResizeMode: shift Right :ResizeHorizontal +10Quando usava o Fluxbox tinha estes e outros binds.

Espero que ajude.

raVemjr
03-09-2008, 14:38
Não achei praí o comando...o que eu procurava era o contrário do ShowDesktop, para colocar no 'OnDesktop Mod4 m :'

Eu já tinha visto esta wiki (http://fluxbox-wiki.org/index.php/Keyboard_shortcuts), o comando Deiconify, mas como não funcionou na altura, pensei que fosse outro o comando que procurava. Vou mexericar com isso melhor hoje.

Obrigado pela config na mesma ;)

tangram
03-09-2008, 16:02
Aproveito para deixar a minha keys file completa (descaradamente "raptada" dum post num forum algures na net):

#
# This keys file is licensed public domain. There is no support or warranty for it. This file should be considered untested and
# to be used at your own risk.
#
#
# Created November 2007 by Chris Knight
#
################################################## ################################################## #######################################
#
# Lines beginning with '#' are comments and ignored by fluxbox. Alternatively the '!' comment delimiter may be used.
#
# Use 'xev' on the command line to identify the name (or keycode) of the key.
# Use 'xmodmap -m' to identify the various modifiers on your keyboard
#
# The following modifiers are used in this key file:
# Mod1 == Alt
# Mod4 == Windows key
# Control == Ctrl
# shift == Shift
#
# Some notes on the keys use:
# 1) Your milage may vary. **** These keys are for my keyboard. **** While I've tried to avoid special keys,
# your keyboard may be different.
# 2) KP_4 refers to "4"/Left arrow on the keypad. If your keyboard does not have a keypad, you will likely have to remap these keys.
# 3) Several commands may require you to pull in additional programs (e.g. gmessage) or create custom Menu files to work properly
#
# The following commands are not implemented in this keys file:
# 1) SetWorkspaceName # Changes the name of the current workspace
# 2) SetHead <int> # Sets the default head for a window --> xinerama
# 3) NextGroup <by-number> #????
# 4) NextGroup <by-number> #????
# 5) RightWorkspace <by-number> # Switches "number" workspaces to the right
# 6) LeftWorkspace <by-number> # Switches "number" workspaces to the left
# 7) NextWindow <bitmask> # Allows fine tuned control of window switching. See the fluxbox wiki or man page for further info
# 8) PrevWindow <bitmask> # Allows fine tuned control of window switching. See the fluxbox wiki or man page for further info
# 9) HideMenu # ????
#
# Commands with 'osdctl' in them require the utility osdsh to be installed, and for osdsh to be running.
#
################################################## ################################################## #######################################


#Control-Escape will turn off all key bindings in this file, until Control-Escape is pressed again. Note the one exception for this is the root menu.
#Control Escape :MacroCmd {Exec osdctl -s "Keys off,"} {keyMode KeysOff Control Escape}
Control Escape :MacroCmd {keyMode KeysOff Control Escape}
KeysOff: Control Mod4 Mod1 Mouse3 :rootMenu

################################################## ################################################## #######################################
# Desktop Actions
#
# Controlled by mouse clicks/wheel on desktop
#
# OnDesktop means a mouse press on the desktop
# Mouse 1=left click, 2=middle click, 3=right click, 4=mouse wheel down, 5=mouse wheel up
################################################## ################################################## #######################################

OnDesktop Mouse1 :hideMenus
OnDesktop Mouse2 :workspaceMenu
OnDesktop Mouse3 :rootMenu
OnDesktop Mouse4 :nextWorkspace
OnDesktop Mouse5 :prevWorkspace

################################################## ################################################## #######################################
# Fluxbox Window Manager commands
#
# Controlled mostly by Mod4 and Shift keys
#
# Restart takes optional <argument> of which window manager to restart to (default is fluxbox, of course)
# Reload style allows you to make changes to the current style and then quickly reload it.
################################################## ################################################## #######################################

Mod4 shift r :Restart
Mod4 shift q :Quit
Mod4 shift e :Exit
Mod4 shift Escape :MacroCmd {Reconfigure}
#Mod4 shift 1 :MacroCmd {SetStyle /usr/local/share/fluxbox/styles/bora_black} {Exec fbsetbg ~/Wallpapers/wallpaper102.jpg}
#Mod4 shift 2 :MacroCmd {SetStyle /usr/local/share/fluxbox/styles/bloe} {Exec fbsetbg ~/Wallpapers/Lion-clear.jpg}
#Mod4 shift Delete :MacroCmd {Exec osdctl -s "Reloading current style,"} {ReloadStyle}
Mod4 shift m :RootMenu
Mod4 Mouse3 :RootMenu
Mod4 shift w :WorkspaceMenu
Mod4 shift t :WindowMenu

################################################## ################################################## #######################################
# Window commands
#
# Controlled (mostly) by Mod4 and Mod1 keys
################################################## ################################################## #######################################

#Window Menu commands (Controlled by Mod4 <Mod1>)
Mod1 F4 :Close
Mod4 Mod1 Delete :KillWindow
Mod4 Mod1 space :Shade
Mod4 Mod1 s :Stick
Mod4 Mod1 0 :ToggleDecor

#Send-to (Controlled by Mod4 Mod1 Fn)
Mod4 Mod1 F1 :SendToWorkspace 1
Mod4 Mod1 F2 :SendToWorkspace 2
Mod4 Mod1 F3 :SendToWorkspace 3
Mod4 Mod1 F4 :SendToWorkspace 4
Mod4 Mod1 F5 :SendToWorkspace 5
Mod4 Mod1 F6 :SendToWorkspace 6
Mod4 Mod1 shift F2 :SendToNextWorkspace 1
Mod4 Mod1 shift F1 :SendToPrevWorkspace -1

#Take-to (Controlled by Mod4 Fn)
Mod4 F1 :TakeToWorkspace 1
Mod4 F2 :TakeToWorkspace 2
Mod4 F3 :TakeToWorkspace 3
Mod4 F4 :TakeToWorkspace 4
Mod4 F5 :TakeToWorkspace 5
Mod4 F6 :TakeToWorkspace 6
Mod4 shift F6 :TakeToNextWorkspace 1
Mod4 shift F5 :TakeToPrevWorkspace -1

#Tabs (Controlled by Mod4 Mod1)
Mod4 Mod1 F9 :PrevTab
Mod4 Mod1 F10 :NextTab
Mod4 Mod1 F11 :MoveTabLeft
Mod4 Mod1 F12 :MoveTabRight
Mod4 Mod1 Escape :DetachClient

################################################## ################################################## #######################################
# Window Layer/Focus/Alpha commands
#
# Controlled (mostly) by Mod4 Mod1
#
################################################## ################################################## #######################################
Mod4 Mod1 End :Lower
Mod4 Mod1 Home :Raise
Mod4 Mod1 comma :LowerLayer
Mod4 Mod1 period :RaiseLayer
Mod4 Mod1 Up :FocusUp
Mod4 Mod1 Down :FocusDown
Mod4 Mod1 Left :FocusLeft
Mod4 Mod1 Right :FocusRight
Mod4 Mod1 bracketright :SetAlpha +5 +5
Mod4 Mod1 bracketleft :SetAlpha -5 -5
Mod4 Right :NextWindow
Mod4 Left :PrevWindow
Mod1 Tab :NextWindow

################################################## ################################################## #######################################
# Window Moving/Sizing commands
#
# Controlled by Control Mod1 (and primarly the numeric keypad) for move and Control Mod4 (keypad) for resize
#
################################################## ################################################## #######################################
Control Mod1 f :Fullscreen
Control Mod1 minus :Minimize
Control Mod1 Return :Maximize
Control Mod1 h :MaximizeHorizontal
Control Mod1 v :MaximizeVertical

#Moving
#Control Mod1 KP_Divide :MoveTo 10 10
#Control Mod1 KP_1 :Move -5 +5
#Control Mod1 KP_9 :Move +5 -5
#Control Mod1 KP_7 :Move -5 -5
#Control Mod1 KP_3 :Move +5 +5
#Control Mod1 KP_6 :MoveRight 2
#Control Mod1 KP_4 :MoveLeft 2
#Control Mod1 KP_8 :MoveUp 2
#Control Mod1 KP_2 :MoveDown 2
#Control Mod1 shift KP_6 :MoveRight 10
#Control Mod1 shift KP_4 :MoveLeft 10
#Control Mod1 shift KP_8 :MoveUp 10
#Control Mod1 shift KP_2 :MoveDown 10
#Control Mod1 KP_5 :MacroCmd {MoveTo 15 15} {ResizeTo 1115 810}
#### Alternate moving using key modes. (i.e. Mod4 w(indow) Mod4 m(ove)).MoveMode
Mod4 w Mod4 m :KeyMode MoveMode
MoveMode: None Up :MoveUp 2
MoveMode: None Down :MoveDown 2
MoveMode: None Left :MoveLeft 2
MoveMode: None Right :MoveRight 2
MoveMode: shift Up :MoveUp 10
MoveMode: shift Down :MoveDown 10
MoveMode: shift Left :MoveLeft 10
MoveMode: shift Right :MoveRight 10


#Resizing
#Control Mod4 KP_Divide :ResizeTo 800 600
#Control Mod4 KP_Multiply :ResizeTo 1115 810
#Control Mod4 KP_Subtract :Resize -5 -5
#Control Mod4 KP_Add :Resize +5 +5
#Control Mod4 KP_4 :ResizeHorizontal -2
#Control Mod4 KP_6 :ResizeHorizontal +2
#Control Mod4 KP_8 :ResizeVertical -2
#Control Mod4 KP_2 :ResizeVertical +2
#Control Mod4 shift KP_4 :ResizeHorizontal -10
#Control Mod4 shift KP_6 :ResizeHorizontal +10
#Control Mod4 shift KP_8 :ResizeVertical -10
#Control Mod4 shift KP_2 :ResizeVertical +10
###Alternate resizing using key modes. (i.e. Mod4 w(indow) Mod4 r(esize)). ResizeMode
Mod4 w Mod4 r :KeyMode ResizeMode
ResizeMode: None Up :ResizeVertical -2
ResizeMode: None Down :ResizeVertical +2
ResizeMode: None Left :ResizeHorizontal -2
ResizeMode: None Right :ResizeHorizontal +2
ResizeMode: shift Up :ResizeVertical -10
ResizeMode: shift Down :ResizeVertical +10
ResizeMode: shift Left :ResizeHorizontal -10
ResizeMode: shift Right :ResizeHorizontal +10

################################################## ################################################## #######################################
# Workspace commands
#
# Controlled by <Control> Mod4 keys
# Arrange Windows will tile windows vertically
################################################## ################################################## #######################################

Control Mod4 Right :NextWorkspace
Control Mod4 Left :PrevWorkspace
Mod4 1 :Workspace 1
Mod4 2 :Workspace 2
Mod4 3 :Workspace 3
Mod4 4 :Workspace 4
Mod4 5 :Workspace 5
Mod4 6 :Workspace 6
Control Mod4 a :ArrangeWindows
Control Mod4 s :ShowDesktop
Control Mod4 Up :Deiconify LastWorkspace
Control Mod4 Down :Deiconify All OriginQuiet
#Deiconify Last OriginQuiet # Uniconifies minimized windows
#Deiconify All OriginQuiet # Uniconifies all minimized windows

################################################## ################################################## #######################################
################################################## ################################################## #######################################
################################################## ################################################## #######################################
###
### Custom actions
###
################################################## ################################################## #######################################
################################################## ################################################## #######################################
################################################## ################################################## #######################################

################################################## ################################################## #######################################
# Volume
#
# Will lower or raise volume by 5%. The third key binding will toggle mute on and off.
# Note that this key binding is specific to my multi-media keyboard. Check 'xev' output for your specific key
################################################## ################################################## #######################################

#None XF86AudioLowerVolume :Exec amixer sset Master,0 5%-
#None XF86AudioRaiseVolume :Exec amixer sset Master,0 5%+
#None XF86AudioMute :Exec amixer sset Master,0 toggle

################################################## ################################################## #######################################
# Music Player.
#
# Amarok. '-f' will forward one track. '-r' will reverse one track. '--pause' will toggle playback pause
################################################## ################################################## #######################################
Control Mod4 Mod1 Right :Exec amarok -f
Control Mod4 Mod1 Left :Exec amarok -r
Control Mod4 Mod1 Down :Exec amarok --pause
#None Menu :CustomMenu ~/.fluxbox/customMenus/Amarok

################################################## ################################################## #######################################
# Show/Edit fluxbox files.
# Show (Mod4 s ...) Read-only display
# Edit (Mod4 e ...) Edit in nano. Terminal running will close after exiting nano.
# Alternatively, you could use gedit:
# Mod4 e Mod4 k :Exec gedit ~/.fluxbox/keys
#
# This shows an emacs style binding of pressing one key sequence and then the next, as well as using environment variables
# Show commands require 'gmessage' to be installed (sudo aptitude install gmessage)
################################################## ################################################## #######################################
#Mod4 s Mod4 k :Exec gmessage --file ~/.fluxbox/keys -buttons "Close" -font "monospace 8" -geometry 500x800 -default "Close" -center
#Mod4 s Mod4 a :Exec gmessage --file ~/.fluxbox/apps -buttons "Close" -font "monospace 8" -geometry 500x800 -default "Close" -center
#Mod4 s Mod4 m :Exec gmessage --file ~/.fluxbox/menu -buttons "Close" -font "monospace 8" -geometry 800x800 -default "Close" -center
#Mod4 s Mod4 i :Exec gmessage --file ~/.fluxbox/init -buttons "Close" -font "monospace 8" -geometry 500x800 -default "Close" -center
#Mod4 s Mod4 o :Exec gmessage --file ~/.fluxbox/overlay -buttons "Close" -font "monospace 8" -geometry 800x800 -default "Close" -center
#Mod4 e Mod4 k :Exec $CONSOLE nano ~/.fluxbox/keys
#Mod4 e Mod4 a :Exec $CONSOLE nano ~/.fluxbox/apps
#Mod4 e Mod4 m :Exec $CONSOLE nano ~/.fluxbox/menu
#Mod4 e Mod4 i :Exec $CONSOLE nano ~/.fluxbox/init
#Mod4 e Mod4 o :Exec $CONSOLE nano ~/.fluxbox/overlay

################################################## ################################################## #######################################
# File Manager (Mod4 f Mod4 ...)
#
# Thunar is used in the example below, but others will work too
# Custom menu uses a menu of pre-defined locations to open in Thunar (e.g. home, music, video, etc.)
# Mod4 f Mod4 <1..9> are individual key bindings to specific locations
################################################## ################################################## #######################################
#Control Menu :CustomMenu ~/.fluxbox/customMenus/Thunar
Mod4 f Mod4 1 :Exec Thunar ~/.fluxbox
Mod4 f Mod4 2 :Exec Thunar /usr/bin
Mod4 f Mod4 3 :Exec Thunar ~/downloads
#Mod4 f Mod4 4 :Exec Thunar <another-location>
#etc...
#Prepopulate fbrun with text "Thunar ". Simply supply the directory to go to
Mod4 f Mod4 r :Exec fbrun -text "Thunar "

################################################## ################################################## #######################################
# Common Programs (Mod4 a Mod4 ...) ('a' stands for application)
################################################## ################################################## #######################################
Mod4 a Mod4 f :Exec firefox
Mod4 a Mod4 t :Exec Thunar
Mod4 a Mod4 n :ExecCommand nautilus --no-desktop --browser
Mod4 a Mod4 k :ExecCommand kfmclient openProfile filemanagement
#Mod4 k :ExecCommand kfmclient openProfile webbrowsing
Mod4 a Mod4 o :Exec opera
#Mod4 a Mod4 x :Exec xmms
Mod4 a Mod4 a :Exec amarok
#Mod4 a Mod4 m :Exec mozilla-thunderbird
#Mod4 t :Exec Terminal
Mod4 t :Exec urxvt
Mod4 r :Exec fbrun
Mod4 c :ToggleCmd {Exec conky} {Exec pkill conky}
None F12 :ExecCommand urxvt -T 'Top' -e top

################################################## ################################################## #######################################
# Session Menu
#
# Offers menu with choices lock session, reboot, logout, and shutdown
################################################## ################################################## #######################################
#Control Mod1 s :CustomMenu ~/.fluxbox/customMenus/session

################################################## ################################################## #######################################
# Screen Shots
#
# These will create a screenshot in your ~/misc directory. ("mkdir ~/misc" if you need to create one)
# The first command will take a screenshot of your entire desktop
# The second command will take a screenshot of the active window only
################################################## ################################################## #######################################
None Print :Exec import -window root ~/screenshots/screen$(date +%F_%H.%M).png
Mod4 Print :Exec import -frame -window $(xprop _NET_ACTIVE_WINDOW -root | awk '{print $5}') ~/screenshots/window$(date +%F_%H.%M).png

################################################## ################################################## #######################################
# Misc actions
################################################## ################################################## #######################################

#Toggle between empty workspace (i.e. desktop) and open windows
Mod4 d :ToggleCmd {ShowDesktop} {DeIconify all originquiet}

#This is currently broken as Reconfigure resets the Toggle, so will never reach the 'other' toggle.
#Mod4 v :ToggleCmd (MacroCmd (SetResourceValue session.screen0.toolbar.visible true) (Reconfigure)) (MacroCmd (SetResourceValue session.screen0.toolbar.visible false) (Reconfigure))

#Hide/Show toolbar with 2 macro commands until Toggle/Reconfigure bug is fixed
Mod4 comma :MacroCmd {SetResourceValue session.screen0.toolbar.visible false} {Reconfigure}
Mod4 period :MacroCmd {SetResourceValue session.screen0.toolbar.visible true} {Reconfigure}

#Turn monitor off
None Pause :Exec xset dpms force off

#Print Calendar for this month (KP_1), prev/this/next month (KP_2), or for the year (KP_3)
#Mod4 KP_1 :Exec zenity --calendar --text=""
#Mod4 KP_2 :Exec (date +'Today: %A %b %d';echo;cal -3)| gmessage --file - -buttons "GTK_STOCK_CLOSE" -font "monospace 8" -geometry 505x229 --borderless -default "GTK_STOCK_CLOSE" -center
#Mod4 KP_3 :Exec (date +'Today: %A %b %d';echo;cal -y)| gmessage --file - -buttons "GTK_STOCK_CLOSE" -font "monospace 8" -geometry 505x570 --borderless -default "GTK_STOCK_CLOSE" -center
#Mod4 KP_5 :Exec osdctl -s "$(date +'%A %d %b %H:%M,')"


Tem montes de preciosidades. :D