From de0ac7e06e82aecb9a3c79dbb0a60adeec544b2e Mon Sep 17 00:00:00 2001 From: Tom Willemsen Date: Fri, 15 Feb 2013 00:35:52 +0100 Subject: Add XMonad config --- xmonad/.gitignore | 3 +++ xmonad/Makefile | 10 ++++++++++ xmonad/xmonad.hs | 48 ++++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 61 insertions(+) create mode 100644 xmonad/.gitignore create mode 100644 xmonad/Makefile create mode 100644 xmonad/xmonad.hs (limited to 'xmonad') 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..9b8d3c3 --- /dev/null +++ b/xmonad/Makefile @@ -0,0 +1,10 @@ +DESTDIR := $(DESTDIR)/.xmonad +objects=xmonad-x86_64-linux xmonad.hs + +GHC := ghc + +include ../dotfiles.mk + +xmonad-x86_64-linux: xmonad.hs + $(GHC) --make $^ -i -ilib -fforce-recomp -main-is main -v0 -o $@ +install-xmonad-x86_64-linux: MODE=744 diff --git a/xmonad/xmonad.hs b/xmonad/xmonad.hs new file mode 100644 index 0000000..40ec269 --- /dev/null +++ b/xmonad/xmonad.hs @@ -0,0 +1,48 @@ +-- +-- 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" + return $ case () of _ | fullscreen -> 1 + | conkeror -> 0.95 + | 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 "emacsclient -ca emacs"), + ("C-z c", runOrRaiseNext "urxvt" (className =? "URxvt")), + ("C-z e", runOrRaiseNext "emacsclient -ca emacs" (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") + ] + `removeKeysP` + [ ("M-j"), ("M-k") ] -- cgit v1.2.3-54-g00ecf