IndependentScreens, v0.0

This commit is contained in:
daniel 2009-02-21 22:52:29 +00:00
parent d6d03e84af
commit ffe5f0cf6f

View File

@ -0,0 +1,8 @@
module IndependentScreens where
marshall (S sc) ws = show sc ++ '_':ws
unmarshall = ((S . read) *** drop 1) . break (=='_')
workspaces' = nub . map (snd . unmarshall) . workspaces
withScreens n workspaces = [marshall sc ws | ws <- workspaces, sc <- [0..n-1]]
onScreen f workspace = screen . current >>= f . flip marshall workspace
countScreens = fmap genericLength $ openDisplay "" >>= getScreenInfo