[Xmonad] extensible layouts?

Spencer Janssen sjanssen at cse.unl.edu
Wed May 2 22:03:31 EDT 2007


On Wed, 2 May 2007 08:27:39 -0700
David Roundy <droundy at darcs.net> wrote:

> Hi all,
> 
> I was wondering if there were any plans to add support for extensible
> layouts to xmonad? I haven't really gotten any comments on my patch
> to do so, and have no idea if the approach I sketched out is
> considered unacceptable, foolish, or what not.  Or perhaps there's
> just no real interest in extensible layouts by the other developers?

I'm interested, but slow ;).

Some comments about your patch:

 - I'd rather stay away from the parametricity on message type.
Matching via Show is a bit ugly.  I think a better representation is:

> data Message = Shrink | Expand | Other Dynamic

Layouts can then match against the core constructors, then fromDyn and
match against special messages.

 - Should there be more messages?  Specifically, messages like:
WindowAdd, WindowRemove, InitializeLayout, UnitializeLayout.
Otherwise, layouts that need to keep per-window state will need to
compare their state against the window list on each 'refresh' call.

 - Can layouts do IO (or X ())?  I've seen a handful of requests for
ion style tabbing -- this requires IO to draw the tab bar.
Additionally, the layout would need to listen to arbitrary X events to
redraw the tab bar on ExposeNotify events.

> I'd rather not bother resolving the conflicts I've got with the recent
> burst of modifications if there's not much interest in the patch,
> particularly as my wrist has decided I shouldn't be using my computer
> very much--and I need to use one for work.

I'm sorry about the lack of response until now.  I put off looking
closely at your patches, and "in a couple of hours" has turned into "a
couple of weeks".


Cheers,
Spencer Janssen


More information about the Xmonad mailing list