You can use this module with the following in your ~/.xmonad/xmonad.hs:
import XMonad.Layout.Combo
and add something like
combineTwo (TwoPane 0.03 0.5) (tabbed shrinkText defaultTConf) (tabbed shrinkText defaultTConf)
to your layouts.
For more detailed instructions on editing the layoutHook see:
XMonad.Doc.Extending
combineTwo is a new simple layout combinator. It allows the
combination of two layouts using a third to split the screen
between the two, but has the advantage of allowing you to
dynamically adjust the layout, in terms of the number of windows in
each sublayout. To do this, use XMonad.Layout.WindowNavigation,
and add the following key bindings (or something similar):
, ((modMask x .|. controlMask .|. shiftMask, xK_Right), sendMessage $ Move R)
, ((modMask x .|. controlMask .|. shiftMask, xK_Left ), sendMessage $ Move L)
, ((modMask x .|. controlMask .|. shiftMask, xK_Up ), sendMessage $ Move U)
, ((modMask x .|. controlMask .|. shiftMask, xK_Down ), sendMessage $ Move D)
For detailed instruction on editing the key binding see
XMonad.Doc.Extending.
These bindings will move a window into the sublayout that is
up/down/left/right of its current position. Note that there is some
weirdness in combineTwo, in that the mod-tab focus order is not very closely
related to the layout order. This is because we're forced to keep track of
the window positions separately, and this is ugly. If you don't like this,
lobby for hierarchical stacks in core xmonad or go reimplement the core of
xmonad yourself.
|