> On Thu, Jan 31, 2008 at 2:42 PM, Spencer Janssen <
sjanssen@cse.unl.edu>
> wrote:
>
> > On Wed, Jan 30, 2008 at 07:29:58PM -0500, Brent Yorgey wrote:
> > > 1. PerWorkspace is an inelegant hack with several icky problems:
> >
> > Agreed. It is approaching the limits of xmonad's layout design. However,
> > I
> > think we can accomplish PerWorkspace behavior without changing too much.
> >
> > \begin{code}
> > data PerWS = PerWS { selected :: Maybe Layout
> > , choices :: Map WorkspaceId Layout
> > , default :: Layout }
> > \end{code}
> >
>
> So, I took a crack at implementing (something like) this today. The problem
> I ran into is that (Layout a) is not an instance of Read, so PerWorkspace
> cannot derive Read either. Is there any way around this? Or do I have to
> go back to caching a (Maybe Bool) and using that to decide on which of two
> layouts to use, instead of directly caching a (Maybe (Layout a))?
>
> Ideas?