Difference between revisions of "Xmonad/Config archive/k6b (kyle's) xmonad.hs"
< Xmonad | Config archive
Jump to navigation
Jump to search
(k6b xmonad.hs) |
(Added PerWorkspace layouts) |
||
Line 17: | Line 17: | ||
myWorkspaces = ["Don't","Panic!","::k6b::",".42.","5","6","7","8","9"] --list of tag names |
myWorkspaces = ["Don't","Panic!","::k6b::",".42.","5","6","7","8","9"] --list of tag names |
||
myManageHook = composeAll |
myManageHook = composeAll |
||
− | [ className =? " |
+ | [ className =? "vlc" --> doFloat --float mplayer |
− | , className =? "Gimp" --> doFloat --float gimp |
||
, className =? "Gimp" --> doShift ".42." --move gimp to window |
, className =? "Gimp" --> doShift ".42." --move gimp to window |
||
, className =? "Keepassx" --> doCenterFloat --float keepassx |
, className =? "Keepassx" --> doCenterFloat --float keepassx |
||
Line 24: | Line 23: | ||
, className =? "feh" --> doCenterFloat --center and float feh |
, className =? "feh" --> doCenterFloat --center and float feh |
||
] |
] |
||
+ | myLayoutHook = onWorkspace ".42." gimp $ onWorkspace "Don't" terminalLayout $ onWorkspace "Panic!" webLayout $ standardLayout --per workspace layouts |
||
− | myLayoutHook = avoidStruts (Mirror tall ||| Grid ||| tall ||| Full) --layout list |
||
where |
where |
||
− | + | standardLayout = avoidStruts ( Mirror tall ||| tall ||| Grid ||| Full ) --layout to use on every other workspace |
|
− | + | where |
|
+ | tall = Tall nmaster delta ratio --define tall layout sizes |
||
⚫ | |||
+ | nmaster = 1 --number of windows in master pane |
||
⚫ | |||
+ | ratio = 1/2 --ratio of master pane size |
||
⚫ | |||
+ | |||
+ | gimp = avoidStruts $ --layout for gimp |
||
+ | withIM (0.11) (Role "gimp-toolbox") $ --toolbox on side |
||
+ | reflectHoriz $ |
||
+ | withIM (0.15) (Role "gimp-dock") Full --dock on side |
||
+ | terminalLayout = avoidStruts $ Grid --layout for terminal windows |
||
+ | webLayout = avoidStruts $ Mirror tall --layout for browser and terminal window |
||
⚫ | |||
+ | tall = Tall nmaster delta ratio --define tall layout sizes |
||
+ | nmaster = 1 --number of windows in master pane1 |
||
+ | ratio = 3/4 --ratio of master pane size |
||
+ | delta = 2/100 |
||
--xmobar config |
--xmobar config |
||
myLogHook h = dynamicLogWithPP xmobarPP |
myLogHook h = dynamicLogWithPP xmobarPP |
||
Line 60: | Line 73: | ||
, ((mod4Mask, xK_F1), manPrompt defaultXPConfig) --man prompt |
, ((mod4Mask, xK_F1), manPrompt defaultXPConfig) --man prompt |
||
, ((0, xK_Print), spawn "'scrot' -e 'mv $f ~/pictures/screenshots'") --take screenshot |
, ((0, xK_Print), spawn "'scrot' -e 'mv $f ~/pictures/screenshots'") --take screenshot |
||
+ | ---Media Keys |
||
, ((0, 0x1008ff13), spawn "amixer -q set Master 2dB+") --raise sound |
, ((0, 0x1008ff13), spawn "amixer -q set Master 2dB+") --raise sound |
||
, ((0, 0x1008ff11), spawn "amixer -q set Master 1dB-") --lower sound |
, ((0, 0x1008ff11), spawn "amixer -q set Master 1dB-") --lower sound |
||
, ((0, 0x1008ff12), spawn "amixer -q set Master toggle") --mute sound |
, ((0, 0x1008ff12), spawn "amixer -q set Master toggle") --mute sound |
||
+ | , ((0, 0x1008ff2c), spawn "eject") --eject cd |
||
] |
] |
||
</haskell> |
</haskell> |
Latest revision as of 11:10, 2 October 2011
import XMonad
import XMonad.Hooks.DynamicLog
import XMonad.Hooks.ManageDocks
import XMonad.Hooks.ManageHelpers
import XMonad.Util.Run(spawnPipe)
import XMonad.Util.EZConfig(additionalKeys)
import XMonad.Layout.IM
import XMonad.Layout.PerWorkspace
import XMonad.Layout.Reflect
import XMonad.Layout.Grid
import XMonad.Prompt
import XMonad.Prompt.Man
import System.IO
myTerminal = "urxvtc" --my preferred terminal
myWorkspaces = ["Don't","Panic!","::k6b::",".42.","5","6","7","8","9"] --list of tag names
myManageHook = composeAll
[ className =? "vlc" --> doFloat --float mplayer
, className =? "Gimp" --> doShift ".42." --move gimp to window
, className =? "Keepassx" --> doCenterFloat --float keepassx
, className =? "Firefox" --> doShift "Panic!" --move firefox to window
, className =? "feh" --> doCenterFloat --center and float feh
]
myLayoutHook = onWorkspace ".42." gimp $ onWorkspace "Don't" terminalLayout $ onWorkspace "Panic!" webLayout $ standardLayout --per workspace layouts
where
standardLayout = avoidStruts ( Mirror tall ||| tall ||| Grid ||| Full ) --layout to use on every other workspace
where
tall = Tall nmaster delta ratio --define tall layout sizes
nmaster = 1 --number of windows in master pane
ratio = 1/2 --ratio of master pane size
delta = 2/100
gimp = avoidStruts $ --layout for gimp
withIM (0.11) (Role "gimp-toolbox") $ --toolbox on side
reflectHoriz $
withIM (0.15) (Role "gimp-dock") Full --dock on side
terminalLayout = avoidStruts $ Grid --layout for terminal windows
webLayout = avoidStruts $ Mirror tall --layout for browser and terminal window
where
tall = Tall nmaster delta ratio --define tall layout sizes
nmaster = 1 --number of windows in master pane1
ratio = 3/4 --ratio of master pane size
delta = 2/100
--xmobar config
myLogHook h = dynamicLogWithPP xmobarPP
{ ppHidden = xmobarColor "grey" "" --tag color
, ppOutput = hPutStrLn h --tag list and window title
, ppTitle = xmobarColor "green" "" --window title color
}
myStatusBar = "xmobar" --define first xmobar
myStartupHook :: X ()
myStartupHook = do
spawn "xmobar ~/.xmobarrc2" --start second xmobar
spawn "~/scripts/startup.sh" --startup script
main = do
din <- spawnPipe myStatusBar
xmonad $ defaultConfig
{ manageHook = manageDocks <+> myManageHook <+> manageHook defaultConfig
, layoutHook = myLayoutHook
, logHook = myLogHook din
, startupHook = myStartupHook
, terminal = myTerminal
, workspaces = myWorkspaces
, modMask = mod4Mask
} `additionalKeys`
[ ((mod4Mask, xK_f), spawn "firefox") --start firefox
, ((mod4Mask, xK_F11), spawn "sudo /sbin/reboot") --reboot
, ((mod4Mask, xK_F12), spawn "sudo /sbin/shutdown -h now") --shutdown
, ((mod4Mask, xK_p), spawn "dmenu_run -nb black -nf white") --call dmenu
, ((mod4Mask .|. shiftMask, xK_h), spawn "feh --scale ~/pictures/Xmbindings.png") --keymask dialog
, ((mod4Mask, xK_F1), manPrompt defaultXPConfig) --man prompt
, ((0, xK_Print), spawn "'scrot' -e 'mv $f ~/pictures/screenshots'") --take screenshot
---Media Keys
, ((0, 0x1008ff13), spawn "amixer -q set Master 2dB+") --raise sound
, ((0, 0x1008ff11), spawn "amixer -q set Master 1dB-") --lower sound
, ((0, 0x1008ff12), spawn "amixer -q set Master toggle") --mute sound
, ((0, 0x1008ff2c), spawn "eject") --eject cd
]