
Thanks, that's good to know I'm doing things generally right. Maybe a more specific question would help me improve it though... what I'm actually trying to do is make a tabular list of workspace properties like this: myLayoutHook = avoidStruts $ smartBorders $ format [ ("admin", "~/dotfiles", (Full, tall, Grid, wide)) , ("notes" , "~/notes" , (tall, wide) ) ] where tall = ... wide = ... format = ??? And I can't figure out what the format function should be. Jeff On 10/16/12 23:11, Daniel Trstenjak wrote:
Hi David,
On Tue, Oct 16, 2012 at 07:38:22PM -0700, Jeffrey David Johnson wrote:
Most parts of my xmonad.hs have reasonably simple types:
myXPConfig :: XPConfig myKeys :: XConfig Layout -> M.Map (KeyMask, KeySym) (X ()) myManageHook :: ManageHook myLogHook :: Handle -> X () myWorkspaces :: [WorkspaceId] etc.
But myLayoutHook is uniquely complicated. Here's the current version: ... Partly it seems to be because of the Choose type in 'xmonad/XMonad/Layout.hs', which is used in a recursive manner to combine the layouts (|||).
I think it's done this way to be able to combine different layout types, which all have an instance of LayoutClass, without needing existential quantification.
By using existential quantification it might be possible to represent the combined layouts by just a list, and the current layout could be indicated by a lens.
Or I'm missing something regarding the Choose type?
Greetings, Daniel
_______________________________________________ xmonad mailing list xmonad@haskell.org http://www.haskell.org/mailman/listinfo/xmonad