Skip to content

Instantly share code, notes, and snippets.

@tausen
Created January 30, 2013 11:24
Show Gist options
  • Save tausen/4672611 to your computer and use it in GitHub Desktop.
Save tausen/4672611 to your computer and use it in GitHub Desktop.
import XMonad
import XMonad.Hooks.DynamicLog
import XMonad.Hooks.ManageDocks
import XMonad.Hooks.SetWMName
import XMonad.Hooks.UrgencyHook
import XMonad.Actions.SpawnOn
import XMonad.Util.Run(spawnPipe)
import XMonad.Util.EZConfig(additionalKeys)
import System.IO
import XMonad.Actions.GridSelect
import qualified Data.Map as M
import XMonad.Layout.Fullscreen
import XMonad.Layout.NoBorders
myManageHook = composeAll
[ className =? "Gimp" --> doFloat
, className =? "Tomboy" --> doFloat
, className =? "Gbase" --> doFloat
, className =? "Guake.py" --> doFloat
, className =? "com-mathworks-util-PostVMInit" --> doFloat
, className =? "sun-awt-X11-XFramePeer" -->doFloat
]
myLayout = avoidStruts (
Tall 1 (3/100) (1/2) |||
Mirror (Tall 1 (3/100) (1/2))) |||
noBorders (fullscreenFull Full)
main = do
xmproc <- spawnPipe "/usr/bin/xmobar /home/tausen/.xmobarrc"
xmonad $ withUrgencyHook NoUrgencyHook defaultConfig
{ manageHook = manageDocks <+> manageSpawn <+> myManageHook <+> manageHook defaultConfig
-- , layoutHook = avoidStruts $ layoutHook defaultConfig
, layoutHook = myLayout
, logHook = dynamicLogWithPP xmobarPP
{ ppOutput = hPutStrLn xmproc
, ppTitle = xmobarColor "green" "" . shorten 50
, ppUrgent = xmobarColor "yellow" "red" . xmobarStrip
}
, workspaces = ["web","code","test","im","5","6","7","8","9"]
, startupHook = spawnHere "guake"
>> spawnHere "trayer --edge bottom --align right --height 18 --transparent true --alpha 255 --expand true --tint 0x000000 --SetDockType true --SetPartialStrut true"
>> spawnHere "tomboy"
-- >> spawnHere "xloadimage -fullscreen -onroot /home/tausen/Pictures/Where_are_you_captain_by_alexiuss.jpg"
>> spawnOn "im" "xchat --minimize=2"
-- >> spawnOn "im" "skype"
-- >> spawnOn "im" "gajim"
-- >> spawnHere "conky"
>> setWMName "LG3D"
, keys = \c -> mykeys c `M.union` keys defaultConfig c
} `additionalKeys`
[ ((mod4Mask .|. shiftMask, xK_z), spawn "gnome-screensaver-command --lock") --mod4mask is the windows key
, ((0, xK_Print), spawn "gnome-screenshot")
]
where
mykeys (XConfig {modMask = modm}) = M.fromList $
[ ((modm , xK_Down), spawn "amixer -q sset Master 3%-")
, ((modm , xK_Up), spawn "amixer -q sset Master 3%+")
, ((modm, xK_g), goToSelected defaultGSConfig)
]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment