Advertisement
Alie

XMonad_Theme

Dec 30th, 2011
229
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. import XMonad
  2. import XMonad.Util.EZConfig
  3. import System.IO(hPutStrLn)
  4. import System.Exit
  5. import XMonad.Layout.Named
  6. import XMonad hiding ( (|||) )
  7. import XMonad.Layout.LayoutCombinators hiding ( (|||) )
  8. import XMonad.Layout.Master
  9. import XMonad.Layout.Grid
  10. import qualified XMonad.StackSet as W
  11. import qualified Data.Map as M
  12. import XMonad.Layout.PerWorkspace
  13. import XMonad.Actions.CycleWS
  14. import XMonad.Hooks.DynamicLog
  15. import XMonad.Layout.NoBorders
  16.  
  17. -------------------------------------------------------
  18. -- Custom options --
  19. myModMask       = mod4Mask
  20. myNumlockMask   = mod2Mask
  21. myTerminal      = "xterm"
  22. myWorkspaces    = [ "conf"
  23.                   , "www"
  24.                   , "hex"
  25.                   , "sim"
  26.                   , "media"
  27.                   ]
  28.  
  29. myBorderWidth = 1
  30. myFocusFollowsMouse = True
  31. myNormalBorderColor = "#dddddd"
  32. myFocusedBorderColor = "#eeeeee"
  33.  
  34. -- layout
  35. myLayout = onWorkspace "conf" (complex ||| noBorders Full)
  36.          $ onWorkspace "www" (float ||| Full)
  37.          $ onWorkspace "hex" (duplex ||| Full)
  38.          $ Full
  39.   where
  40.      -- complex layout
  41.      complex = mastered (1/100) (9/17) $ Grid
  42.  
  43.      -- float layout
  44.      float = ((Tall 1 (1/100) (8/9)) ****//*** (Tall 0 (1/100) (1/2)))
  45.  
  46.      -- duplex layout
  47.      duplex = mastered (1/100) (1/2) $ Grid
  48. -- hooks
  49. myManageHook = composeAll
  50.         [ className =? "MPlayer"        --> doFloat
  51.         , className =? "Gimp"           --> doFloat
  52.         , resource  =? "desktop_window" --> doIgnore
  53.         , resource  =? "kdesktop"       --> doIgnore
  54.         , className =? "Firefox"        --> doF (W.shift "www")
  55.         , className =? "Downloads"      --> doFloat
  56.         , className =? "XTerm"          --> doF (W.shift "conf")
  57.         , className =? "wwwterm"        --> doF (W.shift "www")
  58.         , className =? "hexeditor"      --> doF (W.shift "hex")
  59.         , className =? "Skype"          --> doF (W.shift "sim")
  60.         ]
  61. myLogHook = return ()
  62.  
  63. myStartupHook = return ()
  64.  
  65.  
  66. -------------------------------------------------------
  67. -- Default options --
  68. main = xmonad $ myConfig
  69. myConfig = defaultConfig
  70.                 {
  71.         terminal           = myTerminal,
  72.         focusFollowsMouse  = myFocusFollowsMouse,
  73.         borderWidth        = myBorderWidth,
  74.         modMask            = myModMask,
  75.         numlockMask        = myNumlockMask,
  76.         workspaces         = myWorkspaces,
  77.         normalBorderColor  = myNormalBorderColor,
  78.         focusedBorderColor = myFocusedBorderColor,
  79.         layoutHook         = myLayout,
  80.         manageHook         = myManageHook,
  81.         logHook            = myLogHook,
  82.         startupHook        = myStartupHook
  83.         }
  84.         `additionalKeysP`
  85.          [ ("M1-<F1>", spawn "xterm -fa 'DroidSansMono' -fs 9 -foreground white -background gray7")
  86.          , ("M-S-<F1>", spawn "xterm -fa 'DroidSansMono' -fs 9 -foreground white -background grey60 -class wwwterm")
  87.          , ("M1-<F3>", spawn "xterm -fa 'DroidSansMono' -fs 9 -foreground white -background gray7 -class hexeditor")
  88.          , ("M1-<F4>", kill)
  89.          , ("M1-<F8>", spawn "schroot -p skype")
  90.          , ("M1-<F10>", spawn "firefox")
  91.          , ("<F12>", spawn "scrot")
  92.          , ("M-S-<Esc>", spawn "xmonad --recompile; xmonad --restart")
  93.          , ("M-<Esc>", io (exitWith ExitSuccess))
  94.          , ("M-<F11>", sendMessage $ JumpToLayout "Full")
  95.          , ("M-S <F11>", sendMessage $ JumpToLayout "complex")
  96. -- multimedia keys
  97.          , ("<XF86AudioRaiseVolume>", spawn "amixer -- sset Master playback unmute ; amixer -- sset Master playback 2dB+")
  98.          , ("<XF86AudioLowerVolume>", spawn "amixer -- sset Master playback 1dB-")
  99.          , ("<XF86AudioMute>", spawn "amixer -- sset Master playback mute")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement