| Copyright | (c) Michal Janeczek <janeczek@gmail.com> | 
|---|---|
| License | BSD3-style (see LICENSE) | 
| Maintainer | Michal Janeczek <janeczek@gmail.com> | 
| Stability | unstable | 
| Portability | unportable | 
| Safe Haskell | None | 
| Language | Haskell2010 | 
XMonad.Actions.CycleRecentWS
Contents
Description
Provides bindings to cycle through most recently used workspaces with repeated presses of a single key (as long as modifier key is held down). This is similar to how many window managers handle window switching.
Synopsis
- cycleRecentWS :: [KeySym] -> KeySym -> KeySym -> X ()
 - cycleRecentNonEmptyWS :: [KeySym] -> KeySym -> KeySym -> X ()
 - cycleWindowSets :: (WindowSet -> [WorkspaceId]) -> [KeySym] -> KeySym -> KeySym -> X ()
 - toggleRecentWS :: X ()
 - toggleRecentNonEmptyWS :: X ()
 - toggleWindowSets :: (WindowSet -> [WorkspaceId]) -> X ()
 - recentWS :: (WindowSpace -> Bool) -> WindowSet -> [WorkspaceId]
 
Usage
You can use this module with the following in your xmonad.hs file:
import XMonad.Actions.CycleRecentWS , ((modm, xK_Tab), cycleRecentWS [xK_Alt_L] xK_Tab xK_grave)
For detailed instructions on editing your key bindings, see the tutorial.
Arguments
| :: [KeySym] | A list of modifier keys used when invoking this action. As soon as one of them is released, the final switch is made.  | 
| -> KeySym | Key used to switch to next (less recent) workspace.  | 
| -> KeySym | Key used to switch to previous (more recent) workspace. If it's the same as the nextWorkspace key, it is effectively ignored.  | 
| -> X () | 
Cycle through most recent workspaces with repeated presses of a key, while a modifier key is held down. The recency of workspaces previewed while browsing to the target workspace is not affected. That way a stack of most recently used workspaces is maintained, similarly to how many window managers handle window switching. For best effects use the same modkey+key combination as the one used to invoke this action.
cycleRecentNonEmptyWS Source #
Arguments
| :: [KeySym] | A list of modifier keys used when invoking this action. As soon as one of them is released, the final switch is made.  | 
| -> KeySym | Key used to switch to next (less recent) workspace.  | 
| -> KeySym | Key used to switch to previous (more recent) workspace. If it's the same as the nextWorkspace key, it is effectively ignored.  | 
| -> X () | 
Like cycleRecentWS, but restricted to non-empty workspaces.
Arguments
| :: (WindowSet -> [WorkspaceId]) | A function used to create a list of workspaces to choose from  | 
| -> [KeySym] | A list of modifier keys used when invoking this action. As soon as one of them is released, the final workspace is chosen and the action exits.  | 
| -> KeySym | Key used to preview next workspace from the list of generated options  | 
| -> KeySym | Key used to preview previous workspace from the list of generated options. If it's the same as nextOption key, it is effectively ignored.  | 
| -> X () | 
Cycle through a finite list of workspaces with repeated presses of a key, while a modifier key is held down. For best effects use the same modkey+key combination as the one used to invoke this action.
toggleRecentWS :: X () Source #
Switch to the most recent workspace. The stack of most recently used workspaces is updated, so repeated use toggles between a pair of workspaces.
toggleRecentNonEmptyWS :: X () Source #
Like toggleRecentWS, but restricted to non-empty workspaces.
toggleWindowSets :: (WindowSet -> [WorkspaceId]) -> X () Source #
Given some function that generates a list of workspaces from a
 given WindowSet, switch to the first generated workspace.
Arguments
| :: (WindowSpace -> Bool) | A workspace predicate.  | 
| -> WindowSet | The current WindowSet  | 
| -> [WorkspaceId] | 
Given a predicate p and the current WindowSet w, create a
 list of workspaces to choose from. They are ordered by recency and
 have to satisfy p.