xmonad-extras-0.10.1: Third party extensions for xmonad with wacky dependencies

Portabilityunportable
Stabilityunstable
MaintainerAdam Vogt <vogt.adam@gmail.com>

XMonad.Config.Alt.Internal

Contents

Description

Synopsis

Documentation

Running

runConfig :: (Monad m, Read (l Window), HMap Snd l2 l1, LayoutClass l Window, HCompose l1 (m (XConfig (Choose Tall (Choose (Mirror Tall) Full))) -> Config (XConfig l)), HCompose (HCons t t1) (HNil -> l2)) => HCons t t1 -> IO ()Source

runConfig' :: (Monad m, HMap Snd l1 l, HCompose l (m a -> Config b), HCompose (HCons t t1) (HNil -> l1)) => a -> HCons t t1 -> IO bSource

Actions

Use set, add, modify, modifyIO for most predefined fields in XConfig.

For constructing things to modify a config:

 insertInto action hold prec field v
  • action is an instance of Mode so you only need to write ModifyIO to describe how to access this field.
  • hold is HTrue if you don't want to overwrite a preexisting value at the same prec. This is for things that should be applied once-only.
  • field used with the Mode
  • v the value that is being updated (or a function if you use Modify or similar)

set :: (HLength l ll, HLt ll (HSucc (HSucc (HSucc (HSucc HZero)))) b, Mode Set field e x y, Ins2 b (HSucc (HSucc (HSucc (HSucc HZero)))) HFalse (Config (XConfig x) -> Config (XConfig y)) l l') => field -> e -> l -> l'Source

add :: (HLength l ll, HLt ll (HSucc (HSucc (HSucc (HSucc HZero)))) b, Mode Add field e x y, Ins2 b (HSucc (HSucc (HSucc (HSucc HZero)))) HFalse (Config (XConfig x) -> Config (XConfig y)) l l') => field -> e -> l -> l'Source

modify :: (HLength l ll, HLt ll (HSucc (HSucc (HSucc (HSucc HZero)))) b, Mode Modify field e x y, Ins2 b (HSucc (HSucc (HSucc (HSucc HZero)))) HFalse (Config (XConfig x) -> Config (XConfig y)) l l') => field -> e -> l -> l'Source

modifyIO :: (HLength l ll, HLt ll (HSucc (HSucc (HSucc (HSucc HZero)))) b, Mode ModifyIO field e x y, Ins2 b (HSucc (HSucc (HSucc (HSucc HZero)))) HFalse (Config (XConfig x) -> Config (XConfig y)) l l') => field -> e -> l -> l'Source

less useful

modifyIO' :: (HLength l ll, HLt ll n b, Mode ModifyIO field e x y, Ins2 b n hold (Config (XConfig x) -> Config (XConfig y)) l l') => hold -> n -> field -> e -> l -> l'Source

insertInto :: (HLength l ll, HLt ll n b, Mode action field e x y, Ins2 b n hold (Config (XConfig x) -> Config (XConfig y)) l l') => action -> hold -> n -> field -> e -> l -> l'Source

Things to modify

Special

data LayoutHook Source

Represent setting layouts and layout modifiers

Constructors

LayoutHook 

Instances

LayoutClass l' Window => Mode Set LayoutHook (l' Window) l l' 
(LayoutClass l Window, LayoutClass l' Window) => Mode Add LayoutHook (l' Window) l (Choose l' l)

Add means something else for layoutHook because there's no suitable mempty for the general instance of LayoutClass

Mode ModifyIO LayoutHook (l Window -> Config (m Window)) l m 
(Read (l Window), LayoutClass l Window, Read (l' Window), LayoutClass l' Window) => Mode Modify LayoutHook (l Window -> l' Window) l l' 

Others

data StartupHook Source

Constructors

StartupHook 

Instances

Fail (Expected (X ())) => Mode ModifyIO StartupHook x0 l0 l0 
Fail (Expected (X ())) => Mode Modify StartupHook x0 l0 l0 
Fail (Expected (X ())) => Mode Set StartupHook x0 l0 l0 
Mode Set StartupHook (X ()) l0 l0 
Mode ModifyIO StartupHook (X () -> Config (X ())) l0 l0 
Mode Modify StartupHook (X () -> X ()) l0 l0 

data LogHook Source

Constructors

LogHook 

Instances

Fail (Expected (X ())) => Mode ModifyIO LogHook x0 l0 l0 
Fail (Expected (X ())) => Mode Modify LogHook x0 l0 l0 
Fail (Expected (X ())) => Mode Set LogHook x0 l0 l0 
Mode Set LogHook (X ()) l0 l0 
Mode ModifyIO LogHook (X () -> Config (X ())) l0 l0 
Mode Modify LogHook (X () -> X ()) l0 l0 

data BorderWidth Source

Constructors

BorderWidth 

data MouseBindings Source

Constructors

MouseBindings 

Instances

data Keys Source

Constructors

Keys 

Instances

Fail (Expected (XConfig Layout -> Map (ButtonMask, KeySym) (X ()))) => Mode ModifyIO Keys x0 l0 l0 
Fail (Expected (XConfig Layout -> Map (ButtonMask, KeySym) (X ()))) => Mode Modify Keys x0 l0 l0 
Fail (Expected (XConfig Layout -> Map (ButtonMask, KeySym) (X ()))) => Mode Set Keys x0 l0 l0 
Mode ModifyIO Keys ((XConfig Layout -> Map (ButtonMask, KeySym) (X ())) -> Config (XConfig Layout -> Map (ButtonMask, KeySym) (X ()))) l0 l0 
Mode Modify Keys ((XConfig Layout -> Map (ButtonMask, KeySym) (X ())) -> XConfig Layout -> Map (ButtonMask, KeySym) (X ())) l0 l0 
Mode Set Keys (XConfig Layout -> Map (ButtonMask, KeySym) (X ())) l0 l0 

data ModMask Source

Constructors

ModMask 

Instances

Fail (Expected KeyMask) => Mode ModifyIO ModMask x0 l0 l0 
Fail (Expected KeyMask) => Mode Modify ModMask x0 l0 l0 
Fail (Expected KeyMask) => Mode Set ModMask x0 l0 l0 
Mode Set ModMask KeyMask l0 l0 
Mode ModifyIO ModMask (KeyMask -> Config KeyMask) l0 l0 
Mode Modify ModMask (KeyMask -> KeyMask) l0 l0 

data Workspaces Source

Constructors

Workspaces 

Instances

Fail (Expected [String]) => Mode ModifyIO Workspaces x0 l0 l0 
Fail (Expected [String]) => Mode Modify Workspaces x0 l0 l0 
Fail (Expected [String]) => Mode Set Workspaces x0 l0 l0 
Mode Set Workspaces [String] l0 l0 
Mode ModifyIO Workspaces ([String] -> Config [String]) l0 l0 
Mode Modify Workspaces ([String] -> [String]) l0 l0 

data HandleEventHook Source

Constructors

HandleEventHook 

Instances

Fail (Expected (Event -> X All)) => Mode ModifyIO HandleEventHook x0 l0 l0 
Fail (Expected (Event -> X All)) => Mode Modify HandleEventHook x0 l0 l0 
Fail (Expected (Event -> X All)) => Mode Set HandleEventHook x0 l0 l0 
Mode ModifyIO HandleEventHook ((Event -> X All) -> Config (Event -> X All)) l0 l0 
Mode Modify HandleEventHook ((Event -> X All) -> Event -> X All) l0 l0 
Mode Set HandleEventHook (Event -> X All) l0 l0 

data ManageHook Source

Constructors

ManageHook 

data Terminal Source

Constructors

Terminal 

Instances

Fail (Expected String) => Mode ModifyIO Terminal x0 l0 l0 
Fail (Expected String) => Mode Modify Terminal x0 l0 l0 
Mode Set Terminal String l0 l0 
Fail (Expected String) => Mode Set Terminal x0 l0 l0 
Mode ModifyIO Terminal (String -> Config String) l0 l0 
Mode Modify Terminal (String -> String) l0 l0 

Relatively private

You probably don't need these

Ordered Insertion into HLists like [(Nat,a)]

insLt :: (HLength l1 b, HAppend l (HCons (t, t1) HNil) l'', HAppend l1 l' l, HReplicateF n Id l', HSubtract a b n) => a -> t -> t1 -> l1 -> l''Source

insGeq :: (HLookupByHNat n l (t1, a -> b), HUpdateAtHNat n e l l', HCond t1 (t1, a -> b) (t, a -> c) e) => n -> t -> (b -> c) -> l -> l'Source

class HBool hold => Ins2 b n hold f l l' | b n hold f l -> l' whereSource

utility class, so that we can use contexts that may not be satisfied, depending on the length of the accumulated list.

Methods

ins2 :: b -> n -> hold -> f -> l -> l'Source

Instances

(HLength l n, HSubtract a1 n a, HReplicateF a Id l', HAppend l l' l'', HAppend l'' (HCons (hold, e) HNil) l''1, HBool hold) => Ins2 HTrue a1 hold e l l''1

when l needs to be padded with id

(HLookupByHNat n l (t, a -> b), HUpdateAtHNat n z l l', HCond t (t, a -> b) (t1, a -> c) z, HBool t1) => Ins2 HFalse n t1 (b -> c) l l'

when l already has enough elements, just compose. Only when the existing HBool is HFalse

class Ins' n hold f l l' | n hold f l -> l' whereSource

Methods

ins' :: n -> hold -> f -> l -> l'Source

Instances

(HLength l ll, HLt ll n b, Ins2 b n hold f l l') => Ins' n hold f l l' 

ins :: (Monad m, HLength l ll, HLt ll n b, Ins2 b n HFalse (m a -> m b1) l l') => n -> (a -> m b1) -> l -> l'Source

Useful functions

class HCompose l f | l -> f whereSource

like foldr (.) id, but for a heteregenous list.

Methods

hComp :: l -> fSource

Instances

HCompose HNil (a -> a) 
HCompose r (a -> b) => HCompose (:*: (b -> c) r) (a -> c) 

data Snd Source

Constructors

Snd 

Instances

Apply Snd (a, b) b 

class HSubtract a b c | a b -> c whereSource

The difference between HNats. Clamped to HZero

Methods

hSubtract :: a -> b -> cSource

Instances

HNat a => HSubtract a HZero a 
HSubtract HZero b HZero 
(HNat a, HNat b, HSubtract a b c) => HSubtract (HSucc a) (HSucc b) c 

class HNat n => HReplicateF n e l | n e -> l whereSource

Methods

hReplicateF :: n -> e -> lSource

Instances

HReplicateF HZero e HNil 
(Apply e x y, HReplicateF n e r) => HReplicateF (HSucc n) e (:*: (HFalse, x -> y) r) 

class HPred' n n' | n -> n' whereSource

exactly like hPred, but accept HZero too

Methods

hPred' :: n -> n'Source

Instances

For overloading

class Mode action field e x y | action field e x -> y, action field x y -> e whereSource

Methods

m :: action -> field -> e -> XConfig x -> Config (XConfig y)Source

Instances

Fail (Expected Bool) => Mode ModifyIO FocusFollowsMouse x0 l0 l0 
Fail (Expected (X ())) => Mode ModifyIO StartupHook x0 l0 l0 
Fail (Expected (X ())) => Mode ModifyIO LogHook x0 l0 l0 
Fail (Expected Dimension) => Mode ModifyIO BorderWidth x0 l0 l0 
Fail (Expected (XConfig Layout -> Map (ButtonMask, Button) (Window -> X ()))) => Mode ModifyIO MouseBindings x0 l0 l0 
Fail (Expected (XConfig Layout -> Map (ButtonMask, KeySym) (X ()))) => Mode ModifyIO Keys x0 l0 l0 
Fail (Expected KeyMask) => Mode ModifyIO ModMask x0 l0 l0 
Fail (Expected [String]) => Mode ModifyIO Workspaces x0 l0 l0 
Fail (Expected (Event -> X All)) => Mode ModifyIO HandleEventHook x0 l0 l0 
Fail (Expected ManageHook) => Mode ModifyIO ManageHook x0 l0 l0 
Fail (Expected String) => Mode ModifyIO Terminal x0 l0 l0 
Fail (Expected String) => Mode ModifyIO FocusedBorderColor x0 l0 l0 
Fail (Expected String) => Mode ModifyIO NormalBorderColor x0 l0 l0 
Fail (Expected Bool) => Mode Modify FocusFollowsMouse x0 l0 l0 
Fail (Expected (X ())) => Mode Modify StartupHook x0 l0 l0 
Fail (Expected (X ())) => Mode Modify LogHook x0 l0 l0 
Fail (Expected Dimension) => Mode Modify BorderWidth x0 l0 l0 
Fail (Expected (XConfig Layout -> Map (ButtonMask, Button) (Window -> X ()))) => Mode Modify MouseBindings x0 l0 l0 
Fail (Expected (XConfig Layout -> Map (ButtonMask, KeySym) (X ()))) => Mode Modify Keys x0 l0 l0 
Fail (Expected KeyMask) => Mode Modify ModMask x0 l0 l0 
Fail (Expected [String]) => Mode Modify Workspaces x0 l0 l0 
Fail (Expected (Event -> X All)) => Mode Modify HandleEventHook x0 l0 l0 
Fail (Expected ManageHook) => Mode Modify ManageHook x0 l0 l0 
Fail (Expected String) => Mode Modify Terminal x0 l0 l0 
Fail (Expected String) => Mode Modify FocusedBorderColor x0 l0 l0 
Fail (Expected String) => Mode Modify NormalBorderColor x0 l0 l0 
Mode Set FocusFollowsMouse Bool l0 l0 
Fail (Expected Bool) => Mode Set FocusFollowsMouse x0 l0 l0 
Fail (Expected (X ())) => Mode Set StartupHook x0 l0 l0 
Fail (Expected (X ())) => Mode Set LogHook x0 l0 l0 
Fail (Expected Dimension) => Mode Set BorderWidth x0 l0 l0 
Mode Set BorderWidth Dimension l0 l0 
Fail (Expected (XConfig Layout -> Map (ButtonMask, Button) (Window -> X ()))) => Mode Set MouseBindings x0 l0 l0 
Fail (Expected (XConfig Layout -> Map (ButtonMask, KeySym) (X ()))) => Mode Set Keys x0 l0 l0 
Fail (Expected KeyMask) => Mode Set ModMask x0 l0 l0 
Mode Set ModMask KeyMask l0 l0 
Fail (Expected [String]) => Mode Set Workspaces x0 l0 l0 
Fail (Expected (Event -> X All)) => Mode Set HandleEventHook x0 l0 l0 
Fail (Expected ManageHook) => Mode Set ManageHook x0 l0 l0 
Mode Set ManageHook ManageHook l0 l0 
Mode Set Terminal String l0 l0 
Fail (Expected String) => Mode Set Terminal x0 l0 l0 
Mode Set FocusedBorderColor String l0 l0 
Fail (Expected String) => Mode Set FocusedBorderColor x0 l0 l0 
Mode Set NormalBorderColor String l0 l0 
Fail (Expected String) => Mode Set NormalBorderColor x0 l0 l0 
LayoutClass l' Window => Mode Set LayoutHook (l' Window) l l' 
Mode Set StartupHook (X ()) l0 l0 
Mode Set LogHook (X ()) l0 l0 
Mode Set Workspaces [String] l0 l0 
(LayoutClass l Window, LayoutClass l' Window) => Mode Add LayoutHook (l' Window) l (Choose l' l)

Add means something else for layoutHook because there's no suitable mempty for the general instance of LayoutClass

Mode ModifyIO LayoutHook (l Window -> Config (m Window)) l m 
Mode ModifyIO FocusFollowsMouse (Bool -> Config Bool) l0 l0 
Mode ModifyIO StartupHook (X () -> Config (X ())) l0 l0 
Mode ModifyIO LogHook (X () -> Config (X ())) l0 l0 
Mode ModifyIO BorderWidth (Dimension -> Config Dimension) l0 l0 
Mode ModifyIO MouseBindings ((XConfig Layout -> Map (ButtonMask, Button) (Window -> X ())) -> Config (XConfig Layout -> Map (ButtonMask, Button) (Window -> X ()))) l0 l0 
Mode ModifyIO Keys ((XConfig Layout -> Map (ButtonMask, KeySym) (X ())) -> Config (XConfig Layout -> Map (ButtonMask, KeySym) (X ()))) l0 l0 
Mode ModifyIO ModMask (KeyMask -> Config KeyMask) l0 l0 
Mode ModifyIO Workspaces ([String] -> Config [String]) l0 l0 
Mode ModifyIO HandleEventHook ((Event -> X All) -> Config (Event -> X All)) l0 l0 
Mode ModifyIO ManageHook (ManageHook -> Config ManageHook) l0 l0 
Mode ModifyIO Terminal (String -> Config String) l0 l0 
Mode ModifyIO FocusedBorderColor (String -> Config String) l0 l0 
Mode ModifyIO NormalBorderColor (String -> Config String) l0 l0 
(Read (l Window), LayoutClass l Window, Read (l' Window), LayoutClass l' Window) => Mode Modify LayoutHook (l Window -> l' Window) l l' 
Mode Modify FocusFollowsMouse (Bool -> Bool) l0 l0 
Mode Modify StartupHook (X () -> X ()) l0 l0 
Mode Modify LogHook (X () -> X ()) l0 l0 
Mode Modify BorderWidth (Dimension -> Dimension) l0 l0 
Mode Modify MouseBindings ((XConfig Layout -> Map (ButtonMask, Button) (Window -> X ())) -> XConfig Layout -> Map (ButtonMask, Button) (Window -> X ())) l0 l0 
Mode Modify Keys ((XConfig Layout -> Map (ButtonMask, KeySym) (X ())) -> XConfig Layout -> Map (ButtonMask, KeySym) (X ())) l0 l0 
Mode Modify ModMask (KeyMask -> KeyMask) l0 l0 
Mode Modify Workspaces ([String] -> [String]) l0 l0 
Mode Modify HandleEventHook ((Event -> X All) -> Event -> X All) l0 l0 
Mode Modify ManageHook (ManageHook -> ManageHook) l0 l0 
Mode Modify Terminal (String -> String) l0 l0 
Mode Modify FocusedBorderColor (String -> String) l0 l0 
Mode Modify NormalBorderColor (String -> String) l0 l0 
Mode Set MouseBindings (XConfig Layout -> Map (ButtonMask, Button) (Window -> X ())) l0 l0 
Mode Set Keys (XConfig Layout -> Map (ButtonMask, KeySym) (X ())) l0 l0 
Mode Set HandleEventHook (Event -> X All) l0 l0 

data Add Source

Constructors

Add

the Mode instance combines the old value like new mappend old

Instances

(LayoutClass l Window, LayoutClass l' Window) => Mode Add LayoutHook (l' Window) l (Choose l' l)

Add means something else for layoutHook because there's no suitable mempty for the general instance of LayoutClass

data Set Source

Constructors

Set 

Instances

Mode Set FocusFollowsMouse Bool l0 l0 
Fail (Expected Bool) => Mode Set FocusFollowsMouse x0 l0 l0 
Fail (Expected (X ())) => Mode Set StartupHook x0 l0 l0 
Fail (Expected (X ())) => Mode Set LogHook x0 l0 l0 
Fail (Expected Dimension) => Mode Set BorderWidth x0 l0 l0 
Mode Set BorderWidth Dimension l0 l0 
Fail (Expected (XConfig Layout -> Map (ButtonMask, Button) (Window -> X ()))) => Mode Set MouseBindings x0 l0 l0 
Fail (Expected (XConfig Layout -> Map (ButtonMask, KeySym) (X ()))) => Mode Set Keys x0 l0 l0 
Fail (Expected KeyMask) => Mode Set ModMask x0 l0 l0 
Mode Set ModMask KeyMask l0 l0 
Fail (Expected [String]) => Mode Set Workspaces x0 l0 l0 
Fail (Expected (Event -> X All)) => Mode Set HandleEventHook x0 l0 l0 
Fail (Expected ManageHook) => Mode Set ManageHook x0 l0 l0 
Mode Set ManageHook ManageHook l0 l0 
Mode Set Terminal String l0 l0 
Fail (Expected String) => Mode Set Terminal x0 l0 l0 
Mode Set FocusedBorderColor String l0 l0 
Fail (Expected String) => Mode Set FocusedBorderColor x0 l0 l0 
Mode Set NormalBorderColor String l0 l0 
Fail (Expected String) => Mode Set NormalBorderColor x0 l0 l0 
LayoutClass l' Window => Mode Set LayoutHook (l' Window) l l' 
Mode Set StartupHook (X ()) l0 l0 
Mode Set LogHook (X ()) l0 l0 
Mode Set Workspaces [String] l0 l0 
Mode Set MouseBindings (XConfig Layout -> Map (ButtonMask, Button) (Window -> X ())) l0 l0 
Mode Set Keys (XConfig Layout -> Map (ButtonMask, KeySym) (X ())) l0 l0 
Mode Set HandleEventHook (Event -> X All) l0 l0 

data Modify Source

Constructors

Modify 

Instances

Fail (Expected Bool) => Mode Modify FocusFollowsMouse x0 l0 l0 
Fail (Expected (X ())) => Mode Modify StartupHook x0 l0 l0 
Fail (Expected (X ())) => Mode Modify LogHook x0 l0 l0 
Fail (Expected Dimension) => Mode Modify BorderWidth x0 l0 l0 
Fail (Expected (XConfig Layout -> Map (ButtonMask, Button) (Window -> X ()))) => Mode Modify MouseBindings x0 l0 l0 
Fail (Expected (XConfig Layout -> Map (ButtonMask, KeySym) (X ()))) => Mode Modify Keys x0 l0 l0 
Fail (Expected KeyMask) => Mode Modify ModMask x0 l0 l0 
Fail (Expected [String]) => Mode Modify Workspaces x0 l0 l0 
Fail (Expected (Event -> X All)) => Mode Modify HandleEventHook x0 l0 l0 
Fail (Expected ManageHook) => Mode Modify ManageHook x0 l0 l0 
Fail (Expected String) => Mode Modify Terminal x0 l0 l0 
Fail (Expected String) => Mode Modify FocusedBorderColor x0 l0 l0 
Fail (Expected String) => Mode Modify NormalBorderColor x0 l0 l0 
(Read (l Window), LayoutClass l Window, Read (l' Window), LayoutClass l' Window) => Mode Modify LayoutHook (l Window -> l' Window) l l' 
Mode Modify FocusFollowsMouse (Bool -> Bool) l0 l0 
Mode Modify StartupHook (X () -> X ()) l0 l0 
Mode Modify LogHook (X () -> X ()) l0 l0 
Mode Modify BorderWidth (Dimension -> Dimension) l0 l0 
Mode Modify MouseBindings ((XConfig Layout -> Map (ButtonMask, Button) (Window -> X ())) -> XConfig Layout -> Map (ButtonMask, Button) (Window -> X ())) l0 l0 
Mode Modify Keys ((XConfig Layout -> Map (ButtonMask, KeySym) (X ())) -> XConfig Layout -> Map (ButtonMask, KeySym) (X ())) l0 l0 
Mode Modify ModMask (KeyMask -> KeyMask) l0 l0 
Mode Modify Workspaces ([String] -> [String]) l0 l0 
Mode Modify HandleEventHook ((Event -> X All) -> Event -> X All) l0 l0 
Mode Modify ManageHook (ManageHook -> ManageHook) l0 l0 
Mode Modify Terminal (String -> String) l0 l0 
Mode Modify FocusedBorderColor (String -> String) l0 l0 
Mode Modify NormalBorderColor (String -> String) l0 l0 

data ModifyIO Source

Constructors

ModifyIO 

Instances

Fail (Expected Bool) => Mode ModifyIO FocusFollowsMouse x0 l0 l0 
Fail (Expected (X ())) => Mode ModifyIO StartupHook x0 l0 l0 
Fail (Expected (X ())) => Mode ModifyIO LogHook x0 l0 l0 
Fail (Expected Dimension) => Mode ModifyIO BorderWidth x0 l0 l0 
Fail (Expected (XConfig Layout -> Map (ButtonMask, Button) (Window -> X ()))) => Mode ModifyIO MouseBindings x0 l0 l0 
Fail (Expected (XConfig Layout -> Map (ButtonMask, KeySym) (X ()))) => Mode ModifyIO Keys x0 l0 l0 
Fail (Expected KeyMask) => Mode ModifyIO ModMask x0 l0 l0 
Fail (Expected [String]) => Mode ModifyIO Workspaces x0 l0 l0 
Fail (Expected (Event -> X All)) => Mode ModifyIO HandleEventHook x0 l0 l0 
Fail (Expected ManageHook) => Mode ModifyIO ManageHook x0 l0 l0 
Fail (Expected String) => Mode ModifyIO Terminal x0 l0 l0 
Fail (Expected String) => Mode ModifyIO FocusedBorderColor x0 l0 l0 
Fail (Expected String) => Mode ModifyIO NormalBorderColor x0 l0 l0 
Mode ModifyIO LayoutHook (l Window -> Config (m Window)) l m 
Mode ModifyIO FocusFollowsMouse (Bool -> Config Bool) l0 l0 
Mode ModifyIO StartupHook (X () -> Config (X ())) l0 l0 
Mode ModifyIO LogHook (X () -> Config (X ())) l0 l0 
Mode ModifyIO BorderWidth (Dimension -> Config Dimension) l0 l0 
Mode ModifyIO MouseBindings ((XConfig Layout -> Map (ButtonMask, Button) (Window -> X ())) -> Config (XConfig Layout -> Map (ButtonMask, Button) (Window -> X ()))) l0 l0 
Mode ModifyIO Keys ((XConfig Layout -> Map (ButtonMask, KeySym) (X ())) -> Config (XConfig Layout -> Map (ButtonMask, KeySym) (X ()))) l0 l0 
Mode ModifyIO ModMask (KeyMask -> Config KeyMask) l0 l0 
Mode ModifyIO Workspaces ([String] -> Config [String]) l0 l0 
Mode ModifyIO HandleEventHook ((Event -> X All) -> Config (Event -> X All)) l0 l0 
Mode ModifyIO ManageHook (ManageHook -> Config ManageHook) l0 l0 
Mode ModifyIO Terminal (String -> Config String) l0 l0 
Mode ModifyIO FocusedBorderColor (String -> Config String) l0 l0 
Mode ModifyIO NormalBorderColor (String -> Config String) l0 l0 

test :: IO ()Source

Verification that insertions happen in order

 (T1 (),"3")
 (T2 (T1 ()),"31")
 (T2 (T3 (T1 ())),"321")
 (T2 (T3a (T3 (T1 ()))),"3221")

module Data.HList