I'm attempting to ease into using xmonad by using the gnome integration.
I have a dual monitor setup and I want to turn greedy views off and have each screen have its own set of workspaces,
so if I'm on the main monitor, it has its own workspace 1-9 and the same for the second screen.
import XMonad
import XMonad.Config.Gnome
import XMonad.Layout.NoBorders
import qualified XMonad.StackSet as W
import XMonad.Util.EZConfig (additionalKeys)
import XMonad.Layout.IndependentScreens
main = do
xmonad $ gnomeConfig {
workspaces = withScreens 2 ["1", "2", "3", "4", "5", "6", "7", "8", "9"]
, modMask = mod4Mask
, terminal = "gnome-terminal"
, layoutHook = smartBorders (layoutHook gnomeConfig)
} `additionalKeys` myKeys
myKeys = [
-- rebind meta-p to dmenu
((mod4Mask, xK_p), spawn "exe=`dmenu_path | dmenu` && eval \"exec $exe\"")
]
++
[
((m .|. mod4Mask, k), windows $ onCurrentScreen f i)
| (i, k) <- zip (workspaces' conf) [xK_1 .. xK_9]
, (f, m) <- [(W.view, 0), (W.shift, shiftMask)]
]
gnomeConfig is in scope but that doesn't seem to make a difference and it kills the rebind for dmenu.
pointers greatly appreciated.