| Copyright | (c) Andrea Rossato 2007 | 
|---|---|
| License | BSD-style (see xmonad/LICENSE) | 
| Maintainer | andrea.rossato@unibz.it | 
| Stability | unstable | 
| Portability | unportable | 
| Safe Haskell | None | 
| Language | Haskell98 | 
XMonad.Layout.WindowArranger
Contents
Description
This is a pure layout modifier that will let you move and resize windows with the keyboard in any layout.
- windowArrange :: l a -> ModifiedLayout WindowArranger l a
- windowArrangeAll :: l a -> ModifiedLayout WindowArranger l a
- data WindowArrangerMsg
- data WindowArranger a
- memberFromList :: (b -> c) -> (c -> a -> Bool) -> a -> [b] -> [b]
- listFromList :: (b -> c) -> (c -> [a] -> Bool) -> [a] -> [b] -> [b]
- diff :: Eq a => ([a], [a]) -> ([a], [a])
Usage
You can use this module with the following in your
 ~/.xmonad/xmonad.hs:
import XMonad.Layout.WindowArranger
myLayout = layoutHook def
main = xmonad def { layoutHook = windowArrange myLayout }or
main = xmonad def { layoutHook = windowArrangeAll myLayout }For more detailed instructions on editing the layoutHook see:
You may also want to define some key binding to move or resize windows. These are good defaults:
       , ((modm .|. controlMask              , xK_s    ), sendMessage  Arrange         )
       , ((modm .|. controlMask .|. shiftMask, xK_s    ), sendMessage  DeArrange       )
       , ((modm .|. controlMask              , xK_Left ), sendMessage (MoveLeft      1))
       , ((modm .|. controlMask              , xK_Right), sendMessage (MoveRight     1))
       , ((modm .|. controlMask              , xK_Down ), sendMessage (MoveDown      1))
       , ((modm .|. controlMask              , xK_Up   ), sendMessage (MoveUp        1))
       , ((modm                 .|. shiftMask, xK_Left ), sendMessage (IncreaseLeft  1))
       , ((modm                 .|. shiftMask, xK_Right), sendMessage (IncreaseRight 1))
       , ((modm                 .|. shiftMask, xK_Down ), sendMessage (IncreaseDown  1))
       , ((modm                 .|. shiftMask, xK_Up   ), sendMessage (IncreaseUp    1))
       , ((modm .|. controlMask .|. shiftMask, xK_Left ), sendMessage (DecreaseLeft  1))
       , ((modm .|. controlMask .|. shiftMask, xK_Right), sendMessage (DecreaseRight 1))
       , ((modm .|. controlMask .|. shiftMask, xK_Down ), sendMessage (DecreaseDown  1))
       , ((modm .|. controlMask .|. shiftMask, xK_Up   ), sendMessage (DecreaseUp    1))For detailed instructions on editing your key bindings, see XMonad.Doc.Extending.
windowArrange :: l a -> ModifiedLayout WindowArranger l a Source
A layout modifier to float the windows in a workspace
windowArrangeAll :: l a -> ModifiedLayout WindowArranger l a Source
A layout modifier to float all the windows in a workspace
data WindowArrangerMsg Source
Constructors
Instances
data WindowArranger a Source
Instances
| (Show a, Read a, Eq a) => LayoutModifier WindowArranger a Source | |
| Read a => Read (WindowArranger a) Source | |
| Show a => Show (WindowArranger a) Source | 
memberFromList :: (b -> c) -> (c -> a -> Bool) -> a -> [b] -> [b] Source
Given a function to be applied to each member of ta list, and a function to check a condition by processing this transformed member with something, you get the first member that satisfy the condition, or an empty list.
listFromList :: (b -> c) -> (c -> [a] -> Bool) -> [a] -> [b] -> [b] Source
Given a function to be applied to each member of a list, and a function to check a condition by processing this transformed member with the members of a list, you get the list of members that satisfy the condition.