I see. That solved that problem, but now I get an error saying:
*sigh* I tripped over the same problem I was trying to avoid in a different form... this will be harder to do than I'd hoped. (Forgot that it's already in a pure context; have to rearrange the whole thing to compensate)
The viewHidden function now looks like
viewHidden :: WorkspaceId -> X ()
viewHidden w = do
ws <- gets windowset
when (w `notElem` (map (W.tag . W.workspace) $ W.current ws : W.visible ws))
(windows $ W.view w)
and the list comprehension defining the workspace switching keys has now been refactored into:
[((m .|. modm,k),f i)
| (i, k) <- zip (XMonad.workspaces conf) [xK_1 .. xK_9]
, (f, m) <- [(viewHidden,0), (windows . W.shift,shiftMask)]
]
--