diff options
author | Tom Willemse | 2013-08-13 23:15:36 +0200 |
---|---|---|
committer | Tom Willemse | 2013-08-13 23:15:36 +0200 |
commit | ef3bd3522927790760a34242350731ebcbcd8249 (patch) | |
tree | 59d75eefbaa64113f7bc9d98d9f7b6745a8a4ba8 | |
download | xmonad-master.tar.gz xmonad-master.zip |
-rw-r--r-- | .xmonad/.gitignore | 3 | ||||
-rw-r--r-- | .xmonad/Makefile | 4 | ||||
-rw-r--r-- | .xmonad/xmonad.hs | 59 |
3 files changed, 66 insertions, 0 deletions
diff --git a/.xmonad/.gitignore b/.xmonad/.gitignore new file mode 100644 index 0000000..11a024e --- /dev/null +++ b/.xmonad/.gitignore @@ -0,0 +1,3 @@ +*.o +xmonad-x86_64-linux +xmonad.hi diff --git a/.xmonad/Makefile b/.xmonad/Makefile new file mode 100644 index 0000000..bb0dcd9 --- /dev/null +++ b/.xmonad/Makefile @@ -0,0 +1,4 @@ +GHC := ghc + +xmonad-x86_64-linux: xmonad.hs + $(GHC) --make $^ -i -ilib -fforce-recomp -main-s main -v9 -o $@ diff --git a/.xmonad/xmonad.hs b/.xmonad/xmonad.hs new file mode 100644 index 0000000..617ab53 --- /dev/null +++ b/.xmonad/xmonad.hs @@ -0,0 +1,59 @@ +-- +-- It overrides a few basic settings, reusing all other defaults. +-- + +import XMonad +import XMonad.Actions.WindowGo +import XMonad.Hooks.FadeInactive +import XMonad.Hooks.ManageDocks +import XMonad.Hooks.ManageHelpers +import XMonad.Util.EZConfig + +import qualified XMonad.StackSet as W + +myLogHook :: X () +myLogHook = fadeOutLogHook fadeRules + +fadeRules :: Query Rational +fadeRules = do + fullscreen <- isFullscreen + conkeror <- className =? "Conkeror" + chromium <- className =? "Chromium" + mplayer <- className =? "MPlayer" + return $ case () of _ | fullscreen -> 1 + | conkeror -> 0.95 + | chromium -> 1 + | mplayer -> 1 + | otherwise -> 0.9 + +main = xmonad $ defaultConfig + { terminal = "urxvt" + , focusFollowsMouse = False + , clickJustFocuses = False + , modMask = mod4Mask + , layoutHook = avoidStruts $ layoutHook defaultConfig + , logHook = myLogHook + , manageHook = manageHook defaultConfig <+> manageDocks } + `additionalKeysP` + [ + ("C-z ,", screenWorkspace 0 >>= flip whenJust (windows . W.view)), + ("C-z .", screenWorkspace 1 >>= flip whenJust (windows . W.view)), + ("C-z S-c", spawn "urxvt"), + ("C-z S-e", spawn "editor"), + ("C-z c", runOrRaiseNext "urxvt" (className =? "URxvt")), + ("C-z e", runOrRaiseNext "editor" (className =? "Emacs")), + ("C-z w", runOrRaiseNext "conkeror" (className =? "Conkeror")), + ("M-S-1", spawn "dmenu_run"), + ("M-n", windows W.focusDown), + ("M-p", windows W.focusUp), + ("M1-C-l", spawn "i3lock -c 000000"), + ("<XF86AudioPlay>", spawn "mpc toggle"), + ("<XF86AudioStop>", spawn "mcp stop"), + ("<XF86AudioMute>", spawn "amixer sset Master toggle"), + ("<XF86AudioLowerVolume>", spawn "mpc volume -5"), + ("<XF86AudioRaiseVolume>", spawn "mpc volume +5"), + ("<XF86AudioPrev>", spawn "mpc prev"), + ("<XF86AudioNext>", spawn "mpc next") + ] + `removeKeysP` + [ ("M-j"), ("M-k") ] |