From: Simon Ruderich Date: Thu, 17 Jun 2010 15:06:40 +0000 (+0200) Subject: xmonad.hs: Don't automatically move workspaces in multi screen setup. X-Git-Url: https://ruderich.org/simon/gitweb/?p=config%2Fdotfiles.git;a=commitdiff_plain;h=9b2c4754a6c0a671faf806c0292f36f33cfa780f xmonad.hs: Don't automatically move workspaces in multi screen setup. --- diff --git a/xmonad.hs b/xmonad.hs index a09b826..e73e1c5 100644 --- a/xmonad.hs +++ b/xmonad.hs @@ -71,11 +71,26 @@ myManageHook = composeOne , return True -?> doF W.focusDown ] +-- My workspaces, same as default ones. Used below in myKeys. +myWorkspaces = ["1", "2", "3", "4", "5", "6", "7", "8", "9"] + myKeys = [ -- Switch to additional layout (vertical tiled) defined by -- toggleLayouts above. ((mod4Mask, xK_v), sendMessage ToggleLayout) ] + ++ + -- When using multiple screens, switching to another workspace causes + -- Xmonad to pull the workspace to the current screen if it was also + -- displayed on another one. This is confusing for me so the following + -- code changes it to just switch to the screen where the workspace is + -- already displayed. + -- + -- Thanks to the Xmonad FAQ, read on 2010-06-16 13:42 + -- (http://www.haskell.org/haskellwiki/Xmonad/Frequently_asked_questions). + [((m .|. mod4Mask, k), windows $ f i) + | (i, k) <- zip myWorkspaces [xK_1 .. xK_9] + , (f, m) <- [(W.view, 0), (W.shift, shiftMask)]] main = xmonad $ defaultConfig -- Use Windows key as main key so it doesn't conflict with any other key