# n0nr4nd0m fluxbox key configuration # # NOTE: This key config attempts to make extensive use of keychaining # to achieve an almost modal control system. It also relies heavily # on the keyboard and especially on the WinKey (Mod4) and on # mnemonic keybndings, EG Mod4 + e = execute something. # click on the desktop to get menus OnDesktop Mouse1 :HideMenus OnDesktop Mouse2 :WorkspaceMenu OnDesktop Mouse3 :RootMenu # scroll on the desktop to change workspaces OnDesktop Mouse4 :PrevWorkspace OnDesktop Mouse5 :NextWorkspace # scroll on the toolbar to change current window OnToolbar Mouse4 :PrevWindow {static groups} (iconhidden=no) OnToolbar Mouse5 :NextWindow {static groups} (iconhidden=no) # alt + left/right click to move/resize a window OnWindow Mod1 Mouse1 :MacroCmd {Raise} {Focus} {StartMoving} OnWindowBorder Move1 :StartMoving OnWindow Mod1 Mouse3 :MacroCmd {Raise} {Focus} {StartResizing NearestCorner} OnLeftGrip Move1 :StartResizing bottomleft OnRightGrip Move1 :StartResizing bottomright # alt + middle click to lower the window OnWindow Mod1 Mouse2 :Lower # control-click a window's titlebar and drag to attach windows OnTitlebar Control Mouse1 :StartTabbing # double click on the titlebar to shade OnTitlebar Double Mouse1 :Shade # left click on the titlebar to move the window OnTitlebar Mouse1 :MacroCmd {Raise} {Focus} {ActivateTab} OnTitlebar Move1 :StartMoving # middle click on the titlebar to lower OnTitlebar Mouse2 :Lower # right click on the titlebar for a menu of options OnTitlebar Mouse3 :WindowMenu # execute some applications Mod4 Return :Exec xterm # winkey + e + [key] Mod4 e a :Exec abiword Mod4 e b :Exec fbsetbg -f -r ~/.wallpapers Mod4 e f :CommandDialog Mod4 e m :Exec xterm -e cmus Mod4 e p :Exec fbrun Mod4 e t :Exec xterm -e top Mod4 e v :Exec xterm -e vifm Mod4 e w :Exec firefox # select a window Mod4 h :FocusLeft Mod4 j :FocusDown Mod4 k :FocusUp Mod4 l :FocusRight # alt-tab Mod1 Tab :NextWindow {groups} (workspace=[current]) Mod1 Shift Tab :PrevWindow {groups} (workspace=[current]) # cycle through tabs in the current window Mod4 Tab :NextTab Mod4 Shift Tab :PrevTab # go to a specific tab in the current window Mod4 F1 :Tab 1 Mod4 F2 :Tab 2 Mod4 F3 :Tab 3 Mod4 F4 :Tab 4 Mod4 F5 :Tab 5 Mod4 F6 :Tab 6 Mod4 F7 :Tab 7 Mod4 F8 :Tab 8 Mod4 F9 :Tab 9 # current window commands Mod4 w Shift l :LowerLayer Mod4 w Shift r :RaiseLayer Mod4 w a h :ArrangeWindowsHorizontal Mod4 w a v :ArrangeWindowsVertical Mod4 w d :ToggleDecor Mod4 w f :Fullscreen Mod4 w h :MaximizeHorizontal Mod4 w i :Minimize Mod4 w k :Kill Mod4 w l :Lower Mod4 w m :Maximize Mod4 w o :Stick Mod4 w q :Close Mod4 w r :Raise Mod4 w s :Shade Mod4 w t :ArrangeWindows Mod4 w v :MaximizeVertical # tab commands Mod4 t d :DetachClient # tab all xterms Mod4 t t :Attach (Name=xterm) # tab all windows currently open on all desktops Mod4 t s :Attach (Name=[current]) # tab all windows on current desktop Mod4 t w :Attach (Workspace=[current]) # resize windows by entering a resize mode then pressing keys # enter ResizeMode Mod4 r :KeyMode ResizeMode # resize window more ResizeMode: None k :ResizeVertical -10% ResizeMode: None j :ResizeVertical +10% ResizeMode: None h :ResizeHorizontal -10% ResizeMode: None l :ResizeHorizontal +10% # resize window less ResizeMode: None Shift k :ResizeVertical -1 ResizeMode: None Shift j :ResizeVertical +1 ResizeMode: None Shift h :ResizeHorizontal -1 ResizeMode: None Shift l :ResizeHorizontal +1 # enter MoveMode Mod4 m :KeyMode MoveMode # move window more MoveMode: None k :MoveUp 10% MoveMode: None j :MoveDown 10% MoveMode: None h :MoveLeft 10% MoveMode: None l :MoveRight 10% # move window less MoveMode: None Shift k :MoveUp 1 MoveMode: None Shift j :MoveDown 1 MoveMode: None Shift h :MoveLeft 1 MoveMode: None Shift l :MoveRight 1 # pseudo tiling by moving widows to non-overlapping locations MoveMode: None 1 :MacroCmd {MoveTo 0% 50%} {ResizeTo 50% 50%} MoveMode: None 2 :MacroCmd {MoveTo 0% 50%} {ResizeTo 100% 50%} MoveMode: None 3 :MacroCmd {MoveTo 50% 50%} {ResizeTo 50% 50%} MoveMode: None 4 :MacroCmd {MoveTo 0% 0%} {ResizeTo 50% 100%} MoveMode: None 5 :MacroCmd {MoveTo 0% 0%} {ResizeTo 100% 100%} MoveMode: None 6 :MacroCmd {MoveTo 50% 0%} {ResizeTo 50% 100%} MoveMode: None 7 :MacroCmd {MoveTo 0% 0%} {ResizeTo 50% 50%} MoveMode: None 8 :MacroCmd {MoveTo 0% 0%} {ResizeTo 100% 50%} MoveMode: None 9 :MacroCmd {MoveTo 50% 0%} {ResizeTo 100% 50%} # control fluxbox Mod4 d :ShowDesktop Mod4 f q :Exit Mod4 f r :Reconfigure Mod4 f Shift r :Restart # change to previous/next workspace Mod4 Left :PrevWorkspace Mod4 Right :NextWorkspace # send the current window to previous/next workspace Mod4 Down :SendToPrevWorkspace Mod4 Up :SendToNextWorkspace # send the current window and follow it to previous/next workspace Mod4 Shift Left :TakeToPrevWorkspace Mod4 Shift Right :TakeToNextWorkspace # change to a specific workspace Mod4 1 :Workspace 1 Mod4 2 :Workspace 2 Mod4 3 :Workspace 3 Mod4 4 :Workspace 4 Mod4 5 :Workspace 5 Mod4 6 :Workspace 6 Mod4 7 :Workspace 7 Mod4 8 :Workspace 8 Mod4 9 :Workspace 9 Mod4 0 :Workspace 10 # send the current window to a specific workspace Mod4 Control 1 :SendToWorkspace 1 Mod4 Control 2 :SendToWorkspace 2 Mod4 Control 3 :SendToWorkspace 3 Mod4 Control 4 :SendToWorkspace 4 Mod4 Control 5 :SendToWorkspace 5 Mod4 Control 6 :SendToWorkspace 6 Mod4 Control 7 :SendToWorkspace 7 Mod4 Control 8 :SendToWorkspace 8 Mod4 Control 9 :SendToWorkspace 9 Mod4 Control 0 :SendToWorkspace 10 # send the current window and change to a specific workspace Mod4 Shift 1 :TakeToWorkspace 1 Mod4 Shift 2 :TakeToWorkspace 2 Mod4 Shift 3 :TakeToWorkspace 3 Mod4 Shift 4 :TakeToWorkspace 4 Mod4 Shift 5 :TakeToWorkspace 5 Mod4 Shift 6 :TakeToWorkspace 6 Mod4 Shift 7 :TakeToWorkspace 7 Mod4 Shift 8 :TakeToWorkspace 8 Mod4 Shift 9 :TakeToWorkspace 9 Mod4 Shift 0 :TakeToWorkspace 10 # volume settings, using common keycodes # if these don't work, use xev to find out your real keycodes 176 :Exec amixer sset Master,0 1+ 174 :Exec amixer sset Master,0 1- 160 :Exec amixer sset Master,0 toggle