xmonad-contrib-0.5: Third party extensions for xmonadSource codeContentsIndex
XMonad.Layout.PerWorkspace
Portabilityunportable
Stabilityunstable
Maintainer<byorgey@gmail.com>
Contents
Usage
Description
Configure layouts on a per-workspace basis. NOTE that this module does not (yet) work in conjunction with multiple screens! =(
Synopsis
onWorkspace :: (LayoutClass l1 a, LayoutClass l2 a) => WorkspaceId -> l1 a -> l2 a -> PerWorkspace l1 l2 a
onWorkspaces :: (LayoutClass l1 a, LayoutClass l2 a) => [WorkspaceId] -> l1 a -> l2 a -> PerWorkspace l1 l2 a
Usage

You can use this module by importing it into your ~/.xmonad/xmonad.hs file:

 import XMonad.Layout.PerWorkspace

and modifying your layoutHook as follows (for example):

 layoutHook = onWorkspace "foo" l1 $  -- layout l1 will be used on workspace "foo".
              onWorkspaces ["bar","6"] l2 $  -- layout l2 will be used on workspaces "bar" and "6".
              l3                      -- layout l3 will be used on all other workspaces.

Note that l1, l2, and l3 can be arbitrarily complicated layouts, e.g. (Full ||| smartBorders $ tabbed shrinkText defaultTConf ||| ...)

In another scenario, suppose you wanted to have layouts A, B, and C available on all workspaces, except that on workspace foo you want layout D instead of C. You could do that as follows:

 layoutHook = A ||| B ||| onWorkspace "foo" D C

NOTE that this module does not (yet) work in conjunction with multiple screens. =(

onWorkspaceSource
:: (LayoutClass l1 a, LayoutClass l2 a)
=> WorkspaceIdthe tag of the workspace to match
-> l1 alayout to use on the matched workspace
-> l2 alayout to use everywhere else
-> PerWorkspace l1 l2 a
Specify one layout to use on a particular workspace, and another to use on all others. The second layout can be another call to onWorkspace, and so on.
onWorkspacesSource
:: (LayoutClass l1 a, LayoutClass l2 a)
=> [WorkspaceId]tags of workspaces to match
-> l1 alayout to use on matched workspaces
-> l2 alayout to use everywhere else
-> PerWorkspace l1 l2 a
Specify one layout to use on a particular set of workspaces, and another to use on all other workspaces.
Produced by Haddock version 2.3.0