aboutsummaryrefslogtreecommitdiffstats
path: root/XMonad/Config/Sjanssen.hs
diff options
context:
space:
mode:
authorSpencer Janssen <sjanssen@cse.unl.edu>2007-11-05 01:58:32 +0100
committerSpencer Janssen <sjanssen@cse.unl.edu>2007-11-05 01:58:32 +0100
commitd9c5a9eb7bdb2958754b8b9c559d7a3153c8cb08 (patch)
tree0f494bbbeb6e5407e6f4d88c1baf85d0c6b26d6f /XMonad/Config/Sjanssen.hs
parent3d4300c14578958ff20c45eb9162ebfcd234f73f (diff)
downloadXMonadContrib-d9c5a9eb7bdb2958754b8b9c559d7a3153c8cb08.tar.gz
XMonadContrib-d9c5a9eb7bdb2958754b8b9c559d7a3153c8cb08.tar.xz
XMonadContrib-d9c5a9eb7bdb2958754b8b9c559d7a3153c8cb08.zip
Add XMonad.Config.Sjanssen
darcs-hash:20071105005832-a5988-faa21c833bbe9ef9cc09af4dd1765ccc10ba4c3d.gz
Diffstat (limited to '')
-rw-r--r--XMonad/Config/Sjanssen.hs50
1 files changed, 50 insertions, 0 deletions
diff --git a/XMonad/Config/Sjanssen.hs b/XMonad/Config/Sjanssen.hs
new file mode 100644
index 0000000..81adec8
--- /dev/null
+++ b/XMonad/Config/Sjanssen.hs
@@ -0,0 +1,50 @@
+module XMonad.Config.Sjanssen (sjanssenConfig) where
+
+import XMonad
+import qualified XMonad.StackSet as W
+import XMonad.Layouts
+import XMonad.Layout.Tabbed
+import XMonad.Operations
+import XMonad.DefaultConfig (defaultConfig)
+import XMonad.Layout.NoBorders
+import XMonad.Hooks.DynamicLog
+import XMonad.Prompt
+import XMonad.Prompt.Shell
+
+import Data.Ratio
+import Data.Bits
+import qualified Data.Map as M
+import Graphics.X11
+
+sjanssenConfig = defaultConfig
+ { defaultGaps = [(15,0,0,0)]
+ , terminal = "urxvt"
+ , workspaces = ["irc", "web"] ++ map show [3..7] ++ ["mail", "im"]
+ , logHook = dynamicLogWithPP sjanssenPP
+ , modMask = mod4Mask
+ , mouseBindings = \(XConfig {modMask = modMask}) -> M.fromList $
+ [ ((modMask, button1), (\w -> focus w >> mouseMoveWindow w))
+ , ((modMask, button2), (\w -> focus w >> windows W.swapMaster))
+ , ((modMask .|. shiftMask, button1), (\w -> focus w >> mouseResizeWindow w)) ]
+ , keys = \c -> mykeys c `M.union` keys defaultConfig c
+ , layoutHook = Layout (smartBorders (tiled ||| Mirror tiled ||| Full ||| tabbed shrinkText defaultTConf))
+ }
+ where
+ mykeys (XConfig {modMask = modMask}) = M.fromList $
+ [((modMask, xK_p ), shellPrompt myPromptConfig)]
+ -- default tiling algorithm partitions the screen into two panes
+ tiled = Tall nmaster delta ratio
+
+ -- The default number of windows in the master pane
+ nmaster = 1
+
+ -- Default proportion of screen occupied by master pane
+ ratio = 1%2
+
+ -- Percent of screen to increment by when resizing panes
+ delta = 3%100
+
+myPromptConfig = defaultXPConfig
+ { position = Top
+ , promptBorderWidth = 0
+ }