xmonad.hs bindings for moving around

This commit is contained in:
Adrian Kreher 2010-04-23 15:17:31 -05:00
parent 8092c4c0f4
commit 34562f779c

View file

@ -1,9 +1,13 @@
import XMonad import XMonad
import qualified XMonad.StackSet as W import qualified XMonad.StackSet as W
import XMonad.Actions.CycleWS
import XMonad.Layout.Grid import XMonad.Layout.Grid
import XMonad.Layout.Tabbed
import XMonad.Layout.NoBorders(smartBorders) import XMonad.Layout.NoBorders(smartBorders)
import XMonad.Hooks.UrgencyHook
import XMonad.Hooks.DynamicLog import XMonad.Hooks.DynamicLog
import XMonad.Hooks.ManageDocks import XMonad.Hooks.ManageDocks
@ -17,7 +21,12 @@ import XMonad.Prompt.Window
import System.IO(hPutStrLn) import System.IO(hPutStrLn)
myLayoutHook = tiled ||| Mirror tiled ||| Grid ||| Full -- Things that should always float
myFloatHook = composeAll [
className =? "qemu" --> doFloat
]
myLayoutHook = tiled ||| Mirror tiled ||| Grid ||| simpleTabbed
where where
-- default tiling algorithm partitions the screen into two panes -- default tiling algorithm partitions the screen into two panes
tiled = Tall nmaster delta ratio tiled = Tall nmaster delta ratio
@ -34,10 +43,11 @@ myLayoutHook = tiled ||| Mirror tiled ||| Grid ||| Full
main = do main = do
xmproc <- spawnPipe "xmobar" xmproc <- spawnPipe "xmobar"
xmonad $ defaultConfig xmonad $ defaultConfig
{ manageHook = manageDocks <+> manageHook defaultConfig <+> scratchpadManageHook (W.RationalRect 0.25 0.25 0.5 0.5) { manageHook = manageDocks <+> myFloatHook <+> manageHook defaultConfig <+> scratchpadManageHook (W.RationalRect 0.25 0.25 0.5 0.5)
, layoutHook = avoidStruts $ smartBorders $ myLayoutHook , layoutHook = avoidStruts $ smartBorders $ myLayoutHook
, logHook = dynamicLogWithPP $ xmobarPP , logHook = dynamicLogWithPP $ xmobarPP
{ ppOutput = hPutStrLn xmproc { ppOutput = hPutStrLn xmproc
, ppUrgent = xmobarColor "#cc0000" "" . wrap "**" "**"
, ppTitle = xmobarColor "#8AE234" "" , ppTitle = xmobarColor "#8AE234" ""
} }
} }
@ -47,5 +57,16 @@ main = do
, ("M-a", windowPromptBring defaultXPConfig { position = Top }) , ("M-a", windowPromptBring defaultXPConfig { position = Top })
, ("M-x", sendMessage ToggleStruts) , ("M-x", sendMessage ToggleStruts)
, ("M-S-l", spawn "~/bin/lock") , ("M-S-l", spawn "~/bin/lock")
, ("M-<Left>", moveTo Prev HiddenNonEmptyWS)
, ("M-S-<Left>", shiftToPrev)
, ("M-<Right>", moveTo Next HiddenNonEmptyWS)
, ("M-S-<Right>", shiftToNext)
, ("M-<Up>", windows W.focusUp)
, ("M-S-<Up>", windows W.swapUp)
, ("M-<Down>", windows W.focusDown)
, ("M-S-<Down>", windows W.swapDown)
, ("M-`", toggleWS)
, ("M-s", moveTo Next EmptyWS)
, ("M-S-s", shiftTo Next EmptyWS)
, ("M-g", scratchpadSpawnAction defaultConfig) , ("M-g", scratchpadSpawnAction defaultConfig)
] ]