Copyright | (c) Brent Yorgey 2009 |
---|---|
License | BSD-style (see LICENSE) |
Maintainer | <byorgey@gmail.com> |
Stability | experimental |
Portability | unportable |
Safe Haskell | None |
Language | Haskell98 |
Dynamically manage "workspace groups", sets of workspaces being used together for some common task or purpose, to allow switching between workspace groups in a single action. Note that this only makes sense for multi-head setups.
- type WSGroupId = String
- addWSGroup :: WSGroupId -> [WorkspaceId] -> X ()
- addCurrentWSGroup :: WSGroupId -> X ()
- forgetWSGroup :: WSGroupId -> X ()
- viewWSGroup :: WSGroupId -> X ()
- promptWSGroupView :: XPConfig -> String -> X ()
- promptWSGroupAdd :: XPConfig -> String -> X ()
- promptWSGroupForget :: XPConfig -> String -> X ()
- data WSGPrompt
Usage
You can use this module by importing it into your ~/.xmonad/xmonad.hs file:
import XMonad.Actions.DynamicWorkspaceGroups
Then add keybindings like the following (this example uses XMonad.Util.EZConfig-style keybindings, but this is not necessary):
, ("M-y n", promptWSGroupAdd myXPConfig "Name this group: ") , ("M-y g", promptWSGroupView myXPConfig "Go to group: ") , ("M-y d", promptWSGroupForget myXPConfig "Forget group: ")
addWSGroup :: WSGroupId -> [WorkspaceId] -> X () Source
Add a new workspace group with the given name.
addCurrentWSGroup :: WSGroupId -> X () Source
Give a name to the current workspace group.
forgetWSGroup :: WSGroupId -> X () Source
Delete the named workspace group from the list of workspace groups. Note that this has no effect on the workspaces involved; it simply forgets the given name.
viewWSGroup :: WSGroupId -> X () Source
View the workspace group with the given name.
promptWSGroupView :: XPConfig -> String -> X () Source
Prompt for a workspace group to view.
promptWSGroupAdd :: XPConfig -> String -> X () Source
Prompt for a name for the current workspace group.
promptWSGroupForget :: XPConfig -> String -> X () Source
Prompt for a workspace group to forget.